pub struct Config {Show 20 fields
pub name: String,
pub max_bytes: i64,
pub max_messages: i64,
pub max_messages_per_subject: i64,
pub discard: DiscardPolicy,
pub subjects: Vec<String>,
pub retention: RetentionPolicy,
pub max_consumers: i32,
pub max_age: Duration,
pub max_message_size: i32,
pub storage: StorageType,
pub num_replicas: usize,
pub no_ack: bool,
pub duplicate_window: i64,
pub template_owner: String,
pub sealed: bool,
pub description: Option<String>,
pub allow_rollup: bool,
pub deny_delete: bool,
pub deny_purge: bool,
}Expand description
StreamConfig determines the properties for a stream.
There are sensible defaults for most. If no subjects are
given the name will be used as the only subject.
Fields
name: StringA name for the Stream. Must not have spaces, tabs or period . characters
max_bytes: i64How large the Stream may become in total bytes before the configured discard policy kicks in
max_messages: i64How large the Stream may become in total messages before the configured discard policy kicks in
max_messages_per_subject: i64Maximum amount of messages to keep per subject
discard: DiscardPolicyWhen a Stream has reached its configured max_bytes or max_msgs, this policy kicks in.
DiscardPolicy::New refuses new messages or DiscardPolicy::Old (default) deletes old messages to make space
subjects: Vec<String>Which NATS subjects to populate this stream with. Supports wildcards. Defaults to just the
configured stream name.
retention: RetentionPolicyHow message retention is considered, Limits (default), Interest or WorkQueue
max_consumers: i32How many Consumers can be defined for a given Stream, -1 for unlimited
max_age: DurationMaximum age of any message in the stream, expressed in nanoseconds
max_message_size: i32The largest message that will be accepted by the Stream
storage: StorageTypeThe type of storage backend, File (default) and Memory
num_replicas: usizeHow many replicas to keep for each message in a clustered JetStream, maximum 5
no_ack: boolDisables acknowledging messages that are received by the Stream
duplicate_window: i64The window within which to track duplicate messages.
template_owner: StringThe owner of the template associated with this stream.
sealed: boolIndicates the stream is sealed and cannot be modified in any way
description: Option<String>A short description of the purpose of this stream.
allow_rollup: boolIndicates if rollups will be allowed or not.
deny_delete: boolIndicates deletes will be denied or not.
deny_purge: boolIndicates if purges will be denied or not.
Trait Implementations
sourceimpl<'de> Deserialize<'de> for Config
impl<'de> Deserialize<'de> for Config
sourcefn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl Eq for Config
impl StructuralEq for Config
impl StructuralPartialEq for Config
Auto Trait Implementations
impl RefUnwindSafe for Config
impl Send for Config
impl Sync for Config
impl Unpin for Config
impl UnwindSafe for Config
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more