Class ApplyFloatingRateSetting
java.lang.Object
cdm.product.asset.calculation.functions.ApplyFloatingRateSetting
- All Implemented Interfaces:
com.rosetta.model.lib.functions.RosettaFunction
- Direct Known Subclasses:
ApplyFloatingRateSetting.ApplyFloatingRateSettingDefault
public abstract class ApplyFloatingRateSetting
extends Object
implements com.rosetta.model.lib.functions.RosettaFunction
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic class -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected ApplyFloatingRateProcessingprotected CalculateFloatingCashFlowprotected DefaultFloatingRateprotected GetFloatingRateProcessingParametersprotected GetNotionalAmountprotected com.rosetta.model.lib.functions.ModelObjectValidator -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected abstract com.rosetta.model.lib.mapper.MapperS<? extends FieldWithMetaString> currency(InterestRatePayout interestRatePayout, CalculationPeriodBase calculationPeriod, Boolean isInitialPeriod, BigDecimal suppliedNotional, BigDecimal suppliedRate, FloatingRateSettingDetails floatingRateSetting) protected abstract FloatingAmountCalculationDetails.FloatingAmountCalculationDetailsBuilderdoEvaluate(InterestRatePayout interestRatePayout, CalculationPeriodBase calculationPeriod, Boolean isInitialPeriod, BigDecimal suppliedNotional, BigDecimal suppliedRate, FloatingRateSettingDetails floatingRateSetting) evaluate(InterestRatePayout interestRatePayout, CalculationPeriodBase calculationPeriod, Boolean isInitialPeriod, BigDecimal suppliedNotional, BigDecimal suppliedRate, FloatingRateSettingDetails floatingRateSetting) protected abstract com.rosetta.model.lib.mapper.MapperS<BigDecimal> floatingRate(InterestRatePayout interestRatePayout, CalculationPeriodBase calculationPeriod, Boolean isInitialPeriod, BigDecimal suppliedNotional, BigDecimal suppliedRate, FloatingRateSettingDetails floatingRateSetting) protected abstract com.rosetta.model.lib.mapper.MapperS<BigDecimal> notional(InterestRatePayout interestRatePayout, CalculationPeriodBase calculationPeriod, Boolean isInitialPeriod, BigDecimal suppliedNotional, BigDecimal suppliedRate, FloatingRateSettingDetails floatingRateSetting) protected abstract com.rosetta.model.lib.mapper.MapperS<? extends Money> periodNotional(InterestRatePayout interestRatePayout, CalculationPeriodBase calculationPeriod, Boolean isInitialPeriod, BigDecimal suppliedNotional, BigDecimal suppliedRate, FloatingRateSettingDetails floatingRateSetting) protected abstract com.rosetta.model.lib.mapper.MapperS<? extends FloatingRateProcessingDetails> processedRateDetails(InterestRatePayout interestRatePayout, CalculationPeriodBase calculationPeriod, Boolean isInitialPeriod, BigDecimal suppliedNotional, BigDecimal suppliedRate, FloatingRateSettingDetails floatingRateSetting) protected abstract com.rosetta.model.lib.mapper.MapperS<? extends FloatingRateProcessingParameters> processingParameters(InterestRatePayout interestRatePayout, CalculationPeriodBase calculationPeriod, Boolean isInitialPeriod, BigDecimal suppliedNotional, BigDecimal suppliedRate, FloatingRateSettingDetails floatingRateSetting) 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 -
applyFloatingRateProcessing
-
calculateFloatingCashFlow
-
defaultFloatingRate
-
getFloatingRateProcessingParameters
-
getNotionalAmount
-
-
Constructor Details
-
ApplyFloatingRateSetting
public ApplyFloatingRateSetting()
-
-
Method Details
-
evaluate
public FloatingAmountCalculationDetails evaluate(InterestRatePayout interestRatePayout, CalculationPeriodBase calculationPeriod, Boolean isInitialPeriod, BigDecimal suppliedNotional, BigDecimal suppliedRate, FloatingRateSettingDetails floatingRateSetting) - Parameters:
interestRatePayout- The interest rate stream for which the floating amount calculation is being done.calculationPeriod- The calculation period for which the floating rate calculation is being done.isInitialPeriod- Is this the initial calculation period?.suppliedNotional-suppliedRate-floatingRateSetting- Details of the rate observation/calculation corresonding to the supplied rate definition and calculation period.- Returns:
- result The details of the floating rate calculation, including raw rate, rate treatment details, notional, and calculated cashlow amount.
-
doEvaluate
protected abstract FloatingAmountCalculationDetails.FloatingAmountCalculationDetailsBuilder doEvaluate(InterestRatePayout interestRatePayout, CalculationPeriodBase calculationPeriod, Boolean isInitialPeriod, BigDecimal suppliedNotional, BigDecimal suppliedRate, FloatingRateSettingDetails floatingRateSetting) -
floatingRate
protected abstract com.rosetta.model.lib.mapper.MapperS<BigDecimal> floatingRate(InterestRatePayout interestRatePayout, CalculationPeriodBase calculationPeriod, Boolean isInitialPeriod, BigDecimal suppliedNotional, BigDecimal suppliedRate, FloatingRateSettingDetails floatingRateSetting) -
processingParameters
protected abstract com.rosetta.model.lib.mapper.MapperS<? extends FloatingRateProcessingParameters> processingParameters(InterestRatePayout interestRatePayout, CalculationPeriodBase calculationPeriod, Boolean isInitialPeriod, BigDecimal suppliedNotional, BigDecimal suppliedRate, FloatingRateSettingDetails floatingRateSetting) -
processedRateDetails
protected abstract com.rosetta.model.lib.mapper.MapperS<? extends FloatingRateProcessingDetails> processedRateDetails(InterestRatePayout interestRatePayout, CalculationPeriodBase calculationPeriod, Boolean isInitialPeriod, BigDecimal suppliedNotional, BigDecimal suppliedRate, FloatingRateSettingDetails floatingRateSetting) -
periodNotional
protected abstract com.rosetta.model.lib.mapper.MapperS<? extends Money> periodNotional(InterestRatePayout interestRatePayout, CalculationPeriodBase calculationPeriod, Boolean isInitialPeriod, BigDecimal suppliedNotional, BigDecimal suppliedRate, FloatingRateSettingDetails floatingRateSetting) -
notional
protected abstract com.rosetta.model.lib.mapper.MapperS<BigDecimal> notional(InterestRatePayout interestRatePayout, CalculationPeriodBase calculationPeriod, Boolean isInitialPeriod, BigDecimal suppliedNotional, BigDecimal suppliedRate, FloatingRateSettingDetails floatingRateSetting) -
currency
protected abstract com.rosetta.model.lib.mapper.MapperS<? extends FieldWithMetaString> currency(InterestRatePayout interestRatePayout, CalculationPeriodBase calculationPeriod, Boolean isInitialPeriod, BigDecimal suppliedNotional, BigDecimal suppliedRate, FloatingRateSettingDetails floatingRateSetting)
-