Apero.Cache.Adapter behaviour (Apero v1.0.0)

Copy Markdown View Source

Behaviour for cache backends.

Implement this behaviour to add support for a new cache system.

Summary

Callbacks

delete(term, term)

@callback delete(term(), term()) :: :ok | {:error, term()}

flush(term)

@callback flush(term()) :: :ok | {:error, term()}

get(term, term)

@callback get(term(), term()) :: {:ok, term()} | {:error, :not_found}

member?(term, term)

@callback member?(term(), term()) :: boolean()

put(term, term, term, keyword)

@callback put(term(), term(), term(), keyword()) :: :ok | {:error, term()}

size(term)

@callback size(term()) :: {:ok, non_neg_integer()} | {:error, term()}

start_link(keyword)

@callback start_link(keyword()) :: GenServer.on_start()