View Javadoc

1   /*
2    * Copyright (C) 2004 TiongHiang Lee
3    *
4    * This library is free software; you can redistribute it and/or
5    * modify it under the terms of the GNU Lesser General Public
6    * License as published by the Free Software Foundation; either
7    * version 2.1 of the License, or (at your option) any later version.
8    *
9    * This library is distributed in the hope that it will be useful,
10   * but WITHOUT ANY WARRANTY; without even the implied warranty of
11   * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12   * Lesser General Public License for more details.
13   *
14   * You should have received a copy of the GNU Lesser General Public
15   * License along with this library; if not,  write to the Free Software
16   * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
17   *
18   * Email: thlee@thinklient.org
19   */
20  
21  package org.onemind.commons.java.xml.digest;
22  
23  import org.xml.sax.Attributes;
24  import org.xml.sax.SAXException;
25  /***
26   * An element digester digest a particular element inside an xml file in common-digest framework
27   * @author TiongHiang Lee (thlee@thinklient.org)
28   * @version $Id: ElementDigester.java,v 1.3 2005/06/22 22:58:58 thlee Exp $ $Name:  $
29   */
30  public interface ElementDigester
31  {
32      /***
33       * Get the element name
34       * @return the element name
35       */
36      public String getElementName();
37      
38      /***
39       * Start an element with the given attributes
40       * @param handler the handler
41       * @param attr the attributes
42       * @throws SAXException if there's handling exception
43       */
44      public void startDigest(SaxDigesterHandler handler, Attributes attr) throws SAXException;
45  
46      /***
47       * End the element
48       * @param handler the handler
49       * @throws SAXException if there's handling exception
50       */
51      public void endDigest(SaxDigesterHandler handler) throws SAXException;
52  
53      /***
54       * Handle the characters
55       * @param handler the handler
56       * @param chars the characters
57       * @param offset the offset
58       * @param length the length
59       * @throws SAXException if there's parse problem
60       */
61      public void characters(SaxDigesterHandler handler, char[] chars, int offset, int length) throws SAXException;
62  }