[] Returns an empty database. Memoized for efficiency.
[] Returns an empty database. Memoized for efficiency.
(fork-conn conn)
Forks the given Datomic connection into a local 'mocked' connection. The starting-point database will be the current database at the time of forking.
Note that if #log() is not supported by conn
(as is the case for mem connections prior to Datomic 0.9.5407),
the forked connection will support #log(), but the returned Log will only contain transactions committed after forking.
See documentation of #'mock-conn for the characteristics of the returned Connection.
Forks the given Datomic connection into a local 'mocked' connection. The starting-point database will be the current database at the time of forking. Note that if #log() is not supported by `conn` (as is the case for mem connections prior to Datomic 0.9.5407), the forked connection will support #log(), but the returned Log will only contain transactions committed after forking. See documentation of #'mock-conn for the characteristics of the returned Connection.
(mock-conn)
(mock-conn db)
Creates a mocked Datomic connection from the given starting-point database, or an empty database if none provided.
Implicitly backed by Datomic's speculative writes (#'datomic.api/with). The returned connection is local and has no URI access.
Exceptions thrown during writes will be systematically wrapped in an j.u.c.ExecutionExecption to emulate the behaviour of a remote transactor.
The #db(), #transact(), #transactAsync(), #txReportQueue(), #removeTxReportQueue() and #log() methods are fully supported. Housekeeping methods (#requestIndex(), #release(), #gcStorage()) are implemented as noops. Sync methods have a trivial implementation.
Creates a mocked Datomic connection from the given *starting-point* database, or an empty database if none provided. Implicitly backed by Datomic's speculative writes (#'datomic.api/with). The returned connection is local and has no URI access. Exceptions thrown during writes will be systematically wrapped in an j.u.c.ExecutionExecption to emulate the behaviour of a remote transactor. The #db(), #transact(), #transactAsync(), #txReportQueue(), #removeTxReportQueue() and #log() methods are fully supported. Housekeeping methods (#requestIndex(), #release(), #gcStorage()) are implemented as noops. Sync methods have a trivial implementation.
cljdoc is a website building & hosting documentation for Clojure/Script libraries
× close