Class ReactiveBasicCollectionPersister

  • All Implemented Interfaces:
    org.hibernate.engine.profile.internal.FetchProfileAffectee, org.hibernate.metadata.CollectionMetadata, org.hibernate.metamodel.mapping.FilterRestrictable, org.hibernate.metamodel.mapping.internal.PluralAttributeMappingImpl.Aware, org.hibernate.metamodel.mapping.Restrictable, org.hibernate.metamodel.mapping.WhereRestrictable, org.hibernate.persister.collection.CollectionPersister, org.hibernate.persister.collection.DeprecatedCollectionStuff, org.hibernate.persister.collection.mutation.CollectionMutationTarget, org.hibernate.persister.collection.QueryableCollection, org.hibernate.persister.collection.SQLLoadableCollection, org.hibernate.persister.entity.Joinable, org.hibernate.persister.entity.PropertyMapping, ReactiveAbstractCollectionPersister, ReactiveCollectionPersister, org.hibernate.sql.model.MutationTarget<org.hibernate.persister.collection.mutation.CollectionTableMapping>

    public class ReactiveBasicCollectionPersister
    extends org.hibernate.persister.collection.BasicCollectionPersister
    implements ReactiveAbstractCollectionPersister
    A reactive BasicCollectionPersister
    • Field Summary

      • Fields inherited from class org.hibernate.persister.collection.AbstractCollectionPersister

        batchSize, elementColumnAliases, elementColumnIsGettable, elementColumnIsSettable, elementColumnNames, elementColumnReaders, elementColumnReaderTemplates, elementColumnWriters, elementFormulas, elementFormulaTemplates, elementIsPureFormula, elementType, hasWhere, identifierColumnName, indexColumnAliases, indexColumnIsGettable, indexColumnIsSettable, indexColumnNames, indexContainsFormula, indexFormulas, indexFormulaTemplates, isInverse, keyColumnAliases, keyColumnNames, qualifiedTableName, sqlExceptionHelper, sqlWhereString
    • Constructor Summary

      Constructors 
      Constructor Description
      ReactiveBasicCollectionPersister​(org.hibernate.mapping.Collection collectionBinding, org.hibernate.cache.spi.access.CollectionDataAccess cacheAccessStrategy, org.hibernate.metamodel.spi.RuntimeModelCreationContext creationContext)  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      org.hibernate.loader.ast.spi.CollectionLoader createNamedQueryCollectionLoader​(org.hibernate.persister.collection.CollectionPersister persister, org.hibernate.query.named.NamedQueryMemento namedQueryMemento)
      See org.hibernate.persister.collection.AbstractCollectionPersister#createNamedQueryCollectionLoader
      org.hibernate.loader.ast.spi.CollectionLoader createSingleKeyCollectionLoader​(org.hibernate.engine.spi.LoadQueryInfluencers loadQueryInfluencers)
      See org.hibernate.persister.collection.AbstractCollectionPersister#createSingleKeyCollectionLoader
      protected org.hibernate.loader.ast.spi.CollectionLoader createSubSelectLoader​(org.hibernate.engine.spi.SubselectFetch subselect, org.hibernate.engine.spi.SharedSessionContractImplementor session)  
      protected ReactiveInsertRowsCoordinator getCreateEntryCoordinator()  
      ReactiveRemoveCoordinator getRemoveCoordinator()  
      protected ReactiveDeleteRowsCoordinator getRemoveEntryCoordinator()  
      protected ReactiveUpdateRowsCoordinator getUpdateEntryCoordinator()  
      boolean isRowDeleteEnabled()  
      boolean isRowInsertEnabled()  
      java.util.concurrent.CompletionStage<java.lang.Void> reactiveDeleteRows​(org.hibernate.collection.spi.PersistentCollection<?> collection, java.lang.Object id, org.hibernate.engine.spi.SharedSessionContractImplementor session)
      Reactive version of CollectionPersister.deleteRows(PersistentCollection, Object, SharedSessionContractImplementor)
      java.util.concurrent.CompletionStage<java.lang.Void> reactiveInitialize​(java.lang.Object key, org.hibernate.engine.spi.SharedSessionContractImplementor session)
      Reactive version of CollectionPersister.initialize(Object, SharedSessionContractImplementor)
      java.util.concurrent.CompletionStage<java.lang.Void> reactiveInsertRows​(org.hibernate.collection.spi.PersistentCollection<?> collection, java.lang.Object id, org.hibernate.engine.spi.SharedSessionContractImplementor session)
      Reactive version of CollectionPersister.insertRows(PersistentCollection, Object, SharedSessionContractImplementor)
      java.util.concurrent.CompletionStage<java.lang.Void> reactiveRecreate​(org.hibernate.collection.spi.PersistentCollection<?> collection, java.lang.Object id, org.hibernate.engine.spi.SharedSessionContractImplementor session)
      Reactive version of CollectionPersister.recreate(PersistentCollection, Object, SharedSessionContractImplementor)
      java.util.concurrent.CompletionStage<java.lang.Void> reactiveRemove​(java.lang.Object id, org.hibernate.engine.spi.SharedSessionContractImplementor session)
      Reactive version of CollectionPersister.remove(Object, SharedSessionContractImplementor)
      java.util.concurrent.CompletionStage<java.lang.Void> reactiveUpdateRows​(org.hibernate.collection.spi.PersistentCollection<?> collection, java.lang.Object id, org.hibernate.engine.spi.SharedSessionContractImplementor session)
      Reactive version of CollectionPersister.updateRows(PersistentCollection, Object, SharedSessionContractImplementor)
      • Methods inherited from class org.hibernate.persister.collection.BasicCollectionPersister

        buildRowMutationOperations, consumesCollectionAlias, consumesEntityAlias, deleteRows, doProcessQueuedOps, getFilterAliasGenerator, getFilterAliasGenerator, getRowMutationOperations, insertRows, isCascadeDeleteEnabled, isManyToMany, isOneToMany, recreate, updateRows
      • Methods inherited from class org.hibernate.persister.collection.AbstractCollectionPersister

        applyBaseManyToManyRestrictions, applyBaseRestrictions, applyFilterRestrictions, applyWhereFragments, applyWhereRestrictions, buildDeleteAllOperation, decrementIndexByBase, determineLoaderToUse, determineTableName, elementExists, forEachMutableTable, forEachMutableTableReverse, generateDeleteAllAst, generateDetectRowByElementString, generateDetectRowByIndexString, generateSelectSizeString, getAttributeMapping, getBatchSize, getCacheAccessStrategy, getCacheEntryStructure, getCollectionLoader, getCollectionMetadata, getCollectionPropertyColumnAliases, getCollectionSemantics, getCollectionSpaces, getCollectionTableMapping, getCollectionType, getDialect, getElementByIndex, getElementClass, getElementColumnAliases, getElementColumnNames, getElementColumnNames, getElementPersister, getElementPersisterInternal, getElementType, getFactory, getFetchMode, getGenerator, getIdentifierColumnAlias, getIdentifierColumnName, getIdentifierGenerator, getIdentifierTableName, getIdentifierType, getIndexColumnAliases, getIndexColumnNames, getIndexColumnNames, getIndexFormulas, getIndexType, getKeyColumnAliases, getKeyColumnNames, getKeyType, getManyToManyFilterFragment, getManyToManyOrderByString, getMappedByProperty, getName, getNavigableRole, getOwnerEntityName, getOwnerEntityPersister, getSize, getSortingComparator, getSQLExceptionHelper, getSQLOrderByString, getTableName, getTargetPart, hasCache, hasIndex, hasManyToManyOrdering, hasOrdering, hasOrphanDelete, hasPhysicalIndexColumn, hasWhere, hasWhereRestrictions, incrementIndexByBase, indexExists, initCollectionPropertyMap, initialize, injectAttributeMapping, isAffectedByEnabledFetchProfiles, isAffectedByEnabledFilters, isAffectedByEnabledFilters, isAffectedByEntityGraph, isArray, isBatchLoadable, isCollection, isExtraLazy, isInverse, isLazy, isMutable, isPrimitiveArray, isSubselectLoadable, isVersioned, logStaticSQL, needsRemove, postInstantiate, processQueuedOps, registerAffectingFetchProfile, remove, selectFragment, toColumns, toString, toType
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
      • Methods inherited from interface org.hibernate.persister.collection.mutation.CollectionMutationTarget

        getIdentifierTableMapping
      • Methods inherited from interface org.hibernate.persister.collection.CollectionPersister

        applyBaseManyToManyRestrictions, elementExists, getAttributeMapping, getBatchSize, getCacheAccessStrategy, getCacheEntryStructure, getCollectionMetadata, getCollectionSemantics, getCollectionSpaces, getCollectionType, getElementByIndex, getElementClass, getElementColumnAliases, getElementType, getFactory, getGenerator, getIdentifierColumnAlias, getIdentifierGenerator, getIdentifierType, getIndexColumnAliases, getIndexType, getKeyColumnAliases, getKeyType, getManyToManyFilterFragment, getMappedByProperty, getNavigableRole, getOwnerEntityPersister, getSize, getSortingComparator, hasCache, hasIndex, hasManyToManyOrdering, hasOrdering, hasOrphanDelete, indexExists, isAffectedByEnabledFetchProfiles, isAffectedByEnabledFilters, isAffectedByEnabledFilters, isAffectedByEntityGraph, isArray, isBatchLoadable, isCascadeDeleteEnabled, isExtraLazy, isInverse, isLazy, isManyToMany, isMutable, isOneToMany, isPrimitiveArray, isSubselectLoadable, isVersioned, needsRemove, postInstantiate, processQueuedOps, recreate
      • Methods inherited from interface org.hibernate.persister.collection.DeprecatedCollectionStuff

        getRole
      • Methods inherited from interface org.hibernate.metamodel.mapping.FilterRestrictable

        applyFilterRestrictions
      • Methods inherited from interface org.hibernate.sql.model.MutationTarget

        getRolePath
      • Methods inherited from interface org.hibernate.metamodel.mapping.Restrictable

        applyBaseRestrictions
      • Methods inherited from interface org.hibernate.metamodel.mapping.WhereRestrictable

        applyWhereRestrictions, hasWhereRestrictions
    • Constructor Detail

      • ReactiveBasicCollectionPersister

        public ReactiveBasicCollectionPersister​(org.hibernate.mapping.Collection collectionBinding,
                                                org.hibernate.cache.spi.access.CollectionDataAccess cacheAccessStrategy,
                                                org.hibernate.metamodel.spi.RuntimeModelCreationContext creationContext)
                                         throws org.hibernate.MappingException,
                                                org.hibernate.cache.CacheException
        Throws:
        org.hibernate.MappingException
        org.hibernate.cache.CacheException
    • Method Detail

      • createNamedQueryCollectionLoader

        public org.hibernate.loader.ast.spi.CollectionLoader createNamedQueryCollectionLoader​(org.hibernate.persister.collection.CollectionPersister persister,
                                                                                              org.hibernate.query.named.NamedQueryMemento namedQueryMemento)
        Description copied from interface: ReactiveAbstractCollectionPersister
        See org.hibernate.persister.collection.AbstractCollectionPersister#createNamedQueryCollectionLoader
        Specified by:
        createNamedQueryCollectionLoader in interface ReactiveAbstractCollectionPersister
        Overrides:
        createNamedQueryCollectionLoader in class org.hibernate.persister.collection.AbstractCollectionPersister
      • createSingleKeyCollectionLoader

        public org.hibernate.loader.ast.spi.CollectionLoader createSingleKeyCollectionLoader​(org.hibernate.engine.spi.LoadQueryInfluencers loadQueryInfluencers)
        Description copied from interface: ReactiveAbstractCollectionPersister
        See org.hibernate.persister.collection.AbstractCollectionPersister#createSingleKeyCollectionLoader
        Specified by:
        createSingleKeyCollectionLoader in interface ReactiveAbstractCollectionPersister
        Overrides:
        createSingleKeyCollectionLoader in class org.hibernate.persister.collection.AbstractCollectionPersister
      • createSubSelectLoader

        protected org.hibernate.loader.ast.spi.CollectionLoader createSubSelectLoader​(org.hibernate.engine.spi.SubselectFetch subselect,
                                                                                      org.hibernate.engine.spi.SharedSessionContractImplementor session)
        Overrides:
        createSubSelectLoader in class org.hibernate.persister.collection.AbstractCollectionPersister
      • reactiveInitialize

        public java.util.concurrent.CompletionStage<java.lang.Void> reactiveInitialize​(java.lang.Object key,
                                                                                       org.hibernate.engine.spi.SharedSessionContractImplementor session)
        Description copied from interface: ReactiveCollectionPersister
        Reactive version of CollectionPersister.initialize(Object, SharedSessionContractImplementor)
        Specified by:
        reactiveInitialize in interface ReactiveCollectionPersister
      • reactiveRecreate

        public java.util.concurrent.CompletionStage<java.lang.Void> reactiveRecreate​(org.hibernate.collection.spi.PersistentCollection<?> collection,
                                                                                     java.lang.Object id,
                                                                                     org.hibernate.engine.spi.SharedSessionContractImplementor session)
        Description copied from interface: ReactiveCollectionPersister
        Reactive version of CollectionPersister.recreate(PersistentCollection, Object, SharedSessionContractImplementor)
        Specified by:
        reactiveRecreate in interface ReactiveAbstractCollectionPersister
        Specified by:
        reactiveRecreate in interface ReactiveCollectionPersister
        See Also:
        BasicCollectionPersister.recreate(PersistentCollection, Object, SharedSessionContractImplementor)
      • reactiveInsertRows

        public java.util.concurrent.CompletionStage<java.lang.Void> reactiveInsertRows​(org.hibernate.collection.spi.PersistentCollection<?> collection,
                                                                                       java.lang.Object id,
                                                                                       org.hibernate.engine.spi.SharedSessionContractImplementor session)
        Description copied from interface: ReactiveCollectionPersister
        Reactive version of CollectionPersister.insertRows(PersistentCollection, Object, SharedSessionContractImplementor)
        Specified by:
        reactiveInsertRows in interface ReactiveAbstractCollectionPersister
        Specified by:
        reactiveInsertRows in interface ReactiveCollectionPersister
        See Also:
        CollectionPersister.insertRows(PersistentCollection, Object, SharedSessionContractImplementor)
      • reactiveUpdateRows

        public java.util.concurrent.CompletionStage<java.lang.Void> reactiveUpdateRows​(org.hibernate.collection.spi.PersistentCollection<?> collection,
                                                                                       java.lang.Object id,
                                                                                       org.hibernate.engine.spi.SharedSessionContractImplementor session)
        Description copied from interface: ReactiveCollectionPersister
        Reactive version of CollectionPersister.updateRows(PersistentCollection, Object, SharedSessionContractImplementor)
        Specified by:
        reactiveUpdateRows in interface ReactiveAbstractCollectionPersister
        Specified by:
        reactiveUpdateRows in interface ReactiveCollectionPersister
        See Also:
        CollectionPersister.updateRows(PersistentCollection, Object, SharedSessionContractImplementor)
      • reactiveDeleteRows

        public java.util.concurrent.CompletionStage<java.lang.Void> reactiveDeleteRows​(org.hibernate.collection.spi.PersistentCollection<?> collection,
                                                                                       java.lang.Object id,
                                                                                       org.hibernate.engine.spi.SharedSessionContractImplementor session)
        Description copied from interface: ReactiveCollectionPersister
        Reactive version of CollectionPersister.deleteRows(PersistentCollection, Object, SharedSessionContractImplementor)
        Specified by:
        reactiveDeleteRows in interface ReactiveAbstractCollectionPersister
        Specified by:
        reactiveDeleteRows in interface ReactiveCollectionPersister
        See Also:
        CollectionPersister.deleteRows(PersistentCollection, Object, SharedSessionContractImplementor)
      • getCreateEntryCoordinator

        protected ReactiveInsertRowsCoordinator getCreateEntryCoordinator()
        Overrides:
        getCreateEntryCoordinator in class org.hibernate.persister.collection.BasicCollectionPersister
      • getUpdateEntryCoordinator

        protected ReactiveUpdateRowsCoordinator getUpdateEntryCoordinator()
        Overrides:
        getUpdateEntryCoordinator in class org.hibernate.persister.collection.BasicCollectionPersister
      • getRemoveCoordinator

        public ReactiveRemoveCoordinator getRemoveCoordinator()
        Overrides:
        getRemoveCoordinator in class org.hibernate.persister.collection.BasicCollectionPersister
      • getRemoveEntryCoordinator

        protected ReactiveDeleteRowsCoordinator getRemoveEntryCoordinator()
        Overrides:
        getRemoveEntryCoordinator in class org.hibernate.persister.collection.BasicCollectionPersister