package at.gv.egovernment.moa.util; import java.io.IOException; import org.xml.sax.EntityResolver; import org.xml.sax.ErrorHandler; import org.xml.sax.InputSource; import org.xml.sax.SAXException; import org.xml.sax.SAXParseException; import org.xml.sax.helpers.DefaultHandler; /** * A DefaultHandler that uses a MOAEntityResolver and * a MOAErrorHandler. * * @author Patrick Peck * @version $Id$ */ public class MOADefaultHandler extends DefaultHandler { /** The EntityResolver to use. */ private EntityResolver entityResolver; /** The ErrorHandler to use. */ private ErrorHandler errorHandler; /** * Create a new MOADefaultHandler. */ public MOADefaultHandler() { entityResolver = new MOAEntityResolver(); errorHandler = new MOAErrorHandler(); } /** * Create a new MOADefaultHandler. * * @param entityResolver The EntityResolver to use for resolving * external entities. * @param errorHandler The ErrorHandler to use for reporting * parsing errors. */ public MOADefaultHandler( EntityResolver entityResolver, ErrorHandler errorHandler) { this.entityResolver = entityResolver; this.errorHandler = errorHandler; } /** * @see org.xml.sax.EntityResolver#resolveEntity(java.lang.String, java.lang.String) */ public InputSource resolveEntity(String publicId, String systemId) throws SAXException { try { return entityResolver.resolveEntity(publicId, systemId); } catch (IOException e) { return null; } } /** * @see org.xml.sax.ErrorHandler#warning(org.xml.sax.SAXParseException) */ public void warning(SAXParseException exception) throws SAXException { errorHandler.warning(exception); } /** * @see org.xml.sax.ErrorHandler#error(org.xml.sax.SAXParseException) */ public void error(SAXParseException exception) throws SAXException { errorHandler.error(exception); } /** * @see org.xml.sax.ErrorHandler#fatalError(org.xml.sax.SAXParseException) */ public void fatalError(SAXParseException exception) throws SAXException { errorHandler.fatalError(exception); } }