001 package com.thaiopensource.validate.xerces;
002
003 import org.apache.xerces.util.ErrorHandlerWrapper;
004 import org.apache.xerces.xni.parser.XMLParseException;
005 import org.apache.xerces.xni.XNIException;
006 import org.xml.sax.ErrorHandler;
007
008 class SAXXMLErrorHandler extends ErrorHandlerWrapper {
009 private boolean hadError = false;
010
011 SAXXMLErrorHandler(ErrorHandler errorHandler) {
012 super(errorHandler);
013 }
014
015 void reset() {
016 hadError = false;
017 }
018
019 public void error(String domain, String key,
020 XMLParseException exception) throws XNIException {
021 hadError = true;
022 if (fErrorHandler == null)
023 return;
024 super.error(domain, key, exception);
025 }
026
027 public void warning(String domain, String key,
028 XMLParseException exception) throws XNIException {
029 if (fErrorHandler == null)
030 return;
031 super.warning(domain, key, exception);
032 }
033
034 public void fatalError(String domain, String key,
035 XMLParseException exception) throws XNIException {
036 hadError = true;
037 if (fErrorHandler == null)
038 return;
039 super.fatalError(domain, key, exception);
040 }
041
042 boolean getHadError() {
043 return hadError;
044 }
045 }