Package org.apache.lucene.util.graph
Class GraphTokenStreamFiniteStrings
- java.lang.Object
-
- org.apache.lucene.util.graph.GraphTokenStreamFiniteStrings
-
public final class GraphTokenStreamFiniteStrings extends Object
Consumes a TokenStream and creates anAutomatonwhere the transition labels are terms from theTermToBytesRefAttribute. This class also provides helpers to explore the different paths of theAutomaton.
-
-
Constructor Summary
Constructors Constructor Description GraphTokenStreamFiniteStrings(TokenStream in)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description int[]articulationPoints()Returns the articulation points (or cut vertices) of the graph: https://en.wikipedia.org/wiki/Biconnected_componentIterator<TokenStream>getFiniteStrings()Get all finite strings from the automaton.Iterator<TokenStream>getFiniteStrings(int startState, int endState)Get all finite strings that start atstartStateand end atendState.List<AttributeSource>getTerms(int state)Returns the list of tokens that start at the provided stateTerm[]getTerms(String field, int state)Returns the list of terms that start at the provided statebooleanhasSidePath(int state)Returns whether the provided state is the start of multiple side paths of different length (eg: new york, ny)
-
-
-
Constructor Detail
-
GraphTokenStreamFiniteStrings
public GraphTokenStreamFiniteStrings(TokenStream in) throws IOException
- Throws:
IOException
-
-
Method Detail
-
hasSidePath
public boolean hasSidePath(int state)
Returns whether the provided state is the start of multiple side paths of different length (eg: new york, ny)
-
getTerms
public List<AttributeSource> getTerms(int state)
Returns the list of tokens that start at the provided state
-
getTerms
public Term[] getTerms(String field, int state)
Returns the list of terms that start at the provided state
-
getFiniteStrings
public Iterator<TokenStream> getFiniteStrings() throws IOException
Get all finite strings from the automaton.- Throws:
IOException
-
getFiniteStrings
public Iterator<TokenStream> getFiniteStrings(int startState, int endState)
Get all finite strings that start atstartStateand end atendState.
-
articulationPoints
public int[] articulationPoints()
Returns the articulation points (or cut vertices) of the graph: https://en.wikipedia.org/wiki/Biconnected_component
-
-