com.raritantechnologies.recommend.rti
Class RecommendSearchSource
java.lang.Object
com.raritantechnologies.searchApp.SearchSource
com.raritantechnologies.recommend.rti.RecommendSearchSource
- All Implemented Interfaces:
- IQueryProcessor, IXMLSearchSourceFactory
- public class RecommendSearchSource
- extends SearchSource
- implements IQueryProcessor, IXMLSearchSourceFactory
Generates a set of related documents or expert users based on a query and or user ID using an
IRecommend Recommendation Engine implementation.
In a recommended users implementation, this search source can be used as a first layer of a
LookupSearchSource where
the second layer is an LDAPSearchSource for example.
XML Configuration Template:
<SourceType name="[Source Name - unique within this source type]"
type="RecommendationSearchSource"
displayName="[Source Name shown to users]"
sourceFactoryClass="com.raritantechnologies.recommend.RecommendSearchSource"
queryProcessor="com.raritantechnologies.recommend.RecommendSearchSource"
recommendationEngineName="[ name of RecommendationEngine (if a SystemObject) ]"
recommendationMode="[ DOCUMENTS | USERS | QUERIES ]"
repositories="[ comma separated list of Recommendation repositories ]"
docFields="[ comma separated list of result fields to use for recommendation ]" >
<!-- Can define RecommendationEngine locally: -->
<RecommendationEngine class="[ class of com.raritantechnologies.recommend.IRecommend ]" >
</RecommendationEngine>
</SourceType>
Developed by
Raritan Technologies .
- Author:
- Ted Sullivan
| 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, getProperty, getSearchField, getSearchFieldID, getSearchFields, getSearchFields, getSecondarySortSpec, getSecurityManager, getSecurityManagerName, getSecurityModel, getSortSpec, getSourceCredentials, getSourcePropertyNames, 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 |
RecommendSearchSource
public RecommendSearchSource()
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
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