|
||||||||||
| 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()
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 |
|---|
org.apache.lucene.util.AttributeSource.AttributeFactory, org.apache.lucene.util.AttributeSource.State |
| Field Summary |
|---|
| Fields inherited from class org.apache.lucene.analysis.TokenFilter |
|---|
input |
| Constructor Summary | |
|---|---|
BufferedTokenStream(org.apache.lucene.analysis.TokenStream input)
Deprecated. |
|
| Method Summary | |
|---|---|
boolean |
incrementToken()
Deprecated. |
protected java.lang.Iterable<org.apache.lucene.analysis.Token> |
output()
Deprecated. Provides direct Iterator access to the buffered output stream. |
protected org.apache.lucene.analysis.Token |
peek(int n)
Deprecated. Peek n tokens ahead in the buffered input stream, without modifying the stream. |
protected abstract org.apache.lucene.analysis.Token |
process(org.apache.lucene.analysis.Token t)
Deprecated. Process a token. |
protected void |
pushBack(org.apache.lucene.analysis.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 org.apache.lucene.analysis.Token |
read()
Deprecated. Read a token from the buffered input stream. |
void |
reset()
Deprecated. |
protected void |
write(org.apache.lucene.analysis.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, equals, getAttribute, getAttributeClassesIterator, getAttributeFactory, getAttributeImplsIterator, hasAttribute, hasAttributes, hashCode, restoreState, toString |
| Methods inherited from class java.lang.Object |
|---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
| Constructor Detail |
|---|
public BufferedTokenStream(org.apache.lucene.analysis.TokenStream input)
| Method Detail |
|---|
protected abstract org.apache.lucene.analysis.Token process(org.apache.lucene.analysis.Token t)
throws java.io.IOException
java.io.IOException
public final boolean incrementToken()
throws java.io.IOException
incrementToken in class org.apache.lucene.analysis.TokenStreamjava.io.IOException
protected org.apache.lucene.analysis.Token read()
throws java.io.IOException
java.io.IOExceptionprotected void pushBack(org.apache.lucene.analysis.Token t)
read()
protected org.apache.lucene.analysis.Token peek(int n)
throws java.io.IOException
n - Number of tokens into the input stream to peek, 1 based ...
0 is invalid
read() from the stream.
java.io.IOExceptionprotected void write(org.apache.lucene.analysis.Token t)
protected java.lang.Iterable<org.apache.lucene.analysis.Token> output()
public void reset()
throws java.io.IOException
reset in class org.apache.lucene.analysis.TokenFilterjava.io.IOException
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||