Class AbstractPluralChangeModel<C,V,D extends DirtyChecker<C>>
java.lang.Object
com.blazebit.persistence.view.impl.change.AbstractChangeModel<C,V>
com.blazebit.persistence.view.impl.change.AbstractPluralChangeModel<C,V,D>
- All Implemented Interfaces:
ChangeModel<C>
,PluralChangeModel<C,V>
- Direct Known Subclasses:
AbstractCollectionChangeModel
,AbstractMapChangeModel
public abstract class AbstractPluralChangeModel<C,V,D extends DirtyChecker<C>> extends AbstractChangeModel<C,V> implements PluralChangeModel<C,V>
- Since:
- 1.2.0
- Author:
- Christian Beikov
-
Nested Class Summary
Nested classes/interfaces inherited from interface com.blazebit.persistence.view.change.ChangeModel
ChangeModel.ChangeKind
-
Field Summary
Fields Modifier and Type Field Description protected C
current
protected C
initial
protected D
pluralDirtyChecker
Fields inherited from class com.blazebit.persistence.view.impl.change.AbstractChangeModel
basicType, type
-
Constructor Summary
Constructors Constructor Description AbstractPluralChangeModel(ManagedViewTypeImplementor<V> type, BasicTypeImpl<V> basicType, C initial, C current, D pluralDirtyChecker)
-
Method Summary
Modifier and Type Method Description protected <X> ChangeModel<X>
get(AbstractMethodAttribute<?,?> methodAttribute)
<K, E> List<MapChangeModel<K,E>>
get(MapAttribute<V,K,E> attribute)
<K, E> List<MapChangeModel<K,E>>
get(MethodMapAttribute<V,K,E> attribute)
<E, C extends Collection<E>>
List<PluralChangeModel<C,E>>get(MethodPluralAttribute<V,C,E> attribute)
<X> List<SingularChangeModel<X>>
get(MethodSingularAttribute<V,X> attribute)
<E, C extends Collection<E>>
List<PluralChangeModel<C,E>>get(PluralAttribute<V,C,E> attribute)
<X> List<SingularChangeModel<X>>
get(SingularAttribute<V,X> attribute)
protected abstract <X> List<? extends ChangeModel<X>>
getAll(AbstractMethodAttribute<?,?> methodAttribute)
C
getCurrentState()
C
getInitialState()
ChangeModel.ChangeKind
getKind()
protected <X> AbstractChangeModel<X,X>
getObjectChangeModel(Type<X> elementType, X initial, X element, DirtyChecker<X> dirtyChecker)
boolean
isDirty()
Methods inherited from class com.blazebit.persistence.view.impl.change.AbstractChangeModel
equals, get, getAll, getAllImmutable, getAttribute, getChangeModel, getChangeModel, getChangeModelList, getDirtyChanges, getEmptyChangeModel, getEmptyChangeModel, getImmutableChangeModel, getImmutableChangeModel, getImmutableChangeModelList, getMutableAttribute, getType, hashCode, isChanged, isDirty, validateAttributePath
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface com.blazebit.persistence.view.change.PluralChangeModel
get, getAddedElements, getElementChanges, getMutatedElements, getRemovedElements, isChanged, isDirty
-
Field Details
-
Constructor Details
-
AbstractPluralChangeModel
public AbstractPluralChangeModel(ManagedViewTypeImplementor<V> type, BasicTypeImpl<V> basicType, C initial, C current, D pluralDirtyChecker)
-
-
Method Details
-
getKind
- Specified by:
getKind
in interfaceChangeModel<C>
-
isDirty
public boolean isDirty()- Specified by:
isDirty
in interfaceChangeModel<C>
-
getInitialState
- Specified by:
getInitialState
in interfaceChangeModel<C>
-
getCurrentState
- Specified by:
getCurrentState
in interfaceChangeModel<C>
-
get
- Specified by:
get
in classAbstractChangeModel<C,V>
-
getAll
protected abstract <X> List<? extends ChangeModel<X>> getAll(AbstractMethodAttribute<?,?> methodAttribute) -
get
- Specified by:
get
in interfacePluralChangeModel<C,V>
-
get
public <E, C extends Collection<E>> List<PluralChangeModel<C,E>> get(PluralAttribute<V,C,E> attribute)- Specified by:
get
in interfacePluralChangeModel<C,V>
-
get
- Specified by:
get
in interfacePluralChangeModel<C,V>
-
get
- Specified by:
get
in interfacePluralChangeModel<C,V>
-
get
public <E, C extends Collection<E>> List<PluralChangeModel<C,E>> get(MethodPluralAttribute<V,C,E> attribute)- Specified by:
get
in interfacePluralChangeModel<C,V>
-
get
- Specified by:
get
in interfacePluralChangeModel<C,V>
-
getObjectChangeModel
protected final <X> AbstractChangeModel<X,X> getObjectChangeModel(Type<X> elementType, X initial, X element, DirtyChecker<X> dirtyChecker)
-