/// <summary> /// Parses a RemoteAddress element /// </summary> /// <param name="node">The element to parse.</param> private void ParseRemoteAddressElement(XmlNode node, ref string remoteAddresses) { SourceLineNumberCollection sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node); // no attributes foreach (XmlAttribute attrib in node.Attributes) { if (0 == attrib.NamespaceURI.Length || attrib.NamespaceURI == this.schema.TargetNamespace) { this.Core.UnexpectedAttribute(sourceLineNumbers, attrib); } else { this.Core.UnsupportedExtensionAttribute(sourceLineNumbers, attrib); } } // no children foreach (XmlNode child in node.ChildNodes) { if (XmlNodeType.Element == child.NodeType) { if (child.NamespaceURI == this.Schema.TargetNamespace) { this.Core.UnexpectedElement(node, child); } else { this.Core.UnsupportedExtensionElement(node, child); } } } string address = CompilerCore.GetTrimmedInnerText(node); if (String.IsNullOrEmpty(address)) { this.Core.OnMessage(FirewallErrors.IllegalEmptyRemoteAddress(sourceLineNumbers)); } else { if (String.IsNullOrEmpty(remoteAddresses)) { remoteAddresses = address; } else { remoteAddresses = String.Concat(remoteAddresses, ",", address); } } }
/// <summary> /// Parses a RemoteAddress element /// </summary> /// <param name="node">The element to parse.</param> private void ParseRemoteAddressElement(XElement node, ref string remoteAddresses) { SourceLineNumber sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node); // no attributes foreach (XAttribute attrib in node.Attributes()) { if (String.IsNullOrEmpty(attrib.Name.NamespaceName) || this.Namespace == attrib.Name.Namespace) { this.Core.UnexpectedAttribute(sourceLineNumbers, attrib); } else { this.Core.ParseExtensionAttribute(node, attrib); } } this.Core.ParseForExtensionElements(node); string address = CompilerCore.GetTrimmedInnerText(node); if (String.IsNullOrEmpty(address)) { this.Core.OnMessage(FirewallErrors.IllegalEmptyRemoteAddress(sourceLineNumbers)); } else { if (String.IsNullOrEmpty(remoteAddresses)) { remoteAddresses = address; } else { remoteAddresses = String.Concat(remoteAddresses, ",", address); } } }