1 /* 2 3 Copyright 2000-2001,2003 The Apache Software Foundation 4 5 Licensed under the Apache License, Version 2.0 (the "License"); 6 you may not use this file except in compliance with the License. 7 You may obtain a copy of the License at 8 9 http://www.apache.org/licenses/LICENSE-2.0 10 11 Unless required by applicable law or agreed to in writing, software 12 distributed under the License is distributed on an "AS IS" BASIS, 13 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 See the License for the specific language governing permissions and 15 limitations under the License. 16 17 */ 18 package org.apache.batik.parser; 19 20 import java.io.Reader; 21 22 import org.apache.batik.i18n.Localizable; 23 24 /** 25 * This interface represents a parser. 26 * 27 * @author <a HREF="mailto:stephane@hillion.org">Stephane Hillion</a> 28 * @version $Id: Parser.java,v 1.5 2004/08/18 07:14:47 vhardy Exp $ 29 */ 30 public interface Parser extends Localizable { 31 /** 32 * Parses the given reader 33 */ 34 public void parse(Reader r) throws ParseException; 35 36 /** 37 * Parses the given string 38 */ 39 public void parse(String s) throws ParseException; 40 41 /** 42 * Allows an application to register an error event handler. 43 * 44 * <p>If the application does not register an error event handler, 45 * all error events reported by the parser will cause an exception 46 * to be thrown. 47 * 48 * <p>Applications may register a new or different handler in the 49 * middle of a parse, and the parser must begin using the new 50 * handler immediately.</p> 51 * @param handler The error handler. 52 */ 53 void setErrorHandler(ErrorHandler handler); 54 } 55