ExESDB.Snapshots (ex_esdb v0.0.20)

The ExESDB Snapshots SubSystem.

Summary

Functions

Returns a specification to start this module under a supervisor.

Types

khepri_condition()

@type khepri_condition() ::
  ExESDB.Khepri.Conditions.if_all()
  | ExESDB.Khepri.Conditions.if_any()
  | ExESDB.Khepri.Conditions.if_name_matches()
  | ExESDB.Khepri.Conditions.if_path_matches()
  | ExESDB.Khepri.Conditions.if_has_data()
  | ExESDB.Khepri.Conditions.if_has_payload()
  | ExESDB.Khepri.Conditions.if_has_sproc()
  | ExESDB.Khepri.Conditions.if_data_matches()
  | ExESDB.Khepri.Conditions.if_node_exists()
  | ExESDB.Khepri.Conditions.if_payload_version()
  | ExESDB.Khepri.Conditions.if_child_list_version()
  | ExESDB.Khepri.Conditions.if_child_list_length()

Functions

child_spec(init_arg)

Returns a specification to start this module under a supervisor.

See Supervisor.

path(source_uuid, stream_uuid, version)

@spec path(
  source_uuid :: String.t(),
  stream_uuid :: String.t(),
  version :: non_neg_integer()
) :: list()

Description

Returns the key for a snapshot as a Khepri Path.

Examples

iex> ExESDB.Snapshots.path("source_uuid", "stream_uuid", 1)
[:snapshots, "source_uuid", "stream_uuid", "000000001"]

start_link(opts)