public CommodityPhysicalEuropeanExercise(XmlNode xmlNode)
 : base(xmlNode)
 {
     XmlNode expirationDateNode = xmlNode.SelectSingleNode("expirationDate");
     
     if (expirationDateNode != null)
     {
         if (expirationDateNode.Attributes["href"] != null || expirationDateNode.Attributes["id"] != null) 
         {
             if (expirationDateNode.Attributes["id"] != null) 
             {
                 expirationDateIDRef_ = expirationDateNode.Attributes["id"].Value;
                 AdjustableOrRelativeDate ob = new AdjustableOrRelativeDate(expirationDateNode);
                 IDManager.SetID(expirationDateIDRef_, ob);
             }
             else if (expirationDateNode.Attributes["href"] != null)
             {
                 expirationDateIDRef_ = expirationDateNode.Attributes["href"].Value;
             }
             else
             {
                 expirationDate_ = new AdjustableOrRelativeDate(expirationDateNode);
             }
         }
         else
         {
             expirationDate_ = new AdjustableOrRelativeDate(expirationDateNode);
         }
     }
     
 
     XmlNode expirationDatesNode = xmlNode.SelectSingleNode("expirationDates");
     
     if (expirationDatesNode != null)
     {
         if (expirationDatesNode.Attributes["href"] != null || expirationDatesNode.Attributes["id"] != null) 
         {
             if (expirationDatesNode.Attributes["id"] != null) 
             {
                 expirationDatesIDRef_ = expirationDatesNode.Attributes["id"].Value;
                 AdjustableRelativeOrPeriodicDates2 ob = new AdjustableRelativeOrPeriodicDates2(expirationDatesNode);
                 IDManager.SetID(expirationDatesIDRef_, ob);
             }
             else if (expirationDatesNode.Attributes["href"] != null)
             {
                 expirationDatesIDRef_ = expirationDatesNode.Attributes["href"].Value;
             }
             else
             {
                 expirationDates_ = new AdjustableRelativeOrPeriodicDates2(expirationDatesNode);
             }
         }
         else
         {
             expirationDates_ = new AdjustableRelativeOrPeriodicDates2(expirationDatesNode);
         }
     }
     
 
     XmlNode relativeExpirationDatesNode = xmlNode.SelectSingleNode("relativeExpirationDates");
     
     if (relativeExpirationDatesNode != null)
     {
         if (relativeExpirationDatesNode.Attributes["href"] != null || relativeExpirationDatesNode.Attributes["id"] != null) 
         {
             if (relativeExpirationDatesNode.Attributes["id"] != null) 
             {
                 relativeExpirationDatesIDRef_ = relativeExpirationDatesNode.Attributes["id"].Value;
                 CommodityRelativeExpirationDates ob = new CommodityRelativeExpirationDates(relativeExpirationDatesNode);
                 IDManager.SetID(relativeExpirationDatesIDRef_, ob);
             }
             else if (relativeExpirationDatesNode.Attributes["href"] != null)
             {
                 relativeExpirationDatesIDRef_ = relativeExpirationDatesNode.Attributes["href"].Value;
             }
             else
             {
                 relativeExpirationDates_ = new CommodityRelativeExpirationDates(relativeExpirationDatesNode);
             }
         }
         else
         {
             relativeExpirationDates_ = new CommodityRelativeExpirationDates(relativeExpirationDatesNode);
         }
     }
     
 
     XmlNode expirationTimeNode = xmlNode.SelectSingleNode("expirationTime");
     
     if (expirationTimeNode != null)
     {
         if (expirationTimeNode.Attributes["href"] != null || expirationTimeNode.Attributes["id"] != null) 
         {
             if (expirationTimeNode.Attributes["id"] != null) 
             {
                 expirationTimeIDRef_ = expirationTimeNode.Attributes["id"].Value;
                 PrevailingTime ob = new PrevailingTime(expirationTimeNode);
                 IDManager.SetID(expirationTimeIDRef_, ob);
             }
             else if (expirationTimeNode.Attributes["href"] != null)
             {
                 expirationTimeIDRef_ = expirationTimeNode.Attributes["href"].Value;
             }
             else
             {
                 expirationTime_ = new PrevailingTime(expirationTimeNode);
             }
         }
         else
         {
             expirationTime_ = new PrevailingTime(expirationTimeNode);
         }
     }
     
 
 }
 public CommodityPhysicalAmericanExercise(XmlNode xmlNode)
 : base(xmlNode)
 {
     XmlNode commencementDatesNode = xmlNode.SelectSingleNode("commencementDates");
     
     if (commencementDatesNode != null)
     {
         if (commencementDatesNode.Attributes["href"] != null || commencementDatesNode.Attributes["id"] != null) 
         {
             if (commencementDatesNode.Attributes["id"] != null) 
             {
                 commencementDatesIDRef_ = commencementDatesNode.Attributes["id"].Value;
                 AdjustableOrRelativeDates ob = new AdjustableOrRelativeDates(commencementDatesNode);
                 IDManager.SetID(commencementDatesIDRef_, ob);
             }
             else if (commencementDatesNode.Attributes["href"] != null)
             {
                 commencementDatesIDRef_ = commencementDatesNode.Attributes["href"].Value;
             }
             else
             {
                 commencementDates_ = new AdjustableOrRelativeDates(commencementDatesNode);
             }
         }
         else
         {
             commencementDates_ = new AdjustableOrRelativeDates(commencementDatesNode);
         }
     }
     
 
     XmlNode expirationDatesNode = xmlNode.SelectSingleNode("expirationDates");
     
     if (expirationDatesNode != null)
     {
         if (expirationDatesNode.Attributes["href"] != null || expirationDatesNode.Attributes["id"] != null) 
         {
             if (expirationDatesNode.Attributes["id"] != null) 
             {
                 expirationDatesIDRef_ = expirationDatesNode.Attributes["id"].Value;
                 AdjustableOrRelativeDates ob = new AdjustableOrRelativeDates(expirationDatesNode);
                 IDManager.SetID(expirationDatesIDRef_, ob);
             }
             else if (expirationDatesNode.Attributes["href"] != null)
             {
                 expirationDatesIDRef_ = expirationDatesNode.Attributes["href"].Value;
             }
             else
             {
                 expirationDates_ = new AdjustableOrRelativeDates(expirationDatesNode);
             }
         }
         else
         {
             expirationDates_ = new AdjustableOrRelativeDates(expirationDatesNode);
         }
     }
     
 
     XmlNode relativeCommencementDatesNode = xmlNode.SelectSingleNode("relativeCommencementDates");
     
     if (relativeCommencementDatesNode != null)
     {
         if (relativeCommencementDatesNode.Attributes["href"] != null || relativeCommencementDatesNode.Attributes["id"] != null) 
         {
             if (relativeCommencementDatesNode.Attributes["id"] != null) 
             {
                 relativeCommencementDatesIDRef_ = relativeCommencementDatesNode.Attributes["id"].Value;
                 CommodityRelativeExpirationDates ob = new CommodityRelativeExpirationDates(relativeCommencementDatesNode);
                 IDManager.SetID(relativeCommencementDatesIDRef_, ob);
             }
             else if (relativeCommencementDatesNode.Attributes["href"] != null)
             {
                 relativeCommencementDatesIDRef_ = relativeCommencementDatesNode.Attributes["href"].Value;
             }
             else
             {
                 relativeCommencementDates_ = new CommodityRelativeExpirationDates(relativeCommencementDatesNode);
             }
         }
         else
         {
             relativeCommencementDates_ = new CommodityRelativeExpirationDates(relativeCommencementDatesNode);
         }
     }
     
 
     XmlNode relativeExpirationDatesNode = xmlNode.SelectSingleNode("relativeExpirationDates");
     
     if (relativeExpirationDatesNode != null)
     {
         if (relativeExpirationDatesNode.Attributes["href"] != null || relativeExpirationDatesNode.Attributes["id"] != null) 
         {
             if (relativeExpirationDatesNode.Attributes["id"] != null) 
             {
                 relativeExpirationDatesIDRef_ = relativeExpirationDatesNode.Attributes["id"].Value;
                 CommodityRelativeExpirationDates ob = new CommodityRelativeExpirationDates(relativeExpirationDatesNode);
                 IDManager.SetID(relativeExpirationDatesIDRef_, ob);
             }
             else if (relativeExpirationDatesNode.Attributes["href"] != null)
             {
                 relativeExpirationDatesIDRef_ = relativeExpirationDatesNode.Attributes["href"].Value;
             }
             else
             {
                 relativeExpirationDates_ = new CommodityRelativeExpirationDates(relativeExpirationDatesNode);
             }
         }
         else
         {
             relativeExpirationDates_ = new CommodityRelativeExpirationDates(relativeExpirationDatesNode);
         }
     }
     
 
     XmlNode latestExerciseTimeNode = xmlNode.SelectSingleNode("latestExerciseTime");
     
     if (latestExerciseTimeNode != null)
     {
         if (latestExerciseTimeNode.Attributes["href"] != null || latestExerciseTimeNode.Attributes["id"] != null) 
         {
             if (latestExerciseTimeNode.Attributes["id"] != null) 
             {
                 latestExerciseTimeIDRef_ = latestExerciseTimeNode.Attributes["id"].Value;
                 PrevailingTime ob = new PrevailingTime(latestExerciseTimeNode);
                 IDManager.SetID(latestExerciseTimeIDRef_, ob);
             }
             else if (latestExerciseTimeNode.Attributes["href"] != null)
             {
                 latestExerciseTimeIDRef_ = latestExerciseTimeNode.Attributes["href"].Value;
             }
             else
             {
                 latestExerciseTime_ = new PrevailingTime(latestExerciseTimeNode);
             }
         }
         else
         {
             latestExerciseTime_ = new PrevailingTime(latestExerciseTimeNode);
         }
     }
     
 
     XmlNode expirationTimeNode = xmlNode.SelectSingleNode("expirationTime");
     
     if (expirationTimeNode != null)
     {
         if (expirationTimeNode.Attributes["href"] != null || expirationTimeNode.Attributes["id"] != null) 
         {
             if (expirationTimeNode.Attributes["id"] != null) 
             {
                 expirationTimeIDRef_ = expirationTimeNode.Attributes["id"].Value;
                 PrevailingTime ob = new PrevailingTime(expirationTimeNode);
                 IDManager.SetID(expirationTimeIDRef_, ob);
             }
             else if (expirationTimeNode.Attributes["href"] != null)
             {
                 expirationTimeIDRef_ = expirationTimeNode.Attributes["href"].Value;
             }
             else
             {
                 expirationTime_ = new PrevailingTime(expirationTimeNode);
             }
         }
         else
         {
             expirationTime_ = new PrevailingTime(expirationTimeNode);
         }
     }
     
 
 }
 public CommodityPhysicalEuropeanExercise(XmlNode xmlNode)
 : base(xmlNode)
 {
     XmlNodeList expirationDateNodeList = xmlNode.SelectNodes("expirationDate");
     if (expirationDateNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in expirationDateNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 expirationDateIDRef = item.Attributes["id"].Name;
                 AdjustableOrRelativeDate ob = AdjustableOrRelativeDate();
                 IDManager.SetID(expirationDateIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 expirationDateIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 expirationDate = new AdjustableOrRelativeDate(item);
             }
         }
     }
     
 
     XmlNodeList expirationDatesNodeList = xmlNode.SelectNodes("expirationDates");
     if (expirationDatesNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in expirationDatesNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 expirationDatesIDRef = item.Attributes["id"].Name;
                 AdjustableRelativeOrPeriodicDates2 ob = AdjustableRelativeOrPeriodicDates2();
                 IDManager.SetID(expirationDatesIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 expirationDatesIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 expirationDates = new AdjustableRelativeOrPeriodicDates2(item);
             }
         }
     }
     
 
     XmlNodeList relativeExpirationDatesNodeList = xmlNode.SelectNodes("relativeExpirationDates");
     if (relativeExpirationDatesNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in relativeExpirationDatesNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 relativeExpirationDatesIDRef = item.Attributes["id"].Name;
                 CommodityRelativeExpirationDates ob = CommodityRelativeExpirationDates();
                 IDManager.SetID(relativeExpirationDatesIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 relativeExpirationDatesIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 relativeExpirationDates = new CommodityRelativeExpirationDates(item);
             }
         }
     }
     
 
     XmlNodeList expirationTimeNodeList = xmlNode.SelectNodes("expirationTime");
     if (expirationTimeNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in expirationTimeNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 expirationTimeIDRef = item.Attributes["id"].Name;
                 PrevailingTime ob = PrevailingTime();
                 IDManager.SetID(expirationTimeIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 expirationTimeIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 expirationTime = new PrevailingTime(item);
             }
         }
     }
     
 
 }
Esempio n. 4
0
        public CommodityPhysicalEuropeanExercise(XmlNode xmlNode)
            : base(xmlNode)
        {
            XmlNode expirationDateNode = xmlNode.SelectSingleNode("expirationDate");

            if (expirationDateNode != null)
            {
                if (expirationDateNode.Attributes["href"] != null || expirationDateNode.Attributes["id"] != null)
                {
                    if (expirationDateNode.Attributes["id"] != null)
                    {
                        expirationDateIDRef_ = expirationDateNode.Attributes["id"].Value;
                        AdjustableOrRelativeDate ob = new AdjustableOrRelativeDate(expirationDateNode);
                        IDManager.SetID(expirationDateIDRef_, ob);
                    }
                    else if (expirationDateNode.Attributes["href"] != null)
                    {
                        expirationDateIDRef_ = expirationDateNode.Attributes["href"].Value;
                    }
                    else
                    {
                        expirationDate_ = new AdjustableOrRelativeDate(expirationDateNode);
                    }
                }
                else
                {
                    expirationDate_ = new AdjustableOrRelativeDate(expirationDateNode);
                }
            }


            XmlNode expirationDatesNode = xmlNode.SelectSingleNode("expirationDates");

            if (expirationDatesNode != null)
            {
                if (expirationDatesNode.Attributes["href"] != null || expirationDatesNode.Attributes["id"] != null)
                {
                    if (expirationDatesNode.Attributes["id"] != null)
                    {
                        expirationDatesIDRef_ = expirationDatesNode.Attributes["id"].Value;
                        AdjustableRelativeOrPeriodicDates2 ob = new AdjustableRelativeOrPeriodicDates2(expirationDatesNode);
                        IDManager.SetID(expirationDatesIDRef_, ob);
                    }
                    else if (expirationDatesNode.Attributes["href"] != null)
                    {
                        expirationDatesIDRef_ = expirationDatesNode.Attributes["href"].Value;
                    }
                    else
                    {
                        expirationDates_ = new AdjustableRelativeOrPeriodicDates2(expirationDatesNode);
                    }
                }
                else
                {
                    expirationDates_ = new AdjustableRelativeOrPeriodicDates2(expirationDatesNode);
                }
            }


            XmlNode relativeExpirationDatesNode = xmlNode.SelectSingleNode("relativeExpirationDates");

            if (relativeExpirationDatesNode != null)
            {
                if (relativeExpirationDatesNode.Attributes["href"] != null || relativeExpirationDatesNode.Attributes["id"] != null)
                {
                    if (relativeExpirationDatesNode.Attributes["id"] != null)
                    {
                        relativeExpirationDatesIDRef_ = relativeExpirationDatesNode.Attributes["id"].Value;
                        CommodityRelativeExpirationDates ob = new CommodityRelativeExpirationDates(relativeExpirationDatesNode);
                        IDManager.SetID(relativeExpirationDatesIDRef_, ob);
                    }
                    else if (relativeExpirationDatesNode.Attributes["href"] != null)
                    {
                        relativeExpirationDatesIDRef_ = relativeExpirationDatesNode.Attributes["href"].Value;
                    }
                    else
                    {
                        relativeExpirationDates_ = new CommodityRelativeExpirationDates(relativeExpirationDatesNode);
                    }
                }
                else
                {
                    relativeExpirationDates_ = new CommodityRelativeExpirationDates(relativeExpirationDatesNode);
                }
            }


            XmlNode expirationTimeNode = xmlNode.SelectSingleNode("expirationTime");

            if (expirationTimeNode != null)
            {
                if (expirationTimeNode.Attributes["href"] != null || expirationTimeNode.Attributes["id"] != null)
                {
                    if (expirationTimeNode.Attributes["id"] != null)
                    {
                        expirationTimeIDRef_ = expirationTimeNode.Attributes["id"].Value;
                        PrevailingTime ob = new PrevailingTime(expirationTimeNode);
                        IDManager.SetID(expirationTimeIDRef_, ob);
                    }
                    else if (expirationTimeNode.Attributes["href"] != null)
                    {
                        expirationTimeIDRef_ = expirationTimeNode.Attributes["href"].Value;
                    }
                    else
                    {
                        expirationTime_ = new PrevailingTime(expirationTimeNode);
                    }
                }
                else
                {
                    expirationTime_ = new PrevailingTime(expirationTimeNode);
                }
            }
        }
Esempio n. 5
0
        public CommodityPhysicalAmericanExercise(XmlNode xmlNode)
            : base(xmlNode)
        {
            XmlNode commencementDatesNode = xmlNode.SelectSingleNode("commencementDates");

            if (commencementDatesNode != null)
            {
                if (commencementDatesNode.Attributes["href"] != null || commencementDatesNode.Attributes["id"] != null)
                {
                    if (commencementDatesNode.Attributes["id"] != null)
                    {
                        commencementDatesIDRef_ = commencementDatesNode.Attributes["id"].Value;
                        AdjustableOrRelativeDates ob = new AdjustableOrRelativeDates(commencementDatesNode);
                        IDManager.SetID(commencementDatesIDRef_, ob);
                    }
                    else if (commencementDatesNode.Attributes["href"] != null)
                    {
                        commencementDatesIDRef_ = commencementDatesNode.Attributes["href"].Value;
                    }
                    else
                    {
                        commencementDates_ = new AdjustableOrRelativeDates(commencementDatesNode);
                    }
                }
                else
                {
                    commencementDates_ = new AdjustableOrRelativeDates(commencementDatesNode);
                }
            }


            XmlNode expirationDatesNode = xmlNode.SelectSingleNode("expirationDates");

            if (expirationDatesNode != null)
            {
                if (expirationDatesNode.Attributes["href"] != null || expirationDatesNode.Attributes["id"] != null)
                {
                    if (expirationDatesNode.Attributes["id"] != null)
                    {
                        expirationDatesIDRef_ = expirationDatesNode.Attributes["id"].Value;
                        AdjustableOrRelativeDates ob = new AdjustableOrRelativeDates(expirationDatesNode);
                        IDManager.SetID(expirationDatesIDRef_, ob);
                    }
                    else if (expirationDatesNode.Attributes["href"] != null)
                    {
                        expirationDatesIDRef_ = expirationDatesNode.Attributes["href"].Value;
                    }
                    else
                    {
                        expirationDates_ = new AdjustableOrRelativeDates(expirationDatesNode);
                    }
                }
                else
                {
                    expirationDates_ = new AdjustableOrRelativeDates(expirationDatesNode);
                }
            }


            XmlNode relativeCommencementDatesNode = xmlNode.SelectSingleNode("relativeCommencementDates");

            if (relativeCommencementDatesNode != null)
            {
                if (relativeCommencementDatesNode.Attributes["href"] != null || relativeCommencementDatesNode.Attributes["id"] != null)
                {
                    if (relativeCommencementDatesNode.Attributes["id"] != null)
                    {
                        relativeCommencementDatesIDRef_ = relativeCommencementDatesNode.Attributes["id"].Value;
                        CommodityRelativeExpirationDates ob = new CommodityRelativeExpirationDates(relativeCommencementDatesNode);
                        IDManager.SetID(relativeCommencementDatesIDRef_, ob);
                    }
                    else if (relativeCommencementDatesNode.Attributes["href"] != null)
                    {
                        relativeCommencementDatesIDRef_ = relativeCommencementDatesNode.Attributes["href"].Value;
                    }
                    else
                    {
                        relativeCommencementDates_ = new CommodityRelativeExpirationDates(relativeCommencementDatesNode);
                    }
                }
                else
                {
                    relativeCommencementDates_ = new CommodityRelativeExpirationDates(relativeCommencementDatesNode);
                }
            }


            XmlNode relativeExpirationDatesNode = xmlNode.SelectSingleNode("relativeExpirationDates");

            if (relativeExpirationDatesNode != null)
            {
                if (relativeExpirationDatesNode.Attributes["href"] != null || relativeExpirationDatesNode.Attributes["id"] != null)
                {
                    if (relativeExpirationDatesNode.Attributes["id"] != null)
                    {
                        relativeExpirationDatesIDRef_ = relativeExpirationDatesNode.Attributes["id"].Value;
                        CommodityRelativeExpirationDates ob = new CommodityRelativeExpirationDates(relativeExpirationDatesNode);
                        IDManager.SetID(relativeExpirationDatesIDRef_, ob);
                    }
                    else if (relativeExpirationDatesNode.Attributes["href"] != null)
                    {
                        relativeExpirationDatesIDRef_ = relativeExpirationDatesNode.Attributes["href"].Value;
                    }
                    else
                    {
                        relativeExpirationDates_ = new CommodityRelativeExpirationDates(relativeExpirationDatesNode);
                    }
                }
                else
                {
                    relativeExpirationDates_ = new CommodityRelativeExpirationDates(relativeExpirationDatesNode);
                }
            }


            XmlNode latestExerciseTimeNode = xmlNode.SelectSingleNode("latestExerciseTime");

            if (latestExerciseTimeNode != null)
            {
                if (latestExerciseTimeNode.Attributes["href"] != null || latestExerciseTimeNode.Attributes["id"] != null)
                {
                    if (latestExerciseTimeNode.Attributes["id"] != null)
                    {
                        latestExerciseTimeIDRef_ = latestExerciseTimeNode.Attributes["id"].Value;
                        PrevailingTime ob = new PrevailingTime(latestExerciseTimeNode);
                        IDManager.SetID(latestExerciseTimeIDRef_, ob);
                    }
                    else if (latestExerciseTimeNode.Attributes["href"] != null)
                    {
                        latestExerciseTimeIDRef_ = latestExerciseTimeNode.Attributes["href"].Value;
                    }
                    else
                    {
                        latestExerciseTime_ = new PrevailingTime(latestExerciseTimeNode);
                    }
                }
                else
                {
                    latestExerciseTime_ = new PrevailingTime(latestExerciseTimeNode);
                }
            }


            XmlNode expirationTimeNode = xmlNode.SelectSingleNode("expirationTime");

            if (expirationTimeNode != null)
            {
                if (expirationTimeNode.Attributes["href"] != null || expirationTimeNode.Attributes["id"] != null)
                {
                    if (expirationTimeNode.Attributes["id"] != null)
                    {
                        expirationTimeIDRef_ = expirationTimeNode.Attributes["id"].Value;
                        PrevailingTime ob = new PrevailingTime(expirationTimeNode);
                        IDManager.SetID(expirationTimeIDRef_, ob);
                    }
                    else if (expirationTimeNode.Attributes["href"] != null)
                    {
                        expirationTimeIDRef_ = expirationTimeNode.Attributes["href"].Value;
                    }
                    else
                    {
                        expirationTime_ = new PrevailingTime(expirationTimeNode);
                    }
                }
                else
                {
                    expirationTime_ = new PrevailingTime(expirationTimeNode);
                }
            }
        }
Esempio n. 6
0
        public CommodityPhysicalAmericanExercise(XmlNode xmlNode)
            : base(xmlNode)
        {
            XmlNodeList commencementDatesNodeList = xmlNode.SelectNodes("commencementDates");

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

            foreach (XmlNode item in commencementDatesNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        commencementDatesIDRef = item.Attributes["id"].Name;
                        AdjustableOrRelativeDates ob = AdjustableOrRelativeDates();
                        IDManager.SetID(commencementDatesIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        commencementDatesIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        commencementDates = new AdjustableOrRelativeDates(item);
                    }
                }
            }


            XmlNodeList expirationDatesNodeList = xmlNode.SelectNodes("expirationDates");

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

            foreach (XmlNode item in expirationDatesNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        expirationDatesIDRef = item.Attributes["id"].Name;
                        AdjustableOrRelativeDates ob = AdjustableOrRelativeDates();
                        IDManager.SetID(expirationDatesIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        expirationDatesIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        expirationDates = new AdjustableOrRelativeDates(item);
                    }
                }
            }


            XmlNodeList relativeCommencementDatesNodeList = xmlNode.SelectNodes("relativeCommencementDates");

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

            foreach (XmlNode item in relativeCommencementDatesNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        relativeCommencementDatesIDRef = item.Attributes["id"].Name;
                        CommodityRelativeExpirationDates ob = CommodityRelativeExpirationDates();
                        IDManager.SetID(relativeCommencementDatesIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        relativeCommencementDatesIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        relativeCommencementDates = new CommodityRelativeExpirationDates(item);
                    }
                }
            }


            XmlNodeList relativeExpirationDatesNodeList = xmlNode.SelectNodes("relativeExpirationDates");

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

            foreach (XmlNode item in relativeExpirationDatesNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        relativeExpirationDatesIDRef = item.Attributes["id"].Name;
                        CommodityRelativeExpirationDates ob = CommodityRelativeExpirationDates();
                        IDManager.SetID(relativeExpirationDatesIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        relativeExpirationDatesIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        relativeExpirationDates = new CommodityRelativeExpirationDates(item);
                    }
                }
            }


            XmlNodeList latestExerciseTimeNodeList = xmlNode.SelectNodes("latestExerciseTime");

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

            foreach (XmlNode item in latestExerciseTimeNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        latestExerciseTimeIDRef = item.Attributes["id"].Name;
                        PrevailingTime ob = PrevailingTime();
                        IDManager.SetID(latestExerciseTimeIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        latestExerciseTimeIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        latestExerciseTime = new PrevailingTime(item);
                    }
                }
            }


            XmlNodeList expirationTimeNodeList = xmlNode.SelectNodes("expirationTime");

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

            foreach (XmlNode item in expirationTimeNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        expirationTimeIDRef = item.Attributes["id"].Name;
                        PrevailingTime ob = PrevailingTime();
                        IDManager.SetID(expirationTimeIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        expirationTimeIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        expirationTime = new PrevailingTime(item);
                    }
                }
            }
        }