|
|
|
A Search Source is an configurable object that can search and retrieve data from some data source. Search Sources are added to a Raritan framework application by the addition of a <SourceType> element in the application configuration XML. Each source type defines its own <SourceType> configuration schema but all implement the same API so that they can be used by all other framework modules such as Search Forms, Display Forms, and data processing pipelines.
Search Sources are divided into two major types: Direct Sources that provide search/retrieval functionality for a specific data source and Composite Search Sources which combine one or more search sources to provide advanced functionality such as Federated Search, composite source "joins", query expansion and other types of pre- and post-processing.
All SearchSource objects provide an "IQueryProcessor" instance which implements an executeQuery( ) method. This method takes a set of query parameters (in the form of an RTI OrderedMap), the SearchSource object that created the processor and any source specific login information (in the form of a SourceLoginInfo object), a starting document and the number of documents per page:
public IResultSet executeQuery( Integer queryID,
ISearchFieldMap searchMap,
SourceLoginInfo[] sources,
OrderedMap inputParameters,
Integer pageSize,
Integer startRec)
throws QueryProcessorException
The method returns an RTI IResultSet object which contains a set of IResult objects with document metadata.