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 }