36 lines
1.1 KiB
Rust
36 lines
1.1 KiB
Rust
// file: kb_materializer_orderbook/src/materializer.rs
|
|
// version: 5
|
|
|
|
//! Materializer scaffold for the `kb_materializer_orderbook` crate.
|
|
|
|
/// Initial materializer implementation placeholder.
|
|
#[derive(Clone, Debug, Default)]
|
|
pub struct OrderbookMaterializer;
|
|
|
|
impl kb_materializer_api::Materializer for crate::OrderbookMaterializer {
|
|
fn materializer_name(&self) -> &'static str {
|
|
return "kb_materializer_orderbook";
|
|
}
|
|
|
|
fn materializer_version(&self) -> &'static str {
|
|
return env!("CARGO_PKG_VERSION");
|
|
}
|
|
|
|
fn accepts_event(&self, _event: &kb_model::DecodedProtocolEvent) -> bool {
|
|
return false;
|
|
}
|
|
|
|
fn materialize_event(
|
|
&self,
|
|
event: &kb_model::DecodedProtocolEvent,
|
|
) -> kb_core::Result<std::vec::Vec<kb_model::MaterializedEvent>> {
|
|
let materialized = kb_model::MaterializedEvent {
|
|
signature: event.signature.clone(),
|
|
slot: event.slot,
|
|
decoded_family: event.event_family,
|
|
materialized_family: kb_model::MaterializedEventFamily::Orderbook,
|
|
};
|
|
return std::result::Result::Ok(std::vec![materialized]);
|
|
}
|
|
}
|