Class MergeCollectionElementAttributeFlusher<E,V>
java.lang.Object
com.blazebit.persistence.view.impl.update.flush.CollectionElementFetchGraphNode<CollectionElementAttributeFlusher<E,V>,DirtyAttributeFlusher<?,E,V>>
com.blazebit.persistence.view.impl.update.flush.CollectionElementAttributeFlusher<E,V>
com.blazebit.persistence.view.impl.update.flush.MergeCollectionElementAttributeFlusher<E,V>
- All Implemented Interfaces:
DirtyChecker<V>
,DirtyAttributeFlusher<CollectionElementAttributeFlusher<E,V>,E,V>
,FetchGraphNode<CollectionElementAttributeFlusher<E,V>>
- Direct Known Subclasses:
MergeMapKeyAttributeFlusher
,MergeMapValueAttributeFlusher
public class MergeCollectionElementAttributeFlusher<E,V> extends CollectionElementAttributeFlusher<E,V>
- Since:
- 1.2.0
- Author:
- Christian Beikov
-
Nested Class Summary
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.CollectionElementAttributeFlusher
element
Fields inherited from class com.blazebit.persistence.view.impl.update.flush.CollectionElementFetchGraphNode
nestedGraphNode
-
Constructor Summary
Constructors Constructor Description MergeCollectionElementAttributeFlusher(Object element, boolean optimisticLockProtected)
-
Method Summary
Modifier and Type Method Description void
appendFetchJoinQueryFragment(String base, StringBuilder sb)
boolean
appendUpdateQueryFragment(UpdateContext context, StringBuilder sb, String mappingPrefix, String parameterPrefix, String separator)
boolean
flushEntity(UpdateContext context, E entity, Object ownerView, Object view, V value, Runnable postReplaceListener)
javax.persistence.Query
flushQuery(UpdateContext context, String parameterPrefix, UpdateQueryFactory queryFactory, javax.persistence.Query query, Object ownerView, Object view, V value, UnmappedOwnerAwareDeleter ownerAwareDeleter, DirtyAttributeFlusher<?,?,?> ownerFlusher)
DirtyAttributeFlusher<CollectionElementAttributeFlusher<E,V>,E,V>
getDirtyFlusher(UpdateContext context, Object view, Object initial, Object current)
FetchGraphNode<?>
mergeWith(List<CollectionElementAttributeFlusher<E,V>> fetchGraphNodes)
Methods inherited from class com.blazebit.persistence.view.impl.update.flush.CollectionElementAttributeFlusher
cloneDeep, getDirtyKind, getElement, getElementIdAttributeName, getEntityAttributeAccessor, getLockOwner, getNestedCheckers, getNewInitialValue, getViewAttributeAccessor, isOptimisticLockProtected, isPassThrough, isViewOnlyDeleteCascaded, loadForEntityFlush, remove, remove, removeByOwnerId, removeFromEntity, requiresDeferredFlush, requiresDeleteCascadeAfterRemove, requiresFlushAfterPersist, supportsQueryFlush
Methods inherited from class com.blazebit.persistence.view.impl.update.flush.CollectionElementFetchGraphNode
getAttributeName, getMapping
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.FetchGraphNode
getAttributeName, getMapping
-
Constructor Details
-
Method Details
-
mergeWith
- Specified by:
mergeWith
in interfaceFetchGraphNode<E>
- Overrides:
mergeWith
in classCollectionElementFetchGraphNode<CollectionElementAttributeFlusher<E,V>,DirtyAttributeFlusher<?,E,V>>
-
appendFetchJoinQueryFragment
- Specified by:
appendFetchJoinQueryFragment
in interfaceDirtyAttributeFlusher<CollectionElementAttributeFlusher<E,V>,E,V>
- Specified by:
appendFetchJoinQueryFragment
in interfaceFetchGraphNode<E>
- Overrides:
appendFetchJoinQueryFragment
in classCollectionElementFetchGraphNode<CollectionElementAttributeFlusher<E,V>,DirtyAttributeFlusher<?,E,V>>
-
appendUpdateQueryFragment
public boolean appendUpdateQueryFragment(UpdateContext context, StringBuilder sb, String mappingPrefix, String parameterPrefix, String separator)- Specified by:
appendUpdateQueryFragment
in interfaceDirtyAttributeFlusher<CollectionElementAttributeFlusher<E,V>,E,V>
- Overrides:
appendUpdateQueryFragment
in classCollectionElementAttributeFlusher<E,V>
-
flushQuery
public javax.persistence.Query flushQuery(UpdateContext context, String parameterPrefix, UpdateQueryFactory queryFactory, javax.persistence.Query query, Object ownerView, Object view, V value, UnmappedOwnerAwareDeleter ownerAwareDeleter, DirtyAttributeFlusher<?,?,?> ownerFlusher)- Specified by:
flushQuery
in interfaceDirtyAttributeFlusher<CollectionElementAttributeFlusher<E,V>,E,V>
- Overrides:
flushQuery
in classCollectionElementAttributeFlusher<E,V>
-
flushEntity
public boolean flushEntity(UpdateContext context, E entity, Object ownerView, Object view, V value, Runnable postReplaceListener)- Specified by:
flushEntity
in interfaceDirtyAttributeFlusher<CollectionElementAttributeFlusher<E,V>,E,V>
- Overrides:
flushEntity
in classCollectionElementAttributeFlusher<E,V>
-
getDirtyFlusher
public DirtyAttributeFlusher<CollectionElementAttributeFlusher<E,V>,E,V> getDirtyFlusher(UpdateContext context, Object view, Object initial, Object current)- Specified by:
getDirtyFlusher
in interfaceDirtyAttributeFlusher<CollectionElementAttributeFlusher<E,V>,E,V>
- Overrides:
getDirtyFlusher
in classCollectionElementAttributeFlusher<E,V>
-