org.apache.lucene.analysis.reverse
Class ReverseStringFilter

java.lang.Object
  extended by org.apache.lucene.util.AttributeSource
      extended by org.apache.lucene.analysis.TokenStream
          extended by org.apache.lucene.analysis.TokenFilter
              extended by org.apache.lucene.analysis.reverse.ReverseStringFilter
All Implemented Interfaces:
Closeable

public final class ReverseStringFilter
extends TokenFilter

Reverse token string, for example "country" => "yrtnuoc".

If marker is supplied, then tokens will be also prepended by that character. For example, with a marker of \u0001, "country" => "\u0001yrtnuoc". This is useful when implementing efficient leading wildcards search.

You must specify the required Version compatibility when creating ReverseStringFilter, or when using any of its static methods:


Nested Class Summary
 
Nested classes/interfaces inherited from class org.apache.lucene.util.AttributeSource
AttributeSource.AttributeFactory, AttributeSource.State
 
Field Summary
static char INFORMATION_SEPARATOR_MARKER
          Example marker character: U+001F (INFORMATION SEPARATOR ONE)
static char PUA_EC00_MARKER
          Example marker character: U+EC00 (PRIVATE USE AREA: EC00)
static char RTL_DIRECTION_MARKER
          Example marker character: U+200F (RIGHT-TO-LEFT MARK)
static char START_OF_HEADING_MARKER
          Example marker character: U+0001 (START OF HEADING)
 
Fields inherited from class org.apache.lucene.analysis.TokenFilter
input
 
Constructor Summary
ReverseStringFilter(TokenStream in)
          Deprecated. use ReverseStringFilter(Version, TokenStream) instead. This constructor will be removed in Lucene 4.0
ReverseStringFilter(TokenStream in, char marker)
          Deprecated. use ReverseStringFilter(Version, TokenStream, char) instead. This constructor will be removed in Lucene 4.0
ReverseStringFilter(Version matchVersion, TokenStream in)
          Create a new ReverseStringFilter that reverses all tokens in the supplied TokenStream.
ReverseStringFilter(Version matchVersion, TokenStream in, char marker)
          Create a new ReverseStringFilter that reverses and marks all tokens in the supplied TokenStream.
 
Method Summary
 boolean incrementToken()
          Consumers (i.e., IndexWriter) use this method to advance the stream to the next token.
static void reverse(char[] buffer)
          Deprecated. use reverse(Version, char[]) instead. This method will be removed in Lucene 4.0
static void reverse(char[] buffer, int len)
          Deprecated. use reverse(Version, char[], int) instead. This method will be removed in Lucene 4.0
static void reverse(char[] buffer, int start, int len)
          Deprecated. use reverse(Version, char[], int, int) instead. This method will be removed in Lucene 4.0
static String reverse(String input)
          Deprecated. use reverse(Version, String) instead. This method will be removed in Lucene 4.0
static void reverse(Version matchVersion, char[] buffer)
          Reverses the given input buffer in-place
static void reverse(Version matchVersion, char[] buffer, int len)
          Partially reverses the given input buffer in-place from offset 0 up to the given length.
static void reverse(Version matchVersion, char[] buffer, int start, int len)
          Partially reverses the given input buffer in-place from the given offset up to the given length.
static String reverse(Version matchVersion, String input)
          Reverses the given input string
 
Methods inherited from class org.apache.lucene.analysis.TokenFilter
close, end, reset
 
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
 

Field Detail

START_OF_HEADING_MARKER

public static final char START_OF_HEADING_MARKER
Example marker character: U+0001 (START OF HEADING)

See Also:
Constant Field Values

INFORMATION_SEPARATOR_MARKER

public static final char INFORMATION_SEPARATOR_MARKER
Example marker character: U+001F (INFORMATION SEPARATOR ONE)

See Also:
Constant Field Values

PUA_EC00_MARKER

public static final char PUA_EC00_MARKER
Example marker character: U+EC00 (PRIVATE USE AREA: EC00)

See Also:
Constant Field Values

RTL_DIRECTION_MARKER

public static final char RTL_DIRECTION_MARKER
Example marker character: U+200F (RIGHT-TO-LEFT MARK)

See Also:
Constant Field Values
Constructor Detail

ReverseStringFilter

@Deprecated
public ReverseStringFilter(TokenStream in)
Deprecated. use ReverseStringFilter(Version, TokenStream) instead. This constructor will be removed in Lucene 4.0

Create a new ReverseStringFilter that reverses all tokens in the supplied TokenStream.

The reversed tokens will not be marked.

Parameters:
in - TokenStream to filter

ReverseStringFilter

@Deprecated
public ReverseStringFilter(TokenStream in,
                                      char marker)
Deprecated. use ReverseStringFilter(Version, TokenStream, char) instead. This constructor will be removed in Lucene 4.0

Create a new ReverseStringFilter that reverses and marks all tokens in the supplied TokenStream.

The reversed tokens will be prepended (marked) by the marker character.

Parameters:
in - TokenStream to filter
marker - A character used to mark reversed tokens

ReverseStringFilter

public ReverseStringFilter(Version matchVersion,
                           TokenStream in)
Create a new ReverseStringFilter that reverses all tokens in the supplied TokenStream.

The reversed tokens will not be marked.

Parameters:
matchVersion - See above
in - TokenStream to filter

ReverseStringFilter

public ReverseStringFilter(Version matchVersion,
                           TokenStream in,
                           char marker)
Create a new ReverseStringFilter that reverses and marks all tokens in the supplied TokenStream.

The reversed tokens will be prepended (marked) by the marker character.

Parameters:
matchVersion - See above
in - TokenStream to filter
marker - A character used to mark reversed tokens
Method Detail

incrementToken

public boolean incrementToken()
                       throws IOException
Description copied from class: TokenStream
Consumers (i.e., IndexWriter) use this method to advance the stream to the next token. Implementing classes must implement this method and update the appropriate AttributeImpls with the attributes of the next token.

The producer must make no assumptions about the attributes after the method has been returned: the caller may arbitrarily change it. If the producer needs to preserve the state for subsequent calls, it can use AttributeSource.captureState() to create a copy of the current attribute state.

This method is called for every token of a document, so an efficient implementation is crucial for good performance. To avoid calls to AttributeSource.addAttribute(Class) and AttributeSource.getAttribute(Class), references to all AttributeImpls that this stream uses should be retrieved during instantiation.

To ensure that filters and consumers know which attributes are available, the attributes must be added during instantiation. Filters and consumers are not required to check for availability of attributes in TokenStream.incrementToken().

Specified by:
incrementToken in class TokenStream
Returns:
false for end of stream; true otherwise
Throws:
IOException

reverse

@Deprecated
public static String reverse(String input)
Deprecated. use reverse(Version, String) instead. This method will be removed in Lucene 4.0

Reverses the given input string

Parameters:
input - the string to reverse
Returns:
the given input string in reversed order

reverse

public static String reverse(Version matchVersion,
                             String input)
Reverses the given input string

Parameters:
matchVersion - See above
input - the string to reverse
Returns:
the given input string in reversed order

reverse

@Deprecated
public static void reverse(char[] buffer)
Deprecated. use reverse(Version, char[]) instead. This method will be removed in Lucene 4.0

Reverses the given input buffer in-place

Parameters:
buffer - the input char array to reverse

reverse

public static void reverse(Version matchVersion,
                           char[] buffer)
Reverses the given input buffer in-place

Parameters:
matchVersion - See above
buffer - the input char array to reverse

reverse

@Deprecated
public static void reverse(char[] buffer,
                                      int len)
Deprecated. use reverse(Version, char[], int) instead. This method will be removed in Lucene 4.0

Partially reverses the given input buffer in-place from offset 0 up to the given length.

Parameters:
buffer - the input char array to reverse
len - the length in the buffer up to where the buffer should be reversed

reverse

public static void reverse(Version matchVersion,
                           char[] buffer,
                           int len)
Partially reverses the given input buffer in-place from offset 0 up to the given length.

Parameters:
matchVersion - See above
buffer - the input char array to reverse
len - the length in the buffer up to where the buffer should be reversed

reverse

@Deprecated
public static void reverse(char[] buffer,
                                      int start,
                                      int len)
Deprecated. use reverse(Version, char[], int, int) instead. This method will be removed in Lucene 4.0

Partially reverses the given input buffer in-place from the given offset up to the given length.

Parameters:
buffer - the input char array to reverse
start - the offset from where to reverse the buffer
len - the length in the buffer up to where the buffer should be reversed

reverse

public static void reverse(Version matchVersion,
                           char[] buffer,
                           int start,
                           int len)
Partially reverses the given input buffer in-place from the given offset up to the given length.

Parameters:
matchVersion - See above
buffer - the input char array to reverse
start - the offset from where to reverse the buffer
len - the length in the buffer up to where the buffer should be reversed


Copyright © 2000-2011 Apache Software Foundation. All Rights Reserved.