/* * Created on 02.12.2003 * * (c) Stabsstelle IKT-Strategie des Bundes */ package at.gv.egovernment.moa.spss.slinterface.listeners; import org.apache.log4j.Logger; import org.xml.sax.ErrorHandler; import org.xml.sax.SAXException; import org.xml.sax.SAXParseException; import at.gv.egovernment.moa.spss.slinterface.Constants; /** * @author Gregor Karlinger (mailto:gregor.karlinger@cio.gv.at) */ public class XMLParserErrorHandler implements ErrorHandler { private static Logger logger_ = Logger.getLogger(Constants.LH_LISTENERS_XMLPARSER_); private boolean reportWarning_, reportError_, reportFatal_; /* ---------------------------------------------------------------------------------------------------- */ public XMLParserErrorHandler(boolean reportWarning, boolean reportError, boolean reportFatal) { reportWarning_ = reportWarning; reportError_ = reportError; reportFatal_ = reportFatal; } /* ---------------------------------------------------------------------------------------------------- */ /** * @see org.xml.sax.ErrorHandler#warning(org.xml.sax.SAXParseException) */ public void warning(SAXParseException exception) throws SAXException { logger_.warn("XML parser reported a warning.", exception); if (reportWarning_) throw exception; } /* ---------------------------------------------------------------------------------------------------- */ /** * @see org.xml.sax.ErrorHandler#error(org.xml.sax.SAXParseException) */ public void error(SAXParseException exception) throws SAXException { logger_.error("XML parser reported an error.", exception); if (reportError_) throw exception; } /* ---------------------------------------------------------------------------------------------------- */ /** * @see org.xml.sax.ErrorHandler#fatalError(org.xml.sax.SAXParseException) */ public void fatalError(SAXParseException exception) throws SAXException { logger_.error("XML parser reported a fatal error.", exception); if (reportFatal_) throw exception; } }