FerricStore.Management.Namespace behaviour (ferricstore v0.5.4)

Copy Markdown View Source

Stable namespace metadata contract for FerricStore control planes.

Deployments can use this boundary for tenant limits, isolation policy, durability policy, and other scoped metadata.

Summary

Types

prefix()

@type prefix() :: binary()

result()

@type result() :: :ok | {:ok, term()} | {:error, term()}

Callbacks

delete_namespace(prefix)

@callback delete_namespace(prefix()) :: result()

ensure_namespace(prefix, keyword)

@callback ensure_namespace(
  prefix(),
  keyword()
) :: result()

get_namespace(prefix)

@callback get_namespace(prefix()) :: result()

list_namespaces()

@callback list_namespaces() :: result()

Functions

delete_namespace(prefix)

@spec delete_namespace(prefix()) :: result()

ensure_namespace(prefix, opts \\ [])

@spec ensure_namespace(
  prefix(),
  keyword()
) :: result()

get_namespace(prefix)

@spec get_namespace(prefix()) :: result()

list_namespaces()

@spec list_namespaces() :: result()