Interface PersistenceStorer.Creator<D>
-
- All Known Subinterfaces:
BinaryStorer.Creator
- All Known Implementing Classes:
BinaryStorer.Creator.Abstract
,BinaryStorer.Creator.Default
- Enclosing interface:
- PersistenceStorer
public static interface PersistenceStorer.Creator<D>
-
-
Method Summary
Modifier and Type Method Description PersistenceStorer
createEagerStorer(PersistenceTypeHandlerManager<D> typeManager, PersistenceObjectManager objectManager, ObjectSwizzling objectRetriever, PersistenceTarget<D> target, BufferSizeProviderIncremental bufferSizeProvider)
Creates aPersistenceStorer
instance with a storing logic that stores every instance that is encountered during the traversal of the entity graph once.
Warning: This means that every (persistable) reference is traversed and every reachable instance is stored.PersistenceStorer
createLazyStorer(PersistenceTypeHandlerManager<D> typeManager, PersistenceObjectManager objectManager, ObjectSwizzling objectRetriever, PersistenceTarget<D> target, BufferSizeProviderIncremental bufferSizeProvider)
Creates aPersistenceStorer
instance with a storing logic that stores instances that are encountered during the traversal of the entity graph that "require" to be stored.default PersistenceStorer
createStorer(PersistenceTypeHandlerManager<D> typeManager, PersistenceObjectManager objectManager, ObjectSwizzling objectRetriever, PersistenceTarget<D> target, BufferSizeProviderIncremental bufferSizeProvider)
Creates a storer with a default or "natural" storing logic.
-
-
-
Method Detail
-
createLazyStorer
PersistenceStorer createLazyStorer(PersistenceTypeHandlerManager<D> typeManager, PersistenceObjectManager objectManager, ObjectSwizzling objectRetriever, PersistenceTarget<D> target, BufferSizeProviderIncremental bufferSizeProvider)
Creates aPersistenceStorer
instance with a storing logic that stores instances that are encountered during the traversal of the entity graph that "require" to be stored. The actual meaning of being "required" depends on the implementation. An example for being "required" is not having an instance registered in the global object registry and associated an biunique OID.- Parameters:
objectManager
-objectRetriever
-typeManager
-target
-bufferSizeProvider
-
-
createStorer
default PersistenceStorer createStorer(PersistenceTypeHandlerManager<D> typeManager, PersistenceObjectManager objectManager, ObjectSwizzling objectRetriever, PersistenceTarget<D> target, BufferSizeProviderIncremental bufferSizeProvider)
Creates a storer with a default or "natural" storing logic. The default for this method (the "default default" in a way) is to delegate the call tocreateLazyStorer(one.microstream.persistence.types.PersistenceTypeHandlerManager<D>, one.microstream.persistence.types.PersistenceObjectManager, one.microstream.reference.ObjectSwizzling, one.microstream.persistence.types.PersistenceTarget<D>, one.microstream.util.BufferSizeProviderIncremental)
.- Parameters:
objectManager
-objectRetriever
-typeManager
-target
-bufferSizeProvider
-
-
createEagerStorer
PersistenceStorer createEagerStorer(PersistenceTypeHandlerManager<D> typeManager, PersistenceObjectManager objectManager, ObjectSwizzling objectRetriever, PersistenceTarget<D> target, BufferSizeProviderIncremental bufferSizeProvider)
Creates aPersistenceStorer
instance with a storing logic that stores every instance that is encountered during the traversal of the entity graph once.
Warning: This means that every (persistable) reference is traversed and every reachable instance is stored. Depending on the used data model, this can mean that the whole entity graph of an application is traversed and stored. This MIGHT be reasonable for very tiny applications, where storing simply means to start at the root entity and indiscriminately store every entity there is. Apart from this (rather academic) case, a storer with this logic should only be used for a confined entity sub-graph that has no reference "escaping" to the remaning entities.- Parameters:
objectManager
-objectRetriever
-typeManager
-target
-bufferSizeProvider
-
-
-