Interface PersistenceFoundation<M,F extends PersistenceFoundation<M,?>>
-
- Type Parameters:
M
-
- All Superinterfaces:
ByteOrderTargeting<F>
,ByteOrderTargeting.Mutable<F>
,Cloneable<PersistenceFoundation<M,F>>
- All Known Subinterfaces:
BinaryPersistenceFoundation<F>
,EmbeddedStorageConnectionFoundation<F>
- All Known Implementing Classes:
BinaryPersistenceFoundation.Default
,EmbeddedStorageConnectionFoundation.Default
,PersistenceFoundation.Default
public interface PersistenceFoundation<M,F extends PersistenceFoundation<M,?>> extends Cloneable<PersistenceFoundation<M,F>>, ByteOrderTargeting.Mutable<F>
This type serves as a factory instance for buidlingPersistenceManager
instances. However, it is more than a mere factory as it keeps track of all component instances used in building aPersistenceManager
instance. For example managing parts of an application can use it to access former set ID providers or dictionary providers even after they have been assembled into (and are intentionally hindden in) aPersistenceManager
instance. Hence it can be seen as a kind of "master instance" of the built persistence layer or as its "foundation".
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static class
PersistenceFoundation.Default<M,F extends PersistenceFoundation.Default<M,?>>
-
Nested classes/interfaces inherited from interface one.microstream.persistence.types.ByteOrderTargeting
ByteOrderTargeting.Mutable<T extends ByteOrderTargeting.Mutable<?>>
-
-
Method Summary
-
Methods inherited from interface one.microstream.persistence.types.ByteOrderTargeting
getTargetByteOrder, isByteOrderMismatch
-
Methods inherited from interface one.microstream.persistence.types.ByteOrderTargeting.Mutable
setTargetByteOrder
-
-
-
-
Method Detail
-
Clone
PersistenceFoundation<M,F> Clone()
Description copied from interface:Cloneable
This method creates a new instance of the sameClass
, specified by, of the instance on which this method is called. Whatever initializations required to create a functional new instance are performed.However, this method does NOT create a copy of the current instance. (A common mistake is to confuse cloning with copying: cloning creates a duplicate with only equal initial state while copying creates a duplicate with equal full state. Example: a clone of an adult would not be an identical adult, but just an embryo with equal DNA. A state-wise identical adult would be a copy, not a clone.)
This method is effectively a constructor called on an existing instance. The use case of such a method is to eliminate the need to redundantly pass a second instance or constructor if a clone of an instance is needed.
To indicate the constructor-like character of this method, the pattern of starting the name with a capital letter is applied to this method (and to workaround the botch-job protected method the moronic JDK developers hardcoded in Object.)
-
getInstanceDispatcherLogic
InstanceDispatcherLogic getInstanceDispatcherLogic()
-
customTypeHandlers
XMap<Class<?>,PersistenceTypeHandler<M,?>> customTypeHandlers()
-
customTypeInstantiators
XMap<Class<?>,PersistenceTypeInstantiator<M,?>> customTypeInstantiators()
-
registerCustomTypeHandlers
F registerCustomTypeHandlers(HashTable<Class<?>,PersistenceTypeHandler<M,?>> customTypeHandlers)
-
registerCustomTypeHandlers
F registerCustomTypeHandlers(PersistenceTypeHandler<M,?>... customTypeHandlers)
-
registerCustomTypeHandlers
F registerCustomTypeHandlers(Iterable<? extends PersistenceTypeHandler<M,?>> customTypeHandlers)
-
registerCustomTypeHandler
F registerCustomTypeHandler(PersistenceTypeHandler<M,?> customTypeHandler)
-
registerCustomInstantiator
<T> F registerCustomInstantiator(Class<T> type, PersistenceTypeInstantiator<M,T> typeInstantiator)
-
getObjectIdProvider
PersistenceObjectIdProvider getObjectIdProvider()
-
getTypeIdProvider
PersistenceTypeIdProvider getTypeIdProvider()
-
getStorerCreator
PersistenceStorer.Creator<M> getStorerCreator()
-
getRegistererCreator
PersistenceRegisterer.Creator getRegistererCreator()
-
getBuilderCreator
PersistenceLoader.Creator<M> getBuilderCreator()
-
getPersistenceTarget
PersistenceTarget<M> getPersistenceTarget()
-
getPersistenceSource
PersistenceSource<M> getPersistenceSource()
-
getObjectRegistry
PersistenceObjectRegistry getObjectRegistry()
-
getObjectManager
PersistenceObjectManager getObjectManager()
-
getTypeRegistry
PersistenceTypeRegistry getTypeRegistry()
-
getTypeManager
PersistenceTypeManager getTypeManager()
-
getTypeHandlerManager
PersistenceTypeHandlerManager<M> getTypeHandlerManager()
-
getContextDispatcher
PersistenceContextDispatcher<M> getContextDispatcher()
-
getTypeHandlerProvider
PersistenceTypeHandlerProvider<M> getTypeHandlerProvider()
-
getTypeHandlerEnsurer
PersistenceTypeHandlerEnsurer<M> getTypeHandlerEnsurer()
-
getTypeHandlerRegistry
PersistenceTypeHandlerRegistry<M> getTypeHandlerRegistry()
-
getTypeDictionaryManager
PersistenceTypeDictionaryManager getTypeDictionaryManager()
-
getTypeDictionaryCreator
PersistenceTypeDictionaryCreator getTypeDictionaryCreator()
-
getTypeDictionaryProvider
PersistenceTypeDictionaryProvider getTypeDictionaryProvider()
-
getTypeDictionaryExporter
PersistenceTypeDictionaryExporter getTypeDictionaryExporter()
-
getTypeDictionaryParser
PersistenceTypeDictionaryParser getTypeDictionaryParser()
-
getTypeDictionaryLoader
PersistenceTypeDictionaryLoader getTypeDictionaryLoader()
-
getTypeDictionaryBuilder
PersistenceTypeDictionaryBuilder getTypeDictionaryBuilder()
-
getTypeDictionaryCompiler
PersistenceTypeDictionaryCompiler getTypeDictionaryCompiler()
-
getTypeDictionaryAssembler
PersistenceTypeDictionaryAssembler getTypeDictionaryAssembler()
-
getTypeDictionaryStorer
PersistenceTypeDictionaryStorer getTypeDictionaryStorer()
-
getTypeLineageCreator
PersistenceTypeLineageCreator getTypeLineageCreator()
-
getTypeHandlerCreator
PersistenceTypeHandlerCreator<M> getTypeHandlerCreator()
-
getCustomTypeHandlerRegistry
PersistenceCustomTypeHandlerRegistry<M> getCustomTypeHandlerRegistry()
Creates if required and returns thePersistenceCustomTypeHandlerRegistry
containing all custom tailoredPersistenceTypeHandler
instances for specialized handling of instances.To avoid order problems caused by internal implicit dependencies (e.g. creating the default custom type handlers required
getReferenceFieldEagerEvaluator()
), usecustomTypeHandlers()
or one of theregisterCustomTypeHandler~
methods.- Returns:
- the (on-demand created)
PersistenceCustomTypeHandlerRegistry
instance.
-
getTypeAnalyzer
PersistenceTypeAnalyzer getTypeAnalyzer()
-
getTypeResolver
PersistenceTypeResolver getTypeResolver()
-
getTypeMismatchValidator
PersistenceTypeMismatchValidator<M> getTypeMismatchValidator()
-
getTypeDefinitionCreator
PersistenceTypeDefinitionCreator getTypeDefinitionCreator()
-
getTypeEvaluatorPersistable
PersistenceTypeEvaluator getTypeEvaluatorPersistable()
-
getFieldFixedLengthResolver
PersistenceFieldLengthResolver getFieldFixedLengthResolver()
-
getReferenceFieldEagerEvaluator
PersistenceEagerStoringFieldEvaluator getReferenceFieldEagerEvaluator()
-
getBufferSizeProvider
BufferSizeProviderIncremental getBufferSizeProvider()
-
getFieldEvaluatorPersistable
PersistenceFieldEvaluator getFieldEvaluatorPersistable()
-
getFieldEvaluatorEnum
PersistenceFieldEvaluator getFieldEvaluatorEnum()
-
getFieldEvaluatorCollection
PersistenceFieldEvaluator getFieldEvaluatorCollection()
-
getRootResolverProvider
PersistenceRootResolverProvider getRootResolverProvider()
-
getRootsProvider
PersistenceRootsProvider<M> getRootsProvider()
-
getUnreachableTypeHandlerCreator
PersistenceUnreachableTypeHandlerCreator<M> getUnreachableTypeHandlerCreator()
-
getLegacyTypeMapper
PersistenceLegacyTypeMapper<M> getLegacyTypeMapper()
-
getRefactoringMappingProvider
PersistenceRefactoringMappingProvider getRefactoringMappingProvider()
-
getTypeDescriptionResolverProvider
PersistenceTypeDescriptionResolverProvider getTypeDescriptionResolverProvider()
-
getRefactoringLegacyTypeIdentifierBuilders
XEnum<? extends PersistenceRefactoringTypeIdentifierBuilder> getRefactoringLegacyTypeIdentifierBuilders()
-
getRefactoringLegacyMemberIdentifierBuilders
XEnum<? extends PersistenceRefactoringMemberIdentifierBuilder> getRefactoringLegacyMemberIdentifierBuilders()
-
getRefactoringCurrentMemberIdentifierBuilders
XEnum<? extends PersistenceRefactoringMemberIdentifierBuilder> getRefactoringCurrentMemberIdentifierBuilders()
-
getTypeSimilarity
TypeMapping<Float> getTypeSimilarity()
-
getLegacyMemberMatchingProvider
PersistenceMemberMatchingProvider getLegacyMemberMatchingProvider()
-
getLegacyTypeMappingResultor
PersistenceLegacyTypeMappingResultor<M> getLegacyTypeMappingResultor()
-
getLegacyTypeHandlerCreator
PersistenceLegacyTypeHandlerCreator<M> getLegacyTypeHandlerCreator()
-
getLegacyTypeHandlingListener
PersistenceLegacyTypeHandlingListener<M> getLegacyTypeHandlingListener()
-
getSizedArrayLengthController
PersistenceSizedArrayLengthController getSizedArrayLengthController()
-
getLambdaTypeRecognizer
LambdaTypeRecognizer getLambdaTypeRecognizer()
-
getInstantiator
PersistenceInstantiator<M> getInstantiator()
-
getInstantiatorProvider
PersistenceTypeInstantiatorProvider<M> getInstantiatorProvider()
-
setObjectRegistry
F setObjectRegistry(PersistenceObjectRegistry objectRegistry)
-
setTypeRegistry
F setTypeRegistry(PersistenceTypeRegistry typeRegistry)
-
setInstanceDispatcher
F setInstanceDispatcher(InstanceDispatcherLogic instanceDispatcher)
-
setObjectManager
F setObjectManager(PersistenceObjectManager objectManager)
-
setStorerCreator
F setStorerCreator(PersistenceStorer.Creator<M> storerCreator)
-
setTypeHandlerManager
F setTypeHandlerManager(PersistenceTypeHandlerManager<M> typeHandlerManager)
-
setContextDispatcher
F setContextDispatcher(PersistenceContextDispatcher<M> contextDispatcher)
-
setTypeManager
F setTypeManager(PersistenceTypeManager typeManager)
-
setTypeHandlerCreatorLookup
F setTypeHandlerCreatorLookup(PersistenceTypeHandlerEnsurer<M> typeHandlerCreatorLookup)
-
setTypeHandlerCreator
F setTypeHandlerCreator(PersistenceTypeHandlerCreator<M> typeHandlerCreator)
-
setTypeAnalyzer
F setTypeAnalyzer(PersistenceTypeAnalyzer typeAnalyzer)
-
setTypeResolver
F setTypeResolver(PersistenceTypeResolver typeResolver)
-
setTypeHandlerRegistry
F setTypeHandlerRegistry(PersistenceTypeHandlerRegistry<M> typeHandlerRegistry)
-
setTypeHandlerProvider
F setTypeHandlerProvider(PersistenceTypeHandlerProvider<M> typeHandlerProvider)
-
setRegistererCreator
F setRegistererCreator(PersistenceRegisterer.Creator registererCreator)
-
setBuilderCreator
F setBuilderCreator(PersistenceLoader.Creator<M> builderCreator)
-
setPersistenceTarget
F setPersistenceTarget(PersistenceTarget<M> target)
-
setPersistenceSource
F setPersistenceSource(PersistenceSource<M> source)
-
setTypeDictionaryManager
F setTypeDictionaryManager(PersistenceTypeDictionaryManager typeDictionaryManager)
-
setTypeDictionaryCreator
F setTypeDictionaryCreator(PersistenceTypeDictionaryCreator typeDictionaryCreator)
-
setTypeDictionaryProvider
F setTypeDictionaryProvider(PersistenceTypeDictionaryProvider typeDictionaryProvider)
-
setTypeDictionaryExporter
F setTypeDictionaryExporter(PersistenceTypeDictionaryExporter typeDictionaryExporter)
-
setTypeDictionaryParser
F setTypeDictionaryParser(PersistenceTypeDictionaryParser typeDictionaryParser)
-
setTypeDictionaryAssembler
F setTypeDictionaryAssembler(PersistenceTypeDictionaryAssembler typeDictionaryAssembler)
-
setTypeDictionaryLoader
F setTypeDictionaryLoader(PersistenceTypeDictionaryLoader typeDictionaryLoader)
-
setTypeDictionaryBuilder
F setTypeDictionaryBuilder(PersistenceTypeDictionaryBuilder typeDictionaryBuilder)
-
setTypeDictionaryCompiler
F setTypeDictionaryCompiler(PersistenceTypeDictionaryCompiler typeDictionaryCompiler)
-
setTypeDictionaryStorer
F setTypeDictionaryStorer(PersistenceTypeDictionaryStorer typeDictionaryStorer)
-
setTypeDictionaryIoHandling
<H extends PersistenceTypeDictionaryLoader & PersistenceTypeDictionaryStorer> F setTypeDictionaryIoHandling(H typeDictionaryStorage)
-
setTypeDictionaryIoHandler
default F setTypeDictionaryIoHandler(PersistenceTypeDictionaryIoHandler typeDictionaryIoHandler)
-
setTypeLineageCreator
F setTypeLineageCreator(PersistenceTypeLineageCreator typeLineageCreator)
-
setTypeMismatchValidator
F setTypeMismatchValidator(PersistenceTypeMismatchValidator<M> typeMismatchValidator)
-
setTypeDescriptionBuilder
F setTypeDescriptionBuilder(PersistenceTypeDefinitionCreator typeDefinitionCreator)
-
setTypeEvaluatorPersistable
F setTypeEvaluatorPersistable(PersistenceTypeEvaluator typeEvaluatorPersistable)
-
setBufferSizeProvider
F setBufferSizeProvider(BufferSizeProviderIncremental bufferSizeProvider)
-
setFieldFixedLengthResolver
F setFieldFixedLengthResolver(PersistenceFieldLengthResolver fieldFixedLengthResolver)
-
setFieldEvaluatorPersistable
F setFieldEvaluatorPersistable(PersistenceFieldEvaluator fieldEvaluator)
-
setFieldEvaluatorEnum
F setFieldEvaluatorEnum(PersistenceFieldEvaluator fieldEvaluator)
-
setFieldEvaluatorCollection
F setFieldEvaluatorCollection(PersistenceFieldEvaluator fieldEvaluator)
-
setReferenceFieldEagerEvaluator
F setReferenceFieldEagerEvaluator(PersistenceEagerStoringFieldEvaluator evaluator)
-
setRootResolverProvider
F setRootResolverProvider(PersistenceRootResolverProvider rootResolverProvider)
-
setLambdaTypeRecognizer
F setLambdaTypeRecognizer(LambdaTypeRecognizer lambdaTypeRecognizer)
-
setRootsProvider
F setRootsProvider(PersistenceRootsProvider<M> rootsProvider)
-
setUnreachableTypeHandlerCreator
F setUnreachableTypeHandlerCreator(PersistenceUnreachableTypeHandlerCreator<M> unreachableTypeHandlerCreator)
-
setLegacyTypeMapper
F setLegacyTypeMapper(PersistenceLegacyTypeMapper<M> legacyTypeMapper)
-
setTypeSimilarity
F setTypeSimilarity(TypeMapping<Float> typeSimilarity)
-
setRefactoringMappingProvider
F setRefactoringMappingProvider(PersistenceRefactoringMappingProvider refactoringMappingProvider)
-
setTypeDescriptionResolverProvider
F setTypeDescriptionResolverProvider(PersistenceTypeDescriptionResolverProvider typeDescriptionResolverProvider)
-
setRefactoringLegacyTypeIdentifierBuilders
F setRefactoringLegacyTypeIdentifierBuilders(XEnum<? extends PersistenceRefactoringTypeIdentifierBuilder> typeIdentifierBuilders)
-
setRefactoringLegacyMemberIdentifierBuilders
F setRefactoringLegacyMemberIdentifierBuilders(XEnum<? extends PersistenceRefactoringMemberIdentifierBuilder> memberIdentifierBuilders)
-
setRefactoringCurrentMemberIdentifierBuilders
F setRefactoringCurrentMemberIdentifierBuilders(XEnum<? extends PersistenceRefactoringMemberIdentifierBuilder> memberIdentifierBuilders)
-
setLegacyMemberMatchingProvider
F setLegacyMemberMatchingProvider(PersistenceMemberMatchingProvider legacyMemberMatchingProvider)
-
setLegacyTypeMappingResultor
F setLegacyTypeMappingResultor(PersistenceLegacyTypeMappingResultor<M> legacyTypeMappingResultor)
-
setLegacyTypeHandlerCreator
F setLegacyTypeHandlerCreator(PersistenceLegacyTypeHandlerCreator<M> legacyTypeHandlerCreator)
-
setLegacyTypeHandlingListener
F setLegacyTypeHandlingListener(PersistenceLegacyTypeHandlingListener<M> legacyTypeHandlingListener)
-
setPersistenceChannel
F setPersistenceChannel(PersistenceChannel<M> persistenceChannel)
-
setSizedArrayLengthController
F setSizedArrayLengthController(PersistenceSizedArrayLengthController sizedArrayLengthController)
-
setObjectIdProvider
F setObjectIdProvider(PersistenceObjectIdProvider oidProvider)
-
setTypeIdProvider
F setTypeIdProvider(PersistenceTypeIdProvider tidProvider)
-
setIdProvider
<P extends PersistenceTypeIdProvider & PersistenceObjectIdProvider> F setIdProvider(P idProvider)
-
setInstantiator
F setInstantiator(PersistenceInstantiator<M> instantiator)
-
setInstantiatorProvider
F setInstantiatorProvider(PersistenceTypeInstantiatorProvider<M> instantiatorProvider)
-
executeTypeHandlerRegistration
F executeTypeHandlerRegistration(PersistenceTypeHandlerRegistration<M> typeHandlerRegistration)
Executes the passedPersistenceTypeHandlerRegistration
logic while supplying this instance'sPersistenceCustomTypeHandlerRegistry
andPersistenceSizedArrayLengthController
instances. The passed instance itself will not be referenced after the method exits.- Parameters:
typeHandlerRegistration
- thePersistenceTypeHandlerRegistration
to be executed.- Returns:
- this to allow method chaining.
-
createPersistenceManager
PersistenceManager<M> createPersistenceManager()
-
New
static <M> PersistenceFoundation<M,?> New()
-
-