Struct eventstore_tcp::builder::WriteEventsBuilder [] [src]

pub struct WriteEventsBuilder { /* fields omitted */ }

Builder for WriteEvents which allows writing multiple events to a stream.

Example

use eventstore_tcp::{Builder, ExpectedVersion, StreamVersion, ContentType};

let package = Builder::write_events()
    .stream_id("my_stream-1")
    .expected_version(StreamVersion::from(42))
    .new_event()
        .event_type("meaning_of_life")
        .data("{ 'meaning': 42 }".as_bytes())
        .data_content_type(ContentType::Json)
    .done()
    .new_event()
        .event_type("meaning_of_life")
        .data("{ 'meaning': 47 }".as_bytes())
        .data_content_type(ContentType::Json)
    .done()
    .require_master(false) // default
    .build_package(None, None);

Methods

impl WriteEventsBuilder
[src]

Panics if the id is an empty string

Sets the expected version of the stream as an optimistic locking mechanism.

Should the server only handle the request if it is the cluster master. Note that while only the master server can accept writes, other cluster members can forward requests to the master.

Defaults to false.

Start creating a new event using NewEventBuilder.

Build a package. Will panic if required values are not set. Values of this builder will be moved into the package.