XMLEntityHandler.java revision 628:2bfaf29cc90b
1/* 2 * reserved comment block 3 * DO NOT REMOVE OR ALTER! 4 */ 5/* 6 * The Apache Software License, Version 1.1 7 * 8 * 9 * Copyright (c) 2000-2002 The Apache Software Foundation. All rights 10 * reserved. 11 * 12 * Redistribution and use in source and binary forms, with or without 13 * modification, are permitted provided that the following conditions 14 * are met: 15 * 16 * 1. Redistributions of source code must retain the above copyright 17 * notice, this list of conditions and the following disclaimer. 18 * 19 * 2. Redistributions in binary form must reproduce the above copyright 20 * notice, this list of conditions and the following disclaimer in 21 * the documentation and/or other materials provided with the 22 * distribution. 23 * 24 * 3. The end-user documentation included with the redistribution, 25 * if any, must include the following acknowledgment: 26 * "This product includes software developed by the 27 * Apache Software Foundation (http://www.apache.org/)." 28 * Alternately, this acknowledgment may appear in the software itself, 29 * if and wherever such third-party acknowledgments normally appear. 30 * 31 * 4. The names "Xerces" and "Apache Software Foundation" must 32 * not be used to endorse or promote products derived from this 33 * software without prior written permission. For written 34 * permission, please contact apache@apache.org. 35 * 36 * 5. Products derived from this software may not be called "Apache", 37 * nor may "Apache" appear in their name, without prior written 38 * permission of the Apache Software Foundation. 39 * 40 * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED 41 * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES 42 * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 43 * DISCLAIMED. IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR 44 * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 45 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 46 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF 47 * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND 48 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 49 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT 50 * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 51 * SUCH DAMAGE. 52 * ==================================================================== 53 * 54 * This software consists of voluntary contributions made by many 55 * individuals on behalf of the Apache Software Foundation and was 56 * originally based on software copyright (c) 1999, International 57 * Business Machines, Inc., http://www.apache.org. For more 58 * information on the Apache Software Foundation, please see 59 * <http://www.apache.org/>. 60 */ 61 62package com.sun.org.apache.xerces.internal.impl; 63 64import java.io.IOException; 65import com.sun.org.apache.xerces.internal.xni.Augmentations; 66import com.sun.org.apache.xerces.internal.xni.XMLResourceIdentifier; 67import com.sun.org.apache.xerces.internal.xni.XNIException; 68 69/** 70 * The entity handler interface defines methods to report information 71 * about the start and end of entities. 72 * 73 * @xerces.internal 74 * 75 * @see com.sun.org.apache.xerces.internal.impl.XMLEntityScanner 76 * 77 * @author Andy Clark, IBM 78 * 79 */ 80public interface XMLEntityHandler { 81 82 // 83 // XMLEntityHandler methods 84 // 85 86 /** 87 * This method notifies of the start of an entity. The DTD has the 88 * pseudo-name of "[dtd]" parameter entity names start with '%'; and 89 * general entities are just specified by their name. 90 * 91 * @param name The name of the entity. 92 * @param identifier The resource identifier. 93 * @param encoding The auto-detected IANA encoding name of the entity 94 * stream. This value will be null in those situations 95 * where the entity encoding is not auto-detected (e.g. 96 * internal entities or a document entity that is 97 * parsed from a java.io.Reader). 98 * @param augs Additional information that may include infoset augmentations 99 * 100 * @throws XNIException Thrown by handler to signal an error. 101 */ 102 public void startEntity(String name, 103 XMLResourceIdentifier identifier, 104 String encoding, Augmentations augs) throws XNIException; 105 106 /** 107 * This method notifies the end of an entity. The DTD has the pseudo-name 108 * of "[dtd]" parameter entity names start with '%'; and general entities 109 * are just specified by their name. 110 * 111 * @param name The name of the entity. 112 * @param augs Additional information that may include infoset augmentations 113 * 114 * @throws IOException This exception might be thrown when there is premature end of entity 115 * @throws XNIException Thrown by handler to signal an error. 116 */ 117 public void endEntity(String name, Augmentations augs) throws IOException, XNIException; 118 119} // interface XMLEntityHandler 120