/** * Copyright (c) 2002-2006 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 - Initial API and implementation */ package org.eclipse.emf.ecore.xmi.impl; import java.util.Map; import org.xml.sax.Attributes; import org.xml.sax.InputSource; import org.xml.sax.Locator; import org.xml.sax.SAXException; import org.xml.sax.SAXParseException; import org.xml.sax.helpers.DefaultHandler; import org.eclipse.emf.ecore.xmi.XMIException; import org.eclipse.emf.ecore.xmi.XMLDefaultHandler; import org.eclipse.emf.ecore.xmi.XMLHelper; import org.eclipse.emf.ecore.xmi.XMLResource; /** * @deprecated * This class wraps an XMLHandler with a SAX DefaultHandler. */ @Deprecated public class SAXWrapper extends DefaultHandler implements XMLDefaultHandler { protected XMLHandler handler; public void prepare(XMLResource resource, XMLHelper helper, Map<?,?> options) { handler.prepare(resource, helper, options); } public void reset() { handler.reset(); } /** * Constructor for SAXWrapper. */ public SAXWrapper(XMLHandler handler) { super(); this.handler = handler; } @Override public void setDocumentLocator(Locator locator) { handler.setLocator(locator); } @Override public void startDocument() throws SAXException { handler.startDocument(); } @Override public void endDocument() throws SAXException { handler.endDocument(); } @Override public void startPrefixMapping(String prefix, String uri) throws SAXException { handler.startPrefixMapping(prefix, uri); } @Override public void endPrefixMapping(String prefix) throws SAXException { // Ignore. } @Override public void startElement(String uri, String localName, String qName, Attributes attributes) throws SAXException { handler.setAttributes(attributes); handler.startElement(uri, localName, qName); } @Override public void endElement (String uri, String localName, String qName) throws SAXException { handler.endElement(uri, localName, qName); } @Override public void warning (SAXParseException e) throws SAXException { XMIException xmi = new XMIException(e.getException() == null ? e : e.getException(), e.getSystemId(), e.getLineNumber(), e.getColumnNumber()); handler.warning(xmi); } @Override public void error (SAXParseException e) throws SAXException { XMIException xmi = new XMIException(e.getException() == null ? e : e.getException(), e.getSystemId(), e.getLineNumber(), e.getColumnNumber()); handler.error(xmi); } @Override public void fatalError (SAXParseException e) throws SAXException { XMIException xmi = new XMIException(e.getException() == null ? e : e.getException(), e.getSystemId(), e.getLineNumber(), e.getColumnNumber()); handler.fatalError(xmi); throw e; } @Override public void characters (char ch[], int start, int length) throws SAXException { handler.characters(ch, start, length); } @Override public void ignorableWhitespace (char ch[], int start, int length) throws SAXException { // handler.ignorableWhitespace(ch, start, length); } @Override public void processingInstruction (String target, String data) throws SAXException { handler.processingInstruction(target, data); } @Override public void skippedEntity (String name) throws SAXException { // handler.skippedEntity(name); } @Override public InputSource resolveEntity(String publicId, String systemId) throws SAXException { // handler.resolveEntity(publicId, systemId); return null; } @Override public void notationDecl(String name, String publicId, String systemId) throws SAXException { // handler.notationDecl(name, publicId, systemId); } @Override public void unparsedEntityDecl(String name, String publicId, String systemId, String notationName) throws SAXException { // handler.unparsedEntityDecl(name, publicId, systemId, notationName); } public void startDTD(java.lang.String name, java.lang.String publicId, java.lang.String systemId) { handler.startDTD(name, publicId, systemId); } public void endDTD() { // Ignore. } public void startEntity(java.lang.String name) { // Ignore. } public void endEntity(java.lang.String name) { // Ignore. } public void startCDATA() { handler.startCDATA(); } public void endCDATA() { handler.endCDATA(); } public void comment(char [] characters, int start, int length) throws SAXException { handler.comment(characters, start, length); } }