public FxDigitalOption(XmlNode xmlNode) : base(xmlNode) { XmlNodeList effectiveDateNodeList = xmlNode.SelectNodes("effectiveDate"); if (effectiveDateNodeList.Count > 1 ) { throw new Exception(); } foreach (XmlNode item in effectiveDateNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { effectiveDateIDRef = item.Attributes["id"].Name; AdjustableOrRelativeDate ob = AdjustableOrRelativeDate(); IDManager.SetID(effectiveDateIDRef, ob); } else if (item.Attributes.ToString() == "href") { effectiveDateIDRef = item.Attributes["href"].Name; } else { effectiveDate = new AdjustableOrRelativeDate(item); } } } XmlNodeList tenorPeriodNodeList = xmlNode.SelectNodes("tenorPeriod"); if (tenorPeriodNodeList.Count > 1 ) { throw new Exception(); } foreach (XmlNode item in tenorPeriodNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { tenorPeriodIDRef = item.Attributes["id"].Name; Period ob = Period(); IDManager.SetID(tenorPeriodIDRef, ob); } else if (item.Attributes.ToString() == "href") { tenorPeriodIDRef = item.Attributes["href"].Name; } else { tenorPeriod = new Period(item); } } } XmlNodeList americanExerciseNodeList = xmlNode.SelectNodes("americanExercise"); if (americanExerciseNodeList.Count > 1 ) { throw new Exception(); } foreach (XmlNode item in americanExerciseNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { americanExerciseIDRef = item.Attributes["id"].Name; FxDigitalAmericanExercise ob = FxDigitalAmericanExercise(); IDManager.SetID(americanExerciseIDRef, ob); } else if (item.Attributes.ToString() == "href") { americanExerciseIDRef = item.Attributes["href"].Name; } else { americanExercise = new FxDigitalAmericanExercise(item); } } } XmlNodeList touchNodeList = xmlNode.SelectNodes("touch"); foreach (XmlNode item in touchNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { touchIDRef = item.Attributes["id"].Name; List<FxTouch> ob = new List<FxTouch>(); ob.Add(new FxTouch(item)); IDManager.SetID(touchIDRef, ob); } else if (item.Attributes.ToString() == "href") { touchIDRef = item.Attributes["href"].Name; } else { touch.Add(new FxTouch(item)); } } } XmlNodeList europeanExerciseNodeList = xmlNode.SelectNodes("europeanExercise"); if (europeanExerciseNodeList.Count > 1 ) { throw new Exception(); } foreach (XmlNode item in europeanExerciseNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { europeanExerciseIDRef = item.Attributes["id"].Name; FxEuropeanExercise ob = FxEuropeanExercise(); IDManager.SetID(europeanExerciseIDRef, ob); } else if (item.Attributes.ToString() == "href") { europeanExerciseIDRef = item.Attributes["href"].Name; } else { europeanExercise = new FxEuropeanExercise(item); } } } XmlNodeList triggerNodeList = xmlNode.SelectNodes("trigger"); foreach (XmlNode item in triggerNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { triggerIDRef = item.Attributes["id"].Name; List<FxTrigger> ob = new List<FxTrigger>(); ob.Add(new FxTrigger(item)); IDManager.SetID(triggerIDRef, ob); } else if (item.Attributes.ToString() == "href") { triggerIDRef = item.Attributes["href"].Name; } else { trigger.Add(new FxTrigger(item)); } } } XmlNodeList exerciseProcedureNodeList = xmlNode.SelectNodes("exerciseProcedure"); if (exerciseProcedureNodeList.Count > 1 ) { throw new Exception(); } foreach (XmlNode item in exerciseProcedureNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { exerciseProcedureIDRef = item.Attributes["id"].Name; ExerciseProcedure ob = ExerciseProcedure(); IDManager.SetID(exerciseProcedureIDRef, ob); } else if (item.Attributes.ToString() == "href") { exerciseProcedureIDRef = item.Attributes["href"].Name; } else { exerciseProcedure = new ExerciseProcedure(item); } } } XmlNodeList payoutNodeList = xmlNode.SelectNodes("payout"); if (payoutNodeList.Count > 1 ) { throw new Exception(); } foreach (XmlNode item in payoutNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { payoutIDRef = item.Attributes["id"].Name; FxOptionPayout ob = FxOptionPayout(); IDManager.SetID(payoutIDRef, ob); } else if (item.Attributes.ToString() == "href") { payoutIDRef = item.Attributes["href"].Name; } else { payout = new FxOptionPayout(item); } } } XmlNodeList premiumNodeList = xmlNode.SelectNodes("premium"); foreach (XmlNode item in premiumNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { premiumIDRef = item.Attributes["id"].Name; List<FxOptionPremium> ob = new List<FxOptionPremium>(); ob.Add(new FxOptionPremium(item)); IDManager.SetID(premiumIDRef, ob); } else if (item.Attributes.ToString() == "href") { premiumIDRef = item.Attributes["href"].Name; } else { premium.Add(new FxOptionPremium(item)); } } } }
public FxDigitalOption(XmlNode xmlNode) : base(xmlNode) { XmlNode effectiveDateNode = xmlNode.SelectSingleNode("effectiveDate"); if (effectiveDateNode != null) { if (effectiveDateNode.Attributes["href"] != null || effectiveDateNode.Attributes["id"] != null) { if (effectiveDateNode.Attributes["id"] != null) { effectiveDateIDRef_ = effectiveDateNode.Attributes["id"].Value; AdjustableOrRelativeDate ob = new AdjustableOrRelativeDate(effectiveDateNode); IDManager.SetID(effectiveDateIDRef_, ob); } else if (effectiveDateNode.Attributes["href"] != null) { effectiveDateIDRef_ = effectiveDateNode.Attributes["href"].Value; } else { effectiveDate_ = new AdjustableOrRelativeDate(effectiveDateNode); } } else { effectiveDate_ = new AdjustableOrRelativeDate(effectiveDateNode); } } XmlNode tenorPeriodNode = xmlNode.SelectSingleNode("tenorPeriod"); if (tenorPeriodNode != null) { if (tenorPeriodNode.Attributes["href"] != null || tenorPeriodNode.Attributes["id"] != null) { if (tenorPeriodNode.Attributes["id"] != null) { tenorPeriodIDRef_ = tenorPeriodNode.Attributes["id"].Value; Period ob = new Period(tenorPeriodNode); IDManager.SetID(tenorPeriodIDRef_, ob); } else if (tenorPeriodNode.Attributes["href"] != null) { tenorPeriodIDRef_ = tenorPeriodNode.Attributes["href"].Value; } else { tenorPeriod_ = new Period(tenorPeriodNode); } } else { tenorPeriod_ = new Period(tenorPeriodNode); } } XmlNode americanExerciseNode = xmlNode.SelectSingleNode("americanExercise"); if (americanExerciseNode != null) { if (americanExerciseNode.Attributes["href"] != null || americanExerciseNode.Attributes["id"] != null) { if (americanExerciseNode.Attributes["id"] != null) { americanExerciseIDRef_ = americanExerciseNode.Attributes["id"].Value; FxDigitalAmericanExercise ob = new FxDigitalAmericanExercise(americanExerciseNode); IDManager.SetID(americanExerciseIDRef_, ob); } else if (americanExerciseNode.Attributes["href"] != null) { americanExerciseIDRef_ = americanExerciseNode.Attributes["href"].Value; } else { americanExercise_ = new FxDigitalAmericanExercise(americanExerciseNode); } } else { americanExercise_ = new FxDigitalAmericanExercise(americanExerciseNode); } } XmlNodeList touchNodeList = xmlNode.SelectNodes("touch"); if (touchNodeList != null) { this.touch_ = new List<FxTouch>(); foreach (XmlNode item in touchNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] != null) { if (item.Attributes["id"] != null) { touchIDRef_ = item.Attributes["id"].Value; touch_.Add(new FxTouch(item)); IDManager.SetID(touchIDRef_, touch_[touch_.Count - 1 ]); } else if (item.Attributes["href"] != null) { touchIDRef_ = item.Attributes["href"].Value; } else { touch_.Add(new FxTouch(item)); } } else { touch_.Add(new FxTouch(item)); } } } XmlNode europeanExerciseNode = xmlNode.SelectSingleNode("europeanExercise"); if (europeanExerciseNode != null) { if (europeanExerciseNode.Attributes["href"] != null || europeanExerciseNode.Attributes["id"] != null) { if (europeanExerciseNode.Attributes["id"] != null) { europeanExerciseIDRef_ = europeanExerciseNode.Attributes["id"].Value; FxEuropeanExercise ob = new FxEuropeanExercise(europeanExerciseNode); IDManager.SetID(europeanExerciseIDRef_, ob); } else if (europeanExerciseNode.Attributes["href"] != null) { europeanExerciseIDRef_ = europeanExerciseNode.Attributes["href"].Value; } else { europeanExercise_ = new FxEuropeanExercise(europeanExerciseNode); } } else { europeanExercise_ = new FxEuropeanExercise(europeanExerciseNode); } } XmlNodeList triggerNodeList = xmlNode.SelectNodes("trigger"); if (triggerNodeList != null) { this.trigger_ = new List<FxTrigger>(); foreach (XmlNode item in triggerNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] != null) { if (item.Attributes["id"] != null) { triggerIDRef_ = item.Attributes["id"].Value; trigger_.Add(new FxTrigger(item)); IDManager.SetID(triggerIDRef_, trigger_[trigger_.Count - 1 ]); } else if (item.Attributes["href"] != null) { triggerIDRef_ = item.Attributes["href"].Value; } else { trigger_.Add(new FxTrigger(item)); } } else { trigger_.Add(new FxTrigger(item)); } } } XmlNode exerciseProcedureNode = xmlNode.SelectSingleNode("exerciseProcedure"); if (exerciseProcedureNode != null) { if (exerciseProcedureNode.Attributes["href"] != null || exerciseProcedureNode.Attributes["id"] != null) { if (exerciseProcedureNode.Attributes["id"] != null) { exerciseProcedureIDRef_ = exerciseProcedureNode.Attributes["id"].Value; ExerciseProcedure ob = new ExerciseProcedure(exerciseProcedureNode); IDManager.SetID(exerciseProcedureIDRef_, ob); } else if (exerciseProcedureNode.Attributes["href"] != null) { exerciseProcedureIDRef_ = exerciseProcedureNode.Attributes["href"].Value; } else { exerciseProcedure_ = new ExerciseProcedure(exerciseProcedureNode); } } else { exerciseProcedure_ = new ExerciseProcedure(exerciseProcedureNode); } } XmlNode payoutNode = xmlNode.SelectSingleNode("payout"); if (payoutNode != null) { if (payoutNode.Attributes["href"] != null || payoutNode.Attributes["id"] != null) { if (payoutNode.Attributes["id"] != null) { payoutIDRef_ = payoutNode.Attributes["id"].Value; FxOptionPayout ob = new FxOptionPayout(payoutNode); IDManager.SetID(payoutIDRef_, ob); } else if (payoutNode.Attributes["href"] != null) { payoutIDRef_ = payoutNode.Attributes["href"].Value; } else { payout_ = new FxOptionPayout(payoutNode); } } else { payout_ = new FxOptionPayout(payoutNode); } } XmlNodeList premiumNodeList = xmlNode.SelectNodes("premium"); if (premiumNodeList != null) { this.premium_ = new List<FxOptionPremium>(); foreach (XmlNode item in premiumNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] != null) { if (item.Attributes["id"] != null) { premiumIDRef_ = item.Attributes["id"].Value; premium_.Add(new FxOptionPremium(item)); IDManager.SetID(premiumIDRef_, premium_[premium_.Count - 1 ]); } else if (item.Attributes["href"] != null) { premiumIDRef_ = item.Attributes["href"].Value; } else { premium_.Add(new FxOptionPremium(item)); } } else { premium_.Add(new FxOptionPremium(item)); } } } }
public FxDigitalOption(XmlNode xmlNode) : base(xmlNode) { XmlNodeList effectiveDateNodeList = xmlNode.SelectNodes("effectiveDate"); if (effectiveDateNodeList.Count > 1) { throw new Exception(); } foreach (XmlNode item in effectiveDateNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { effectiveDateIDRef = item.Attributes["id"].Name; AdjustableOrRelativeDate ob = AdjustableOrRelativeDate(); IDManager.SetID(effectiveDateIDRef, ob); } else if (item.Attributes.ToString() == "href") { effectiveDateIDRef = item.Attributes["href"].Name; } else { effectiveDate = new AdjustableOrRelativeDate(item); } } } XmlNodeList tenorPeriodNodeList = xmlNode.SelectNodes("tenorPeriod"); if (tenorPeriodNodeList.Count > 1) { throw new Exception(); } foreach (XmlNode item in tenorPeriodNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { tenorPeriodIDRef = item.Attributes["id"].Name; Period ob = Period(); IDManager.SetID(tenorPeriodIDRef, ob); } else if (item.Attributes.ToString() == "href") { tenorPeriodIDRef = item.Attributes["href"].Name; } else { tenorPeriod = new Period(item); } } } XmlNodeList americanExerciseNodeList = xmlNode.SelectNodes("americanExercise"); if (americanExerciseNodeList.Count > 1) { throw new Exception(); } foreach (XmlNode item in americanExerciseNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { americanExerciseIDRef = item.Attributes["id"].Name; FxDigitalAmericanExercise ob = FxDigitalAmericanExercise(); IDManager.SetID(americanExerciseIDRef, ob); } else if (item.Attributes.ToString() == "href") { americanExerciseIDRef = item.Attributes["href"].Name; } else { americanExercise = new FxDigitalAmericanExercise(item); } } } XmlNodeList touchNodeList = xmlNode.SelectNodes("touch"); foreach (XmlNode item in touchNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { touchIDRef = item.Attributes["id"].Name; List <FxTouch> ob = new List <FxTouch>(); ob.Add(new FxTouch(item)); IDManager.SetID(touchIDRef, ob); } else if (item.Attributes.ToString() == "href") { touchIDRef = item.Attributes["href"].Name; } else { touch.Add(new FxTouch(item)); } } } XmlNodeList europeanExerciseNodeList = xmlNode.SelectNodes("europeanExercise"); if (europeanExerciseNodeList.Count > 1) { throw new Exception(); } foreach (XmlNode item in europeanExerciseNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { europeanExerciseIDRef = item.Attributes["id"].Name; FxEuropeanExercise ob = FxEuropeanExercise(); IDManager.SetID(europeanExerciseIDRef, ob); } else if (item.Attributes.ToString() == "href") { europeanExerciseIDRef = item.Attributes["href"].Name; } else { europeanExercise = new FxEuropeanExercise(item); } } } XmlNodeList triggerNodeList = xmlNode.SelectNodes("trigger"); foreach (XmlNode item in triggerNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { triggerIDRef = item.Attributes["id"].Name; List <FxTrigger> ob = new List <FxTrigger>(); ob.Add(new FxTrigger(item)); IDManager.SetID(triggerIDRef, ob); } else if (item.Attributes.ToString() == "href") { triggerIDRef = item.Attributes["href"].Name; } else { trigger.Add(new FxTrigger(item)); } } } XmlNodeList exerciseProcedureNodeList = xmlNode.SelectNodes("exerciseProcedure"); if (exerciseProcedureNodeList.Count > 1) { throw new Exception(); } foreach (XmlNode item in exerciseProcedureNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { exerciseProcedureIDRef = item.Attributes["id"].Name; ExerciseProcedure ob = ExerciseProcedure(); IDManager.SetID(exerciseProcedureIDRef, ob); } else if (item.Attributes.ToString() == "href") { exerciseProcedureIDRef = item.Attributes["href"].Name; } else { exerciseProcedure = new ExerciseProcedure(item); } } } XmlNodeList payoutNodeList = xmlNode.SelectNodes("payout"); if (payoutNodeList.Count > 1) { throw new Exception(); } foreach (XmlNode item in payoutNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { payoutIDRef = item.Attributes["id"].Name; FxOptionPayout ob = FxOptionPayout(); IDManager.SetID(payoutIDRef, ob); } else if (item.Attributes.ToString() == "href") { payoutIDRef = item.Attributes["href"].Name; } else { payout = new FxOptionPayout(item); } } } XmlNodeList premiumNodeList = xmlNode.SelectNodes("premium"); foreach (XmlNode item in premiumNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { premiumIDRef = item.Attributes["id"].Name; List <FxOptionPremium> ob = new List <FxOptionPremium>(); ob.Add(new FxOptionPremium(item)); IDManager.SetID(premiumIDRef, ob); } else if (item.Attributes.ToString() == "href") { premiumIDRef = item.Attributes["href"].Name; } else { premium.Add(new FxOptionPremium(item)); } } } }
public FxDigitalOption(XmlNode xmlNode) : base(xmlNode) { XmlNode effectiveDateNode = xmlNode.SelectSingleNode("effectiveDate"); if (effectiveDateNode != null) { if (effectiveDateNode.Attributes["href"] != null || effectiveDateNode.Attributes["id"] != null) { if (effectiveDateNode.Attributes["id"] != null) { effectiveDateIDRef_ = effectiveDateNode.Attributes["id"].Value; AdjustableOrRelativeDate ob = new AdjustableOrRelativeDate(effectiveDateNode); IDManager.SetID(effectiveDateIDRef_, ob); } else if (effectiveDateNode.Attributes["href"] != null) { effectiveDateIDRef_ = effectiveDateNode.Attributes["href"].Value; } else { effectiveDate_ = new AdjustableOrRelativeDate(effectiveDateNode); } } else { effectiveDate_ = new AdjustableOrRelativeDate(effectiveDateNode); } } XmlNode tenorPeriodNode = xmlNode.SelectSingleNode("tenorPeriod"); if (tenorPeriodNode != null) { if (tenorPeriodNode.Attributes["href"] != null || tenorPeriodNode.Attributes["id"] != null) { if (tenorPeriodNode.Attributes["id"] != null) { tenorPeriodIDRef_ = tenorPeriodNode.Attributes["id"].Value; Period ob = new Period(tenorPeriodNode); IDManager.SetID(tenorPeriodIDRef_, ob); } else if (tenorPeriodNode.Attributes["href"] != null) { tenorPeriodIDRef_ = tenorPeriodNode.Attributes["href"].Value; } else { tenorPeriod_ = new Period(tenorPeriodNode); } } else { tenorPeriod_ = new Period(tenorPeriodNode); } } XmlNode americanExerciseNode = xmlNode.SelectSingleNode("americanExercise"); if (americanExerciseNode != null) { if (americanExerciseNode.Attributes["href"] != null || americanExerciseNode.Attributes["id"] != null) { if (americanExerciseNode.Attributes["id"] != null) { americanExerciseIDRef_ = americanExerciseNode.Attributes["id"].Value; FxDigitalAmericanExercise ob = new FxDigitalAmericanExercise(americanExerciseNode); IDManager.SetID(americanExerciseIDRef_, ob); } else if (americanExerciseNode.Attributes["href"] != null) { americanExerciseIDRef_ = americanExerciseNode.Attributes["href"].Value; } else { americanExercise_ = new FxDigitalAmericanExercise(americanExerciseNode); } } else { americanExercise_ = new FxDigitalAmericanExercise(americanExerciseNode); } } XmlNodeList touchNodeList = xmlNode.SelectNodes("touch"); if (touchNodeList != null) { this.touch_ = new List <FxTouch>(); foreach (XmlNode item in touchNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] != null) { if (item.Attributes["id"] != null) { touchIDRef_ = item.Attributes["id"].Value; touch_.Add(new FxTouch(item)); IDManager.SetID(touchIDRef_, touch_[touch_.Count - 1]); } else if (item.Attributes["href"] != null) { touchIDRef_ = item.Attributes["href"].Value; } else { touch_.Add(new FxTouch(item)); } } else { touch_.Add(new FxTouch(item)); } } } XmlNode europeanExerciseNode = xmlNode.SelectSingleNode("europeanExercise"); if (europeanExerciseNode != null) { if (europeanExerciseNode.Attributes["href"] != null || europeanExerciseNode.Attributes["id"] != null) { if (europeanExerciseNode.Attributes["id"] != null) { europeanExerciseIDRef_ = europeanExerciseNode.Attributes["id"].Value; FxEuropeanExercise ob = new FxEuropeanExercise(europeanExerciseNode); IDManager.SetID(europeanExerciseIDRef_, ob); } else if (europeanExerciseNode.Attributes["href"] != null) { europeanExerciseIDRef_ = europeanExerciseNode.Attributes["href"].Value; } else { europeanExercise_ = new FxEuropeanExercise(europeanExerciseNode); } } else { europeanExercise_ = new FxEuropeanExercise(europeanExerciseNode); } } XmlNodeList triggerNodeList = xmlNode.SelectNodes("trigger"); if (triggerNodeList != null) { this.trigger_ = new List <FxTrigger>(); foreach (XmlNode item in triggerNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] != null) { if (item.Attributes["id"] != null) { triggerIDRef_ = item.Attributes["id"].Value; trigger_.Add(new FxTrigger(item)); IDManager.SetID(triggerIDRef_, trigger_[trigger_.Count - 1]); } else if (item.Attributes["href"] != null) { triggerIDRef_ = item.Attributes["href"].Value; } else { trigger_.Add(new FxTrigger(item)); } } else { trigger_.Add(new FxTrigger(item)); } } } XmlNode exerciseProcedureNode = xmlNode.SelectSingleNode("exerciseProcedure"); if (exerciseProcedureNode != null) { if (exerciseProcedureNode.Attributes["href"] != null || exerciseProcedureNode.Attributes["id"] != null) { if (exerciseProcedureNode.Attributes["id"] != null) { exerciseProcedureIDRef_ = exerciseProcedureNode.Attributes["id"].Value; ExerciseProcedure ob = new ExerciseProcedure(exerciseProcedureNode); IDManager.SetID(exerciseProcedureIDRef_, ob); } else if (exerciseProcedureNode.Attributes["href"] != null) { exerciseProcedureIDRef_ = exerciseProcedureNode.Attributes["href"].Value; } else { exerciseProcedure_ = new ExerciseProcedure(exerciseProcedureNode); } } else { exerciseProcedure_ = new ExerciseProcedure(exerciseProcedureNode); } } XmlNode payoutNode = xmlNode.SelectSingleNode("payout"); if (payoutNode != null) { if (payoutNode.Attributes["href"] != null || payoutNode.Attributes["id"] != null) { if (payoutNode.Attributes["id"] != null) { payoutIDRef_ = payoutNode.Attributes["id"].Value; FxOptionPayout ob = new FxOptionPayout(payoutNode); IDManager.SetID(payoutIDRef_, ob); } else if (payoutNode.Attributes["href"] != null) { payoutIDRef_ = payoutNode.Attributes["href"].Value; } else { payout_ = new FxOptionPayout(payoutNode); } } else { payout_ = new FxOptionPayout(payoutNode); } } XmlNodeList premiumNodeList = xmlNode.SelectNodes("premium"); if (premiumNodeList != null) { this.premium_ = new List <FxOptionPremium>(); foreach (XmlNode item in premiumNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] != null) { if (item.Attributes["id"] != null) { premiumIDRef_ = item.Attributes["id"].Value; premium_.Add(new FxOptionPremium(item)); IDManager.SetID(premiumIDRef_, premium_[premium_.Count - 1]); } else if (item.Attributes["href"] != null) { premiumIDRef_ = item.Attributes["href"].Value; } else { premium_.Add(new FxOptionPremium(item)); } } else { premium_.Add(new FxOptionPremium(item)); } } } }