jetstream v0.0.1-pre1 Jetstream.Consumer

Link to this section Summary

Link to this section Types

Link to this type

consumer_config()

Specs

consumer_config() :: %{
  durable_name: binary(),
  deliver_policy: :all | :last | :new | :by_start_sequence | :by_start_time,
  deliver_subject: nil | binary(),
  ack_wait: nil | non_neg_integer(),
  ack_policy: :none | :all | :explicit,
  replay_policy: :instant | :original,
  filter_subject: nil | binary(),
  opt_start_time: nil | DateTime.t(),
  opt_start_seq: nil | non_neg_integer()
}
Link to this type

consumer_response()

Specs

consumer_response() :: %{
  stream_name: binary(),
  name: binary(),
  created: DateTime.t(),
  config: consumer_config(),
  delivered: %{consumer_seq: non_neg_integer(), stream_seq: non_neg_integer()},
  ack_floor: %{consumer_seq: non_neg_integer(), stream_seq: non_neg_integer()},
  num_pending: non_neg_integer(),
  num_redelivered: non_neg_integer()
}

Specs

consumers() :: %{
  consumers: [binary()],
  limit: non_neg_integer(),
  offset: non_neg_integer(),
  total: non_neg_integer()
}

Specs

t() :: %Jetstream.Consumer{
  ack_policy: term(),
  ack_wait: term(),
  deliver_policy: term(),
  deliver_subject: term(),
  durable: term(),
  max_deliver: term(),
  name: binary(),
  opt_start_seq: term(),
  opt_start_time: term(),
  replay_policy: term(),
  stream_name: binary()
}

Link to this section Functions

Link to this function

create(gnat, consumer)

Specs

create(Gnat.t(), t()) :: {:ok, consumer_response()} | {:error, term()}
Link to this function

delete(gnat, stream_name, consumer_name)

Specs

delete(Gnat.t(), binary(), binary()) :: :ok | {:error, any()}
Link to this function

info(gnat, stream_name, consumer_name)

Specs

info(Gnat.t(), binary(), binary()) ::
  {:ok, consumer_response()} | {:error, any()}
Link to this function

list(gnat, stream_name, params \\ [])

Specs

list(Gnat.t(), binary(), [{:offset, non_neg_integer()}]) ::
  {:ok, consumers()} | {:error, term()}