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
- All
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[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @native() @throws( ... )
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
final
def
getClass(): Class[_]
- 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( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @throws( ... )
Documentation/API for the Molecule library - a meta DSL for the Datomic database.
Manual | scalamolecule.org | Github | Forum