Class ScenariosExpand

  • All Implemented Interfaces:
    com.quartetfs.biz.pivot.postprocessing.IAggregatedMeasureAware, com.quartetfs.biz.pivot.postprocessing.IBasicPostProcessor<Double>, com.quartetfs.biz.pivot.postprocessing.IEvaluator<Double>, com.quartetfs.biz.pivot.postprocessing.IPartitionedPostProcessor<Double>, com.quartetfs.biz.pivot.postprocessing.IPostProcessor<Double>, com.quartetfs.fwk.types.IExtendedPluginValue, Serializable

    @QuartetExtendedPluginValue(intf=com.quartetfs.biz.pivot.postprocessing.IPostProcessor.class,
                                key="SCENARIOS_EXPAND")
    public class ScenariosExpand
    extends com.quartetfs.biz.pivot.postprocessing.impl.ABasicPostProcessor<Double>
    Expand the values of the PnL vector along the 'scenario' analysis hierarchy. The scenarios are retrieved using these information:
    • scenarioSet
    • scenario
    • asOfDate
    Author:
    ActiveViam
    See Also:
    Serialized Form
    • Nested Class Summary

      • Nested classes/interfaces inherited from class com.quartetfs.biz.pivot.postprocessing.impl.ABasicPostProcessor

        com.quartetfs.biz.pivot.postprocessing.impl.ABasicPostProcessor.BasicPostProcessorPrefetcher, com.quartetfs.biz.pivot.postprocessing.impl.ABasicPostProcessor.TransformationProcedure
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static String AS_OF_DATE_PROPERTY  
      protected com.quartetfs.biz.pivot.cube.hierarchy.ILevelInfo asOfDataLevelInfo  
      static String INDEX  
      protected String indexColumnName  
      static String PLUGIN_KEY  
      static String SCENARIO_PROPERTY  
      static String SCENARIO_SET_PROPERTY  
      static String SCENARIO_STORE_NAME  
      protected com.quartetfs.biz.pivot.cube.hierarchy.ILevelInfo scenarioLevelInfo  
      protected com.quartetfs.biz.pivot.cube.hierarchy.ILevelInfo scenarioSetLevelInfo  
      protected String scenarioStoreName  
      • Fields inherited from class com.quartetfs.biz.pivot.postprocessing.impl.ABasicPostProcessor

        BASIC_POST_PROCESSOR_PREFETCHER, isPartitionedOnRangeLevels
      • Fields inherited from class com.quartetfs.biz.pivot.postprocessing.impl.AAdvancedPostProcessor

        aggregatedMeasureName, ANALYSIS_LEVELS_PROPERTY, analysisLevelsToExpand, continuousQueryHandlerKeys, derivedContextDependencies, evaluator, EVALUATOR, explicitContextDependencies, logger, measuresProvider, name, OUTPUT_TYPE, outputType, pivot, prefetchers, PRINT_TIMINGS, printTimings, properties, underlyingMeasures
      • Fields inherited from interface com.quartetfs.biz.pivot.postprocessing.IPartitionedPostProcessor

        DEFAULT_PARTITIONING_ON_RANGE_LEVELS
      • Fields inherited from interface com.quartetfs.biz.pivot.postprocessing.IPostProcessor

        CONTINUOUS_QUERY_HANDLER_KEYS, IS_PARTITIONED_ON_RANGE_LEVELS_PROPERTY, SEPARATOR, UNDERLYING_MEASURES
    • Constructor Summary

      Constructors 
      Constructor Description
      ScenariosExpand​(String name, com.quartetfs.biz.pivot.cube.hierarchy.measures.IPostProcessorCreationContext creationContext)  
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      Double evaluate​(com.quartetfs.biz.pivot.ILocation location, Object[] underlyingMeasures)
      There is only one underlying measure here: the IVector that we want to expand.
      static Function<com.activeviam.desc.build.ICanStartBuildingMeasures,​com.activeviam.desc.build.IHasAtLeastOneMeasure> getPostProcessorDescription​(String measureName, String underlyingMeasure, String asOfDataLevel, String scenarioSetLevel, String scenarioLevel, String scenarioStoreName, String indexColumnName, String description, String formatter, String folder)  
      String getType()  
      void init​(Properties properties)
      Three custom properties need to be present in the configuration of the post-processor: asOfDate: its value is the string representing the as of date level, e.g.
      "AsOfDate@Date@Dates" dataSet: its value is the string representing the data set level, e.g.
      "Scenario Set@Scenario Sets@Risk" scenario: its value is the string representing the scenario level, e.g.
      "Scenario@Scenarios@Risk" On top of those custom properties the analysisLevels property needs to be defined for the scenario level since that level is part of an analysis hierarchy, e.g.
      "Scenario@Scenarios@Risk"
      static com.activeviam.copper.api.CopperMeasure measure​(com.activeviam.copper.api.CopperMeasure underlyingMeasure, String asOfDataLevel, String scenarioSetLevel, String scenarioLevel, String scenarioStoreName, String indexColumnName, String description)  
      • Methods inherited from class com.quartetfs.biz.pivot.postprocessing.impl.ABasicPostProcessor

        checkPrefetchers, compute, computePrefetchFilter, createPrefetchers, createProcedure, evaluate, initializeUnderlyingMeasures, reduce, setPartitioningLevels, supportsAnalysisLevels
      • Methods inherited from class com.quartetfs.biz.pivot.postprocessing.impl.AAdvancedPostProcessor

        addContextDependency, checkInterruption, checkOutputType, computeNamePath, computeOutputType, createEvaluator, expandResult, getActivePivot, getContext, getContextDependencies, getContinuousQueryHandlerKeys, getCurrentMeasure, getDatastoreVersion, getDerivedContextDependencies, getExpansionProcedure, getGenericOutputType, getMeasuresProvider, getName, getOutputType, getOutputTypeFromGenericClassParameter, getOutputTypeFromProperties, getPrefetchers, getProperties, getQueryCache, getTypeFromClass, handleCircularDependency, handleNotSupportedAnalysisLevels, handleUnknownUnderlyingMeasure, hideEvaluator, initializeContinuousQueryHandlerKeys, removeAnalysisLevelsFromFilter, restrictLocationAnalysisLevels, retrieveAnalysisLevelsToExpand, retrieveNamedPrefetchAggregatesWithAnalysisLevels, retrievePrefetchAggregates, retrievePrefetchAggregatesWithAnalysisLevels, setAggregatedMeasureName, toString
      • Methods inherited from interface com.quartetfs.biz.pivot.postprocessing.IPostProcessor

        getContextDependencies, getContinuousQueryHandlerKeys, getName, getOutputType, getPrefetchers, getProperties
    • Field Detail

      • asOfDataLevelInfo

        protected com.quartetfs.biz.pivot.cube.hierarchy.ILevelInfo asOfDataLevelInfo
      • scenarioSetLevelInfo

        protected com.quartetfs.biz.pivot.cube.hierarchy.ILevelInfo scenarioSetLevelInfo
      • scenarioLevelInfo

        protected com.quartetfs.biz.pivot.cube.hierarchy.ILevelInfo scenarioLevelInfo
      • scenarioStoreName

        protected String scenarioStoreName
      • indexColumnName

        protected String indexColumnName
    • Constructor Detail

      • ScenariosExpand

        public ScenariosExpand​(String name,
                               com.quartetfs.biz.pivot.cube.hierarchy.measures.IPostProcessorCreationContext creationContext)
    • Method Detail

      • getPostProcessorDescription

        public static Function<com.activeviam.desc.build.ICanStartBuildingMeasures,​com.activeviam.desc.build.IHasAtLeastOneMeasure> getPostProcessorDescription​(String measureName,
                                                                                                                                                                      String underlyingMeasure,
                                                                                                                                                                      String asOfDataLevel,
                                                                                                                                                                      String scenarioSetLevel,
                                                                                                                                                                      String scenarioLevel,
                                                                                                                                                                      String scenarioStoreName,
                                                                                                                                                                      String indexColumnName,
                                                                                                                                                                      String description,
                                                                                                                                                                      String formatter,
                                                                                                                                                                      String folder)
      • measure

        public static com.activeviam.copper.api.CopperMeasure measure​(com.activeviam.copper.api.CopperMeasure underlyingMeasure,
                                                                      String asOfDataLevel,
                                                                      String scenarioSetLevel,
                                                                      String scenarioLevel,
                                                                      String scenarioStoreName,
                                                                      String indexColumnName,
                                                                      String description)
      • init

        public void init​(Properties properties)
                  throws com.quartetfs.fwk.QuartetException
        Three custom properties need to be present in the configuration of the post-processor:
        • asOfDate: its value is the string representing the as of date level, e.g.
          "AsOfDate@Date@Dates"
        • dataSet: its value is the string representing the data set level, e.g.
          "Scenario Set@Scenario Sets@Risk"
        • scenario: its value is the string representing the scenario level, e.g.
          "Scenario@Scenarios@Risk"
        On top of those custom properties the analysisLevels property needs to be defined for the scenario level since that level is part of an analysis hierarchy, e.g.
        "Scenario@Scenarios@Risk"
        Specified by:
        init in interface com.quartetfs.biz.pivot.postprocessing.IEvaluator<Double>
        Specified by:
        init in interface com.quartetfs.biz.pivot.postprocessing.IPostProcessor<Double>
        Overrides:
        init in class com.quartetfs.biz.pivot.postprocessing.impl.ABasicPostProcessor<Double>
        Throws:
        com.quartetfs.fwk.QuartetException
      • getType

        public String getType()
      • evaluate

        public Double evaluate​(com.quartetfs.biz.pivot.ILocation location,
                               Object[] underlyingMeasures)
        There is only one underlying measure here: the IVector that we want to expand.
        Specified by:
        evaluate in interface com.quartetfs.biz.pivot.postprocessing.IEvaluator<Double>
        Specified by:
        evaluate in class com.quartetfs.biz.pivot.postprocessing.impl.ABasicPostProcessor<Double>