Interface CalculationParameter

    • Method Detail

      • queryType

        default Class<? extends CalculationParameter> queryType()
        Gets the type that the parameter will be queried by.

        Parameters can be queried using CalculationParameters.findParameter(Class). This type is the key that callers must use in that method.

        By default, this is just Object.getClass(). It will only differ if the query type is an interface rather than the concrete class.

        Returns:
        the type of the parameter implementation
      • filter

        default Optional<CalculationParameter> filter​(CalculationTarget target,
                                                      Measure measure)
        Filters this parameter to the specified target and measure.

        Parameters may apply to all targets and measures or just a subset. The CalculationParameters.filter(CalculationTarget, Measure) method uses this method to filter a complete set of parameters.

        By default, this returns Optional.of(this). If the parameter does not apply to either the target or measure, then optional empty must be returned. If desired, the result can be a different parameter, allowing one parameter to delegate to another when filtered.

        Parameters:
        target - the calculation target, such as a trade
        measure - the measure to be calculated
        Returns:
        the parameter appropriate to the target and measure, empty if this parameter does not apply