/// <summary> /// Adds a DpwsMexServices to the end of the collection. /// </summary> /// <param name="value"> /// The DpwsMexServices element to be added to the end of the collection. /// The value can be null. /// </param> /// <returns> /// The collection index at which the DpwsMexServices has been added. /// </returns> public int Add(DpwsMexService value) { lock (m_threadLock) { return(m_services.Add(value)); } }
internal void Append(XmlReader reader) { if (reader.IsStartElement("Relationship", WsWellKnownUri.WsdpNamespaceUri) == false) { throw new XmlException(); } reader.MoveToAttribute("Type"); if (reader.Value != "http://schemas.xmlsoap.org/ws/2006/02/devprof/host") { throw new XmlException(); // Incorrect Type Attribute } reader.MoveToElement(); reader.Read(); // Relationship - Start Element if (reader.IsStartElement("Host", WsWellKnownUri.WsdpNamespaceUri)) { if (_host != null) { throw new XmlException(); // An host has already been defined } _host = new DpwsMexService(reader); } while (reader.IsStartElement("Hosted", WsWellKnownUri.WsdpNamespaceUri)) { this.HostedServices.Add(new DpwsMexService(reader)); } if (this.Host == null && this.HostedServices.Count == 0) { throw new XmlException(); } XmlReaderHelper.SkipAllSiblings(reader); // xs:any reader.ReadEndElement(); // Relationship }
internal void Append(XmlReader reader, ProtocolVersion version) { if (reader.IsStartElement("Relationship", version.WsdpNamespaceUri) == false) { throw new XmlException(); } reader.MoveToAttribute("Type"); if (reader.Value != version.WsdpNamespaceUri + "/host") { throw new XmlException(); // Incorrect Type Attribute } reader.MoveToElement(); reader.Read(); // Relationship - Start Element if (reader.IsStartElement("Host", version.WsdpNamespaceUri)) { if (_host != null) { throw new XmlException(); // An host has already been defined } _host = new DpwsMexService(reader, version); } while (reader.IsStartElement("Hosted", version.WsdpNamespaceUri)) { this.HostedServices.Add(new DpwsMexService(reader, version)); } if (this.Host == null && this.HostedServices.Count == 0) { throw new XmlException(); } XmlReaderHelper.SkipAllSiblings(reader); // xs:any reader.ReadEndElement(); // Relationship }
/// <summary> /// Adds a DpwsMexServices to the end of the collection. /// </summary> /// <param name="value"> /// The DpwsMexServices element to be added to the end of the collection. /// The value can be null. /// </param> /// <returns> /// The collection index at which the DpwsMexServices has been added. /// </returns> public int Add(DpwsMexService value) { lock (m_threadLock) { return m_services.Add(value); } }