pub trait FragmentNode {
// Required methods
fn alias(&self) -> NodeAlias;
fn fragment_logs(
&self
) -> Result<HashMap<FragmentId, FragmentLog>, FragmentNodeError>;
fn send_fragment(
&self,
fragment: Fragment
) -> Result<MemPoolCheck, FragmentNodeError>;
fn send_batch_fragments(
&self,
fragments: Vec<Fragment>,
fail_fast: bool
) -> Result<FragmentsProcessingSummary, FragmentNodeError>;
fn log_pending_fragment(&self, fragment_id: FragmentId);
fn log_rejected_fragment(&self, fragment_id: FragmentId, reason: String);
fn log_in_block_fragment(
&self,
fragment_id: FragmentId,
valid_until: BlockDate,
block: Hash
);
fn log_content(&self) -> Vec<String>;
}