private void Initialize() { this.nameTable = null; this.xmlResolver = this.CreateDefaultResolver(); this.lineNumberOffset = 0; this.linePositionOffset = 0; this.checkCharacters = true; this.conformanceLevel = System.Xml.ConformanceLevel.Document; this.ignoreWhitespace = false; this.ignorePIs = false; this.ignoreComments = false; this.dtdProcessing = System.Xml.DtdProcessing.Prohibit; this.closeInput = false; this.maxCharactersFromEntities = 0L; this.maxCharactersInDocument = 0L; this.schemas = null; this.validationType = System.Xml.ValidationType.None; this.validationFlags = XmlSchemaValidationFlags.ProcessIdentityConstraints; this.validationFlags |= XmlSchemaValidationFlags.AllowXmlAttributes; this.isReadOnly = false; }
internal XmlReader AddConformanceWrapper(XmlReader baseReader) { XmlReaderSettings settings = baseReader.Settings; bool checkCharacters = false; bool ignoreWhitespace = false; bool ignoreComments = false; bool ignorePis = false; System.Xml.DtdProcessing dtdProcessing = ~System.Xml.DtdProcessing.Prohibit; bool flag5 = false; if (settings == null) { if ((this.conformanceLevel != System.Xml.ConformanceLevel.Auto) && (this.conformanceLevel != XmlReader.GetV1ConformanceLevel(baseReader))) { throw new InvalidOperationException(Res.GetString("Xml_IncompatibleConformanceLevel", new object[] { this.conformanceLevel.ToString() })); } XmlTextReader reader = baseReader as XmlTextReader; if (reader == null) { XmlValidatingReader reader2 = baseReader as XmlValidatingReader; if (reader2 != null) { reader = (XmlTextReader) reader2.Reader; } } if (this.ignoreWhitespace) { WhitespaceHandling all = WhitespaceHandling.All; if (reader != null) { all = reader.WhitespaceHandling; } if (all == WhitespaceHandling.All) { ignoreWhitespace = true; flag5 = true; } } if (this.ignoreComments) { ignoreComments = true; flag5 = true; } if (this.ignorePIs) { ignorePis = true; flag5 = true; } System.Xml.DtdProcessing parse = System.Xml.DtdProcessing.Parse; if (reader != null) { parse = reader.DtdProcessing; } if (((this.dtdProcessing == System.Xml.DtdProcessing.Prohibit) && (parse != System.Xml.DtdProcessing.Prohibit)) || ((this.dtdProcessing == System.Xml.DtdProcessing.Ignore) && (parse == System.Xml.DtdProcessing.Parse))) { dtdProcessing = this.dtdProcessing; flag5 = true; } } else { if ((this.conformanceLevel != settings.ConformanceLevel) && (this.conformanceLevel != System.Xml.ConformanceLevel.Auto)) { throw new InvalidOperationException(Res.GetString("Xml_IncompatibleConformanceLevel", new object[] { this.conformanceLevel.ToString() })); } if (this.checkCharacters && !settings.CheckCharacters) { checkCharacters = true; flag5 = true; } if (this.ignoreWhitespace && !settings.IgnoreWhitespace) { ignoreWhitespace = true; flag5 = true; } if (this.ignoreComments && !settings.IgnoreComments) { ignoreComments = true; flag5 = true; } if (this.ignorePIs && !settings.IgnoreProcessingInstructions) { ignorePis = true; flag5 = true; } if (((this.dtdProcessing == System.Xml.DtdProcessing.Prohibit) && (settings.DtdProcessing != System.Xml.DtdProcessing.Prohibit)) || ((this.dtdProcessing == System.Xml.DtdProcessing.Ignore) && (settings.DtdProcessing == System.Xml.DtdProcessing.Parse))) { dtdProcessing = this.dtdProcessing; flag5 = true; } } if (!flag5) { return baseReader; } IXmlNamespaceResolver readerAsNSResolver = baseReader as IXmlNamespaceResolver; if (readerAsNSResolver != null) { return new XmlCharCheckingReaderWithNS(baseReader, readerAsNSResolver, checkCharacters, ignoreWhitespace, ignoreComments, ignorePis, dtdProcessing); } return new XmlCharCheckingReader(baseReader, checkCharacters, ignoreWhitespace, ignoreComments, ignorePis, dtdProcessing); }
private void Initialize() { this.nameTable = null; this.xmlResolver = this.CreateDefaultResolver(); this.lineNumberOffset = 0; this.linePositionOffset = 0; this.checkCharacters = true; this.conformanceLevel = System.Xml.ConformanceLevel.Document; this.ignoreWhitespace = false; this.ignorePIs = false; this.ignoreComments = false; this.dtdProcessing = System.Xml.DtdProcessing.Prohibit; this.closeInput = false; this.maxCharactersFromEntities = 0L; this.maxCharactersInDocument = 0L; this.schemas = null; this.validationType = System.Xml.ValidationType.None; this.validationFlags = XmlSchemaValidationFlags.ProcessIdentityConstraints; this.validationFlags |= XmlSchemaValidationFlags.AllowXmlAttributes; this.isReadOnly = false; }
internal XmlReader AddConformanceWrapper(XmlReader baseReader) { XmlReaderSettings settings = baseReader.Settings; bool checkCharacters = false; bool ignoreWhitespace = false; bool ignoreComments = false; bool ignorePis = false; System.Xml.DtdProcessing dtdProcessing = ~System.Xml.DtdProcessing.Prohibit; bool flag5 = false; if (settings == null) { if ((this.conformanceLevel != System.Xml.ConformanceLevel.Auto) && (this.conformanceLevel != XmlReader.GetV1ConformanceLevel(baseReader))) { throw new InvalidOperationException(Res.GetString("Xml_IncompatibleConformanceLevel", new object[] { this.conformanceLevel.ToString() })); } XmlTextReader reader = baseReader as XmlTextReader; if (reader == null) { XmlValidatingReader reader2 = baseReader as XmlValidatingReader; if (reader2 != null) { reader = (XmlTextReader)reader2.Reader; } } if (this.ignoreWhitespace) { WhitespaceHandling all = WhitespaceHandling.All; if (reader != null) { all = reader.WhitespaceHandling; } if (all == WhitespaceHandling.All) { ignoreWhitespace = true; flag5 = true; } } if (this.ignoreComments) { ignoreComments = true; flag5 = true; } if (this.ignorePIs) { ignorePis = true; flag5 = true; } System.Xml.DtdProcessing parse = System.Xml.DtdProcessing.Parse; if (reader != null) { parse = reader.DtdProcessing; } if (((this.dtdProcessing == System.Xml.DtdProcessing.Prohibit) && (parse != System.Xml.DtdProcessing.Prohibit)) || ((this.dtdProcessing == System.Xml.DtdProcessing.Ignore) && (parse == System.Xml.DtdProcessing.Parse))) { dtdProcessing = this.dtdProcessing; flag5 = true; } } else { if ((this.conformanceLevel != settings.ConformanceLevel) && (this.conformanceLevel != System.Xml.ConformanceLevel.Auto)) { throw new InvalidOperationException(Res.GetString("Xml_IncompatibleConformanceLevel", new object[] { this.conformanceLevel.ToString() })); } if (this.checkCharacters && !settings.CheckCharacters) { checkCharacters = true; flag5 = true; } if (this.ignoreWhitespace && !settings.IgnoreWhitespace) { ignoreWhitespace = true; flag5 = true; } if (this.ignoreComments && !settings.IgnoreComments) { ignoreComments = true; flag5 = true; } if (this.ignorePIs && !settings.IgnoreProcessingInstructions) { ignorePis = true; flag5 = true; } if (((this.dtdProcessing == System.Xml.DtdProcessing.Prohibit) && (settings.DtdProcessing != System.Xml.DtdProcessing.Prohibit)) || ((this.dtdProcessing == System.Xml.DtdProcessing.Ignore) && (settings.DtdProcessing == System.Xml.DtdProcessing.Parse))) { dtdProcessing = this.dtdProcessing; flag5 = true; } } if (!flag5) { return(baseReader); } IXmlNamespaceResolver readerAsNSResolver = baseReader as IXmlNamespaceResolver; if (readerAsNSResolver != null) { return(new XmlCharCheckingReaderWithNS(baseReader, readerAsNSResolver, checkCharacters, ignoreWhitespace, ignoreComments, ignorePis, dtdProcessing)); } return(new XmlCharCheckingReader(baseReader, checkCharacters, ignoreWhitespace, ignoreComments, ignorePis, dtdProcessing)); }