Skip to main content

DeliveryHandler

Trait DeliveryHandler 

Source
pub trait DeliveryHandler:
    Send
    + Sync
    + 'static {
    type Request: PageRequest;

    // Required method
    fn get_page_request(
        self: &Arc<Self>,
        key: u64,
        range: Range<u64>,
    ) -> Self::Request;

    // Provided methods
    fn register_blob(
        &self,
        _key: u64,
        _merkle_leaves: &[[u8; 32]],
    ) -> Result<(), Error> { ... }
    fn unregister_file(&self, _key: u64) { ... }
}
Expand description

Trait for handling deliveries (page request buffers and blob registrations) from Files.

Required Associated Types§

Required Methods§

Source

fn get_page_request( self: &Arc<Self>, key: u64, range: Range<u64>, ) -> Self::Request

Produces a PageRequest to receive decompressed or uncompressed page data.

Provided Methods§

Source

fn register_blob( &self, _key: u64, _merkle_leaves: &[[u8; 32]], ) -> Result<(), Error>

Registers a blob’s Merkle tree leaf hashes with the downstream verifier.

Source

fn unregister_file(&self, _key: u64)

Unregisters a file when it is closed.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§