Exemplo n.º 1
0
        /// <summary>
        /// Extracts AddRemType object from XML element
        /// </summary>
        /// <param name="addRemElement">AddRemType XML element</param>
        /// <returns>AddRemType object</returns>
        public static HostAddRemType Extract(XElement addRemElement)
        {
            var addresses = addRemElement
                            .Elements()
                            .Where(elem => elem.Name.LocalName == "addr")
                            .Select(addr => IpAddress.Extract(addr));
            var statuses = addRemElement
                           .Elements()
                           .Where(elem => elem.Name.LocalName == "status")
                           .Select(status => StatusInfo.Extract(status));
            HostAddRemType addRemType;

            if (addresses != null)
            {
                addRemType = new HostAddRemType(addresses.ToList());
                if (statuses != null)
                {
                    addRemType.Statuses = statuses.ToList();
                }
            }
            else
            {
                addRemType = new HostAddRemType(statuses.ToList());
            }

            return(addRemType);
        }
Exemplo n.º 2
0
        /// <summary>
        /// Extracts data from XML element
        /// </summary>
        /// <param name="objectElement">Object XML element</param>
        public void Extract(XElement objectElement)
        {
            this.Name   = GetValueByName(objectElement, "name");
            this.Roid   = objectElement.Element(SchemaHelper.HostNs.GetName("roid")).Value;
            this.Status = objectElement
                          .Elements()
                          .Where(elem => elem.Name.LocalName == "status")
                          .Select(status => StatusInfo.Extract(status))
                          .ToList();
            this.IPAddress = objectElement
                             .Elements()
                             .Where(elem => elem.Name.LocalName == "addr")
                             .Select(addr => IpAddress.Extract(addr))
                             .ToList();

            var clientIdElem = objectElement.Element(SchemaHelper.HostNs.GetName("clID"));

            this.ClientId = clientIdElem == null ? null : clientIdElem.Value;

            var createIdElem = objectElement.Element(SchemaHelper.HostNs.GetName("crID"));

            this.CreateId = createIdElem == null ? null : createIdElem.Value;

            var crdDateElem = objectElement.Element(SchemaHelper.HostNs.GetName("crDate"));

            this.CreateDate = crdDateElem == null ? (DateTime?)null : DateTime.Parse(crdDateElem.Value).ToUniversalTime();

            var updIdElem = objectElement.Element(SchemaHelper.HostNs.GetName("upID"));

            this.UpdateId = updIdElem == null ? null : updIdElem.Value;

            var updDateElem = objectElement.Element(SchemaHelper.HostNs.GetName("upDate"));

            this.UpdateDate = updDateElem == null ? (DateTime?)null : DateTime.Parse(updDateElem.Value).ToUniversalTime();

            var tranDateElem = objectElement.Element(SchemaHelper.HostNs.GetName("trDate"));

            this.TransferDate = tranDateElem == null ? (DateTime?)null : DateTime.Parse(tranDateElem.Value).ToUniversalTime();
        }
Exemplo n.º 3
0
        /// <summary>
        /// Extracts data from XML element
        /// </summary>
        /// <param name="objectElement">Object XML element</param>
        public void Extract(XElement objectElement)
        {
            this.Id   = objectElement.Element(SchemaHelper.ContactNs.GetName("id")).Value;
            this.Roid = objectElement.Element(SchemaHelper.ContactNs.GetName("roid")).Value;

            this.Status = objectElement
                          .Elements(SchemaHelper.ContactNs.GetName("status"))
                          .Select(status => StatusInfo.Extract(status))
                          .ToList();

            this.PostalInfos = objectElement.Elements(SchemaHelper.ContactNs.GetName("postalInfo"))
                               .Select(pos => PostalInfo.Extract(pos))
                               .ToList();

            this.Voice = objectElement
                         .Elements(SchemaHelper.ContactNs.GetName("voice"))
                         .Select(voice => VoiceInfo.Extract(voice))
                         .FirstOrDefault();

            this.Fax = objectElement
                       .Elements(SchemaHelper.ContactNs.GetName("fax"))
                       .Select(fax => fax.Value)
                       .FirstOrDefault();
            var email = objectElement.Element(SchemaHelper.ContactNs.GetName("email"));

            this.Email = email == null ? null : email.Value;

            var clientId = objectElement.Element(SchemaHelper.ContactNs.GetName("clID"));

            this.ClientId = clientId == null ? null : clientId.Value;

            var creadteId = objectElement.Element(SchemaHelper.ContactNs.GetName("crID"));

            this.CreateId = creadteId == null ? null : creadteId.Value;

            var createDate = objectElement.Element(SchemaHelper.ContactNs.GetName("crDate"));

            this.CreateDate = createDate == null ? (DateTime?)null : DateTime.Parse(createDate.Value).ToUniversalTime();

            var updateIdElement = objectElement.Element(SchemaHelper.ContactNs.GetName("upID"));

            this.UpdateId = updateIdElement == null ? null : updateIdElement.Value;

            var updateDateElement = objectElement.Element(SchemaHelper.ContactNs.GetName("upDate"));

            this.UpdateDate = updateDateElement == null ? (DateTime?)null : DateTime.Parse(updateDateElement.Value).ToUniversalTime();

            var transferDateElement = objectElement.Element(SchemaHelper.ContactNs.GetName("trDate"));

            this.TransferDate = transferDateElement == null ? (DateTime?)null : DateTime.Parse(transferDateElement.Value).ToUniversalTime();

            this.Auth = objectElement
                        .Elements(SchemaHelper.ContactNs.GetName("authInfo"))
                        .Select(authInfo => AuthInfo.Extract(authInfo))
                        .FirstOrDefault();

            this.Disclose = objectElement
                            .Elements(SchemaHelper.ContactNs.GetName("disclose"))
                            .Select(dis =>
            {
                bool discloseFlag;
                if (!Boolean.TryParse(dis.Attribute("flag").Value, out discloseFlag))
                {
                    discloseFlag = Int32.Parse(dis.Attribute("flag").Value) != 0;
                }

                var disclose = new Disclose(discloseFlag);

                if (dis.Elements() != null)
                {
                    var elements = new List <string>();
                    foreach (var element in dis.Elements())
                    {
                        elements.Add(element.Name.LocalName);
                    }

                    disclose.DisclosingFields = elements;
                }

                return(disclose);
            })
                            .FirstOrDefault();
        }