Skip to main content

This CGIT instance is deprecated, and repositories have been moved to Gitlab or Github. See the repository descriptions for specific locations.

summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/org.eclipse.jst.j2ee.core/archive/org/eclipse/jst/jee/util/internal/XMLRootHandler.java')
-rw-r--r--plugins/org.eclipse.jst.j2ee.core/archive/org/eclipse/jst/jee/util/internal/XMLRootHandler.java240
1 files changed, 0 insertions, 240 deletions
diff --git a/plugins/org.eclipse.jst.j2ee.core/archive/org/eclipse/jst/jee/util/internal/XMLRootHandler.java b/plugins/org.eclipse.jst.j2ee.core/archive/org/eclipse/jst/jee/util/internal/XMLRootHandler.java
deleted file mode 100644
index 7ddc26fcf..000000000
--- a/plugins/org.eclipse.jst.j2ee.core/archive/org/eclipse/jst/jee/util/internal/XMLRootHandler.java
+++ /dev/null
@@ -1,240 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2007 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jee.util.internal;
-
-import java.io.IOException;
-import java.io.StringReader;
-
-import javax.xml.parsers.ParserConfigurationException;
-import javax.xml.parsers.SAXParser;
-import javax.xml.parsers.SAXParserFactory;
-
-import org.xml.sax.Attributes;
-import org.xml.sax.InputSource;
-import org.xml.sax.SAXException;
-import org.xml.sax.SAXNotRecognizedException;
-import org.xml.sax.SAXNotSupportedException;
-import org.xml.sax.XMLReader;
-import org.xml.sax.ext.LexicalHandler;
-import org.xml.sax.helpers.DefaultHandler;
-
-
-public final class XMLRootHandler extends DefaultHandler implements LexicalHandler {
- /**
- * An exception indicating that the parsing should stop. This is usually
- * triggered when the top-level element has been found.
- *
- * @since 3.0
- */
- private class StopParsingException extends SAXException {
- /**
- * All serializable objects should have a stable serialVersionUID
- */
- private static final long serialVersionUID = 1L;
-
- /**
- * Constructs an instance of <code>StopParsingException</code> with a
- * <code>null</code> detail message.
- */
- public StopParsingException() {
- super((String) null);
- }
- }
-
- private String dtdName = null;
-
- private String dtdPublicID = null;
-
- private String dtdSystemID = null;
-
- /**
- * This is the name of the top-level element found in the XML file. This
- * member variable is <code>null</code> unless the file has been parsed
- * successful to the point of finding the top-level element.
- */
- private String elementFound = null;
-
- /**
- * These are the attributes of the top-level element found in the XML file.
- * This member variable is <code>null</code> unless the file has been
- * parsed successful to the point of finding the top-level element.
- */
- private Attributes attributesFound = null;
-
- public String getDtdName() {
- return dtdName;
- }
-
- public String getDtdPublicID() {
- return dtdPublicID;
- }
-
- public String getDtdSystemID() {
- return dtdSystemID;
- }
-
- public String getRootName() {
- return elementFound;
- }
-
- public Attributes getRootAttributes() {
- return attributesFound;
- }
-
- public XMLRootHandler() {
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.xml.sax.ext.LexicalHandler#comment(char[], int, int)
- */
- public final void comment(final char[] ch, final int start, final int length) {
- // Not interested.
- }
-
- /**
- * Creates a new SAX parser for use within this instance.
- *
- * @return The newly created parser.
- *
- * @throws ParserConfigurationException
- * If a parser of the given configuration cannot be created.
- * @throws SAXException
- * If something in general goes wrong when creating the parser.
- * @throws SAXNotRecognizedException
- * If the <code>XMLReader</code> does not recognize the
- * lexical handler configuration option.
- * @throws SAXNotSupportedException
- * If the <code>XMLReader</code> does not support the lexical
- * handler configuration option.
- */
- private final SAXParser createParser(SAXParserFactory parserFactory) throws ParserConfigurationException, SAXException, SAXNotRecognizedException, SAXNotSupportedException {
- // Initialize the parser.
- final SAXParser parser = parserFactory.newSAXParser();
- final XMLReader reader = parser.getXMLReader();
- reader.setProperty("http://xml.org/sax/properties/lexical-handler", this); //$NON-NLS-1$
- // disable DTD validation (bug 63625)
- try {
- // be sure validation is "off" or the feature to ignore DTD's will
- // not apply
- reader.setFeature("http://xml.org/sax/features/validation", false); //$NON-NLS-1$
- reader.setFeature("http://apache.org/xml/features/nonvalidating/load-external-dtd", false); //$NON-NLS-1$
- } catch (SAXNotRecognizedException e) {
- // not a big deal if the parser does not recognize the features
- } catch (SAXNotSupportedException e) {
- // not a big deal if the parser does not support the features
- }
- return parser;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.xml.sax.ext.LexicalHandler#endCDATA()
- */
- public final void endCDATA() {
- // Not interested.
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.xml.sax.ext.LexicalHandler#endDTD()
- */
- public final void endDTD() {
- // Not interested.
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.xml.sax.ext.LexicalHandler#endEntity(java.lang.String)
- */
- public final void endEntity(final String name) {
- // Not interested.
- }
-
- public boolean parseContents(InputSource contents) throws IOException, ParserConfigurationException, SAXException {
- // Parse the file into we have what we need (or an error occurs).
- try {
- SAXParserFactory factory = SAXParserFactory.newInstance();
- if (factory == null)
- return false;
- final SAXParser parser = createParser(factory);
- // to support external entities specified as relative URIs (see bug
- // 63298)
- contents.setSystemId("/"); //$NON-NLS-1$
- parser.parse(contents, this);
- } catch (StopParsingException e) {
- // Abort the parsing normally. Fall through...
- }
- return true;
- }
-
- /*
- * Resolve external entity definitions to an empty string. This is to speed
- * up processing of files with external DTDs. Not resolving the contents of
- * the DTD is ok, as only the System ID of the DTD declaration is used.
- *
- * @see org.xml.sax.helpers.DefaultHandler#resolveEntity(java.lang.String,
- * java.lang.String)
- */
- public InputSource resolveEntity(String publicId, String systemId) throws SAXException {
- return new InputSource(new StringReader("")); //$NON-NLS-1$
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.xml.sax.ext.LexicalHandler#startCDATA()
- */
- public final void startCDATA() {
- // Not interested.
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.xml.sax.ext.LexicalHandler#startDTD(java.lang.String,
- * java.lang.String, java.lang.String)
- */
- public final void startDTD(final String name, final String publicId, final String systemId) throws SAXException {
- dtdName = name;
- dtdPublicID = publicId;
- dtdSystemID = systemId;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.xml.sax.ContentHandler#startElement(java.lang.String,
- * java.lang.String, java.lang.String, org.xml.sax.Attributes)
- */
- public final void startElement(final String uri, final String elementName, final String qualifiedName, final Attributes attributes) throws SAXException {
- elementFound = elementName == null || elementName.length() == 0 ? qualifiedName: elementName;
- if(elementFound.indexOf(':') != -1){
- elementFound = elementFound.substring(elementFound.indexOf(':')+1);
- }
- attributesFound = attributes;
- throw new StopParsingException();
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.xml.sax.ext.LexicalHandler#startEntity(java.lang.String)
- */
- public final void startEntity(final String name) {
- // Not interested.
- }
-
-}

Back to the top