Package one.microstream.persistence.lazy
Class BinaryHandlerLazy
- java.lang.Object
-
- one.microstream.persistence.types.PersistenceTypeHandler.Abstract<Binary,T>
-
- one.microstream.persistence.binary.types.BinaryTypeHandler.Abstract<T>
-
- one.microstream.persistence.binary.internal.AbstractBinaryHandlerCustom<Lazy<?>>
-
- one.microstream.persistence.lazy.BinaryHandlerLazy
-
- All Implemented Interfaces:
BinaryTypeHandler<Lazy<?>>
,PersistenceTypeDefinition
,PersistenceTypeDescription
,PersistenceTypeHandler<Binary,Lazy<?>>
,PersistenceTypeIdentity
,PersistenceTypeIdOwner
,PersistenceTypeLink
public final class BinaryHandlerLazy extends AbstractBinaryHandlerCustom<Lazy<?>>
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface one.microstream.persistence.binary.types.BinaryTypeHandler
BinaryTypeHandler.Abstract<T>
-
Nested classes/interfaces inherited from interface one.microstream.persistence.types.PersistenceTypeDefinition
PersistenceTypeDefinition.Default
-
Nested classes/interfaces inherited from interface one.microstream.persistence.types.PersistenceTypeDescription
PersistenceTypeDescription.Identity
-
Nested classes/interfaces inherited from interface one.microstream.persistence.types.PersistenceTypeHandler
PersistenceTypeHandler.Abstract<M,T>
-
-
Constructor Summary
Constructors Constructor Description BinaryHandlerLazy()
-
Method Summary
Modifier and Type Method Description void
complete(Binary medium, Lazy<?> instance, PersistenceObjectIdResolver idResolver)
Completes an initially built instance after all loaded instances have been built.Lazy<?>
create(Binary bytes, PersistenceObjectIdResolver idResolver)
boolean
hasInstanceReferences()
boolean
hasPersistedReferences()
boolean
hasPersistedVariableLength()
Provides information if two instances of the handled type can have different length in persisted form.boolean
hasVaryingPersistedLengthInstances()
Provides information if one particular instance can have variing binary length from one store to another.void
iterateLoadableReferences(Binary offset, PersistenceObjectIdAcceptor iterator)
static BinaryHandlerLazy
New()
void
store(Binary bytes, Lazy<?> instance, long objectId, PersistenceStoreHandler handler)
void
update(Binary bytes, Lazy<?> instance, PersistenceObjectIdResolver idResolver)
-
Methods inherited from class one.microstream.persistence.binary.internal.AbstractBinaryHandlerCustom
allMembers, bytes, chars, Complex, CustomField, CustomField, CustomFields, defineValueType, instanceMembers, isPrimitiveType, iterateInstanceReferences, iterateMemberTypes, keyValuesFields, membersPersistedLengthMaximum, membersPersistedLengthMinimum, SimpleArrayFields, SizedArrayFields
-
Methods inherited from class one.microstream.persistence.binary.types.BinaryTypeHandler.Abstract
declaredField, declaredField
-
Methods inherited from class one.microstream.persistence.types.PersistenceTypeHandler.Abstract
declaredField, declaredFields, initialize, toString, type, typeId, typeName, validateAndImmure
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface one.microstream.persistence.types.PersistenceTypeDefinition
runtimeTypeName, toRuntimeTypeIdentifier, typeId, typeName
-
Methods inherited from interface one.microstream.persistence.types.PersistenceTypeDescription
toTypeIdentifier
-
Methods inherited from interface one.microstream.persistence.types.PersistenceTypeHandler
collectEnumConstants, getPersistedEnumOrdinal, guaranteeSpecificInstanceViablity, guaranteeSubTypeInstanceViablity, initialize, isSpecificInstanceViable, isSubTypeInstanceViable, membersInDeclaredOrder, settingMembers, storingMembers, type
-
-
-
-
Method Detail
-
New
public static BinaryHandlerLazy New()
-
store
public void store(Binary bytes, Lazy<?> instance, long objectId, PersistenceStoreHandler handler)
- Specified by:
store
in interfacePersistenceTypeHandler<Binary,Lazy<?>>
- Specified by:
store
in classAbstractBinaryHandlerCustom<Lazy<?>>
-
create
public Lazy<?> create(Binary bytes, PersistenceObjectIdResolver idResolver)
- Specified by:
create
in interfacePersistenceTypeHandler<Binary,Lazy<?>>
- Specified by:
create
in classAbstractBinaryHandlerCustom<Lazy<?>>
-
update
public final void update(Binary bytes, Lazy<?> instance, PersistenceObjectIdResolver idResolver)
- Specified by:
update
in interfacePersistenceTypeHandler<Binary,Lazy<?>>
- Overrides:
update
in classAbstractBinaryHandlerCustom<Lazy<?>>
-
complete
public final void complete(Binary medium, Lazy<?> instance, PersistenceObjectIdResolver idResolver)
Description copied from interface:PersistenceTypeHandler
Completes an initially built instance after all loaded instances have been built. E.g. can be used to cause a hash collection to hash all its initially collected entries after their instances have been built.- Specified by:
complete
in interfacePersistenceTypeHandler<Binary,Lazy<?>>
- Overrides:
complete
in classAbstractBinaryHandlerCustom<Lazy<?>>
-
hasInstanceReferences
public final boolean hasInstanceReferences()
-
hasPersistedReferences
public final boolean hasPersistedReferences()
-
hasPersistedVariableLength
public boolean hasPersistedVariableLength()
Description copied from interface:PersistenceTypeDefinition
Provides information if two instances of the handled type can have different length in persisted form.Examples for variable length types:
- arrays
-
java.lang.String
-
java.util.ArrayList
-
java.math.BigDecimal
Examples for fixed length types:
- primitive value wrapper types
-
java.lang.Object
-
java.util.Date
- typical entity types (without unshared inlined variable length component instances)
-
hasVaryingPersistedLengthInstances
public boolean hasVaryingPersistedLengthInstances()
Description copied from interface:PersistenceTypeDefinition
Provides information if one particular instance can have variing binary length from one store to another.Examples for variable length instances:
- variable size collection instances
- variable size pesudo collection instances like
java.util.StringBuilder
- instances of custom defined types similar to collections
Examples for fixed length instances:
- arrays
- all immutable type instances (like
java.lang.String
) - all fixed length types (see
PersistenceTypeDefinition.hasVaryingPersistedLengthInstances()
-
iterateLoadableReferences
public void iterateLoadableReferences(Binary offset, PersistenceObjectIdAcceptor iterator)
-
-