Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit abf15a3

Browse files
committed
stream pipelining
1 parent 6cf64b8 commit abf15a3

File tree

10 files changed

+283
-105
lines changed

10 files changed

+283
-105
lines changed

Cargo.lock

Lines changed: 1 addition & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

chain/ethereum/src/chain.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -196,7 +196,7 @@ impl Blockchain for Chain {
196196
filter: Arc<Self::TriggerFilter>,
197197
metrics: Arc<BlockStreamMetrics>,
198198
unified_api_version: UnifiedMappingApiVersion,
199-
) -> Result<Box<dyn BlockStream<Self>>, Error> {
199+
) -> Result<Box<dyn BlockStream<BlockWithTriggers<Self>>>, Error> {
200200
let requirements = filter.node_capabilities();
201201
let adapter = self
202202
.triggers_adapter(
@@ -241,7 +241,7 @@ impl Blockchain for Chain {
241241
filter: Arc<Self::TriggerFilter>,
242242
metrics: Arc<BlockStreamMetrics>,
243243
unified_api_version: UnifiedMappingApiVersion,
244-
) -> Result<Box<dyn BlockStream<Self>>, Error> {
244+
) -> Result<Box<dyn BlockStream<BlockWithTriggers<Self>>>, Error> {
245245
let requirements = filter.node_capabilities();
246246
let adapter = self
247247
.triggers_adapter(
@@ -565,7 +565,7 @@ impl FirehoseMapperTrait<Chain> for FirehoseMapper {
565565
response: &bstream::BlockResponseV2,
566566
adapter: &TriggersAdapter,
567567
filter: &TriggerFilter,
568-
) -> Result<BlockStreamEvent<Chain>, FirehoseError> {
568+
) -> Result<BlockStreamEvent<BlockWithTriggers<Chain>>, FirehoseError> {
569569
let step = bstream::ForkStep::from_i32(response.step).unwrap_or_else(|| {
570570
panic!(
571571
"unknown step i32 value {}, maybe you forgot update & re-regenerate the protobuf definitions?",

chain/near/src/chain.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -108,7 +108,7 @@ impl Blockchain for Chain {
108108
filter: Arc<Self::TriggerFilter>,
109109
metrics: Arc<BlockStreamMetrics>,
110110
unified_api_version: UnifiedMappingApiVersion,
111-
) -> Result<Box<dyn BlockStream<Self>>, Error> {
111+
) -> Result<Box<dyn BlockStream<BlockWithTriggers<Self>>>, Error> {
112112
let adapter = self
113113
.triggers_adapter(
114114
&deployment,
@@ -149,7 +149,7 @@ impl Blockchain for Chain {
149149
_filter: Arc<Self::TriggerFilter>,
150150
_metrics: Arc<BlockStreamMetrics>,
151151
_unified_api_version: UnifiedMappingApiVersion,
152-
) -> Result<Box<dyn BlockStream<Self>>, Error> {
152+
) -> Result<Box<dyn BlockStream<BlockWithTriggers<Self>>>, Error> {
153153
panic!("NEAR does not support polling block stream")
154154
}
155155

@@ -291,7 +291,7 @@ impl FirehoseMapperTrait<Chain> for FirehoseMapper {
291291
response: &bstream::BlockResponseV2,
292292
adapter: &TriggersAdapter,
293293
filter: &TriggerFilter,
294-
) -> Result<BlockStreamEvent<Chain>, FirehoseError> {
294+
) -> Result<BlockStreamEvent<BlockWithTriggers<Chain>>, FirehoseError> {
295295
let step = bstream::ForkStep::from_i32(response.step).unwrap_or_else(|| {
296296
panic!(
297297
"unknown step i32 value {}, maybe you forgot update & re-regenerate the protobuf definitions?",

core/Cargo.toml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ edition = "2018"
66
[dependencies]
77
async-trait = "0.1.50"
88
atomic_refcell = "0.1.8"
9+
async-stream = "0.3"
910
bytes = "0.5"
1011
futures01 = { package="futures", version="0.1.31" }
1112
futures = { version="0.3.4", features=["compat"] }

0 commit comments

Comments
 (0)