FetcherConfig

Struct FetcherConfig 

Source
pub struct FetcherConfig { /* private fields */ }
Expand description

Runtime configuration for the block fetcher pipeline.

All instances must be constructed via FetcherConfig::builder or FetcherConfig::new so invariants are validated before any consumer observes the values.

Implementations§

Source§

impl FetcherConfig

Source

pub fn builder() -> FetcherConfigBuilder

Returns a builder to incrementally construct and validate a configuration.

Source

pub fn new(params: FetcherConfigParams) -> Result<Self>

Constructs a configuration directly from the provided values.

Prefer FetcherConfig::builder for ergonomics when many values use defaults. Callers that already have concrete runtime parameters can use this method to enforce validation without going through the builder.

Source

pub fn rpc_url(&self) -> &str

Full RPC URL (including scheme) configured for the fetcher.

Source

pub fn rpc_user(&self) -> &str

RPC username.

Source

pub fn rpc_password(&self) -> &str

RPC password.

Source

pub fn thread_count(&self) -> usize

Number of worker threads configured for the fetcher.

Source

pub fn max_batch_size_mb(&self) -> usize

Maximum megabytes per batch that workers target.

Source

pub fn reorg_window_size(&self) -> usize

Number of blocks tracked in the reorg window.

Source

pub fn start_height(&self) -> u64

Starting height requested when the pipeline boots.

Source

pub fn rpc_timeout(&self) -> Duration

Per-RPC timeout applied to the JSON-RPC client.

Source

pub fn metrics_interval(&self) -> Duration

Interval used by the telemetry reporter.

Source

pub fn queue_max_size_mb(&self) -> usize

Maximum megabytes of queued block data allowed in the ordered queue.

Source

pub fn tip_idle_backoff(&self) -> Duration

Idle backoff used when workers poll near the blockchain tip.

Source

pub fn tip_refresh_interval(&self) -> Duration

Interval between background tip refresh RPC calls.

Source

pub fn rpc_max_request_body_bytes(&self) -> usize

Maximum allowed HTTP request body bytes for RPC calls.

Source

pub fn rpc_max_response_body_bytes(&self) -> usize

Maximum allowed HTTP response body bytes for RPC calls.

Source

pub fn validate(&self) -> Result<()>

Performs validation on an existing configuration instance.

Trait Implementations§

Source§

impl Clone for FetcherConfig

Source§

fn clone(&self) -> FetcherConfig

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for FetcherConfig

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl PartialEq for FetcherConfig

Source§

fn eq(&self, other: &FetcherConfig) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Eq for FetcherConfig

Source§

impl StructuralPartialEq for FetcherConfig

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

Source§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
Source§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

Source§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

impl<T> MaybeSend for T
where T: Send,