Struct nakadion::NakadionBuilder
[−]
[src]
pub struct NakadionBuilder { pub streaming_client_builder: ConfigBuilder, pub request_timeout: Option<Duration>, pub commit_strategy: Option<CommitStrategy>, pub subscription_discovery: Option<SubscriptionDiscovery>, pub min_idle_worker_lifetime: Option<Duration>, }
Fields
streaming_client_builder: ConfigBuilder
request_timeout: Option<Duration>
commit_strategy: Option<CommitStrategy>
subscription_discovery: Option<SubscriptionDiscovery>
min_idle_worker_lifetime: Option<Duration>
Methods
impl NakadionBuilder
[src]
pub fn stream_keep_alive_limit(
self,
stream_keep_alive_limit: usize
) -> NakadionBuilder
[src]
self,
stream_keep_alive_limit: usize
) -> NakadionBuilder
Maximum number of empty keep alive batches to get in a row before closing the connection. If 0 or undefined will send keep alive messages indefinitely.
pub fn stream_limit(self, stream_limit: usize) -> NakadionBuilder
[src]
Maximum number of Event
s in this stream (over all partitions being streamed
in this
connection).
- If 0 or undefined, will stream batches indefinitely.
- Stream initialization will fail if
stream_limit
is lower thanbatch_limit
.
pub fn stream_timeout(self, stream_timeout: Duration) -> NakadionBuilder
[src]
Maximum time in seconds a stream will live before connection is closed by the server.
If 0 or unspecified will stream indefinitely.
If this timeout is reached, any pending messages (in the sense of
stream_limit
)
will be flushed to the client.
Stream initialization will fail if stream_timeout
is lower than
batch_flush_timeout
.
pub fn batch_flush_timeout(
self,
batch_flush_timeout: Duration
) -> NakadionBuilder
[src]
self,
batch_flush_timeout: Duration
) -> NakadionBuilder
Maximum time in seconds to wait for the flushing of each chunk (per partition).
- If the amount of buffered Events reaches
batch_limit
before thisbatch_flush_timeout
is reached, the messages are immediately flushed to the client and batch flush timer is reset. - If 0 or undefined, will assume 30 seconds.
pub fn batch_limit(self, batch_limit: usize) -> NakadionBuilder
[src]
Maximum number of Event
s in each chunk (and therefore per partition) of the
stream.
- If 0 or unspecified will buffer Events indefinitely and flush on reaching of
batch_flush_timeout
.
pub fn max_uncommitted_events(
self,
max_uncommitted_events: usize
) -> NakadionBuilder
[src]
self,
max_uncommitted_events: usize
) -> NakadionBuilder
The amount of uncommitted events Nakadi will stream before pausing the stream. When in paused state and commit comes - the stream will resume. Minimal value is 1.
When using the concurrent worker you should adjust this value to safe your workers from running dry.
pub fn nakadi_host<T: Into<String>>(self, nakadi_host: T) -> NakadionBuilder
[src]
The URI prefix for the Nakadi Host, e.g. "https://my.nakadi.com"
pub fn request_timeout(self, request_timeout: Duration) -> NakadionBuilder
[src]
pub fn commit_strategy(self, commit_strategy: CommitStrategy) -> NakadionBuilder
[src]
pub fn subscription_discovery(
self,
subscription_discovery: SubscriptionDiscovery
) -> NakadionBuilder
[src]
self,
subscription_discovery: SubscriptionDiscovery
) -> NakadionBuilder
pub fn min_idle_worker_lifetime(
self,
min_idle_worker_lifetime: Option<Duration>
) -> NakadionBuilder
[src]
self,
min_idle_worker_lifetime: Option<Duration>
) -> NakadionBuilder
pub fn set_min_idle_worker_lifetime(
self,
min_idle_worker_lifetime: Duration
) -> NakadionBuilder
[src]
self,
min_idle_worker_lifetime: Duration
) -> NakadionBuilder
pub fn from_env() -> Result<NakadionBuilder, Error>
[src]
pub fn build_config(self) -> Result<NakadionConfig, Error>
[src]
pub fn build_and_start<HF, P>(
self,
handler_factory: HF,
access_token_provider: P
) -> Result<Nakadion, Error> where
HF: HandlerFactory + Sync + Send + 'static,
P: ProvidesAccessToken + Send + Sync + 'static,
[src]
self,
handler_factory: HF,
access_token_provider: P
) -> Result<Nakadion, Error> where
HF: HandlerFactory + Sync + Send + 'static,
P: ProvidesAccessToken + Send + Sync + 'static,
pub fn build_and_start_with_metrics<HF, P, M>(
self,
handler_factory: HF,
access_token_provider: P,
metrics_collector: M
) -> Result<Nakadion, Error> where
HF: HandlerFactory + Sync + Send + 'static,
P: ProvidesAccessToken + Send + Sync + 'static,
M: MetricsCollector + Clone + Send + Sync + 'static,
[src]
self,
handler_factory: HF,
access_token_provider: P,
metrics_collector: M
) -> Result<Nakadion, Error> where
HF: HandlerFactory + Sync + Send + 'static,
P: ProvidesAccessToken + Send + Sync + 'static,
M: MetricsCollector + Clone + Send + Sync + 'static,
Trait Implementations
impl Default for NakadionBuilder
[src]
fn default() -> NakadionBuilder
[src]
Returns the "default value" for a type. Read more