@@ -83,7 +83,7 @@ impl RawDataSource {
8383 . map_err ( |e| e. source_context ( "invalid `source`" ) ) ?;
8484
8585 let transformer = transformer
86- . resolve ( & logger, link_resolver, amp_client, & source)
86+ . resolve ( & logger, link_resolver, amp_client, & network , & source)
8787 . await
8888 . map_err ( |e| e. source_context ( "invalid `transformer`" ) ) ?;
8989
@@ -221,6 +221,7 @@ impl RawTransformer {
221221 logger : & Logger ,
222222 link_resolver : & dyn LinkResolver ,
223223 amp_client : & impl amp:: Client ,
224+ network : & str ,
224225 source : & Source ,
225226 ) -> Result < Transformer , Error > {
226227 let Self {
@@ -231,8 +232,16 @@ impl RawTransformer {
231232 Self :: validate_api_version ( & api_version) ?;
232233
233234 let abis = Self :: resolve_abis ( logger, link_resolver, abis) . await ?;
234- let tables =
235- Self :: resolve_tables ( logger, link_resolver, amp_client, tables, source, & abis) . await ?;
235+ let tables = Self :: resolve_tables (
236+ logger,
237+ link_resolver,
238+ amp_client,
239+ network,
240+ tables,
241+ source,
242+ & abis,
243+ )
244+ . await ?;
236245
237246 Ok ( Transformer {
238247 api_version,
@@ -284,6 +293,7 @@ impl RawTransformer {
284293 logger : & Logger ,
285294 link_resolver : & dyn LinkResolver ,
286295 amp_client : & impl amp:: Client ,
296+ network : & str ,
287297 tables : Vec < RawTable > ,
288298 source : & Source ,
289299 abis : & [ Abi ] ,
@@ -307,7 +317,7 @@ impl RawTransformer {
307317 ) ;
308318
309319 table
310- . resolve ( & logger, link_resolver, amp_client, source, abis)
320+ . resolve ( & logger, link_resolver, amp_client, network , source, abis)
311321 . await
312322 . map_err ( |e| e. source_context ( format ! ( "invalid `tables` at index {i}" ) ) )
313323 } ) ;
@@ -396,6 +406,7 @@ impl RawTable {
396406 logger : & Logger ,
397407 link_resolver : & dyn LinkResolver ,
398408 amp_client : & impl amp:: Client ,
409+ network : & str ,
399410 source : & Source ,
400411 abis : & [ Abi ] ,
401412 ) -> Result < Table , Error > {
@@ -422,6 +433,7 @@ impl RawTable {
422433 let block_range_query_builder = Self :: resolve_block_range_query_builder (
423434 logger,
424435 amp_client,
436+ network,
425437 source,
426438 query,
427439 schema. clone ( ) ,
@@ -515,6 +527,7 @@ impl RawTable {
515527 async fn resolve_block_range_query_builder (
516528 logger : & Logger ,
517529 amp_client : & impl amp:: Client ,
530+ network : & str ,
518531 source : & Source ,
519532 query : ValidQuery ,
520533 schema : Schema ,
@@ -542,7 +555,13 @@ impl RawTable {
542555 . iter ( )
543556 . map ( |table| ( source. dataset . as_str ( ) , table. as_str ( ) ) )
544557 // TODO: Replace hardcoded values with schema metadata sources when available
545- . chain ( [ ( "eth_firehose" , "blocks" ) , ( "eth_rpc" , "blocks" ) ] ) ;
558+ . chain ( match network {
559+ "ethereum-mainnet" => vec ! [ ( "edgeandnode/ethereum_mainnet" , "blocks" ) ] ,
560+ "base-mainnet" => vec ! [ ( "edgeandnode/base_mainnet" , "blocks" ) ] ,
561+ "base-sepolia" => vec ! [ ( "edgeandnode/base_sepolia" , "blocks" ) ] ,
562+ "arbitrum-one" => vec ! [ ( "edgeandnode/arbitrum_one" , "blocks" ) ] ,
563+ _ => vec ! [ ] ,
564+ } ) ;
546565
547566 for ( dataset, table) in context_sources_iter {
548567 let context_logger = logger. new ( slog:: o!(
0 commit comments