Path: blob/master/test/jdk/javax/xml/jaxp/testng/validation/SpecialCaseErrorHandler.java
41153 views
package validation;12import java.util.HashMap;3import java.util.Iterator;45import org.xml.sax.ErrorHandler;6import org.xml.sax.SAXException;7import org.xml.sax.SAXParseException;89public class SpecialCaseErrorHandler implements ErrorHandler {10public static final boolean DEBUG = false;1112private HashMap errors;1314public SpecialCaseErrorHandler(String[] specialCases) {15errors = new HashMap();16for (int i = 0; i < specialCases.length; ++i) {17errors.put(specialCases[i], Boolean.FALSE);18}19}2021public void reset() {22for (Iterator iter = errors.keySet().iterator(); iter.hasNext();) {23String error = (String) iter.next();24errors.put(error, Boolean.FALSE);25}26}2728public void warning(SAXParseException arg0) throws SAXException {29if (DEBUG) {30System.err.println(arg0.getMessage());31}32}3334public void error(SAXParseException arg0) throws SAXException {35if (DEBUG) {36System.err.println(arg0.getMessage());37}38for (Iterator iter = errors.keySet().iterator(); iter.hasNext();) {39String error = (String) iter.next();40if (arg0.getMessage().startsWith(error)) {41errors.put(error, Boolean.TRUE);42}43}44}4546public void fatalError(SAXParseException arg0) throws SAXException {47throw arg0;48}4950public boolean specialCaseFound(String key) {51return ((Boolean) errors.get(key)).booleanValue();52}53}545556