BasketMeasures.java

  1. package org.drip.analytics.output;

  2. /*
  3.  * -*- mode: java; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*-
  4.  */

  5. /*!
  6.  * Copyright (C) 2020 Lakshmi Krishnamurthy
  7.  * Copyright (C) 2019 Lakshmi Krishnamurthy
  8.  * Copyright (C) 2018 Lakshmi Krishnamurthy
  9.  * Copyright (C) 2017 Lakshmi Krishnamurthy
  10.  * Copyright (C) 2016 Lakshmi Krishnamurthy
  11.  * Copyright (C) 2015 Lakshmi Krishnamurthy
  12.  * Copyright (C) 2014 Lakshmi Krishnamurthy
  13.  * Copyright (C) 2013 Lakshmi Krishnamurthy
  14.  * Copyright (C) 2012 Lakshmi Krishnamurthy
  15.  * Copyright (C) 2011 Lakshmi Krishnamurthy
  16.  *
  17.  *  This file is part of DROP, an open-source library targeting analytics/risk, transaction cost analytics,
  18.  *      asset liability management analytics, capital, exposure, and margin analytics, valuation adjustment
  19.  *      analytics, and portfolio construction analytics within and across fixed income, credit, commodity,
  20.  *      equity, FX, and structured products. It also includes auxiliary libraries for algorithm support,
  21.  *      numerical analysis, numerical optimization, spline builder, model validation, statistical learning,
  22.  *      and computational support.
  23.  *  
  24.  *      https://lakshmidrip.github.io/DROP/
  25.  *  
  26.  *  DROP is composed of three modules:
  27.  *  
  28.  *  - DROP Product Core - https://lakshmidrip.github.io/DROP-Product-Core/
  29.  *  - DROP Portfolio Core - https://lakshmidrip.github.io/DROP-Portfolio-Core/
  30.  *  - DROP Computational Core - https://lakshmidrip.github.io/DROP-Computational-Core/
  31.  *
  32.  *  DROP Product Core implements libraries for the following:
  33.  *  - Fixed Income Analytics
  34.  *  - Loan Analytics
  35.  *  - Transaction Cost Analytics
  36.  *
  37.  *  DROP Portfolio Core implements libraries for the following:
  38.  *  - Asset Allocation Analytics
  39.  *  - Asset Liability Management Analytics
  40.  *  - Capital Estimation Analytics
  41.  *  - Exposure Analytics
  42.  *  - Margin Analytics
  43.  *  - XVA Analytics
  44.  *
  45.  *  DROP Computational Core implements libraries for the following:
  46.  *  - Algorithm Support
  47.  *  - Computation Support
  48.  *  - Function Analysis
  49.  *  - Model Validation
  50.  *  - Numerical Analysis
  51.  *  - Numerical Optimizer
  52.  *  - Spline Builder
  53.  *  - Statistical Learning
  54.  *
  55.  *  Documentation for DROP is Spread Over:
  56.  *
  57.  *  - Main                     => https://lakshmidrip.github.io/DROP/
  58.  *  - Wiki                     => https://github.com/lakshmiDRIP/DROP/wiki
  59.  *  - GitHub                   => https://github.com/lakshmiDRIP/DROP
  60.  *  - Repo Layout Taxonomy     => https://github.com/lakshmiDRIP/DROP/blob/master/Taxonomy.md
  61.  *  - Javadoc                  => https://lakshmidrip.github.io/DROP/Javadoc/index.html
  62.  *  - Technical Specifications => https://github.com/lakshmiDRIP/DROP/tree/master/Docs/Internal
  63.  *  - Release Versions         => https://lakshmidrip.github.io/DROP/version.html
  64.  *  - Community Credits        => https://lakshmidrip.github.io/DROP/credits.html
  65.  *  - Issues Catalog           => https://github.com/lakshmiDRIP/DROP/issues
  66.  *  - JUnit                    => https://lakshmidrip.github.io/DROP/junit/index.html
  67.  *  - Jacoco                   => https://lakshmidrip.github.io/DROP/jacoco/index.html
  68.  *
  69.  *  Licensed under the Apache License, Version 2.0 (the "License");
  70.  *      you may not use this file except in compliance with the License.
  71.  *  
  72.  *  You may obtain a copy of the License at
  73.  *      http://www.apache.org/licenses/LICENSE-2.0
  74.  *  
  75.  *  Unless required by applicable law or agreed to in writing, software
  76.  *      distributed under the License is distributed on an "AS IS" BASIS,
  77.  *      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  78.  *  
  79.  *  See the License for the specific language governing permissions and
  80.  *      limitations under the License.
  81.  */

  82. /**
  83.  * <i>BasketMeasures</i> is the place holder for the analytical basket measures, optionally across scenarios.
  84.  * It contains the following scenario measure maps:
  85.  *
  86.  *  <br><br>
  87.  *  <ul>
  88.  *      <li>
  89.  *          Unadjusted Base Measures
  90.  *      </li>
  91.  *      <li>
  92.  *          Flat delta/gamma bump measure maps for IR/credit/RR bump curves
  93.  *      </li>
  94.  *      <li>
  95.  *          Component/tenor bump double maps for IR/credit/RR curves
  96.  *      </li>
  97.  *      <li>
  98.  *          Flat/component recovery bumped measure maps for recovery bumped credit curves
  99.  *      </li>
  100.  *      <li>
  101.  *          Custom scenario measure map
  102.  *      </li>
  103.  *  </ul>
  104.  *
  105.  *  <br><br>
  106.  *  <ul>
  107.  *      <li><b>Module </b> = <a href = "https://github.com/lakshmiDRIP/DROP/tree/master/ProductCore.md">Product Core Module</a></li>
  108.  *      <li><b>Library</b> = <a href = "https://github.com/lakshmiDRIP/DROP/tree/master/FixedIncomeAnalyticsLibrary.md">Fixed Income Analytics</a></li>
  109.  *      <li><b>Project</b> = <a href = "https://github.com/lakshmiDRIP/DROP/tree/master/src/main/java/org/drip/analytics/README.md">Date, Cash Flow, and Cash Flow Period Measure Generation Utilities</a></li>
  110.  *      <li><b>Package</b> = <a href = "https://github.com/lakshmiDRIP/DROP/tree/master/src/main/java/org/drip/analytics/output/README.md">Period Product Targeted Valuation Measures</a></li>
  111.  *  </ul>
  112.  *
  113.  * @author Lakshmi Krishnamurthy
  114.  */

  115. public class BasketMeasures extends org.drip.analytics.output.ComponentMeasures {
  116.     private
  117.         org.drip.analytics.support.CaseInsensitiveTreeMap<org.drip.analytics.support.CaseInsensitiveTreeMap<java.lang.Double>>
  118.             _mmComponentIRDeltaMeasures = null;
  119.     private
  120.         org.drip.analytics.support.CaseInsensitiveTreeMap<org.drip.analytics.support.CaseInsensitiveTreeMap<java.lang.Double>>
  121.             _mmComponentIRGammaMeasures = null;
  122.     private
  123.         org.drip.analytics.support.CaseInsensitiveTreeMap<org.drip.analytics.support.CaseInsensitiveTreeMap<java.lang.Double>>
  124.             _mmComponentCreditDeltaMeasures = null;
  125.     private
  126.         org.drip.analytics.support.CaseInsensitiveTreeMap<org.drip.analytics.support.CaseInsensitiveTreeMap<java.lang.Double>>
  127.             _mmComponentCreditGammaMeasures = null;
  128.     private
  129.         org.drip.analytics.support.CaseInsensitiveTreeMap<org.drip.analytics.support.CaseInsensitiveTreeMap<java.lang.Double>>
  130.             _mmComponentRRDeltaMeasures = null;
  131.     private
  132.         org.drip.analytics.support.CaseInsensitiveTreeMap<org.drip.analytics.support.CaseInsensitiveTreeMap<java.lang.Double>>
  133.             _mmComponentRRGammaMeasures = null;
  134.     private
  135.         org.drip.analytics.support.CaseInsensitiveTreeMap<org.drip.analytics.support.CaseInsensitiveTreeMap<org.drip.analytics.support.CaseInsensitiveTreeMap<java.lang.Double>>>
  136.             _mmmComponentTenorIRDeltaMeasures = null;
  137.     private
  138.         org.drip.analytics.support.CaseInsensitiveTreeMap<org.drip.analytics.support.CaseInsensitiveTreeMap<org.drip.analytics.support.CaseInsensitiveTreeMap<java.lang.Double>>>
  139.             _mmmComponentTenorIRGammaMeasures = null;
  140.     private
  141.         org.drip.analytics.support.CaseInsensitiveTreeMap<org.drip.analytics.support.CaseInsensitiveTreeMap<org.drip.analytics.support.CaseInsensitiveTreeMap<java.lang.Double>>>
  142.             _mmmComponentTenorCreditDeltaMeasures = null;
  143.     private
  144.         org.drip.analytics.support.CaseInsensitiveTreeMap<org.drip.analytics.support.CaseInsensitiveTreeMap<org.drip.analytics.support.CaseInsensitiveTreeMap<java.lang.Double>>>
  145.             _mmmComponentTenorCreditGammaMeasures = null;
  146.     private
  147.         org.drip.analytics.support.CaseInsensitiveTreeMap<org.drip.analytics.support.CaseInsensitiveTreeMap<java.lang.Double>>
  148.             _mmComponentCustomMeasures = null;

  149.     /**
  150.      * Empty constructor - all members initialized to NaN or null
  151.      */

  152.     public BasketMeasures()
  153.     {
  154.     }

  155.     /**
  156.      * Retrieve the Component IR Delta Double Measure Map
  157.      *
  158.      * @return The Component IR Delta Double Measure Map
  159.      */

  160.     public
  161.         org.drip.analytics.support.CaseInsensitiveTreeMap<org.drip.analytics.support.CaseInsensitiveTreeMap<java.lang.Double>>
  162.             componentIRDeltaMeasures()
  163.     {
  164.         return _mmComponentIRDeltaMeasures;
  165.     }

  166.     /**
  167.      * Set the Component IR Delta Double Measures Map
  168.      *
  169.      * @param mmComponentIRDeltaMeasures The Component IR Delta Double Measures Map
  170.      *
  171.      * @return TRUE - The Component IR Delta Double Measures Map Successfully Set
  172.      */

  173.     public boolean setComponentIRDeltaMeasures (
  174.         final
  175.             org.drip.analytics.support.CaseInsensitiveTreeMap<org.drip.analytics.support.CaseInsensitiveTreeMap<java.lang.Double>>
  176.                 mmComponentIRDeltaMeasures)
  177.     {
  178.         if (null == mmComponentIRDeltaMeasures || 0 == mmComponentIRDeltaMeasures.size()) return false;

  179.         _mmComponentIRDeltaMeasures = mmComponentIRDeltaMeasures;
  180.         return true;
  181.     }

  182.     /**
  183.      * Retrieve the Component IR Gamma Double Measure Map
  184.      *
  185.      * @return The Component IR Gamma Double Measure Map
  186.      */

  187.     public
  188.         org.drip.analytics.support.CaseInsensitiveTreeMap<org.drip.analytics.support.CaseInsensitiveTreeMap<java.lang.Double>>
  189.             componentIRGammaMeasures()
  190.     {
  191.         return _mmComponentIRGammaMeasures;
  192.     }

  193.     /**
  194.      * Set the Component IR Gamma Double Measures Map
  195.      *
  196.      * @param mmComponentIRGammaMeasures The Component IR Gamma Double Measures Map
  197.      *
  198.      * @return TRUE - The Component IR Gamma Double Measures Map Successfully Set
  199.      */

  200.     public boolean setComponentIRGammaMeasures (
  201.         final
  202.             org.drip.analytics.support.CaseInsensitiveTreeMap<org.drip.analytics.support.CaseInsensitiveTreeMap<java.lang.Double>>
  203.                 mmComponentIRGammaMeasures)
  204.     {
  205.         if (null == mmComponentIRGammaMeasures || 0 == mmComponentIRGammaMeasures.size()) return false;

  206.         _mmComponentIRGammaMeasures = mmComponentIRGammaMeasures;
  207.         return true;
  208.     }

  209.     /**
  210.      * Retrieve the Component Credit Delta Double Measure Map
  211.      *
  212.      * @return The ComponentCredit Delta Double Measure Map
  213.      */

  214.     public
  215.         org.drip.analytics.support.CaseInsensitiveTreeMap<org.drip.analytics.support.CaseInsensitiveTreeMap<java.lang.Double>>
  216.             componentCreditDeltaMeasures()
  217.     {
  218.         return _mmComponentCreditDeltaMeasures;
  219.     }

  220.     /**
  221.      * Set the Component Credit Delta Double Measures Map
  222.      *
  223.      * @param mmComponentCreditDeltaMeasures The Component Credit Delta Double Measures Map
  224.      *
  225.      * @return TRUE - The Component Credit Delta Double Measures Map Successfully Set
  226.      */

  227.     public boolean setComponentCreditDeltaMeasures (
  228.         final
  229.             org.drip.analytics.support.CaseInsensitiveTreeMap<org.drip.analytics.support.CaseInsensitiveTreeMap<java.lang.Double>>
  230.                 mmComponentCreditDeltaMeasures)
  231.     {
  232.         if (null == mmComponentCreditDeltaMeasures || 0 == mmComponentCreditDeltaMeasures.size())
  233.             return false;

  234.         _mmComponentCreditDeltaMeasures = mmComponentCreditDeltaMeasures;
  235.         return true;
  236.     }

  237.     /**
  238.      * Retrieve the Component Credit Gamma Double Measure Map
  239.      *
  240.      * @return The Component Credit Gamma Double Measure Map
  241.      */

  242.     public
  243.         org.drip.analytics.support.CaseInsensitiveTreeMap<org.drip.analytics.support.CaseInsensitiveTreeMap<java.lang.Double>>
  244.             componentCreditGammaMeasures()
  245.     {
  246.         return _mmComponentCreditGammaMeasures;
  247.     }

  248.     /**
  249.      * Set the Component Credit Gamma Double Measures Map
  250.      *
  251.      * @param mmComponentCreditGammaMeasures The Component Credit Gamma Double Measures Map
  252.      *
  253.      * @return TRUE - The Component Credit Gamma Double Measures Map Successfully Set
  254.      */

  255.     public boolean setComponentCreditGammaMeasures (
  256.         final
  257.             org.drip.analytics.support.CaseInsensitiveTreeMap<org.drip.analytics.support.CaseInsensitiveTreeMap<java.lang.Double>>
  258.                 mmComponentCreditGammaMeasures)
  259.     {
  260.         if (null == mmComponentCreditGammaMeasures || 0 == mmComponentCreditGammaMeasures.size()) return false;

  261.         _mmComponentCreditGammaMeasures = mmComponentCreditGammaMeasures;
  262.         return true;
  263.     }

  264.     /**
  265.      * Retrieve the Component RR Delta Double Measure Map
  266.      *
  267.      * @return The Component RR Delta Double Measure Map
  268.      */

  269.     public
  270.         org.drip.analytics.support.CaseInsensitiveTreeMap<org.drip.analytics.support.CaseInsensitiveTreeMap<java.lang.Double>>
  271.             componentRRDeltaMeasures()
  272.     {
  273.         return _mmComponentRRDeltaMeasures;
  274.     }

  275.     /**
  276.      * Set the Component RR Delta Double Measures Map
  277.      *
  278.      * @param mmComponentRRDeltaMeasures The RR Delta Double Measures Map
  279.      *
  280.      * @return TRUE - The Component RR Delta Double Measures Map Successfully Set
  281.      */

  282.     public boolean setComponentRRDeltaMeasures (
  283.         final
  284.             org.drip.analytics.support.CaseInsensitiveTreeMap<org.drip.analytics.support.CaseInsensitiveTreeMap<java.lang.Double>>
  285.                 mmComponentRRDeltaMeasures)
  286.     {
  287.         if (null == mmComponentRRDeltaMeasures || 0 == mmComponentRRDeltaMeasures.size()) return false;

  288.         _mmComponentRRDeltaMeasures = mmComponentRRDeltaMeasures;
  289.         return true;
  290.     }

  291.     /**
  292.      * Retrieve the Component RR Gamma Double Measure Map
  293.      *
  294.      * @return The Component RR Gamma Double Measure Map
  295.      */

  296.     public
  297.         org.drip.analytics.support.CaseInsensitiveTreeMap<org.drip.analytics.support.CaseInsensitiveTreeMap<java.lang.Double>>
  298.             componentRRGammaMeasures()
  299.     {
  300.         return _mmComponentRRGammaMeasures;
  301.     }

  302.     /**
  303.      * Set the Component RR Gamma Double Measures Map
  304.      *
  305.      * @param mmComponentRRGammaMeasures The RR Gamma Double Measures Map
  306.      *
  307.      * @return TRUE - The Component RR Gamma Double Measures Map Successfully Set
  308.      */

  309.     public boolean setComponentRRGammaMeasures (
  310.         final
  311.             org.drip.analytics.support.CaseInsensitiveTreeMap<org.drip.analytics.support.CaseInsensitiveTreeMap<java.lang.Double>>
  312.                 mmComponentRRGammaMeasures)
  313.     {
  314.         if (null == mmComponentRRGammaMeasures || 0 == mmComponentRRGammaMeasures.size()) return false;

  315.         _mmComponentRRGammaMeasures = mmComponentRRGammaMeasures;
  316.         return true;
  317.     }

  318.     /**
  319.      * Retrieve the Component/Tenor IR Delta Triple Measure Map
  320.      *
  321.      * @return The Component/Tenor IR Delta Triple Measure Map
  322.      */

  323.     public
  324.         org.drip.analytics.support.CaseInsensitiveTreeMap<org.drip.analytics.support.CaseInsensitiveTreeMap<org.drip.analytics.support.CaseInsensitiveTreeMap<java.lang.Double>>>
  325.             componentTenorIRDeltaMeasures()
  326.     {
  327.         return _mmmComponentTenorIRDeltaMeasures;
  328.     }

  329.     /**
  330.      * Set the Component/Tenor IR Delta Triple Measures Map
  331.      *
  332.      * @param mmmComponentTenorIRDeltaMeasures The Component/Tenor IR Delta Triple Measures Map
  333.      *
  334.      * @return TRUE - The Component/Tenor IR Delta Triple Measures Map Successfully Set
  335.      */

  336.     public boolean setComponentTenorIRDeltaMeasures (
  337.         final
  338.             org.drip.analytics.support.CaseInsensitiveTreeMap<org.drip.analytics.support.CaseInsensitiveTreeMap<org.drip.analytics.support.CaseInsensitiveTreeMap<java.lang.Double>>>
  339.                 mmmComponentTenorIRDeltaMeasures)
  340.     {
  341.         if (null == mmmComponentTenorIRDeltaMeasures || 0 == mmmComponentTenorIRDeltaMeasures.size())
  342.             return false;

  343.         _mmmComponentTenorIRDeltaMeasures = mmmComponentTenorIRDeltaMeasures;
  344.         return true;
  345.     }

  346.     /**
  347.      * Retrieve the Component/Tenor IR Gamma Triple Measure Map
  348.      *
  349.      * @return The Component/Tenor IR Gamma Triple Measure Map
  350.      */

  351.     public
  352.         org.drip.analytics.support.CaseInsensitiveTreeMap<org.drip.analytics.support.CaseInsensitiveTreeMap<org.drip.analytics.support.CaseInsensitiveTreeMap<java.lang.Double>>>
  353.             componentTenorIRGammaMeasures()
  354.     {
  355.         return _mmmComponentTenorIRGammaMeasures;
  356.     }

  357.     /**
  358.      * Set the Component/Tenor IR Gamma Triple Measures Map
  359.      *
  360.      * @param mmmComponentTenorIRGammaMeasures The Component/Tenor IR Gamma Triple Measures Map
  361.      *
  362.      * @return TRUE - The Component/Tenor IR Gamma Triple Measures Map Successfully Set
  363.      */

  364.     public boolean setComponentTenorIRGammaMeasures (
  365.         final
  366.             org.drip.analytics.support.CaseInsensitiveTreeMap<org.drip.analytics.support.CaseInsensitiveTreeMap<org.drip.analytics.support.CaseInsensitiveTreeMap<java.lang.Double>>>
  367.                 mmmComponentTenorIRGammaMeasures)
  368.     {
  369.         if (null == mmmComponentTenorIRGammaMeasures || 0 == mmmComponentTenorIRGammaMeasures.size())
  370.             return false;

  371.         _mmmComponentTenorIRGammaMeasures = mmmComponentTenorIRGammaMeasures;
  372.         return true;
  373.     }

  374.     /**
  375.      * Retrieve the Component/Tenor Credit Delta Triple Measure Map
  376.      *
  377.      * @return The Component/Tenor Credit Delta Triple Measure Map
  378.      */

  379.     public
  380.         org.drip.analytics.support.CaseInsensitiveTreeMap<org.drip.analytics.support.CaseInsensitiveTreeMap<org.drip.analytics.support.CaseInsensitiveTreeMap<java.lang.Double>>>
  381.             componentTenorCreditDeltaMeasures()
  382.     {
  383.         return _mmmComponentTenorCreditDeltaMeasures;
  384.     }

  385.     /**
  386.      * Set the Component/Tenor Credit Delta Triple Measures Map
  387.      *
  388.      * @param mmmComponentTenorCreditDeltaMeasures The Component/Tenor Credit Delta Triple Measures Map
  389.      *
  390.      * @return TRUE - The Component/Tenor Credit Delta Triple Measures Map Successfully Set
  391.      */

  392.     public boolean setComponentTenorCreditDeltaMeasures (
  393.         final
  394.             org.drip.analytics.support.CaseInsensitiveTreeMap<org.drip.analytics.support.CaseInsensitiveTreeMap<org.drip.analytics.support.CaseInsensitiveTreeMap<java.lang.Double>>>
  395.                 mmmComponentTenorCreditDeltaMeasures)
  396.     {
  397.         if (null == mmmComponentTenorCreditDeltaMeasures || 0 == mmmComponentTenorCreditDeltaMeasures.size())
  398.             return false;

  399.         _mmmComponentTenorCreditDeltaMeasures = mmmComponentTenorCreditDeltaMeasures;
  400.         return true;
  401.     }

  402.     /**
  403.      * Retrieve the Component/Tenor Credit Gamma Triple Measure Map
  404.      *
  405.      * @return The Component/Tenor Credit Gamma Triple Measure Map
  406.      */

  407.     public
  408.         org.drip.analytics.support.CaseInsensitiveTreeMap<org.drip.analytics.support.CaseInsensitiveTreeMap<org.drip.analytics.support.CaseInsensitiveTreeMap<java.lang.Double>>>
  409.             componentTenorCreditGammaMeasures()
  410.     {
  411.         return _mmmComponentTenorCreditGammaMeasures;
  412.     }

  413.     /**
  414.      * Set the Component/Tenor Credit Gamma Triple Measures Map
  415.      *
  416.      * @param mmmComponentTenorCreditGammaMeasures The Component/Tenor Credit Gamma Triple Measures Map
  417.      *
  418.      * @return TRUE - The Component/Tenor Credit Gamma Triple Measures Map Successfully Set
  419.      */

  420.     public boolean setComponentTenorCreditGammaMeasures (
  421.         final
  422.             org.drip.analytics.support.CaseInsensitiveTreeMap<org.drip.analytics.support.CaseInsensitiveTreeMap<org.drip.analytics.support.CaseInsensitiveTreeMap<java.lang.Double>>>
  423.                 mmmComponentTenorCreditGammaMeasures)
  424.     {
  425.         if (null == mmmComponentTenorCreditGammaMeasures || 0 == mmmComponentTenorCreditGammaMeasures.size())
  426.             return false;

  427.         _mmmComponentTenorCreditGammaMeasures = mmmComponentTenorCreditGammaMeasures;
  428.         return true;
  429.     }

  430.     /**
  431.      * Retrieve the Component Custom Double Measure Map
  432.      *
  433.      * @return The Component Custom Double Measure Map
  434.      */

  435.     public
  436.         org.drip.analytics.support.CaseInsensitiveTreeMap<org.drip.analytics.support.CaseInsensitiveTreeMap<java.lang.Double>>
  437.             componentCustomMeasures()
  438.     {
  439.         return _mmComponentCustomMeasures;
  440.     }

  441.     /**
  442.      * Set the Component Custom Double Measures Map
  443.      *
  444.      * @param mmComponentCustomMeasures The Component Custom Double Measures Map
  445.      *
  446.      * @return TRUE - The Component Custom Double Measures Map Successfully Set
  447.      */

  448.     public boolean setComponentCustomMeasures (
  449.         final
  450.             org.drip.analytics.support.CaseInsensitiveTreeMap<org.drip.analytics.support.CaseInsensitiveTreeMap<java.lang.Double>>
  451.                 mmComponentCustomMeasures)
  452.     {
  453.         if (null == mmComponentCustomMeasures || 0 == mmComponentCustomMeasures.size()) return false;

  454.         _mmComponentCustomMeasures = mmComponentCustomMeasures;
  455.         return true;
  456.     }
  457. }