org.gcube.indexmanagement.fulltextindexlookup
Class FullTextIndexLookupResource

java.lang.Object
  extended by IndexLookupWSResource
      extended by org.gcube.indexmanagement.fulltextindexlookup.FullTextIndexLookupResource

public class FullTextIndexLookupResource
extends IndexLookupWSResource

A class containing stateful information regarding an Index replication.

Version:
0.1

Constructor Summary
FullTextIndexLookupResource()
          Empty constructor.
 
Method Summary
 void addSubPartition(org.apache.axis.message.addressing.EndpointReferenceType SubPartitionEPR)
           
 void clearIndex()
           
 java.lang.String createStatistics()
          Creates per term statistics for the entire index.
 boolean expandIndex(int newPartitionStartPoint)
          Expands the index with a new partition.
 java.lang.String getContentType()
           
 java.lang.String getIndexFormat()
           
 java.lang.Boolean getIsComplete()
           
 java.lang.Boolean getIsHeadPartition()
           
 org.apache.axis.message.addressing.EndpointReferenceType[] getSubPartitions()
           
 boolean isReadyToDie()
           
 void mergeAddition(java.io.File deltaIndex, java.lang.String cmsID, int deltaDocCount)
          Merges the contents of a Addition DeltaFile into the local index replication (add documents).
 void mergeDeletion(java.io.File deletionFile, java.lang.String fileID, int documentCount)
          Merges the contents of a Deletion DeltaFile into the local index replication (delete documents).
 void onLoad(java.io.ObjectInputStream ois, boolean firstLoad)
           
 void onLookupNotificationReceived(org.w3c.dom.Element message)
           
 void onResourceRemoval()
           
 void onStore(java.io.ObjectOutputStream oos)
           
 java.lang.String query(SearchQuery query)
          Performs a query on the local index.
 void setContentType(java.lang.String contenttype)
           
 void setIndexFormat(java.lang.String indexformat)
           
 void setIndexTypeName(java.lang.String indextypename)
           
 void setIsComplete(java.lang.Boolean IsComplete)
           
 void setIsHeadPartition(java.lang.Boolean IsHeadPartition)
           
 void setSubPartitions(org.apache.axis.message.addressing.EndpointReferenceType[] SubPartitions)
           
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

FullTextIndexLookupResource

public FullTextIndexLookupResource()
Empty constructor. Initialization is done throught the initialize(...) method.

Method Detail

setSubPartitions

public void setSubPartitions(org.apache.axis.message.addressing.EndpointReferenceType[] SubPartitions)
                      throws java.lang.Exception
Throws:
java.lang.Exception

addSubPartition

public void addSubPartition(org.apache.axis.message.addressing.EndpointReferenceType SubPartitionEPR)
                     throws java.lang.Exception
Throws:
java.lang.Exception

setIsHeadPartition

public void setIsHeadPartition(java.lang.Boolean IsHeadPartition)
                        throws java.lang.Exception
Throws:
java.lang.Exception

setIsComplete

public void setIsComplete(java.lang.Boolean IsComplete)
                   throws java.lang.Exception
Throws:
java.lang.Exception

setContentType

public void setContentType(java.lang.String contenttype)
                    throws java.lang.Exception
Throws:
java.lang.Exception

setIndexFormat

public void setIndexFormat(java.lang.String indexformat)
                    throws java.lang.Exception
Throws:
java.lang.Exception

setIndexTypeName

public void setIndexTypeName(java.lang.String indextypename)
                      throws java.lang.Exception
Throws:
java.lang.Exception

getIndexFormat

public java.lang.String getIndexFormat()

getContentType

public java.lang.String getContentType()

getIsHeadPartition

public java.lang.Boolean getIsHeadPartition()

getIsComplete

public java.lang.Boolean getIsComplete()

getSubPartitions

public org.apache.axis.message.addressing.EndpointReferenceType[] getSubPartitions()

onStore

public void onStore(java.io.ObjectOutputStream oos)
             throws java.lang.Exception
Throws:
java.lang.Exception

onLoad

public void onLoad(java.io.ObjectInputStream ois,
                   boolean firstLoad)
            throws java.lang.Exception
Throws:
java.lang.Exception

query

public java.lang.String query(SearchQuery query)
                       throws java.rmi.RemoteException
Performs a query on the local index. If this is a head-partition, sub-partitions will also be queried.

Parameters:
queryString - String - the query to be performed (currently using lucene syntax)
Returns:
String - representation of the EPR for a resultset service which holds the results of the query.
Throws:
java.rmi.RemoteException

expandIndex

public boolean expandIndex(int newPartitionStartPoint)
                    throws java.lang.Exception
Expands the index with a new partition.

Parameters:
newPartitionStartPoint - int - the starting point of the new partition (delta file number/idx)
Returns:
boolean - true if expansion was successful
Throws:
java.lang.Exception

createStatistics

public java.lang.String createStatistics()
                                  throws IndexException
Creates per term statistics for the entire index. Statistics are stored in an xml file comressed in a zip archive.

Returns:
String - the EPR of a BLOB ResultSet containing the statistics file
Throws:
IndexException

mergeAddition

public void mergeAddition(java.io.File deltaIndex,
                          java.lang.String cmsID,
                          int deltaDocCount)
                   throws IndexException
Merges the contents of a Addition DeltaFile into the local index replication (add documents). Required by the DeltaFileMerger interface.

Parameters:
deltaIndex - File - the DeltaFile to be merged into the local index replication
cmsID - String - the ID the retrieved file has in CMS
Throws:
IndexException
See Also:
org.gcube.indexmanagement.storagehandling.DeltaFileMerger

clearIndex

public void clearIndex()
                throws IndexException
Throws:
IndexException

mergeDeletion

public void mergeDeletion(java.io.File deletionFile,
                          java.lang.String fileID,
                          int documentCount)
                   throws IndexException
Merges the contents of a Deletion DeltaFile into the local index replication (delete documents). Required by the DeltaFileMerger interface.

Parameters:
deletionFile - File - the DeltaFile to be merged into the local index replication
fileID - String - the ID the retrieved file has in Storage
documentCount - int - the number if documents present in the DeltaFile
Throws:
IndexException
See Also:
org.diligentproject.indexservice.storagehandling.DeltaFileMerger

onResourceRemoval

public void onResourceRemoval()

isReadyToDie

public boolean isReadyToDie()

onLookupNotificationReceived

public void onLookupNotificationReceived(org.w3c.dom.Element message)