com.raritantechnologies.searchApp.dataCollection
Class DataCollectorSearchSource

java.lang.Object
  extended bycom.raritantechnologies.searchApp.SearchSource
      extended bycom.raritantechnologies.searchApp.dataCollection.DataCollectorSearchSource
All Implemented Interfaces:
IConfigurable, IGatewayListener, IJobProcess, IQueryProcessor, IXMLSearchSourceFactory

public class DataCollectorSearchSource
extends SearchSource
implements IQueryProcessor, IXMLSearchSourceFactory, IGatewayListener, IJobProcess

SearchSource used to test data collection pipelines - puts result sets into an InMemorySearchSource or LuceneSearchSource.

Can also be used to keep a temporary cache of data feeds. Adds date field to the results can be configured to query and remove results from InMemorySearchSource as results age.

XML Configuration Template:
  <SourceType name="gatewaySource" type="DataCollectorSource"
            sourceFactoryClass="com.raritantechnologies.searchApp.dataCollection.DataCollectorSearchSource" 
            queryProcessor="com.raritantechnologies.searchApp.dataCollection.DataCollectorSearchSource" >

    <CollectionGateway class="[ implementation of ICollectionGateway]" >

    </CollectionGateway>

    <GatewayOutputProcessor>

    </GatewayOutputProcessor>

    <JobSchedule schedulerClass="[some JobScheduleClass]" >

    </JobSchedule>

    <!-- Optional Jobs that should run after a collection update -->
    <JobProcess>

    </JobProcess>

  </SourceType>
 

Developed by Raritan Technologies .

Author:
Ted Sullivan

Field Summary
 
Fields inherited from class com.raritantechnologies.searchApp.SearchSource
ID_FIELD, IS_FEDERATED, NUMBER_OF_FIELDS, SECURE, SOURCE_NAME, SOURCE_TYPE, TITLE_FIELD, URL_FIELD
 
Constructor Summary
DataCollectorSearchSource()
           
 
Method Summary
 SearchSource[] createSearchSources(org.w3c.dom.Element sourceElem, ISearchFieldMapFactory factory)
           
 void dataComplete(java.lang.Object gateway)
          Message sent by ICollectionGateway after the last IResultSet has been submitted for processing.
 void executeJob(RaritanPageContext rpc)
           
 void executeJob(java.lang.String[] args)
           
 IResultSet executeQuery(java.lang.Integer queryID, ISearchFieldMap searchMap, SourceLoginInfo[] sources, OrderedMap inputParameters, java.lang.Integer pageSize, java.lang.Integer startRec)
          Executes a Query.
 void gatewayFailed(java.lang.String failedMessage)
           
 java.lang.String getConfigurationXML()
           
 java.lang.Object getProperty(java.lang.String property)
          returns a Source Property.
 IQueryProcessor getQueryProcessor()
          returns the type of QueryProcessor that can access this SearchSource.
 java.lang.String[] getSourcePropertyNames()
          Returns a list of Source type specific property names.
 void initialize(org.w3c.dom.Element elem)
          Initializes the object from an XML tag or element.
 void initializeSource(org.w3c.dom.Element sourceElem, SearchSource source)
           
 void processData(IResultSet dataSet)
          Command to process a set of results generated by an ICollectionGateway implementation.
 
Methods inherited from class com.raritantechnologies.searchApp.SearchSource
addFieldFormatter, addSearchField, addSourceAttributes, addStaticField, addStaticFields, addUserSearchField, canAccess, canConsolidateSources, consolidateSources, delSearchField, formatResult, formatResult, formatResultField, formatResultField, formatResults, formatResults, getAccessableFields, getAttributes, getBasePath, getConfigPath, getDisplayName, getFieldFormatters, getIDField, getName, getSearchField, getSearchFieldID, getSearchFields, getSearchFields, getSecondarySortSpec, getSecurityManager, getSecurityManagerName, getSecurityModel, getSortSpec, getSourceCredentials, getTitleField, getType, getURLField, getUserSearchFields, isMultiThreaded, setConfigPath, setDisplayName, setIDField, setMultiThreaded, setName, setSecurityManagerName, setSecurityModel, setSortMap, setSourcePropertyInfoSource, setTitleField, setType, setURLField, shouldFormatResults, supportsBackgroundSort
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DataCollectorSearchSource

public DataCollectorSearchSource()
Method Detail

getQueryProcessor

public IQueryProcessor getQueryProcessor()
Description copied from class: SearchSource
returns the type of QueryProcessor that can access this SearchSource.

Specified by:
getQueryProcessor in class SearchSource

executeQuery

public IResultSet executeQuery(java.lang.Integer queryID,
                               ISearchFieldMap searchMap,
                               SourceLoginInfo[] sources,
                               OrderedMap inputParameters,
                               java.lang.Integer pageSize,
                               java.lang.Integer startRec)
                        throws QueryProcessorException
Description copied from interface: IQueryProcessor
Executes a Query. Returns results in the form of an IResultSet object.

Specified by:
executeQuery in interface IQueryProcessor
Parameters:
queryID - Unique ID for this query. Used by front end to manage queries and query pages. QueryProcessor may use this parameter to organize its search results, and to organize any state information it needs to process future page requests (future executeQuery( ) calls with the same queryID.
searchMap - Provides mapping information needed to translate the inputParameters into a search string appropriate for this type of QueryProcessor. Mapping information is obtained by the application framework from local configuration data.
sources - The LoginInfo and SearchSource(s) to be used for this query. The SearchSource(s) must be of the appropriate type for the QueryProcessor.
inputParameters - Form inputs. Use ISearchFieldMap to translate these into implementation and source-specific fields.
pageSize - Integer specifying the number of results to include in the returned Document. if null - use the default page size.
startRec - Integer specifying the starting record in the result set to be returned. if null - start with the first record.
Returns:
IResultSet containing result set.
Throws:
QueryProcessorException

getSourcePropertyNames

public java.lang.String[] getSourcePropertyNames()
Description copied from class: SearchSource
Returns a list of Source type specific property names.

Overrides:
getSourcePropertyNames in class SearchSource

getProperty

public java.lang.Object getProperty(java.lang.String property)
Description copied from class: SearchSource
returns a Source Property. The standard pattern is to return a String or Object if a property has a single value and a String or Object Array if the property has multiple values.

Overrides:
getProperty in class SearchSource

createSearchSources

public SearchSource[] createSearchSources(org.w3c.dom.Element sourceElem,
                                          ISearchFieldMapFactory factory)
Specified by:
createSearchSources in interface IXMLSearchSourceFactory

initializeSource

public void initializeSource(org.w3c.dom.Element sourceElem,
                             SearchSource source)
Specified by:
initializeSource in interface IXMLSearchSourceFactory

processData

public void processData(IResultSet dataSet)
Description copied from interface: IGatewayListener
Command to process a set of results generated by an ICollectionGateway implementation.

Specified by:
processData in interface IGatewayListener

dataComplete

public void dataComplete(java.lang.Object gateway)
Message sent by ICollectionGateway after the last IResultSet has been submitted for processing.

Specified by:
dataComplete in interface IGatewayListener

gatewayFailed

public void gatewayFailed(java.lang.String failedMessage)
Specified by:
gatewayFailed in interface IGatewayListener

initialize

public void initialize(org.w3c.dom.Element elem)
Description copied from interface: IConfigurable
Initializes the object from an XML tag or element. This method is called by the Framework as part of the application initializtion. see ConfigurationManager, XMLConfigurationManager, XMLSearchFieldMapFactory, XMLSearchSourceFactory. Configurable objects that are owned or contained by other configurable objects will be initialized in by the parent object.

Specified by:
initialize in interface IJobProcess

executeJob

public void executeJob(RaritanPageContext rpc)
Specified by:
executeJob in interface IJobProcess

executeJob

public void executeJob(java.lang.String[] args)
Specified by:
executeJob in interface IJobProcess

getConfigurationXML

public java.lang.String getConfigurationXML()
Specified by:
getConfigurationXML in interface IJobProcess