KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > net > killingar > wiki > Parser


1 /* Copyright 2000-2005 Anders Hovmöller
2  *
3  * The person or persons who have associated their work with
4  * this document (the "Dedicator") hereby dedicate the entire
5  * copyright in the work of authorship identified below (the
6  * "Work") to the public domain.
7  *
8  * Dedicator makes this dedication for the benefit of the
9  * public at large and to the detriment of Dedicator's heirs
10  * and successors. Dedicator intends this dedication to be an
11  * overt act of relinquishment in perpetuity of all present
12  * and future rights under copyright law, whether vested or
13  * contingent, in the Work. Dedicator understands that such
14  * relinquishment of all rights includes the relinquishment of
15  * all rights to enforce (by lawsuit or otherwise) those
16  * copyrights in the Work.
17  *
18  * Dedicator recognizes that, once placed in the public
19  * domain, the Work may be freely reproduced, distributed,
20  * transmitted, used, modified, built upon, or otherwise
21  * exploited by anyone for any purpose, commercial or non-
22  * commercial, and in any way, including by methods that have
23  * not yet been invented or conceived.
24  */

25
26 package net.killingar.wiki;
27
28 import java.util.NoSuchElementException JavaDoc;
29
30 public interface Parser
31 {
32     /**
33      * Sets the object to parse.
34      */

35     public void setSource(Object JavaDoc o);
36
37     /**
38      *
39      * This method serves 2 purposes, it checks/prepares the next
40      * parsing action it also lets you know if there are
41      * additional nodes available.
42      *
43      * Please always call this method before Next() is called, otherwise
44      * unpredictable results may occur.
45      *
46      *
47      * Returns true if there is Node available otherwise
48      * false is returned.
49      *
50      * @return a boolean
51      *
52      **/

53     public boolean hasMore();
54
55     /**
56      * Returns a template node. Template nodes can be tested for there
57      * instance type which gives you finer grained scope on the contents of the
58      * node.
59      *
60      * What a template node will contain is entirely arbitry to the implementor
61      * of the concrete class of this interface.
62      *
63      * @return a TemplateNode
64      *
65      */

66     public Node next()
67         throws NoSuchElementException JavaDoc, ParserException;
68
69 }
70
Popular Tags