trait Log extends GenericNs
Log interface.
Datomic's database log is a recording of all transaction data in historic order,
organized for efficient access by transaction.
Instantiate Log object with tx range arguments between from
(inclusive) and until
(exclusive),
and add Log attributes to be returned as tuples of data:
// Data from transaction t1 until t4 (exclusive) Log(Some(t1), Some(t4)).t.e.a.v.op.get === List( (t1, e1, ":Person/name", "Ben", true), (t1, e1, ":Person/age", 41, true), (t2, e2, ":Person/name", "Liz", true), (t2, e2, ":Person/age", 37, true), (t3, e1, ":Person/age", 41, false), (t3, e1, ":Person/age", 42, true) ) // If `from` is None, the range starts from the beginning Log(None, Some(t3)).v.e.t.get === List( (t1, e1, ":Person/name", "Ben", true), (t1, e1, ":Person/age", 41, true), (t2, e2, ":Person/name", "Liz", true), (t2, e2, ":Person/age", 37, true) // t3 not included ) // If `until` is None, the range goes to the end Log(Some(t2), None).v.e.t.get === List( // t1 not included (t2, e2, ":Person/name", "Liz", true), (t2, e2, ":Person/age", 37, true), (t3, e1, ":Person/age", 41, false), (t3, e1, ":Person/age", 42, true) )
Log attributes available:
e
- Entity id (Long)a
- Full attribute name like ":Person/name" (String)v
- Value of Datoms (Any)t
- Transaction pointer (Long/Int)tx
- Transaction entity id (Long)txInstant
- Transaction wall clock time (java.util.Date)op
- Operation status: assertion (true) / retraction (false)
- Source
- Log.scala
- Note
Contrary to the Datomic Log which is map of individual transactions the Molecule Log implementation is flattened to be one continuous list of transaction data. This is to have a transparent unified return type as all other molecules returning data. Data can always be grouped if needed.
- Alphabetic
- By Inheritance
- Log
- GenericNs
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Type Members
- final class a[Ns, In] extends OneString[Ns, In] with Indexed
(Partition)-Namespace-prefixed attribute name (":part_Ns/attr")
- final class e[Ns, In] extends OneLong[Ns, In] with Indexed
Entity id (Long)
- final class op[Ns, In] extends OneBoolean[Ns, In] with Indexed
Transaction operation: assertion (true) or retraction (false)
- final class t[Ns, In] extends OneLong[Ns, In] with Indexed
Transaction point in time
t
(Long/Int) - final class tx[Ns, In] extends OneLong[Ns, In] with Indexed
Transaction entity id (Long)
- final class txInstant[Ns, In] extends OneDate[Ns, In] with Indexed
Transaction wall-clock time (Date)
- final class v[Ns, In] extends OneAny[Ns, In] with Indexed
Datom value (Any)
Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##(): Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native()
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable])
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
Documentation/API for the Molecule library - a meta DSL for the Datomic database.
Manual | scalamolecule.org | Github | Forum