View Source Baobab (Baobab v0.3.0)
Baobab is a pure Elixir implementation of the Bamboo append-only log.
It is fairly opinionated about the filesystem persistence of the logs. They are considered to be a spool of the logs as retreived.
Consumers of this library may wish to place a local copy of the logs in a store with better indexing and query properties.
configuration
Configuration
config :baobab, spool_dir: "/tmp"
options
Options
format
::entry
or:binary
, default::entry
log_id
: the author's log identifier, default0
revalidate
: confirm the store contents are unchanged, default:false
Link to this section Summary
Functions
Create and store a new log entry for a stored identity
Create and store a new identity
Retrieve all available entries in a particular log
Retrieve the key for a stored identity.
Import and store a list of log entries from their binary format.
Retrieve the latest entry.
Retrieve an author log at a particular sequence number.
Retrieve the latest entry on a particular log identified by the author key and log number
Retrieve the latest sequence number on a particular log identified by the author key and log number
A list of {author, log_id, max_seqnum} tuples in the configured store
Link to this section Functions
Create and store a new log entry for a stored identity
Create and store a new identity
Retrieve all available entries in a particular log
Retrieve the key for a stored identity.
Can be either the :public
or :secret
key
@spec import([binary()]) :: [ %Baobab.Entry{ author: term(), backlink: term(), lipmaalink: term(), log_id: term(), payload: term(), payload_hash: term(), seqnum: term(), sig: term(), size: term(), tag: term() } | :error ]
Import and store a list of log entries from their binary format.
Retrieve the latest entry.
Includes the available certificate pool for its verification.
Retrieve an author log at a particular sequence number.
Includes the available certificate pool for its verification.
Retrieve the latest entry on a particular log identified by the author key and log number
Retrieve the latest sequence number on a particular log identified by the author key and log number
A list of {author, log_id, max_seqnum} tuples in the configured store