Package io.permazen.core
package io.permazen.core
Core classes for the Permazen Java persistence layer.
The classes in this package implement the Permazen core API. The core API layer can function
entirely independently from the annotation-based Permazen
Java object model layer;
the latter is implemented on top of these classes. In turn, the core API layer is implemented on top
of the key/value store
layer.
- See Also:
-
ClassDescriptionSupport superclass for the various core index classes.A simple index on the elements of a
CollectionField
.Superclass of fields with types assignable toCollection
.ComplexField<T>A complexField
, such as a collection or map field.ComplexSubFieldIndex<C,T> A simple index on aComplexField
sub-field.A composite index on two or more fields in anObjType
.CoreIndex1<V,T> Core APIIndex1
implementation representing an index on a single field.CoreIndex2<V1,V2, T> Core APIIndex2
implementation representing a composite index on two fields.CoreIndex3<V1,V2, V3, T> Core APIIndex3
implementation representing a composite index on three fields.CoreIndex4<V1,V2, V3, V4, T> Core APIIndex4
implementation representing a composite index on four fields.Counter fields.Listener interface for notifications that an object has just been created.Provides an object database abstraction on top of a key/value database.Superclass of all unchecked exceptions thrown by aDatabase
.Describes what action to take when an object is deleted and a reference to that object from some other object still exists.Thrown when an object is accessed but the object does not exist in its associated transaction.Listener interface for notifications that an object is about to be deleted.ATransaction
that is not actually connected to a persistent database, but instead exists just to hold objects in memory.A fewEncoding
s that are used for various general encoding tasks.A field that contains an array (having one or more dimensions) of values chosen from an ordered list of uniqueString
identifiers.A field that contains a value chosen from in an ordered list of uniqueString
identifiers.Field<T>FieldSwitch<R>Visitor pattern interface forField
s.Thrown when inconsistent content is detected in aDatabase
indicating a corrupted or invalid database, or a buggy underlying key-value store.A simple or composite index on some field(s) anObjType
.IndexSwitch<R>Visitor pattern interface forIndex
es.Thrown when an object is found to have an invalid schema index.Thrown when attempting to set a reference field to a disallowed object type.Thrown byDatabase.createTransaction(io.permazen.schema.SchemaModel)
when the provided schema is invalid.Constants and utility methods relating to the encoding and layout of aDatabase
in a key/value store.An index on the elements of a list field.ListField<E>List field.Listener interface for notifications of a change in value of aListField
.MapField<K,V> Map field.Listener interface for notifications of a change in value of aMapField
.MapKeyIndex<K,V> An index on the keys of a map field.MapValueIndex<K,V> An index on the values of a map field.Object IDs.Non-null encoding forObjId
s.Represents aDatabase
object type.Thrown on an attempt to delete an object which is still referenced by aReferenceField
configured forDeleteAction.EXCEPTION
.TheEncoding
forReferenceField
s.A field that references anotherDatabase
object.Thrown on an attempt tocommit()
a transaction that has been marked rollback-only.Reflects the Schema table currently recorded in aDatabase
as seen by a particularTransaction
.Listener interface for notifications that an object's schema has been changed to match the current transaction.Thrown byDatabase.createTransaction(io.permazen.schema.SchemaModel)
when the expected schema does not match and of the schemas already recorded in the database.An index on the elements of a set field.SetField<E>Set field.Listener interface for notifications of a change in value of aSetField
.SimpleField<T>A simpleField
.Listener interface for notifications of a change in value of aSimpleField
.An index on a simple field that is not a sub-field of a complex field.SimpleIndex<T>An index on a simple field, either a regular simple field or a sub-field of a complex field.Thrown when a transaction that has been committed, rolled back, or otherwise invalidated is accessed.A PermazenDatabase
transaction.Callback interface for notification of transaction completion events.Adapter class forTransaction.Callback
.A fixed collection of listeners (CreateListener
s,DeleteListener
s,SchemaChangeListener
s,SimpleFieldChangeListener
s,SetFieldChangeListener
s,ListFieldChangeListener
s, andMapFieldChangeListener
s) that can be efficiently registered on aTransaction
all at once.Configuration for aTransaction
.Builder forTransactionConfig
s.Configures if and when to automatically detect and remove unused schemas from a database.Superclass of exceptions associated with a specificTransaction
.Thrown when attempting to migrate a database object to a new schema in which the object's type no longer exists.Thrown when an unknown field is accessed.Thrown when an unknown index is accessed.Thrown when attempting to access an unknown type.