Class UpdateQuantityAmountForEachMatchingQuantity
java.lang.Object
cdm.product.common.settlement.functions.UpdateQuantityAmountForEachMatchingQuantity
- All Implemented Interfaces:
com.rosetta.model.lib.functions.RosettaFunction
- Direct Known Subclasses:
UpdateQuantityAmountForEachMatchingQuantity.UpdateQuantityAmountForEachMatchingQuantityDefault
public abstract class UpdateQuantityAmountForEachMatchingQuantity
extends Object
implements com.rosetta.model.lib.functions.RosettaFunction
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic class -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected AdjustableDateResolutionprotected com.rosetta.model.lib.functions.ModelObjectValidatorprotected SplitQuantityChangeprotected UnitEqualsprotected UpdateAmountprotected UpdateDatedValues -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected abstract com.rosetta.model.lib.mapper.MapperS<BigDecimal> changedAmount(FieldWithMetaNonNegativeQuantitySchedule quantity, List<? extends PriceQuantity> change, QuantityChangeDirectionEnum direction) protected abstract com.rosetta.model.lib.mapper.MapperC<? extends DatedValue> changedDatedValue(FieldWithMetaNonNegativeQuantitySchedule quantity, List<? extends PriceQuantity> change, QuantityChangeDirectionEnum direction) protected abstract com.rosetta.model.lib.mapper.MapperS<com.rosetta.model.lib.records.Date> changeEffectiveDate(FieldWithMetaNonNegativeQuantitySchedule quantity, List<? extends PriceQuantity> change, QuantityChangeDirectionEnum direction) protected abstract com.rosetta.model.lib.mapper.MapperS<? extends PriceQuantity> changeMatching(FieldWithMetaNonNegativeQuantitySchedule quantity, List<? extends PriceQuantity> change, QuantityChangeDirectionEnum direction) protected abstract FieldWithMetaNonNegativeQuantitySchedule.FieldWithMetaNonNegativeQuantityScheduleBuilderdoEvaluate(FieldWithMetaNonNegativeQuantitySchedule quantity, List<? extends PriceQuantity> change, QuantityChangeDirectionEnum direction) evaluate(FieldWithMetaNonNegativeQuantitySchedule quantity, List<? extends PriceQuantity> change, QuantityChangeDirectionEnum direction) Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface com.rosetta.model.lib.functions.RosettaFunction
toBuilder, toBuilder, toBuilder
-
Field Details
-
objectValidator
@Inject protected com.rosetta.model.lib.functions.ModelObjectValidator objectValidator -
adjustableDateResolution
-
splitQuantityChange
-
unitEquals
-
updateAmount
-
updateDatedValues
-
-
Constructor Details
-
UpdateQuantityAmountForEachMatchingQuantity
public UpdateQuantityAmountForEachMatchingQuantity()
-
-
Method Details
-
evaluate
public FieldWithMetaNonNegativeQuantitySchedule evaluate(FieldWithMetaNonNegativeQuantitySchedule quantity, List<? extends PriceQuantity> change, QuantityChangeDirectionEnum direction) - Parameters:
quantity- List of NonNegativeQuantitySchedule to update.change- List of new PriceQuantity elements to be applied where units match. PriceQuantity is defined as input to ensure the quantity change remains associated with its corresponding effectiveDate.direction- Enum specifying how the updated amounts should be applied, e.g., add, subtract or replace.- Returns:
- updatedQuantity
-
doEvaluate
protected abstract FieldWithMetaNonNegativeQuantitySchedule.FieldWithMetaNonNegativeQuantityScheduleBuilder doEvaluate(FieldWithMetaNonNegativeQuantitySchedule quantity, List<? extends PriceQuantity> change, QuantityChangeDirectionEnum direction) -
changeMatching
protected abstract com.rosetta.model.lib.mapper.MapperS<? extends PriceQuantity> changeMatching(FieldWithMetaNonNegativeQuantitySchedule quantity, List<? extends PriceQuantity> change, QuantityChangeDirectionEnum direction) -
changedAmount
protected abstract com.rosetta.model.lib.mapper.MapperS<BigDecimal> changedAmount(FieldWithMetaNonNegativeQuantitySchedule quantity, List<? extends PriceQuantity> change, QuantityChangeDirectionEnum direction) -
changeEffectiveDate
protected abstract com.rosetta.model.lib.mapper.MapperS<com.rosetta.model.lib.records.Date> changeEffectiveDate(FieldWithMetaNonNegativeQuantitySchedule quantity, List<? extends PriceQuantity> change, QuantityChangeDirectionEnum direction) -
changedDatedValue
protected abstract com.rosetta.model.lib.mapper.MapperC<? extends DatedValue> changedDatedValue(FieldWithMetaNonNegativeQuantitySchedule quantity, List<? extends PriceQuantity> change, QuantityChangeDirectionEnum direction)
-