Interface CalculateForChild<T extends FeatureInput>
- Type Parameters:
T- feature input-type
public interface CalculateForChild<T extends FeatureInput>
Performs calculations using child-caches instead of the main cache
- Author:
- Owen Feehan
-
Method Summary
Modifier and TypeMethodDescription<S extends FeatureInput>
doublecalculate(Feature<S> feature, CalculationPart<S, T> calculation, ChildCacheName childCacheName) Calculates a feature in a child-cache using a new input created from aCalculationPart.<S extends FeatureInput>
doublecalculate(Feature<S> feature, S input, ChildCacheName childCacheName) Calculates a feature in a child-cache.<S extends FeatureInput,U>
Ucalculate(ChildCacheName childCacheName, S input, Function<CalculationPartResolver<S>, ResolvedPart<U, S>> resolver) Calculates aCalculationPartin a child-cache.
-
Method Details
-
calculate
<S extends FeatureInput> double calculate(Feature<S> feature, S input, ChildCacheName childCacheName) throws FeatureCalculationException Calculates a feature in a child-cache.- Type Parameters:
S- input-type for feature to calculate.- Parameters:
feature- feature to calculate with.input- input for feature.childCacheName- a unique-name for a child-cache to use for the feature-calculation.- Returns:
- the result of the feature calculation.
- Throws:
FeatureCalculationException- if the feature cannot be successfully calculated.
-
calculate
<S extends FeatureInput> double calculate(Feature<S> feature, CalculationPart<S, T> calculation, ChildCacheName childCacheName) throws FeatureCalculationExceptionCalculates a feature in a child-cache using a new input created from aCalculationPart.- Type Parameters:
S- input-type for feature to calculate- Parameters:
feature- feature to calculate withcalculation- feature-calculation to generate input for the feature.childCacheName- a unique-name for a child-cache to use for the feature-calculation.- Returns:
- the result of the feature calculation.
- Throws:
FeatureCalculationException- if the feature cannot be successfully calculated.
-
calculate
<S extends FeatureInput,U> U calculate(ChildCacheName childCacheName, S input, Function<CalculationPartResolver<S>, ResolvedPart<U, throws FeatureCalculationExceptionS>> resolver) Calculates aCalculationPartin a child-cache.- Type Parameters:
S- input-type for feature to calculateU- return-type of Feature-Calculation- Parameters:
childCacheName- name of child cache.input- input to be used for calculation.resolver- returns the resolved-part, given a resolver.- Returns:
- the result of the calculation.
- Throws:
FeatureCalculationException
-