extreme v0.5.1 Extreme

Summary

Functions

Executes protobuf message against server. Returns

Reads events specified in read_events, sends them to subscriber and leaves subscriber subscribed per subscribe message

Starts connection to EventStore using connection_settings and optional opts

Subscribe subscriber to stream using server

Functions

execute(server, message)

Executes protobuf message against server. Returns:

  • {:ok, protobuf_message} on success .
  • {:error, :not_authenticated} on wrong credentials.
  • {:error, error_reason, protobuf_message} on failure.
read_and_stay_subscribed(server, subscriber, stream, from_event_number \\ 0, per_page \\ 4096, resolve_link_tos \\ true, require_master \\ false)

Reads events specified in read_events, sends them to subscriber and leaves subscriber subscribed per subscribe message.

subscriber is process that will keep receiving {:on_event, event} messages. read_events :: Extreme.Messages.ReadStreamEvents subscribe :: Extreme.Messages.SubscribeToStream

Returns {:ok, subscription} when subscription is success. If stream is hard deleted subscriber will receive message {:extreme, :error, :stream_hard_deleted, stream} If stream is soft deleted subscriber will receive message {:extreme, :warn, :stream_soft_deleted, stream}.

In case of soft deleted stream, new event will recreate stream and it will be sent to subscriber as described above Hard deleted streams can’t be recreated so suggestion is not to handle this message but rather crash when it happens

start_link(connection_settings, opts \\ [])

Starts connection to EventStore using connection_settings and optional opts.

subscribe_to(server, subscriber, stream, resolve_link_tos \\ true)

Subscribe subscriber to stream using server.

subscriber is process that will keep receiving {:on_event, event} messages.

Returns {:ok, subscription} when subscription is success.

NOTE: If stream is hard deleted, subscriber will NOT receive any message!