View Source Pow.Store.Base behaviour (Pow v1.0.39)

Used to set up API for key-value stores.

Usage

defmodule MyApp.CustomCache do
  use Pow.Store.Base,
    ttl: :timer.minutes(30),
    namespace: "credentials"

  @impl true
  def put(config, key, value) do
    Pow.Store.Base.put(config, backend_config(config), {key, value})
  end
end

Summary

Types

config()

@type config() :: Pow.Config.t()

key()

@type key() :: Pow.Store.Backend.Base.key()

key_match()

@type key_match() :: Pow.Store.Backend.Base.key_match()

record()

@type record() :: Pow.Store.Backend.Base.record()

Callbacks

all(config, key_match)

@callback all(config(), key_match()) :: [record()]

delete(config, key)

@callback delete(config(), key()) :: :ok

get(config, key)

@callback get(config(), key()) :: any() | :not_found

put(config, key, any)

@callback put(config(), key(), any()) :: :ok

Functions

put(config, backend_config, record_or_records)

@spec put(config(), config(), record() | [record()]) :: :ok