protected override void AddConfiguration(List <NameValueItem> lNameValueItems, IEnvironment eEnviornment) { if (thHandler.GatewayAddress != null) { lNameValueItems.AddRange(ConvertToNameValueItems("gateway", thHandler.GatewayAddress)); } if (thHandler.DNSAddress != null) { lNameValueItems.AddRange(ConvertToNameValueItems("dns", thHandler.DNSAddress)); } lNameValueItems.AddRange(ConvertToNameValueItems("inPort", thHandler.DHCPInPort)); lNameValueItems.AddRange(ConvertToNameValueItems("outPort", thHandler.DHCPOutPort)); lNameValueItems.AddRange(ConvertToNameValueItems("leaseDuration", thHandler.LeaseDuration)); foreach (DHCPPool dhPool in thHandler.DHCPPools) { NameValueItem nviPool = new NameValueItem("DHCPPool", ""); foreach (DHCPPoolItem dhItem in dhPool.Pool) { NameValueItem nvi = new NameValueItem("DHCPItem", ""); nvi.AddChildRange(ConvertToNameValueItems("Address", dhItem.Address)); nvi.AddChildRange(ConvertToNameValueItems("Gateway", dhItem.Gateway)); nvi.AddChildRange(ConvertToNameValueItems("DNSServer", dhItem.DNSServer)); nvi.AddChildRange(ConvertToNameValueItems("Netmask", dhItem.Netmask)); nviPool.AddChildItem(nvi); } lNameValueItems.Add(nviPool); } }
private NameValueItem SaveRule(IEnvironment eEnviornment, TrafficSplitterRule trRule) { NameValueItem nviRule = null; ISubPlugInDefinition <TrafficSplitterRule> ruleDefinition = GetRuleDefinitionForName(eEnviornment, trRule.Name); if (ruleDefinition != null) { nviRule = new NameValueItem("rule", ""); nviRule.AddChildItem(new NameValueItem("ruleKey", ruleDefinition.PluginKey)); nviRule.AddChildRange(ruleDefinition.GetConfiguration(trRule)); foreach (TrafficSplitterRule tsrChild in trRule.ChildRules) { NameValueItem nvi = SaveRule(eEnviornment, tsrChild); if (nvi != null) { nviRule.AddChildItem(nvi); } } } return(nviRule); }
private NameValueItem SaveCondition(IEnvironment eEnviornment, HTTPStreamModifierCondition cCondition) { NameValueItem nviRule = null; ISubPlugInDefinition <HTTPStreamModifierCondition> ispConditionDefinition = null; ispConditionDefinition = GetConditionefinitionForName(eEnviornment, cCondition.Name); if (ispConditionDefinition != null) { nviRule = new NameValueItem("condition", ""); nviRule.AddChildItem(new NameValueItem("conditionKey", ispConditionDefinition.PluginKey)); nviRule.AddChildRange(ispConditionDefinition.GetConfiguration(cCondition)); foreach (HTTPStreamModifierCondition cChild in cCondition.ChildRules) { NameValueItem nvi = SaveCondition(eEnviornment, cChild); if (nvi != null) { nviRule.AddChildItem(nvi); } } } return(nviRule); }