pub trait BitswapStore: Send + Sync + 'static {
    type Params: StoreParams;

    fn contains(&mut self, cid: &Cid) -> Result<bool>;
    fn get(&mut self, cid: &Cid) -> Result<Option<Vec<u8>>>;
    fn insert(&mut self, block: &Block<Self::Params>) -> Result<()>;
    fn missing_blocks(&mut self, cid: &Cid) -> Result<Vec<Cid>>;
}
Expand description

Trait implemented by a block store.

Required Associated Types§

The store params.

Required Methods§

A have query needs to know if the block store contains the block.

A block query needs to retrieve the block from the store.

A block response needs to insert the block into the store.

A sync query needs a list of missing blocks to make progress.

Implementors§