Esempio n. 1
0
        public override TrafficSplitterRule Create(NameValueItem nviConfigurationRoot)
        {
            IPAddressRule ipaRule = new IPAddressRule();

            ipaRule.Action = ConvertToAction(nviConfigurationRoot.GetChildsByName("action")[0]);

            if (nviConfigurationRoot.ContainsChildItem("address"))
            {
                ipaRule.Address = IPAddress.Parse(nviConfigurationRoot["address"][0].Value);
            }
            if (nviConfigurationRoot.ContainsChildItem("wildcard"))
            {
                ipaRule.Wildcard = Subnetmask.Parse(nviConfigurationRoot["wildcard"][0].Value);
            }

            if (nviConfigurationRoot.ContainsChildItem("destinationAddress"))
            {
                ipaRule.Destination = IPAddress.Parse(nviConfigurationRoot["destinationAddress"][0].Value);
            }
            if (nviConfigurationRoot.ContainsChildItem("sourceAddress"))
            {
                ipaRule.Source = IPAddress.Parse(nviConfigurationRoot["sourceAddress"][0].Value);
            }

            if (nviConfigurationRoot.ContainsChildItem("destinationWildcard"))
            {
                ipaRule.DestinationWildcard = Subnetmask.Parse(nviConfigurationRoot["destinationWildcard"][0].Value);
            }
            if (nviConfigurationRoot.ContainsChildItem("sourceWildcard"))
            {
                ipaRule.SourceWildcard = Subnetmask.Parse(nviConfigurationRoot["sourceWildcard"][0].Value);
            }

            return(ipaRule);
        }
Esempio n. 2
0
        public override NameValueItem[] GetConfiguration(TrafficSplitterRule tsrRule)
        {
            IPAddressRule ipaRule = (IPAddressRule)tsrRule;

            List <NameValueItem> lNvi = new List <NameValueItem>();

            lNvi.Add(ConvertActionToNameValueItem(ipaRule.Action));

            if (ipaRule.Address != null)
            {
                lNvi.Add(new NameValueItem("address", ipaRule.Address.ToString()));
            }

            if (ipaRule.Wildcard != null)
            {
                lNvi.Add(new NameValueItem("wildcard", ipaRule.Wildcard.ToString()));
            }

            if (ipaRule.Destination != null)
            {
                lNvi.Add(new NameValueItem("destinationAddress", ipaRule.Destination.ToString()));
            }

            if (ipaRule.Source != null)
            {
                lNvi.Add(new NameValueItem("sourceAddress", ipaRule.Source.ToString()));
            }

            if (ipaRule.DestinationWildcard != null)
            {
                lNvi.Add(new NameValueItem("destinationWildcard", ipaRule.DestinationWildcard.ToString()));
            }

            if (ipaRule.SourceWildcard != null)
            {
                lNvi.Add(new NameValueItem("sourceWildcard", ipaRule.SourceWildcard.ToString()));
            }


            return(lNvi.ToArray());
        }