Skip to content

Commit b088643

Browse files
author
Zoran Cvetkov
committed
clean up
1 parent 2a6c61c commit b088643

File tree

1 file changed

+12
-44
lines changed

1 file changed

+12
-44
lines changed

graph/src/blockchain/block_stream.rs

Lines changed: 12 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -355,8 +355,15 @@ impl<C: Blockchain> TriggersAdapterWrapper<C> {
355355
if !filter.subgraph_filter.is_empty() {
356356
// TODO: handle empty range, or empty entity set bellow
357357
if to <= from {
358+
let entities = BTreeMap::<BlockNumber, Entity>::new();
358359
return self
359-
.mock_subgraph_triggers(Logger::root(slog::Discard, o!()), from, to, filter)
360+
.subgraph_triggers(
361+
Logger::root(slog::Discard, o!()),
362+
from,
363+
to,
364+
filter,
365+
entities,
366+
)
360367
.await;
361368
}
362369

@@ -436,7 +443,10 @@ impl<C: Blockchain> TriggersAdapterWrapper<C> {
436443
.into_iter()
437444
.map(|block| {
438445
let key = block.number();
439-
let entity = entities.get(&key).unwrap();
446+
let entity = match entities.get(&key) {
447+
Some(e) => e,
448+
None => &Self::create_mock_entity(&block),
449+
};
440450
let trigger_data = vec![Self::create_subgraph_trigger_from_entity(
441451
first_filter,
442452
entity,
@@ -459,48 +469,6 @@ impl<C: Blockchain> TriggersAdapterWrapper<C> {
459469
}
460470
}
461471

462-
// TODO(krishna): Currently this is a mock implementation of subgraph triggers.
463-
// This will be replaced with the actual implementation which will use the filters to
464-
// query the database of the source subgraph and return the entity triggers.
465-
async fn mock_subgraph_triggers(
466-
&self,
467-
logger: Logger,
468-
from: BlockNumber,
469-
to: BlockNumber,
470-
filter: &Arc<TriggerFilterWrapper<C>>,
471-
) -> Result<(Vec<BlockWithTriggers<C>>, BlockNumber), Error> {
472-
let logger2 = logger.cheap_clone();
473-
let adapter = self.adapter.clone();
474-
// let to_ptr = eth.next_existing_ptr_to_number(&logger, to).await?;
475-
// let to = to_ptr.block_number();
476-
477-
let first_filter = filter.subgraph_filter.first().unwrap();
478-
479-
let blocks = adapter
480-
.load_blocks_by_numbers(logger, HashSet::from_iter(from..=to))
481-
.await?
482-
.into_iter()
483-
.map(|block| {
484-
let trigger_data = vec![Self::create_mock_subgraph_trigger(first_filter, &block)];
485-
BlockWithTriggers::new_with_subgraph_triggers(block, trigger_data, &logger2)
486-
})
487-
.collect();
488-
489-
Ok((blocks, to))
490-
}
491-
492-
fn create_mock_subgraph_trigger(
493-
filter: &SubgraphFilter,
494-
block: &C::Block,
495-
) -> subgraph::TriggerData {
496-
let mock_entity = Self::create_mock_entity(block);
497-
subgraph::TriggerData {
498-
source: filter.subgraph.clone(),
499-
entity: mock_entity,
500-
entity_type: filter.entities.first().unwrap().clone(),
501-
}
502-
}
503-
504472
fn create_mock_entity(block: &C::Block) -> Entity {
505473
let id = DeploymentHash::new("test").unwrap();
506474
let data_schema = InputSchema::parse_latest(

0 commit comments

Comments
 (0)