E
- child data objectF
- parent data objectG
- lifecycle of the childrenH
- lifecycle of the parentpublic abstract class RollupLifecycleOnParent<E extends DataObject<E> & LifecycleInterface<E,G>,F extends DataObject<F> & LifecycleInterface<F,H>,G extends TransitionFieldChoiceDefinition<G>,H extends TransitionFieldChoiceDefinition<H>>
extends java.lang.Object
Constructor and Description |
---|
RollupLifecycleOnParent(DataExtractor<E,F> parentextractor,
DataExtractor<F,E[]> allchildrenextractor,
G childlifecycle,
H parentlifecycle)
creates a Rollup Lifecycle on parent utility class
|
Modifier and Type | Method and Description |
---|---|
abstract ChoiceValue<H> |
getParentConsolidatedState(java.util.ArrayList<ChoiceValue<G>> otherchildrenstates,
G childlifecycle,
H parentlifecycle)
calculates the consolidated state for the parent.
|
void |
rollupStateOnParent(E child)
rolls-up the state on parent
|
public RollupLifecycleOnParent(DataExtractor<E,F> parentextractor, DataExtractor<F,E[]> allchildrenextractor, G childlifecycle, H parentlifecycle)
parentextractor
- extractor to get parent from one childallchildrenextractor
- extractor to get all childen from a parentchildlifecycle
- child lifecycle transition choiceparentlifecycle
- parent lifecycle transition choicepublic void rollupStateOnParent(E child)
child
- child that was just updatedpublic abstract ChoiceValue<H> getParentConsolidatedState(java.util.ArrayList<ChoiceValue<G>> otherchildrenstates, G childlifecycle, H parentlifecycle)
otherchildrenstates
- all the states of childrenchildlifecycle
- lifecycle of the childparentlifecycle
- lifecycle of the parent