public InterestCalculation(XmlNode xmlNode)
 : base(xmlNode)
 {
     XmlNode dayCountFractionNode = xmlNode.SelectSingleNode("dayCountFraction");
     
     if (dayCountFractionNode != null)
     {
         if (dayCountFractionNode.Attributes["href"] != null || dayCountFractionNode.Attributes["id"] != null) 
         {
             if (dayCountFractionNode.Attributes["id"] != null) 
             {
                 dayCountFractionIDRef_ = dayCountFractionNode.Attributes["id"].Value;
                 DayCountFraction ob = new DayCountFraction(dayCountFractionNode);
                 IDManager.SetID(dayCountFractionIDRef_, ob);
             }
             else if (dayCountFractionNode.Attributes["href"] != null)
             {
                 dayCountFractionIDRef_ = dayCountFractionNode.Attributes["href"].Value;
             }
             else
             {
                 dayCountFraction_ = new DayCountFraction(dayCountFractionNode);
             }
         }
         else
         {
             dayCountFraction_ = new DayCountFraction(dayCountFractionNode);
         }
     }
     
 
     XmlNode compoundingNode = xmlNode.SelectSingleNode("compounding");
     
     if (compoundingNode != null)
     {
         if (compoundingNode.Attributes["href"] != null || compoundingNode.Attributes["id"] != null) 
         {
             if (compoundingNode.Attributes["id"] != null) 
             {
                 compoundingIDRef_ = compoundingNode.Attributes["id"].Value;
                 Compounding ob = new Compounding(compoundingNode);
                 IDManager.SetID(compoundingIDRef_, ob);
             }
             else if (compoundingNode.Attributes["href"] != null)
             {
                 compoundingIDRef_ = compoundingNode.Attributes["href"].Value;
             }
             else
             {
                 compounding_ = new Compounding(compoundingNode);
             }
         }
         else
         {
             compounding_ = new Compounding(compoundingNode);
         }
     }
     
 
     XmlNode interpolationMethodNode = xmlNode.SelectSingleNode("interpolationMethod");
     
     if (interpolationMethodNode != null)
     {
         if (interpolationMethodNode.Attributes["href"] != null || interpolationMethodNode.Attributes["id"] != null) 
         {
             if (interpolationMethodNode.Attributes["id"] != null) 
             {
                 interpolationMethodIDRef_ = interpolationMethodNode.Attributes["id"].Value;
                 InterpolationMethod ob = new InterpolationMethod(interpolationMethodNode);
                 IDManager.SetID(interpolationMethodIDRef_, ob);
             }
             else if (interpolationMethodNode.Attributes["href"] != null)
             {
                 interpolationMethodIDRef_ = interpolationMethodNode.Attributes["href"].Value;
             }
             else
             {
                 interpolationMethod_ = new InterpolationMethod(interpolationMethodNode);
             }
         }
         else
         {
             interpolationMethod_ = new InterpolationMethod(interpolationMethodNode);
         }
     }
     
 
     XmlNode interpolationPeriodNode = xmlNode.SelectSingleNode("interpolationPeriod");
     
     if (interpolationPeriodNode != null)
     {
         if (interpolationPeriodNode.Attributes["href"] != null || interpolationPeriodNode.Attributes["id"] != null) 
         {
             if (interpolationPeriodNode.Attributes["id"] != null) 
             {
                 interpolationPeriodIDRef_ = interpolationPeriodNode.Attributes["id"].Value;
                 InterpolationPeriodEnum ob = new InterpolationPeriodEnum(interpolationPeriodNode);
                 IDManager.SetID(interpolationPeriodIDRef_, ob);
             }
             else if (interpolationPeriodNode.Attributes["href"] != null)
             {
                 interpolationPeriodIDRef_ = interpolationPeriodNode.Attributes["href"].Value;
             }
             else
             {
                 interpolationPeriod_ = new InterpolationPeriodEnum(interpolationPeriodNode);
             }
         }
         else
         {
             interpolationPeriod_ = new InterpolationPeriodEnum(interpolationPeriodNode);
         }
     }
     
 
 }
예제 #2
0
        public InterestCalculation(XmlNode xmlNode)
            : base(xmlNode)
        {
            XmlNode dayCountFractionNode = xmlNode.SelectSingleNode("dayCountFraction");

            if (dayCountFractionNode != null)
            {
                if (dayCountFractionNode.Attributes["href"] != null || dayCountFractionNode.Attributes["id"] != null)
                {
                    if (dayCountFractionNode.Attributes["id"] != null)
                    {
                        dayCountFractionIDRef_ = dayCountFractionNode.Attributes["id"].Value;
                        DayCountFraction ob = new DayCountFraction(dayCountFractionNode);
                        IDManager.SetID(dayCountFractionIDRef_, ob);
                    }
                    else if (dayCountFractionNode.Attributes["href"] != null)
                    {
                        dayCountFractionIDRef_ = dayCountFractionNode.Attributes["href"].Value;
                    }
                    else
                    {
                        dayCountFraction_ = new DayCountFraction(dayCountFractionNode);
                    }
                }
                else
                {
                    dayCountFraction_ = new DayCountFraction(dayCountFractionNode);
                }
            }


            XmlNode compoundingNode = xmlNode.SelectSingleNode("compounding");

            if (compoundingNode != null)
            {
                if (compoundingNode.Attributes["href"] != null || compoundingNode.Attributes["id"] != null)
                {
                    if (compoundingNode.Attributes["id"] != null)
                    {
                        compoundingIDRef_ = compoundingNode.Attributes["id"].Value;
                        Compounding ob = new Compounding(compoundingNode);
                        IDManager.SetID(compoundingIDRef_, ob);
                    }
                    else if (compoundingNode.Attributes["href"] != null)
                    {
                        compoundingIDRef_ = compoundingNode.Attributes["href"].Value;
                    }
                    else
                    {
                        compounding_ = new Compounding(compoundingNode);
                    }
                }
                else
                {
                    compounding_ = new Compounding(compoundingNode);
                }
            }


            XmlNode interpolationMethodNode = xmlNode.SelectSingleNode("interpolationMethod");

            if (interpolationMethodNode != null)
            {
                if (interpolationMethodNode.Attributes["href"] != null || interpolationMethodNode.Attributes["id"] != null)
                {
                    if (interpolationMethodNode.Attributes["id"] != null)
                    {
                        interpolationMethodIDRef_ = interpolationMethodNode.Attributes["id"].Value;
                        InterpolationMethod ob = new InterpolationMethod(interpolationMethodNode);
                        IDManager.SetID(interpolationMethodIDRef_, ob);
                    }
                    else if (interpolationMethodNode.Attributes["href"] != null)
                    {
                        interpolationMethodIDRef_ = interpolationMethodNode.Attributes["href"].Value;
                    }
                    else
                    {
                        interpolationMethod_ = new InterpolationMethod(interpolationMethodNode);
                    }
                }
                else
                {
                    interpolationMethod_ = new InterpolationMethod(interpolationMethodNode);
                }
            }


            XmlNode interpolationPeriodNode = xmlNode.SelectSingleNode("interpolationPeriod");

            if (interpolationPeriodNode != null)
            {
                if (interpolationPeriodNode.Attributes["href"] != null || interpolationPeriodNode.Attributes["id"] != null)
                {
                    if (interpolationPeriodNode.Attributes["id"] != null)
                    {
                        interpolationPeriodIDRef_ = interpolationPeriodNode.Attributes["id"].Value;
                        InterpolationPeriodEnum ob = new InterpolationPeriodEnum(interpolationPeriodNode);
                        IDManager.SetID(interpolationPeriodIDRef_, ob);
                    }
                    else if (interpolationPeriodNode.Attributes["href"] != null)
                    {
                        interpolationPeriodIDRef_ = interpolationPeriodNode.Attributes["href"].Value;
                    }
                    else
                    {
                        interpolationPeriod_ = new InterpolationPeriodEnum(interpolationPeriodNode);
                    }
                }
                else
                {
                    interpolationPeriod_ = new InterpolationPeriodEnum(interpolationPeriodNode);
                }
            }
        }
        public InterestCalculation(XmlNode xmlNode)
            : base(xmlNode)
        {
            XmlNodeList dayCountFractionNodeList = xmlNode.SelectNodes("dayCountFraction");

            if (dayCountFractionNodeList.Count > 1)
            {
                throw new Exception();
            }

            foreach (XmlNode item in dayCountFractionNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        dayCountFractionIDRef = item.Attributes["id"].Name;
                        DayCountFraction ob = DayCountFraction();
                        IDManager.SetID(dayCountFractionIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        dayCountFractionIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        dayCountFraction = new DayCountFraction(item);
                    }
                }
            }


            XmlNodeList compoundingNodeList = xmlNode.SelectNodes("compounding");

            if (compoundingNodeList.Count > 1)
            {
                throw new Exception();
            }

            foreach (XmlNode item in compoundingNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        compoundingIDRef = item.Attributes["id"].Name;
                        Compounding ob = Compounding();
                        IDManager.SetID(compoundingIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        compoundingIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        compounding = new Compounding(item);
                    }
                }
            }


            XmlNodeList interpolationMethodNodeList = xmlNode.SelectNodes("interpolationMethod");

            if (interpolationMethodNodeList.Count > 1)
            {
                throw new Exception();
            }

            foreach (XmlNode item in interpolationMethodNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        interpolationMethodIDRef = item.Attributes["id"].Name;
                        InterpolationMethod ob = InterpolationMethod();
                        IDManager.SetID(interpolationMethodIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        interpolationMethodIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        interpolationMethod = new InterpolationMethod(item);
                    }
                }
            }


            XmlNodeList interpolationPeriodNodeList = xmlNode.SelectNodes("interpolationPeriod");

            if (interpolationPeriodNodeList.Count > 1)
            {
                throw new Exception();
            }

            foreach (XmlNode item in interpolationPeriodNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        interpolationPeriodIDRef = item.Attributes["id"].Name;
                        InterpolationPeriodEnum ob = InterpolationPeriodEnum();
                        IDManager.SetID(interpolationPeriodIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        interpolationPeriodIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        interpolationPeriod = new InterpolationPeriodEnum(item);
                    }
                }
            }
        }