Package lumis.doui.search
Class HeadlessSearchDataProvider
- java.lang.Object
-
- lumis.doui.search.SearchDataProvider
-
- lumis.doui.search.HeadlessSearchDataProvider
-
- All Implemented Interfaces:
IDataProvider<SearchSource>
@StableMinor(version="14.2", sinceVersion="14.2") public class HeadlessSearchDataProvider extends SearchDataProvider
Executes a search against a Search Engine and return the results.- Since:
- 14.2.0
- Version:
- $Revision: 24985 $ $Date: 2022-05-02 23:04:30 -0300 (Mon, 02 May 2022) $
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class lumis.doui.search.SearchDataProvider
SearchDataProvider.ParsedUserQuery
-
-
Field Summary
-
Fields inherited from class lumis.doui.search.SearchDataProvider
SOURCE_PARAMETER_NAME_AGGREGATED_VALUES, SOURCE_PARAMETER_NAME_AGGREGATIONS, SOURCE_PARAMETER_NAME_CONTROL_QUERY, SOURCE_PARAMETER_NAME_QUERY, SOURCE_PARAMETER_NAME_SCOPE_SERVICE_INSTANCE, SOURCE_PARAMETER_NAME_STATUS, SOURCE_PARAMETER_TARGET_OBJECTS_SOURCE_ID
-
Fields inherited from interface lumis.doui.source.IDataProvider
INTERFACE_INSTANCE_PROPERTY_FIELDS, INTERFACE_INSTANCE_PROPERTY_FILTERS, INTERFACE_INSTANCE_PROPERTY_MAX_ROWS, INTERFACE_INSTANCE_PROPERTY_ORDER_BY, MAX_NUM_ORDER_BY_FIELDS
-
-
Constructor Summary
Constructors Constructor Description HeadlessSearchDataProvider()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected boolean
isIncludePublicationUrlExistFilter(SessionConfig sessionConfig, SearchSource searchSource, ServiceInstanceConfig searchServiceInstanceConfig, ITransaction transaction)
Returns whether a filter must be included to search only for the publications with URL.protected void
populateRowField(SessionConfig sessionConfig, ISourceData row, ISearchHit hit, String fieldId, SearchSource searchSource, ITransaction transaction)
Populates the given field within the row with the given hit.protected void
populateRowSlugField(SessionConfig sessionConfig, ISourceData row, ISearchHit hit, String fieldId, SearchSource searchSource, ITransaction transaction)
Populates the slug field for the given row.protected void
populateRowURLField(SessionConfig sessionConfig, ISourceData row, ISearchHit hit, String fieldId, SearchSource searchSource, ITransaction transaction)
Populates the URL field for the given row.-
Methods inherited from class lumis.doui.search.SearchDataProvider
getFieldsBoost, getHighlight, getHighlightConfiguration, getMainPublishedContextUrlValue, getPublications, getPublishedContextIdsIncludedInSearch, getSearchFieldIds, getSearchMonitor, getSearchServiceInstance, getSearchSorts, getTargetObjectsSourceFilter, getUserQuery, hasUserQueryChanged, loadData, parseUserQuery, populateRow
-
-
-
-
Method Detail
-
populateRowField
protected void populateRowField(SessionConfig sessionConfig, ISourceData row, ISearchHit hit, String fieldId, SearchSource searchSource, ITransaction transaction) throws PortalException
Description copied from class:SearchDataProvider
Populates the given field within the row with the given hit.- Overrides:
populateRowField
in classSearchDataProvider
- Parameters:
sessionConfig
- the user's session.row
- the row to be populated.hit
- the search hit.fieldId
- the identifier of the field currently being populated.searchSource
- the search source.transaction
- the transaction.- Throws:
PortalException
-
populateRowSlugField
protected void populateRowSlugField(SessionConfig sessionConfig, ISourceData row, ISearchHit hit, String fieldId, SearchSource searchSource, ITransaction transaction)
Populates the slug field for the given row.- Parameters:
sessionConfig
- the user's session.row
- the row to be populated.hit
- the search hit.fieldId
- the identifier of the field currently being populated.searchSource
- the search source.transaction
- the transaction.- Since:
- 14.2.0
-
populateRowURLField
protected void populateRowURLField(SessionConfig sessionConfig, ISourceData row, ISearchHit hit, String fieldId, SearchSource searchSource, ITransaction transaction) throws PortalException
Populates the URL field for the given row.- Parameters:
sessionConfig
- the user's session.row
- the row to be populated.hit
- the search hit.fieldId
- the identifier of the field currently being populated.searchSource
- the search source.transaction
- the transaction.- Throws:
PortalException
- Since:
- 14.2.0
-
isIncludePublicationUrlExistFilter
protected boolean isIncludePublicationUrlExistFilter(SessionConfig sessionConfig, SearchSource searchSource, ServiceInstanceConfig searchServiceInstanceConfig, ITransaction transaction) throws PortalException
Description copied from class:SearchDataProvider
Returns whether a filter must be included to search only for the publications with URL.- Overrides:
isIncludePublicationUrlExistFilter
in classSearchDataProvider
- Parameters:
sessionConfig
- the user's session.searchSource
- the search source.searchServiceInstanceConfig
- the search service instance.transaction
- the transaction.- Returns:
- whether a filter must be included to search only for the publications with URL.
- Throws:
PortalException
-
-