コード例 #1
0
 public void startEntity(
     String paramString1,
     XMLResourceIdentifier paramXMLResourceIdentifier,
     String paramString2,
     Augmentations paramAugmentations)
     throws XNIException {
   if (this.fEntityDepth == this.fEntityStack.length) {
     int[] arrayOfInt = new int[this.fEntityStack.length * 2];
     System.arraycopy(this.fEntityStack, 0, arrayOfInt, 0, this.fEntityStack.length);
     this.fEntityStack = arrayOfInt;
   }
   this.fEntityStack[this.fEntityDepth] = this.fMarkupDepth;
   super.startEntity(paramString1, paramXMLResourceIdentifier, paramString2, paramAugmentations);
   if ((this.fStandalone) && (this.fEntityManager.isEntityDeclInExternalSubset(paramString1))) {
     reportFatalError(
         "MSG_REFERENCE_TO_EXTERNALLY_DECLARED_ENTITY_WHEN_STANDALONE",
         new Object[] {paramString1});
   }
   if ((this.fDocumentHandler != null)
       && (!this.fScanningAttribute)
       && (!paramString1.equals("[xml]"))) {
     this.fDocumentHandler.startGeneralEntity(
         paramString1, paramXMLResourceIdentifier, paramString2, paramAugmentations);
   }
 }
コード例 #2
0
 public void reset(XMLComponentManager paramXMLComponentManager) throws XMLConfigurationException {
   super.reset(paramXMLComponentManager);
   this.fAttributes.setNamespaces(this.fNamespaces);
   this.fMarkupDepth = 0;
   this.fCurrentElement = null;
   this.fElementStack.clear();
   this.fHasExternalDTD = false;
   this.fStandalone = false;
   this.fIsEntityDeclaredVC = false;
   this.fInScanContent = false;
   setScannerState(7);
   setDispatcher(this.fContentDispatcher);
   if (this.fParserSettings) {
     try {
       this.fNotifyBuiltInRefs =
           paramXMLComponentManager.getFeature(
               "http://apache.org/xml/features/scanner/notify-builtin-refs");
     } catch (XMLConfigurationException localXMLConfigurationException1) {
       this.fNotifyBuiltInRefs = false;
     }
     try {
       Object localObject =
           paramXMLComponentManager.getProperty(
               "http://apache.org/xml/properties/internal/entity-resolver");
       this.fExternalSubsetResolver =
           ((localObject instanceof ExternalSubsetResolver)
               ? (ExternalSubsetResolver) localObject
               : null);
     } catch (XMLConfigurationException localXMLConfigurationException2) {
       this.fExternalSubsetResolver = null;
     }
   }
 }
コード例 #3
0
 protected void scanPIData(String paramString, XMLString paramXMLString)
     throws IOException, XNIException {
   super.scanPIData(paramString, paramXMLString);
   this.fMarkupDepth -= 1;
   if (this.fDocumentHandler != null) {
     this.fDocumentHandler.processingInstruction(paramString, paramXMLString, null);
   }
 }
コード例 #4
0
 public void setFeature(String paramString, boolean paramBoolean)
     throws XMLConfigurationException {
   super.setFeature(paramString, paramBoolean);
   if (paramString.startsWith("http://apache.org/xml/features/")) {
     int i = paramString.length() - "http://apache.org/xml/features/".length();
     if ((i == "scanner/notify-builtin-refs".length())
         && (paramString.endsWith("scanner/notify-builtin-refs"))) {
       this.fNotifyBuiltInRefs = paramBoolean;
     }
   }
 }
コード例 #5
0
 public void endEntity(String paramString, Augmentations paramAugmentations) throws XNIException {
   if ((this.fInScanContent)
       && (this.fStringBuffer.length != 0)
       && (this.fDocumentHandler != null)) {
     this.fDocumentHandler.characters(this.fStringBuffer, null);
     this.fStringBuffer.length = 0;
   }
   super.endEntity(paramString, paramAugmentations);
   if (this.fMarkupDepth != this.fEntityStack[this.fEntityDepth]) {
     reportFatalError("MarkupEntityMismatch", null);
   }
   if ((this.fDocumentHandler != null)
       && (!this.fScanningAttribute)
       && (!paramString.equals("[xml]"))) {
     this.fDocumentHandler.endGeneralEntity(paramString, paramAugmentations);
   }
 }
コード例 #6
0
 public void setProperty(String paramString, Object paramObject) throws XMLConfigurationException {
   super.setProperty(paramString, paramObject);
   if (paramString.startsWith("http://apache.org/xml/properties/")) {
     int i = paramString.length() - "http://apache.org/xml/properties/".length();
     if ((i == "internal/entity-manager".length())
         && (paramString.endsWith("internal/entity-manager"))) {
       this.fEntityManager = ((XMLEntityManager) paramObject);
       return;
     }
     if ((i == "internal/entity-resolver".length())
         && (paramString.endsWith("internal/entity-resolver"))) {
       this.fExternalSubsetResolver =
           ((paramObject instanceof ExternalSubsetResolver)
               ? (ExternalSubsetResolver) paramObject
               : null);
       return;
     }
   }
 }
コード例 #7
0
 protected void scanXMLDeclOrTextDecl(boolean paramBoolean) throws IOException, XNIException {
   super.scanXMLDeclOrTextDecl(paramBoolean, this.fStrings);
   this.fMarkupDepth -= 1;
   String str1 = this.fStrings[0];
   String str2 = this.fStrings[1];
   String str3 = this.fStrings[2];
   this.fStandalone = ((str3 != null) && (str3.equals("yes")));
   this.fEntityManager.setStandalone(this.fStandalone);
   this.fEntityScanner.setXMLVersion(str1);
   if (this.fDocumentHandler != null) {
     if (paramBoolean) {
       this.fDocumentHandler.textDecl(str1, str2, null);
     } else {
       this.fDocumentHandler.xmlDecl(str1, str2, str3, null);
     }
   }
   if ((str2 != null) && (!this.fEntityScanner.fCurrentEntity.isEncodingExternallySpecified())) {
     this.fEntityScanner.setEncoding(str2);
   }
 }