TokenStream.java
01 package gate.creole.annic.apache.lucene.analysis;
02 
03 /**
04  * Copyright 2004 The Apache Software Foundation
05  *
06  * Licensed under the Apache License, Version 2.0 (the "License");
07  * you may not use this file except in compliance with the License.
08  * You may obtain a copy of the License at
09  *
10  *     http://www.apache.org/licenses/LICENSE-2.0
11  *
12  * Unless required by applicable law or agreed to in writing, software
13  * distributed under the License is distributed on an "AS IS" BASIS,
14  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15  * See the License for the specific language governing permissions and
16  * limitations under the License.
17  */
18 
19 import java.io.IOException;
20 
21 /** A TokenStream enumerates the sequence of tokens, either from
22   fields of a document or from query text.
23   <p>
24   This is an abstract class.  Concrete subclasses are:
25   <ul>
26   <li>{@link Tokenizer}, a TokenStream
27   whose input is a Reader; and
28   <li>{@link TokenFilter}, a TokenStream
29   whose input is another TokenStream.
30   </ul>
31   */
32 
33 public abstract class TokenStream {
34   /** Returns the next token in the stream, or null at EOS. */
35   public abstract Token next() throws IOException;
36 
37   /** Releases resources associated with this stream. */
38   public void close() throws IOException {}
39 }