Class AbstractBinaryHandlerTrivial<T>
- java.lang.Object
-
- one.microstream.persistence.types.PersistenceTypeHandler.Abstract<Binary,T>
-
- one.microstream.persistence.binary.types.BinaryTypeHandler.Abstract<T>
-
- one.microstream.persistence.binary.internal.AbstractBinaryHandlerTrivial<T>
-
- All Implemented Interfaces:
BinaryTypeHandler<T>,PersistenceTypeDefinition,PersistenceTypeDescription,PersistenceTypeHandler<Binary,T>,PersistenceTypeIdentity,PersistenceTypeIdOwner,PersistenceTypeLink
- Direct Known Subclasses:
BinaryHandlerAbstractType,BinaryHandlerNoOp,BinaryHandlerPrimitive,BinaryHandlerSingletonStatelessEnum,BinaryHandlerStateless,BinaryHandlerUnpersistable
public abstract class AbstractBinaryHandlerTrivial<T> extends BinaryTypeHandler.Abstract<T>
-
-
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 AbstractBinaryHandlerTrivial()
-
Method Summary
Modifier and Type Method Description XGettingEnum<? extends PersistenceTypeDefinitionMember>allMembers()voidcomplete(Binary medium, T instance, PersistenceObjectIdResolver idResolver)Completes an initially built instance after all loaded instances have been built.booleanhasInstanceReferences()booleanhasPersistedReferences()booleanhasVaryingPersistedLengthInstances()Provides information if one particular instance can have variing binary length from one store to another.XGettingEnum<? extends PersistenceTypeDefinitionMember>instanceMembers()Enum (unique elements with order), usingPersistenceTypeDescriptionMember.identityHashEqualator().booleanisPrimitiveType()voiditerateInstanceReferences(T instance, PersistenceFunction iterator)voiditerateLoadableReferences(Binary offset, PersistenceObjectIdAcceptor iterator)<C extends Consumer<? super Class<?>>>
CiterateMemberTypes(C logic)Iterates the types of persistent members (e.g.longmembersPersistedLengthMaximum()longmembersPersistedLengthMinimum()voidupdate(Binary medium, T instance, PersistenceObjectIdResolver idResolver)-
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
hasPersistedVariableLength, runtimeTypeName, toRuntimeTypeIdentifier, typeId, typeName
-
Methods inherited from interface one.microstream.persistence.types.PersistenceTypeDescription
toTypeIdentifier
-
Methods inherited from interface one.microstream.persistence.types.PersistenceTypeHandler
collectEnumConstants, create, getPersistedEnumOrdinal, guaranteeSpecificInstanceViablity, guaranteeSubTypeInstanceViablity, initialize, isSpecificInstanceViable, isSubTypeInstanceViable, membersInDeclaredOrder, settingMembers, store, storingMembers, type
-
-
-
-
Method Detail
-
update
public void update(Binary medium, T instance, PersistenceObjectIdResolver idResolver)
-
complete
public final void complete(Binary medium, T 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.
-
iterateInstanceReferences
public final void iterateInstanceReferences(T instance, PersistenceFunction iterator)
-
iterateLoadableReferences
public final void iterateLoadableReferences(Binary offset, PersistenceObjectIdAcceptor iterator)
-
allMembers
public XGettingEnum<? extends PersistenceTypeDefinitionMember> allMembers()
-
instanceMembers
public XGettingEnum<? extends PersistenceTypeDefinitionMember> instanceMembers()
Description copied from interface:PersistenceTypeDefinitionEnum (unique elements with order), usingPersistenceTypeDescriptionMember.identityHashEqualator(). Contains all persistent members (similar, but not identical to fields) in persistent order, which can differ from the declaration order.
-
membersPersistedLengthMinimum
public long membersPersistedLengthMinimum()
-
membersPersistedLengthMaximum
public long membersPersistedLengthMaximum()
-
isPrimitiveType
public boolean isPrimitiveType()
-
hasPersistedReferences
public final boolean hasPersistedReferences()
-
hasInstanceReferences
public final boolean hasInstanceReferences()
-
hasVaryingPersistedLengthInstances
public final 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()
-
iterateMemberTypes
public final <C extends Consumer<? super Class<?>>> C iterateMemberTypes(C logic)
Description copied from interface:PersistenceTypeHandlerIterates the types of persistent members (e.g. non-transientFields). The same type may occur more than once. The order in which the types are provided is undefined, i.e. depending on the implementation.
-
-