pub struct AggregatorConfig {
pub header_name: String,
pub completion: CompletionMode,
pub correlation: CorrelationStrategy,
pub strategy: AggregationStrategy,
pub max_buckets: Option<usize>,
pub bucket_ttl: Option<Duration>,
pub force_completion_on_stop: bool,
pub discard_on_timeout: bool,
}Expand description
Configuration for the Aggregator EIP.
Fields§
§header_name: StringName of the header used as correlation key.
completion: CompletionModeWhen to emit the aggregated exchange.
correlation: CorrelationStrategyStrategy for determining correlation keys.
strategy: AggregationStrategyHow to combine the bucket into one exchange.
max_buckets: Option<usize>Maximum number of correlation key buckets (memory protection). When limit is reached, new correlation keys are rejected.
bucket_ttl: Option<Duration>Time-to-live for inactive buckets (memory protection). Buckets not updated for this duration are evicted.
force_completion_on_stop: boolForce-complete all pending buckets when the route is stopped.
discard_on_timeout: boolDiscard bucket contents on timeout instead of emitting.
Implementations§
Source§impl AggregatorConfig
impl AggregatorConfig
Sourcepub fn correlate_by(header: impl Into<String>) -> AggregatorConfigBuilder
pub fn correlate_by(header: impl Into<String>) -> AggregatorConfigBuilder
Start building config with correlation key extracted from the named header.
Trait Implementations§
Source§impl Clone for AggregatorConfig
impl Clone for AggregatorConfig
Source§fn clone(&self) -> AggregatorConfig
fn clone(&self) -> AggregatorConfig
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for AggregatorConfig
impl !RefUnwindSafe for AggregatorConfig
impl Send for AggregatorConfig
impl Sync for AggregatorConfig
impl Unpin for AggregatorConfig
impl UnsafeUnpin for AggregatorConfig
impl !UnwindSafe for AggregatorConfig
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more