Package com.kenshoo.pl.entity
Class ChangeEntityCommand<E extends EntityType<E>>
- java.lang.Object
-
- com.kenshoo.pl.entity.ChangeEntityCommand<E>
-
- All Implemented Interfaces:
EntityChange<E>,FieldsValueMap<E>,MutableCommand<E>
- Direct Known Subclasses:
CreateEntityCommand,DeleteEntityCommand,UpdateEntityCommand
public abstract class ChangeEntityCommand<E extends EntityType<E>> extends java.lang.Object implements MutableCommand<E>
-
-
Constructor Summary
Constructors Constructor Description ChangeEntityCommand(E entityType)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidadd(MissingChildrenSupplier<? extends EntityType> missingChildrenSupplier)<CHILD extends EntityType<CHILD>>
voidaddChild(ChangeEntityCommand<CHILD> childCmd)<T> booleancontainsField(EntityField<E,T> field)Returnstrueis the map has a value for the given field<T> Tget(EntityField<E,T> field)Returns the value of the specified field.java.util.stream.Stream<EntityField<E,?>>getChangedFields()java.util.stream.Stream<FieldChange<E,?>>getChanges()java.util.stream.Stream<ChangeEntityCommand<? extends EntityType>>getChildren()<CHILD extends EntityType<CHILD>>
java.util.stream.Stream<ChangeEntityCommand<CHILD>>getChildren(CHILD type)EgetEntityType()Identifier<E>getKeysToParent()ChangeEntityCommand<?>getParent()booleanisFieldChanged(EntityField<E,?> field)<T> voidset(EntityField<E,T> field, FieldValueSupplier<T> valueSupplier)<T> voidset(EntityField<E,T> field, T newValue)<T> voidset(EntityFieldPrototype<T> fieldPrototype, FieldValueSupplier<T> valueSupplier)<T> voidset(EntityFieldPrototype<T> fieldPrototype, T newValue)voidset(java.util.Collection<EntityField<E,?>> fields, MultiFieldValueSupplier<E> valueSupplier)voidupdateOperator(ChangeOperation changeOperation)-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface com.kenshoo.pl.entity.EntityChange
allowMissingEntity, getChangeOperation, getIdentifier
-
Methods inherited from interface com.kenshoo.pl.entity.FieldsValueMap
safeGet
-
-
-
-
Constructor Detail
-
ChangeEntityCommand
public ChangeEntityCommand(E entityType)
-
-
Method Detail
-
getEntityType
public E getEntityType()
- Specified by:
getEntityTypein interfaceEntityChange<E extends EntityType<E>>
-
set
public <T> void set(EntityField<E,T> field, T newValue)
- Specified by:
setin interfaceMutableCommand<E extends EntityType<E>>
-
set
public <T> void set(EntityFieldPrototype<T> fieldPrototype, T newValue)
- Specified by:
setin interfaceMutableCommand<E extends EntityType<E>>
-
set
public <T> void set(EntityField<E,T> field, FieldValueSupplier<T> valueSupplier)
- Specified by:
setin interfaceMutableCommand<E extends EntityType<E>>
-
set
public <T> void set(EntityFieldPrototype<T> fieldPrototype, FieldValueSupplier<T> valueSupplier)
- Specified by:
setin interfaceMutableCommand<E extends EntityType<E>>
-
set
public void set(java.util.Collection<EntityField<E,?>> fields, MultiFieldValueSupplier<E> valueSupplier)
- Specified by:
setin interfaceMutableCommand<E extends EntityType<E>>
-
getChangedFields
public java.util.stream.Stream<EntityField<E,?>> getChangedFields()
- Specified by:
getChangedFieldsin interfaceEntityChange<E extends EntityType<E>>- Returns:
- a stream of fields modified by this change, each field being included at most once
-
getChanges
public java.util.stream.Stream<FieldChange<E,?>> getChanges()
- Specified by:
getChangesin interfaceEntityChange<E extends EntityType<E>>- Returns:
- a stream of the individual field changes modified by this change. The stream does not include suppliers, only fixed values
-
containsField
public <T> boolean containsField(EntityField<E,T> field)
Description copied from interface:FieldsValueMapReturnstrueis the map has a value for the given field- Specified by:
containsFieldin interfaceFieldsValueMap<E extends EntityType<E>>
-
isFieldChanged
public boolean isFieldChanged(EntityField<E,?> field)
- Specified by:
isFieldChangedin interfaceEntityChange<E extends EntityType<E>>- Returns:
trueif the field is affected by this change. A shorthand forgetChangedFields().contains(field)
-
get
public <T> T get(EntityField<E,T> field)
Description copied from interface:FieldsValueMapReturns the value of the specified field.- Specified by:
getin interfaceFieldsValueMap<E extends EntityType<E>>- Type Parameters:
T- type of the field- Parameters:
field- field to query- Returns:
- the value of the field. Can be
null.
-
addChild
public <CHILD extends EntityType<CHILD>> void addChild(ChangeEntityCommand<CHILD> childCmd)
- Specified by:
addChildin interfaceMutableCommand<E extends EntityType<E>>
-
getChildren
public <CHILD extends EntityType<CHILD>> java.util.stream.Stream<ChangeEntityCommand<CHILD>> getChildren(CHILD type)
- Specified by:
getChildrenin interfaceEntityChange<E extends EntityType<E>>- Returns:
- of stream of sub changes of the entity by child type
-
getChildren
public java.util.stream.Stream<ChangeEntityCommand<? extends EntityType>> getChildren()
- Specified by:
getChildrenin interfaceEntityChange<E extends EntityType<E>>- Returns:
- of stream of sub changes of the entity
-
getKeysToParent
public Identifier<E> getKeysToParent()
- Specified by:
getKeysToParentin interfaceEntityChange<E extends EntityType<E>>- Returns:
- the parent identifier of the entity
-
updateOperator
public void updateOperator(ChangeOperation changeOperation)
-
getParent
public ChangeEntityCommand<?> getParent()
-
add
public void add(MissingChildrenSupplier<? extends EntityType> missingChildrenSupplier)
- Specified by:
addin interfaceMutableCommand<E extends EntityType<E>>
-
-