|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.apache.lucene.util.AttributeSource
org.apache.lucene.analysis.TokenStream
org.apache.lucene.analysis.TokenFilter
org.apache.solr.analysis.BufferedTokenStream
AttributeSource.captureState()
and AttributeSource.restoreState(State)
which support all attributes.
@Deprecated public abstract class BufferedTokenStream
Handles input and output buffering of TokenStream
// Example of a class implementing the rule "A" "B" => "Q" "B" class MyTokenStream extends BufferedTokenStream { public MyTokenStream(TokenStream input) {super(input);} protected Token process(Token t) throws IOException { if ("A".equals(t.termText())) { Token t2 = read(); if (t2!=null && "B".equals(t2.termText())) t.setTermText("Q"); if (t2!=null) pushBack(t2); } return t; } } // Example of a class implementing "A" "B" => "A" "A" "B" class MyTokenStream extends BufferedTokenStream { public MyTokenStream(TokenStream input) {super(input);} protected Token process(Token t) throws IOException { if ("A".equals(t.termText()) && "B".equals(peek(1).termText())) write((Token)t.clone()); return t; } }NOTE: BufferedTokenStream does not clone() any Tokens. This is instead the responsibility of the implementing subclass. In the "A" "B" => "A" "A" "B" example above, the subclass must clone the additional "A" it creates.
Nested Class Summary |
---|
Nested classes/interfaces inherited from class org.apache.lucene.util.AttributeSource |
---|
AttributeSource.AttributeFactory, AttributeSource.State |
Field Summary |
---|
Fields inherited from class org.apache.lucene.analysis.TokenFilter |
---|
input |
Constructor Summary | |
---|---|
BufferedTokenStream(TokenStream input)
Deprecated. |
Method Summary | |
---|---|
boolean |
incrementToken()
Deprecated. |
protected Iterable<Token> |
output()
Deprecated. Provides direct Iterator access to the buffered output stream. |
protected Token |
peek(int n)
Deprecated. Peek n tokens ahead in the buffered input stream, without modifying the stream. |
protected abstract Token |
process(Token t)
Deprecated. Process a token. |
protected void |
pushBack(Token t)
Deprecated. Push a token back into the buffered input stream, such that it will be returned by a future call to read() |
protected Token |
read()
Deprecated. Read a token from the buffered input stream. |
void |
reset()
Deprecated. |
protected void |
write(Token t)
Deprecated. Write a token to the buffered output stream |
Methods inherited from class org.apache.lucene.analysis.TokenFilter |
---|
close, end |
Methods inherited from class org.apache.lucene.util.AttributeSource |
---|
addAttribute, addAttributeImpl, captureState, clearAttributes, cloneAttributes, copyTo, equals, getAttribute, getAttributeClassesIterator, getAttributeFactory, getAttributeImplsIterator, hasAttribute, hasAttributes, hashCode, reflectAsString, reflectWith, restoreState, toString |
Methods inherited from class java.lang.Object |
---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
Constructor Detail |
---|
public BufferedTokenStream(TokenStream input)
Method Detail |
---|
protected abstract Token process(Token t) throws IOException
IOException
public final boolean incrementToken() throws IOException
incrementToken
in class TokenStream
IOException
protected Token read() throws IOException
IOException
protected void pushBack(Token t)
read()
protected Token peek(int n) throws IOException
n
- Number of tokens into the input stream to peek, 1 based ...
0 is invalid
read()
from the stream.
IOException
protected void write(Token t)
protected Iterable<Token> output()
public void reset() throws IOException
reset
in class TokenFilter
IOException
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |