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 voidcomplete(Binary medium, Lazy<?> instance, PersistenceObjectIdResolver idResolver)Completes an initially built instance after all loaded instances have been built.Lazy<?>create(Binary bytes, PersistenceObjectIdResolver idResolver)booleanhasInstanceReferences()booleanhasPersistedReferences()booleanhasPersistedVariableLength()Provides information if two instances of the handled type can have different length in persisted form.booleanhasVaryingPersistedLengthInstances()Provides information if one particular instance can have variing binary length from one store to another.voiditerateLoadableReferences(Binary offset, PersistenceObjectIdAcceptor iterator)static BinaryHandlerLazyNew()voidstore(Binary bytes, Lazy<?> instance, long objectId, PersistenceStoreHandler handler)voidupdate(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:
storein interfacePersistenceTypeHandler<Binary,Lazy<?>>- Specified by:
storein classAbstractBinaryHandlerCustom<Lazy<?>>
-
create
public Lazy<?> create(Binary bytes, PersistenceObjectIdResolver idResolver)
- Specified by:
createin interfacePersistenceTypeHandler<Binary,Lazy<?>>- Specified by:
createin classAbstractBinaryHandlerCustom<Lazy<?>>
-
update
public final void update(Binary bytes, Lazy<?> instance, PersistenceObjectIdResolver idResolver)
- Specified by:
updatein interfacePersistenceTypeHandler<Binary,Lazy<?>>- Overrides:
updatein classAbstractBinaryHandlerCustom<Lazy<?>>
-
complete
public final void complete(Binary medium, Lazy<?> instance, PersistenceObjectIdResolver idResolver)
Description copied from interface:PersistenceTypeHandlerCompletes 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:
completein interfacePersistenceTypeHandler<Binary,Lazy<?>>- Overrides:
completein classAbstractBinaryHandlerCustom<Lazy<?>>
-
hasInstanceReferences
public final boolean hasInstanceReferences()
-
hasPersistedReferences
public final boolean hasPersistedReferences()
-
hasPersistedVariableLength
public boolean hasPersistedVariableLength()
Description copied from interface:PersistenceTypeDefinitionProvides 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:PersistenceTypeDefinitionProvides 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)
-
-