Class BinaryStorer.Creator.Default

java.lang.Object
one.microstream.persistence.binary.types.BinaryStorer.Creator.Abstract
one.microstream.persistence.binary.types.BinaryStorer.Creator.Default
All Implemented Interfaces:
BinaryStorer.Creator, PersistenceStorer.Creator<Binary>
Enclosing interface:
BinaryStorer.Creator

public static final class BinaryStorer.Creator.Default
extends BinaryStorer.Creator.Abstract
  • Method Details

    • createLazyStorer

      public final BinaryStorer createLazyStorer​(PersistenceTypeHandlerManager<Binary> typeManager, PersistenceObjectManager<Binary> objectManager, ObjectSwizzling objectRetriever, PersistenceTarget<Binary> target, BufferSizeProviderIncremental bufferSizeProvider)
      Description copied from interface: PersistenceStorer.Creator
      Creates a PersistenceStorer 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:
      typeManager - the provided type manager
      objectManager - the provided object manager
      objectRetriever - the provided object retriever
      target - the provided persistence target
      bufferSizeProvider - the provided buffer size provider
      Returns:
      a new lazy storer
    • createEagerStorer

      public BinaryStorer createEagerStorer​(PersistenceTypeHandlerManager<Binary> typeManager, PersistenceObjectManager<Binary> objectManager, ObjectSwizzling objectRetriever, PersistenceTarget<Binary> target, BufferSizeProviderIncremental bufferSizeProvider)
      Description copied from interface: PersistenceStorer.Creator
      Creates a PersistenceStorer 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:
      typeManager - the provided type manager
      objectManager - the provided object manager
      objectRetriever - the provided object retriever
      target - the provided persistence target
      bufferSizeProvider - the provided buffer size provider
      Returns:
      a new eager storer
    • validateIsStoring

      protected void validateIsStoring​(PersistenceTarget<Binary> target)