Class ParentCollectionReferenceAttributeFlusher<E,V extends Collection<?>>
java.lang.Object
com.blazebit.persistence.view.impl.update.flush.AttributeFetchGraphNode<X>
com.blazebit.persistence.view.impl.update.flush.AbstractPluralAttributeFlusher<CollectionAttributeFlusher<E,V>,CollectionAction<?>,RecordingCollection<?,?>,E,V>
com.blazebit.persistence.view.impl.update.flush.CollectionAttributeFlusher<E,V>
com.blazebit.persistence.view.impl.update.flush.ParentCollectionReferenceAttributeFlusher<E,V>
- All Implemented Interfaces:
DirtyChecker<V>
,PluralDirtyChecker<V,E>
,DirtyAttributeFlusher<CollectionAttributeFlusher<E,V>,E,V>
,FetchGraphNode<CollectionAttributeFlusher<E,V>>
public class ParentCollectionReferenceAttributeFlusher<E,V extends Collection<?>> extends CollectionAttributeFlusher<E,V>
- Since:
- 1.3.0
- Author:
- Christian Beikov
-
Nested Class Summary
Nested classes/interfaces inherited from class com.blazebit.persistence.view.impl.update.flush.AbstractPluralAttributeFlusher
AbstractPluralAttributeFlusher.DeepEqualityChecker, AbstractPluralAttributeFlusher.EntityIdWithViewIdEqualityChecker, AbstractPluralAttributeFlusher.EntityWithViewEqualityChecker, AbstractPluralAttributeFlusher.EntryState, AbstractPluralAttributeFlusher.EqualityChecker, AbstractPluralAttributeFlusher.EqualsEqualityChecker, AbstractPluralAttributeFlusher.IdentityEqualityChecker, AbstractPluralAttributeFlusher.PluralFlushOperation
Nested classes/interfaces inherited from interface com.blazebit.persistence.view.impl.change.DirtyChecker
DirtyChecker.DirtyKind
-
Field Summary
Fields inherited from class com.blazebit.persistence.view.impl.update.flush.AbstractPluralAttributeFlusher
cascadeDeleteListener, collectionActions, collectionUpdatable, elementDescriptor, elementDirtyChecker, elementEqualityChecker, elementFlusher, elementFlushers, entityAttributeAccessor, flushOperation, flushStrategy, jpaProviderDeletesCollection, optimisticLockProtected, ownerEntityClass, ownerIdAttributeName, ownerIdBindFragments, ownerIdFlusher, ownerIdWhereFragment, ownerMapping, removeListener, replaceWithReferenceContents, supportsCollectionDml, viewAttributeAccessor, viewOnlyDeleteCascaded
Fields inherited from class com.blazebit.persistence.view.impl.update.flush.AttributeFetchGraphNode
attributeName, fetch, mapping
-
Constructor Summary
Constructors Constructor Description ParentCollectionReferenceAttributeFlusher(String attributeName, String mapping, FlushStrategy flushStrategy, AttributeAccessor entityAttributeAccessor, InitialValueAttributeAccessor viewAttributeAccessor, CollectionRemoveListener cascadeDeleteListener, CollectionRemoveListener removeListener, TypeDescriptor elementDescriptor)
-
Method Summary
Modifier and Type Method Description boolean
flushEntity(UpdateContext context, E entity, Object ownerView, Object view, V value, Runnable postReplaceListener)
boolean
supportsQueryFlush()
Methods inherited from class com.blazebit.persistence.view.impl.update.flush.CollectionAttributeFlusher
addElements, addFlatViewElementFlushActions, appendRemoveSpecific, areActionsQueueable, canFlushSeparateCollectionOperations, cloneDeep, collectionEquals, createCollection, createCollectionDeleter, createJpaCollection, createJpaCollection, createMergeFlusher, createPersistFlusher, createRecordingCollection, deleteElements, determineCollectionActions, determineCollectionActionsForNonSubview, determineCollectionActionsForSubview, determineDirtyFlusherForNewCollection, determineJpaCollectionActions, executeActions, flushCollectionOperations, flushQuery, getActionUnrelatedDirtyObjectCount, getDirtyFlusher, getDirtyFlusherForRecordingCollection, getDirtyKind, getElementDirtyChecker, getElementFlushers, getEntityReferencesForCollectionOperation, getFusedOperations, getNestedCheckers, getNewInitialValue, invokeCollectionAction, isIndexed, isViewOnlyDeleteCascaded, mergeAndRequeue, mergeCollectionElements, mergeWith, partialFlusher, remove, remove, removeByOwnerId, removeFromEntity, replaceActions, replaceCollection, replaceWithRecordingCollection, requiresDeferredFlush, requiresDeleteCascadeAfterRemove, requiresFlushAfterPersist
Methods inherited from class com.blazebit.persistence.view.impl.update.flush.AbstractPluralAttributeFlusher
appendUpdateQueryFragment, determineElementFlushers, getElementIdAttributeName, getElementOnlyFlusher, getEntityAttributeAccessor, getEntityAttributeValue, getLockOwner, getMapping, getNestedGraphNode, getReplaceOrMergeAndElementFlusher, getReplaceOrMergeOnlyFlusher, getReplayAndElementFlusher, getReplayOnlyFlusher, getViewAttributeAccessor, getViewElement, identityContains, invokeFlushOperation, isOptimisticLockProtected, isPassThrough, loadForEntityFlush, persistIfNeeded, persistOrMerge, persistOrMerge
Methods inherited from class com.blazebit.persistence.view.impl.update.flush.AttributeFetchGraphNode
appendFetchJoinQueryFragment, getAttributeName
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface com.blazebit.persistence.view.impl.update.flush.DirtyAttributeFlusher
appendFetchJoinQueryFragment, appendUpdateQueryFragment, getElementIdAttributeName, getEntityAttributeAccessor, getLockOwner, getViewAttributeAccessor, isOptimisticLockProtected, isPassThrough, loadForEntityFlush
Methods inherited from interface com.blazebit.persistence.view.impl.update.flush.FetchGraphNode
getAttributeName, getMapping
-
Constructor Details
-
ParentCollectionReferenceAttributeFlusher
public ParentCollectionReferenceAttributeFlusher(String attributeName, String mapping, FlushStrategy flushStrategy, AttributeAccessor entityAttributeAccessor, InitialValueAttributeAccessor viewAttributeAccessor, CollectionRemoveListener cascadeDeleteListener, CollectionRemoveListener removeListener, TypeDescriptor elementDescriptor)
-
-
Method Details
-
supportsQueryFlush
public boolean supportsQueryFlush()- Specified by:
supportsQueryFlush
in interfaceDirtyAttributeFlusher<CollectionAttributeFlusher<E,V extends Collection<?>>,E,V extends Collection<?>>
- Overrides:
supportsQueryFlush
in classCollectionAttributeFlusher<E,V extends Collection<?>>
-
flushEntity
public boolean flushEntity(UpdateContext context, E entity, Object ownerView, Object view, V value, Runnable postReplaceListener)- Specified by:
flushEntity
in interfaceDirtyAttributeFlusher<CollectionAttributeFlusher<E,V extends Collection<?>>,E,V extends Collection<?>>
- Overrides:
flushEntity
in classCollectionAttributeFlusher<E,V extends Collection<?>>
-