Class ExtensibleCalculatorFactoryDelegatingFactory

  • All Implemented Interfaces:
    IGenericCalculatorFactory

    public class ExtensibleCalculatorFactoryDelegatingFactory
    extends Object
    implements IGenericCalculatorFactory
    This factory allows to use specialized factories for Calculators of dedicated metrics. Calculator factories can be registered based on the id of the metric. In case no dedicated factory is registered, a fallback factory can be provided. By default the factory uses the CalculatorFactoryRegistryExtensionPoint to look up specialized factories and uses ProbeConfigurationBasedCalculatorFactory as fallback. Therefore, without providing additional registrations, the factory provides support for either probe measurements which are passed through directly, and time span measurements.
    • Constructor Detail

      • ExtensibleCalculatorFactoryDelegatingFactory

        public ExtensibleCalculatorFactoryDelegatingFactory()
        Creates a new instance using the eclipse extension point (if available) and a calculator probe set based heuristic for identity and time span calculators.
      • ExtensibleCalculatorFactoryDelegatingFactory

        public ExtensibleCalculatorFactoryDelegatingFactory​(Map<String,​IGenericCalculatorFactory> delegateFactories,
                                                            IGenericCalculatorFactory fallbackFactory)
        Creates a new instance with the provided specializations and the fallback factory.
        Parameters:
        delegateFactories - a map of metric id to specialized factory.
        fallbackFactory - the factory which is called if there is no specialized factory.
    • Method Detail

      • buildCalculator

        public Calculator buildCalculator​(org.palladiosimulator.metricspec.MetricDescription metric,
                                          org.palladiosimulator.edp2.models.measuringpoint.MeasuringPoint measuringPoint,
                                          CalculatorProbeSet probeConfiguration)
        { Creates a new Calculator for the given MetricDescription }
        Specified by:
        buildCalculator in interface IGenericCalculatorFactory
        Parameters:
        metric - the metric which is calculated based on the probe measurements.
        measuringPoint - the measuring point where this calculator is used
        probeConfiguration - the configuration of probes required by the calculator of the metric.
        Returns:
        the desired calculator