org.apache.jackrabbit.core.query.lucene
Class Util

java.lang.Object
  extended by org.apache.jackrabbit.core.query.lucene.Util

public class Util
extends Object

Util provides various static utility methods.


Constructor Summary
Util()
           
 
Method Summary
static void closeOrRelease(org.apache.lucene.index.IndexReader reader)
          Depending on the type of the reader this method either closes or releases the reader.
static int compare(Comparable c1, Comparable c2)
          Compares values c1 and c2.
static int compare(Value v1, Value v2)
          Compares the two values.
static IOException createIOException(Throwable t)
          Creates an IOException with t as its cause.
static org.apache.lucene.search.Query createMatchAllQuery(String name, IndexFormatVersion version)
          Depending on the index format this method returns a query that matches all nodes that have a property with a given name.
static Pattern createRegexp(String likePattern)
          Creates a regexp from likePattern.
static void disposeDocument(org.apache.lucene.document.Document old)
          Disposes the document old.
static Comparable getComparable(InternalValue value)
          Returns a comparable for the internal value.
static Comparable getComparable(Value value)
          Returns a comparable for the internal value.
static long getLength(InternalValue value)
          Returns length of the internal value.
static boolean isDocumentReady(org.apache.lucene.document.Document doc)
          Returns true if the document is ready to be added to the index.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Util

public Util()
Method Detail

disposeDocument

public static void disposeDocument(org.apache.lucene.document.Document old)
Disposes the document old. Closes any potentially open readers held by the document.

Parameters:
old - the document to dispose.

isDocumentReady

public static boolean isDocumentReady(org.apache.lucene.document.Document doc)
Returns true if the document is ready to be added to the index. That is all text extractors have finished their work.

Parameters:
doc - the document to check.
Returns:
true if the document is ready; false otherwise.

createMatchAllQuery

public static org.apache.lucene.search.Query createMatchAllQuery(String name,
                                                                 IndexFormatVersion version)
Depending on the index format this method returns a query that matches all nodes that have a property with a given name.

Parameters:
name - the property name.
version - the index format version.
Returns:
Query that matches all nodes that have a property with the given name.

createIOException

public static IOException createIOException(Throwable t)
Creates an IOException with t as its cause.

Parameters:
t - the cause.

closeOrRelease

public static void closeOrRelease(org.apache.lucene.index.IndexReader reader)
                           throws IOException
Depending on the type of the reader this method either closes or releases the reader. The reader is released if it implements ReleaseableIndexReader.

Parameters:
reader - the index reader to close or release.
Throws:
IOException - if an error occurs while closing or releasing the index reader.

getComparable

public static Comparable getComparable(InternalValue value)
                                throws RepositoryException
Returns a comparable for the internal value.

Parameters:
value - an internal value.
Returns:
a comparable for the given value.
Throws:
RepositoryException - if retrieving the Comparable fails.

getComparable

public static Comparable getComparable(Value value)
                                throws ValueFormatException,
                                       RepositoryException
Returns a comparable for the internal value.

Parameters:
value - an internal value.
Returns:
a comparable for the given value.
Throws:
ValueFormatException - if the given value cannot be converted into a comparable (i.e. unsupported type).
RepositoryException - if an error occurs while converting the value.

compare

public static int compare(Comparable c1,
                          Comparable c2)
Compares values c1 and c2. If the values have differing types, then the order is defined on the type itself by calling compareTo() on the respective type class names.

Parameters:
c1 - the first value.
c2 - the second value.
Returns:
a negative integer if c1 should come before c2
a positive integer if c1 should come after c2
0 if they are equal.

compare

public static int compare(Value v1,
                          Value v2)
                   throws ValueFormatException,
                          RepositoryException
Compares the two values. If the values have differing types, then an attempt is made to convert the second value into the type of the first value.

Comparison of binary values is not supported.

Parameters:
v1 - the first value.
v2 - the second value.
Returns:
result of the comparison as specified in Comparable.compareTo(Object).
Throws:
ValueFormatException - if the given value cannot be converted into a comparable (i.e. unsupported type).
RepositoryException - if an error occurs while converting the value.

createRegexp

public static Pattern createRegexp(String likePattern)
Creates a regexp from likePattern.

Parameters:
likePattern - the pattern.
Returns:
the regular expression Pattern.

getLength

public static long getLength(InternalValue value)
Returns length of the internal value.

Parameters:
value - a value.
Returns:
the length of the internal value or -1 if the length cannot be determined.


Copyright © 2004-2010 The Apache Software Foundation. All Rights Reserved.