A key-value store implementation which fulfills KV_SIG
val create : endpoint:string ‑> Utils.databox_ctx ‑> ?logging:bool ‑> unit ‑> tcreate store_uri ctx ?logging () creates a key-value store instance.
store_uri could be read from Utils.store_endpoint, ctx could be returned
from Utils.databox_init, logging defaults to false.
val register_datasource : t ‑> meta:Store_datasource.meta ‑> unit Lwt.tregister_datasource t ~meta registers a datasource described by meta
with store t.
val get_datasource_catalogue : t ‑> string Lwt.tget_datasource_catalogue t retrieves a summury of all datasources
registered with store t.
val read : t ‑> datasource_id:string ‑> ?format:content_format ‑> unit ‑> content Lwt.tval observe : t ‑> datasource_id:string ‑> ?timeout:int ‑> ?format:content_format ‑> unit ‑> content Lwt_stream.t Lwt.tobserve t ~datasource_id ?timeout ?format () returns a stream from which any update on
the value associated with datasource_id is returned.
timeout defaults to 0, which means observing until KV_SIG.stop_observing is called,
unit is seconds. format defaults to `Json.
val stop_observing : t ‑> datasource_id:string ‑> unit Lwt.t