Modifier and Type | Class and Description |
---|---|
static class |
EdgeNGramTokenizer.Side
Specifies which side of the input the n-gram should be generated from
|
AttributeSource.AttributeFactory, AttributeSource.State
Modifier and Type | Field and Description |
---|---|
static int |
DEFAULT_MAX_GRAM_SIZE |
static int |
DEFAULT_MIN_GRAM_SIZE |
static EdgeNGramTokenizer.Side |
DEFAULT_SIDE |
Constructor and Description |
---|
EdgeNGramTokenizer(AttributeSource.AttributeFactory factory,
java.io.Reader input,
EdgeNGramTokenizer.Side side,
int minGram,
int maxGram)
Creates EdgeNGramTokenizer that can generate n-grams in the sizes of the given range
|
EdgeNGramTokenizer(AttributeSource.AttributeFactory factory,
java.io.Reader input,
java.lang.String sideLabel,
int minGram,
int maxGram)
Creates EdgeNGramTokenizer that can generate n-grams in the sizes of the given range
|
EdgeNGramTokenizer(AttributeSource source,
java.io.Reader input,
EdgeNGramTokenizer.Side side,
int minGram,
int maxGram)
Creates EdgeNGramTokenizer that can generate n-grams in the sizes of the given range
|
EdgeNGramTokenizer(AttributeSource source,
java.io.Reader input,
java.lang.String sideLabel,
int minGram,
int maxGram)
Creates EdgeNGramTokenizer that can generate n-grams in the sizes of the given range
|
EdgeNGramTokenizer(java.io.Reader input,
EdgeNGramTokenizer.Side side,
int minGram,
int maxGram)
Creates EdgeNGramTokenizer that can generate n-grams in the sizes of the given range
|
EdgeNGramTokenizer(java.io.Reader input,
java.lang.String sideLabel,
int minGram,
int maxGram)
Creates EdgeNGramTokenizer that can generate n-grams in the sizes of the given range
|
Modifier and Type | Method and Description |
---|---|
void |
end()
This method is called by the consumer after the last token has been
consumed, after
TokenStream.incrementToken() returned false
(using the new TokenStream API). |
boolean |
incrementToken()
Returns the next token in the stream, or null at EOS.
|
Token |
next()
Deprecated.
Will be removed in Lucene 3.0. This method is final, as it should
not be overridden. Delegates to the backwards compatibility layer.
|
Token |
next(Token reusableToken)
Deprecated.
Will be removed in Lucene 3.0. This method is final, as it should
not be overridden. Delegates to the backwards compatibility layer.
|
void |
reset()
Resets this stream to the beginning.
|
void |
reset(java.io.Reader input)
Expert: Reset the tokenizer to a new reader.
|
close, correctOffset
getOnlyUseNewAPI, setOnlyUseNewAPI
addAttribute, addAttributeImpl, captureState, clearAttributes, cloneAttributes, equals, getAttribute, getAttributeClassesIterator, getAttributeFactory, getAttributeImplsIterator, hasAttribute, hasAttributes, hashCode, restoreState, toString
public static final EdgeNGramTokenizer.Side DEFAULT_SIDE
public static final int DEFAULT_MAX_GRAM_SIZE
public static final int DEFAULT_MIN_GRAM_SIZE
public EdgeNGramTokenizer(java.io.Reader input, EdgeNGramTokenizer.Side side, int minGram, int maxGram)
input
- Reader
holding the input to be tokenizedside
- the EdgeNGramTokenizer.Side
from which to chop off an n-gramminGram
- the smallest n-gram to generatemaxGram
- the largest n-gram to generatepublic EdgeNGramTokenizer(AttributeSource source, java.io.Reader input, EdgeNGramTokenizer.Side side, int minGram, int maxGram)
source
- AttributeSource
to useinput
- Reader
holding the input to be tokenizedside
- the EdgeNGramTokenizer.Side
from which to chop off an n-gramminGram
- the smallest n-gram to generatemaxGram
- the largest n-gram to generatepublic EdgeNGramTokenizer(AttributeSource.AttributeFactory factory, java.io.Reader input, EdgeNGramTokenizer.Side side, int minGram, int maxGram)
factory
- AttributeSource.AttributeFactory
to useinput
- Reader
holding the input to be tokenizedside
- the EdgeNGramTokenizer.Side
from which to chop off an n-gramminGram
- the smallest n-gram to generatemaxGram
- the largest n-gram to generatepublic EdgeNGramTokenizer(java.io.Reader input, java.lang.String sideLabel, int minGram, int maxGram)
input
- Reader
holding the input to be tokenizedsideLabel
- the name of the EdgeNGramTokenizer.Side
from which to chop off an n-gramminGram
- the smallest n-gram to generatemaxGram
- the largest n-gram to generatepublic EdgeNGramTokenizer(AttributeSource source, java.io.Reader input, java.lang.String sideLabel, int minGram, int maxGram)
source
- AttributeSource
to useinput
- Reader
holding the input to be tokenizedsideLabel
- the name of the EdgeNGramTokenizer.Side
from which to chop off an n-gramminGram
- the smallest n-gram to generatemaxGram
- the largest n-gram to generatepublic EdgeNGramTokenizer(AttributeSource.AttributeFactory factory, java.io.Reader input, java.lang.String sideLabel, int minGram, int maxGram)
factory
- AttributeSource.AttributeFactory
to useinput
- Reader
holding the input to be tokenizedsideLabel
- the name of the EdgeNGramTokenizer.Side
from which to chop off an n-gramminGram
- the smallest n-gram to generatemaxGram
- the largest n-gram to generatepublic final boolean incrementToken() throws java.io.IOException
incrementToken
in class TokenStream
Note that this method will be defined abstract in Lucene 3.0.
java.io.IOException
public final void end()
TokenStream
TokenStream.incrementToken()
returned false
(using the new TokenStream
API). Streams implementing the old API
should upgrade to use this feature.
This method can be used to perform any end-of-stream operations, such as
setting the final offset of a stream. The final offset of a stream might
differ from the offset of the last token eg in case one or more whitespaces
followed after the last token, but a WhitespaceTokenizer
was used.end
in class TokenStream
public final Token next(Token reusableToken) throws java.io.IOException
TokenStream
This implicitly defines a "contract" between consumers (callers of this method) and producers (implementations of this method that are the source for tokens):
Token
before calling this method again.Token.clear()
before setting the fields in
it and returning itToken
after it
has been returned: the caller may arbitrarily change it. If the producer
needs to hold onto the Token
for subsequent calls, it must clone()
it before storing it. Note that a TokenFilter
is considered a
consumer.next
in class TokenStream
reusableToken
- a Token
that may or may not be used to return;
this parameter should never be null (the callee is not required to
check for null before using it, but it is a good idea to assert that
it is not null.)Token
in the stream or null if end-of-stream was hitjava.io.IOException
public final Token next() throws java.io.IOException
TokenStream
Token
in the stream, or null at EOS.next
in class TokenStream
java.io.IOException
public void reset(java.io.Reader input) throws java.io.IOException
Tokenizer
public void reset() throws java.io.IOException
TokenStream
TokenStream.reset()
is not needed for
the standard indexing process. However, if the tokens of a
TokenStream
are intended to be consumed more than once, it is
necessary to implement TokenStream.reset()
. Note that if your TokenStream
caches tokens and feeds them back again after a reset, it is imperative
that you clone the tokens when you store them away (on the first pass) as
well as when you return them (on future passes after TokenStream.reset()
).reset
in class TokenStream
java.io.IOException
Copyright © 2000-2019 Apache Software Foundation. All Rights Reserved.