Store.Project.Entry.StorageBehaviour behaviour (fnord v0.8.88)
View SourceBehaviour definition for persisting project entries in the store.
Implementations of this behaviour manage the physical storage and retrieval of entries, abstracting over the underlying persistence mechanism.
Summary
Callbacks
@callback create(Store.Project.Entry.t()) :: :ok
@callback delete(Store.Project.Entry.t()) :: {:ok, [binary()]} | no_return()
@callback exists?(Store.Project.Entry.t()) :: boolean()
@callback is_incomplete?(Store.Project.Entry.t()) :: boolean()
@callback is_stale?(Store.Project.Entry.t()) :: boolean()
@callback read(Store.Project.Entry.t()) :: {:ok, map()} | {:error, any()}
@callback save(Store.Project.Entry.t(), String.t(), String.t(), [float()]) :: :ok | {:error, any()}