Class AbstractBinaryHandlerReflective<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.AbstractBinaryHandlerReflective<T>
-
- All Implemented Interfaces:
BinaryTypeHandler<T>,PersistenceDataTypeHolder<Binary>,PersistenceTypeDefinition,PersistenceTypeDescription,PersistenceTypeHandler<Binary,T>,PersistenceTypeHandlerGeneric<Binary,T>,PersistenceTypeHandlerReflective<Binary,T>,PersistenceTypeIdentity,PersistenceTypeIdOwner,PersistenceTypeLink
- Direct Known Subclasses:
BinaryHandlerGenericEnum,BinaryHandlerGenericType
public abstract class AbstractBinaryHandlerReflective<T> extends BinaryTypeHandler.Abstract<T> implements PersistenceTypeHandlerReflective<Binary,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.PersistenceDataTypeHolder
PersistenceDataTypeHolder.Default<D extends Object>
-
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<D extends Object,T extends Object>
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedAbstractBinaryHandlerReflective(Class<T> type, String typeName, one.microstream.collections.types.XGettingEnum<Field> persistableFields, one.microstream.collections.types.XGettingEnum<Field> persisterFields, PersistenceFieldLengthResolver lengthResolver, PersistenceEagerStoringFieldEvaluator eagerEvaluator, boolean switchByteOrder)
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description one.microstream.collections.types.XGettingEnum<? extends PersistenceTypeDefinitionMember>allMembers()protected static longcalculcateBinaryContentLength(Iterable<PersistenceTypeDefinitionMemberFieldReflective> storingMembers)voidcomplete(Binary data, T instance, PersistenceLoadHandler handler)abstract Tcreate(Binary data, PersistenceLoadHandler handler)protected static voidcreateStorers(Class<?> entityType, Iterable<PersistenceTypeDefinitionMemberFieldReflective> storingMembers, BinaryValueStorer[] storers, PersistenceEagerStoringFieldEvaluator eagerEvaluator, boolean switchByteOrder)protected static one.microstream.collections.types.XGettingSequence<PersistenceTypeDefinitionMemberFieldReflective>createTypeDescriptionMembers(Field[] persistentOrderFields, PersistenceFieldLengthResolver lengthResolver)protected one.microstream.collections.EqConstHashEnum<PersistenceTypeDefinitionMember>deriveAllMembers(one.microstream.collections.types.XGettingSequence<? extends PersistenceTypeDefinitionMember> declaredOrderInstanceMembers)protected static one.microstream.collections.EqHashEnum<PersistenceTypeDefinitionMemberFieldReflective>deriveMembers(one.microstream.collections.types.XGettingEnum<Field> fields, PersistenceFieldLengthResolver lengthResolver)protected BinaryValueSetterderiveSetter(PersistenceTypeDefinitionMemberFieldReflective member)protected BinaryValueSetter[]deriveSetters()protected static longequal(long value1, long value2)protected static one.microstream.collections.EqConstHashEnum<PersistenceTypeDefinitionMemberFieldReflective>filter(one.microstream.collections.types.XGettingCollection<? extends PersistenceTypeDefinitionMemberFieldReflective> fields, Predicate<? super PersistenceTypeDefinitionMemberFieldReflective> predicate)protected one.microstream.collections.EqHashEnum<PersistenceTypeDefinitionMemberFieldReflective>filterPrimitiveMembers(one.microstream.collections.types.XGettingCollection<PersistenceTypeDefinitionMemberFieldReflective> members, one.microstream.collections.EqHashEnum<PersistenceTypeDefinitionMemberFieldReflective> target)protected one.microstream.collections.EqHashEnum<PersistenceTypeDefinitionMemberFieldReflective>filterReferenceMembers(one.microstream.collections.types.XGettingCollection<PersistenceTypeDefinitionMemberFieldReflective> members, one.microstream.collections.EqHashEnum<PersistenceTypeDefinitionMemberFieldReflective> target)protected one.microstream.collections.EqConstHashEnum<PersistenceTypeDefinitionMemberFieldReflective>filterSettingMembers(one.microstream.collections.EqConstHashEnum<PersistenceTypeDefinitionMemberFieldReflective> members)booleanhasPersistedReferences()booleanhasPersistedVariableLength()booleanhasVaryingPersistedLengthInstances()protected long[]initializeSettingMemoryOffsets()protected long[]initializeStoringMemoryOffsets()protected long[]initializeStoringRefMemOffsets()one.microstream.collections.types.XGettingEnum<Field>instanceFields()one.microstream.collections.types.XGettingEnum<? extends PersistenceTypeDefinitionMemberFieldReflective>instanceMembers()one.microstream.collections.types.XGettingEnum<Field>instancePrimitiveFields()one.microstream.collections.types.XGettingEnum<Field>instanceReferenceFields()booleanisPrimitiveType()booleanisSwitchedByteOrder()voiditerateInstanceReferences(T instance, PersistenceFunction iterator)voiditerateLoadableReferences(Binary data, PersistenceReferenceLoader iterator)<C extends Consumer<? super Class<?>>>
CiterateMemberTypes(C logic)protected static <D extends PersistenceTypeDefinitionMember>
one.microstream.collections.EqHashEnum<D>MemberEnum()protected static <D extends PersistenceTypeDefinitionMember>
one.microstream.collections.EqHashEnum<D>MemberEnum(one.microstream.collections.types.XGettingCollection<D> initialMembers)one.microstream.collections.types.XGettingEnum<? extends PersistenceTypeDefinitionMember>membersInDeclaredOrder()longmembersPersistedLengthMaximum()longmembersPersistedLengthMinimum()protected static long[]objectFieldOffsets(Class<?> entityClass, one.microstream.collections.types.XGettingSequence<? extends PersistenceTypeDefinitionMemberFieldReflective> members)one.microstream.collections.types.XGettingEnum<? extends PersistenceTypeDefinitionMemberFieldReflective>settingMembers()voidstore(Binary data, T instance, long objectId, PersistenceStoreHandler<Binary> handler)one.microstream.collections.types.XGettingEnum<? extends PersistenceTypeDefinitionMemberFieldReflective>storingMembers()protected static <C extends Consumer<? super Field>>
Cunbox(one.microstream.collections.types.XGettingCollection<? extends PersistenceTypeDefinitionMemberFieldReflective> members, C collector)voidupdateState(Binary data, T instance, PersistenceLoadHandler handler)-
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, deriveTypeName, initialize, internalInitialize, toString, type, typeId, typeName, validateAndImmure, validateInstance
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface one.microstream.persistence.binary.types.BinaryTypeHandler
dataType
-
Methods inherited from interface one.microstream.persistence.types.PersistenceTypeDefinition
runtimeTypeName, toRuntimeTypeIdentifier, typeId, typeName
-
Methods inherited from interface one.microstream.persistence.types.PersistenceTypeDescription
instancePrimitiveMembers, instanceReferenceMembers, toTypeIdentifier
-
Methods inherited from interface one.microstream.persistence.types.PersistenceTypeHandler
collectEnumConstants, getPersistedEnumOrdinal, guaranteeSpecificInstanceViablity, guaranteeSubTypeInstanceViablity, initialize, initializeState, isSpecificInstanceViable, isSubTypeInstanceViable, isValidEntityType, type, validateEntityType
-
-
-
-
Constructor Detail
-
AbstractBinaryHandlerReflective
protected AbstractBinaryHandlerReflective(Class<T> type, String typeName, one.microstream.collections.types.XGettingEnum<Field> persistableFields, one.microstream.collections.types.XGettingEnum<Field> persisterFields, PersistenceFieldLengthResolver lengthResolver, PersistenceEagerStoringFieldEvaluator eagerEvaluator, boolean switchByteOrder)
-
-
Method Detail
-
MemberEnum
protected static <D extends PersistenceTypeDefinitionMember> one.microstream.collections.EqHashEnum<D> MemberEnum()
-
MemberEnum
protected static <D extends PersistenceTypeDefinitionMember> one.microstream.collections.EqHashEnum<D> MemberEnum(one.microstream.collections.types.XGettingCollection<D> initialMembers)
-
deriveMembers
protected static one.microstream.collections.EqHashEnum<PersistenceTypeDefinitionMemberFieldReflective> deriveMembers(one.microstream.collections.types.XGettingEnum<Field> fields, PersistenceFieldLengthResolver lengthResolver)
-
filter
protected static final one.microstream.collections.EqConstHashEnum<PersistenceTypeDefinitionMemberFieldReflective> filter(one.microstream.collections.types.XGettingCollection<? extends PersistenceTypeDefinitionMemberFieldReflective> fields, Predicate<? super PersistenceTypeDefinitionMemberFieldReflective> predicate)
-
unbox
protected static final <C extends Consumer<? super Field>> C unbox(one.microstream.collections.types.XGettingCollection<? extends PersistenceTypeDefinitionMemberFieldReflective> members, C collector)
-
equal
protected static final long equal(long value1, long value2) throws IllegalArgumentException- Throws:
IllegalArgumentException
-
createStorers
protected static void createStorers(Class<?> entityType, Iterable<PersistenceTypeDefinitionMemberFieldReflective> storingMembers, BinaryValueStorer[] storers, PersistenceEagerStoringFieldEvaluator eagerEvaluator, boolean switchByteOrder)
-
calculcateBinaryContentLength
protected static long calculcateBinaryContentLength(Iterable<PersistenceTypeDefinitionMemberFieldReflective> storingMembers)
-
createTypeDescriptionMembers
protected static final one.microstream.collections.types.XGettingSequence<PersistenceTypeDefinitionMemberFieldReflective> createTypeDescriptionMembers(Field[] persistentOrderFields, PersistenceFieldLengthResolver lengthResolver)
-
objectFieldOffsets
protected static final long[] objectFieldOffsets(Class<?> entityClass, one.microstream.collections.types.XGettingSequence<? extends PersistenceTypeDefinitionMemberFieldReflective> members)
-
initializeStoringMemoryOffsets
protected long[] initializeStoringMemoryOffsets()
-
initializeSettingMemoryOffsets
protected long[] initializeSettingMemoryOffsets()
-
deriveSetters
protected BinaryValueSetter[] deriveSetters()
-
deriveSetter
protected BinaryValueSetter deriveSetter(PersistenceTypeDefinitionMemberFieldReflective member)
-
initializeStoringRefMemOffsets
protected long[] initializeStoringRefMemOffsets()
-
filterSettingMembers
protected one.microstream.collections.EqConstHashEnum<PersistenceTypeDefinitionMemberFieldReflective> filterSettingMembers(one.microstream.collections.EqConstHashEnum<PersistenceTypeDefinitionMemberFieldReflective> members)
-
filterReferenceMembers
protected one.microstream.collections.EqHashEnum<PersistenceTypeDefinitionMemberFieldReflective> filterReferenceMembers(one.microstream.collections.types.XGettingCollection<PersistenceTypeDefinitionMemberFieldReflective> members, one.microstream.collections.EqHashEnum<PersistenceTypeDefinitionMemberFieldReflective> target)
-
filterPrimitiveMembers
protected one.microstream.collections.EqHashEnum<PersistenceTypeDefinitionMemberFieldReflective> filterPrimitiveMembers(one.microstream.collections.types.XGettingCollection<PersistenceTypeDefinitionMemberFieldReflective> members, one.microstream.collections.EqHashEnum<PersistenceTypeDefinitionMemberFieldReflective> target)
-
deriveAllMembers
protected one.microstream.collections.EqConstHashEnum<PersistenceTypeDefinitionMember> deriveAllMembers(one.microstream.collections.types.XGettingSequence<? extends PersistenceTypeDefinitionMember> declaredOrderInstanceMembers)
-
isSwitchedByteOrder
public final boolean isSwitchedByteOrder()
-
instanceFields
public one.microstream.collections.types.XGettingEnum<Field> instanceFields()
- Specified by:
instanceFieldsin interfacePersistenceTypeHandlerReflective<Binary,T>
-
instancePrimitiveFields
public one.microstream.collections.types.XGettingEnum<Field> instancePrimitiveFields()
- Specified by:
instancePrimitiveFieldsin interfacePersistenceTypeHandlerReflective<Binary,T>
-
instanceReferenceFields
public one.microstream.collections.types.XGettingEnum<Field> instanceReferenceFields()
- Specified by:
instanceReferenceFieldsin interfacePersistenceTypeHandlerReflective<Binary,T>
-
isPrimitiveType
public final boolean isPrimitiveType()
- Specified by:
isPrimitiveTypein interfacePersistenceTypeDefinition
-
allMembers
public one.microstream.collections.types.XGettingEnum<? extends PersistenceTypeDefinitionMember> allMembers()
- Specified by:
allMembersin interfacePersistenceTypeDefinition- Specified by:
allMembersin interfacePersistenceTypeDescription- Specified by:
allMembersin interfacePersistenceTypeHandler<Binary,T>
-
instanceMembers
public one.microstream.collections.types.XGettingEnum<? extends PersistenceTypeDefinitionMemberFieldReflective> instanceMembers()
- Specified by:
instanceMembersin interfacePersistenceTypeDefinition- Specified by:
instanceMembersin interfacePersistenceTypeDescription- Specified by:
instanceMembersin interfacePersistenceTypeHandler<Binary,T>- Specified by:
instanceMembersin interfacePersistenceTypeHandlerReflective<Binary,T>
-
storingMembers
public one.microstream.collections.types.XGettingEnum<? extends PersistenceTypeDefinitionMemberFieldReflective> storingMembers()
- Specified by:
storingMembersin interfacePersistenceTypeHandler<Binary,T>- Specified by:
storingMembersin interfacePersistenceTypeHandlerReflective<Binary,T>
-
settingMembers
public one.microstream.collections.types.XGettingEnum<? extends PersistenceTypeDefinitionMemberFieldReflective> settingMembers()
- Specified by:
settingMembersin interfacePersistenceTypeHandler<Binary,T>- Specified by:
settingMembersin interfacePersistenceTypeHandlerReflective<Binary,T>
-
membersInDeclaredOrder
public one.microstream.collections.types.XGettingEnum<? extends PersistenceTypeDefinitionMember> membersInDeclaredOrder()
- Specified by:
membersInDeclaredOrderin interfacePersistenceTypeHandler<Binary,T>
-
hasPersistedReferences
public final boolean hasPersistedReferences()
- Specified by:
hasPersistedReferencesin interfacePersistenceTypeDefinition
-
membersPersistedLengthMinimum
public final long membersPersistedLengthMinimum()
- Specified by:
membersPersistedLengthMinimumin interfacePersistenceTypeDefinition
-
membersPersistedLengthMaximum
public final long membersPersistedLengthMaximum()
- Specified by:
membersPersistedLengthMaximumin interfacePersistenceTypeDefinition
-
hasPersistedVariableLength
public final boolean hasPersistedVariableLength()
- Specified by:
hasPersistedVariableLengthin interfacePersistenceTypeDefinition
-
hasVaryingPersistedLengthInstances
public final boolean hasVaryingPersistedLengthInstances()
- Specified by:
hasVaryingPersistedLengthInstancesin interfacePersistenceTypeDefinition
-
store
public void store(Binary data, T instance, long objectId, PersistenceStoreHandler<Binary> handler)
- Specified by:
storein interfacePersistenceTypeHandler<Binary,T>
-
create
public abstract T create(Binary data, PersistenceLoadHandler handler)
- Specified by:
createin interfacePersistenceTypeHandler<Binary,T>
-
updateState
public void updateState(Binary data, T instance, PersistenceLoadHandler handler)
- Specified by:
updateStatein interfacePersistenceTypeHandler<Binary,T>
-
complete
public final void complete(Binary data, T instance, PersistenceLoadHandler handler)
- Specified by:
completein interfacePersistenceTypeHandler<Binary,T>
-
iterateInstanceReferences
public void iterateInstanceReferences(T instance, PersistenceFunction iterator)
- Specified by:
iterateInstanceReferencesin interfacePersistenceTypeHandler<Binary,T>
-
iterateLoadableReferences
public void iterateLoadableReferences(Binary data, PersistenceReferenceLoader iterator)
- Specified by:
iterateLoadableReferencesin interfacePersistenceTypeHandler<Binary,T>
-
iterateMemberTypes
public <C extends Consumer<? super Class<?>>> C iterateMemberTypes(C logic)
- Specified by:
iterateMemberTypesin interfacePersistenceTypeHandler<Binary,T>
-
-