Class SearchClientImpl<ItemType>
java.lang.Object
com.lexmark.saperion.client.implementation.SearchClientImpl<ItemType>
- All Implemented Interfaces:
SearchClient<ItemType>
,com.lexmark.saperion.search.SearchExecutionService<ItemType>
- Direct Known Subclasses:
FolderDocumentSearchServiceClientImpl
,GroupMembershipClientForGroupsImpl
,GroupMembershipClientForUsersImpl
,TenantManagementClientImpl
This is the default implementation of
SearchClient
.- Author:
- jschwarz
-
Constructor Summary
ConstructorsConstructorDescriptionSearchClientImpl
(com.lexmark.saperion.search.SearchExecutionService<ItemType> searchService) -
Method Summary
Modifier and TypeMethodDescriptionboolean
exists
(com.lexmark.saperion.search.expression.Expression filter) This convenience method checks whether an element matching the filter actually exists.list()
This method returns an iterable over the complete result of the search using the default paging.list
(com.lexmark.saperion.search.expression.Expression filter) This method returns an iterable over the filtered result of the search using the default paging.list
(com.lexmark.saperion.search.expression.Expression filter, com.lexmark.saperion.search.PageDefinition paging) This method returns an iterable over the filtered result of the search paging as defined.list
(com.lexmark.saperion.search.expression.Expression filter, List<com.lexmark.saperion.search.query.FieldOrderDescriptor> order, com.lexmark.saperion.search.PageDefinition paging) This method returns an iterable over the filtered result of the search paging as defined.list
(com.lexmark.saperion.search.query.Statement statement, com.lexmark.saperion.search.PageDefinition paging) This method returns an iterable over the filtered result of the search paging as defined.list
(List<String> fields, com.lexmark.saperion.search.expression.Expression filter, com.lexmark.saperion.search.PageDefinition paging) This method returns an iterable over the filtered result of the search paging as defined.list
(List<String> fields, com.lexmark.saperion.search.expression.Expression filter, List<com.lexmark.saperion.search.query.FieldOrderDescriptor> order, com.lexmark.saperion.search.PageDefinition paging) This method returns an iterable over the filtered result of the search paging as defined.com.lexmark.saperion.search.SearchResultPage<ItemType>
page
(int offset, int pageSize) This method retrieves the given page of the result of the search.com.lexmark.saperion.search.SearchResultPage<ItemType>
page
(com.lexmark.saperion.search.PageDefinition paging) This method retrieves the given page of the result of the search.com.lexmark.saperion.search.SearchResultPage<ItemType>
search
(com.lexmark.saperion.search.query.Statement statement, com.lexmark.saperion.search.PageDefinition pageDefinition) uniqueResult
(com.lexmark.saperion.search.expression.Expression filter) This convenience method expects the filter to return at most one result.
-
Constructor Details
-
SearchClientImpl
-
-
Method Details
-
search
public com.lexmark.saperion.search.SearchResultPage<ItemType> search(com.lexmark.saperion.search.query.Statement statement, com.lexmark.saperion.search.PageDefinition pageDefinition) throws com.lexmark.saperion.exceptions.EcmException - Specified by:
search
in interfacecom.lexmark.saperion.search.SearchExecutionService<ItemType>
- Throws:
com.lexmark.saperion.exceptions.EcmException
-
list
public Iterable<ItemType> list(com.lexmark.saperion.search.query.Statement statement, com.lexmark.saperion.search.PageDefinition paging) throws com.lexmark.saperion.exceptions.EcmException Description copied from interface:SearchClient
This method returns an iterable over the filtered result of the search paging as defined.- Specified by:
list
in interfaceSearchClient<ItemType>
- Parameters:
statement
- a statement filtering the resultpaging
- the paging the returned iterator should use- Returns:
- an iterator over the filtered result paging as defined.
- Throws:
com.lexmark.saperion.exceptions.EcmException
-
list
public Iterable<ItemType> list(List<String> fields, com.lexmark.saperion.search.expression.Expression filter, List<com.lexmark.saperion.search.query.FieldOrderDescriptor> order, com.lexmark.saperion.search.PageDefinition paging) throws com.lexmark.saperion.exceptions.EcmException Description copied from interface:SearchClient
This method returns an iterable over the filtered result of the search paging as defined.- Specified by:
list
in interfaceSearchClient<ItemType>
- Parameters:
fields
- the fields of the result to deliverfilter
- a filter for the resultorder
- the order of the result listpaging
- the paging the returned iterator should use- Returns:
- an iterator over the filtered result paging as defined.
- Throws:
com.lexmark.saperion.exceptions.EcmException
-
list
public Iterable<ItemType> list(List<String> fields, com.lexmark.saperion.search.expression.Expression filter, com.lexmark.saperion.search.PageDefinition paging) throws com.lexmark.saperion.exceptions.EcmException Description copied from interface:SearchClient
This method returns an iterable over the filtered result of the search paging as defined.- Specified by:
list
in interfaceSearchClient<ItemType>
- Parameters:
fields
- the fields of the result to deliverfilter
- a filter for the resultpaging
- the paging the returned iterator should use- Returns:
- an iterator over the filtered result paging as defined.
- Throws:
com.lexmark.saperion.exceptions.EcmException
-
list
public Iterable<ItemType> list(com.lexmark.saperion.search.expression.Expression filter, List<com.lexmark.saperion.search.query.FieldOrderDescriptor> order, com.lexmark.saperion.search.PageDefinition paging) throws com.lexmark.saperion.exceptions.EcmException Description copied from interface:SearchClient
This method returns an iterable over the filtered result of the search paging as defined.- Specified by:
list
in interfaceSearchClient<ItemType>
- Parameters:
filter
- a filter for the resultorder
- the order of the result listpaging
- the paging the returned iterator should use- Returns:
- an iterator over the filtered result paging as defined.
- Throws:
com.lexmark.saperion.exceptions.EcmException
-
list
public Iterable<ItemType> list(com.lexmark.saperion.search.expression.Expression filter, com.lexmark.saperion.search.PageDefinition paging) throws com.lexmark.saperion.exceptions.EcmException Description copied from interface:SearchClient
This method returns an iterable over the filtered result of the search paging as defined.- Specified by:
list
in interfaceSearchClient<ItemType>
- Parameters:
filter
- a filter for the resultpaging
- the paging the returned iterator should use- Returns:
- an iterator over the filtered result paging as defined.
- Throws:
com.lexmark.saperion.exceptions.EcmException
-
list
public Iterable<ItemType> list(com.lexmark.saperion.search.expression.Expression filter) throws com.lexmark.saperion.exceptions.EcmException Description copied from interface:SearchClient
This method returns an iterable over the filtered result of the search using the default paging.- Specified by:
list
in interfaceSearchClient<ItemType>
- Parameters:
filter
- a filter for the result- Returns:
- an iterator over the filtered result using the default paging.
- Throws:
com.lexmark.saperion.exceptions.EcmException
-
list
Description copied from interface:SearchClient
This method returns an iterable over the complete result of the search using the default paging.- Specified by:
list
in interfaceSearchClient<ItemType>
- Returns:
- an iterator over the complete result using the default paging.
- Throws:
com.lexmark.saperion.exceptions.EcmException
-
uniqueResult
public ItemType uniqueResult(com.lexmark.saperion.search.expression.Expression filter) throws com.lexmark.saperion.exceptions.EcmException Description copied from interface:SearchClient
This convenience method expects the filter to return at most one result. If no such element existsnull
is returned. If one such element exists it is returned. Otherwise anIllegalRequestException
is thrown.- Specified by:
uniqueResult
in interfaceSearchClient<ItemType>
- Parameters:
filter
- a filter yielding true for at most one element- Returns:
- the element the filter yields true for
- Throws:
com.lexmark.saperion.exceptions.EcmException
-
exists
public boolean exists(com.lexmark.saperion.search.expression.Expression filter) throws com.lexmark.saperion.exceptions.EcmException Description copied from interface:SearchClient
This convenience method checks whether an element matching the filter actually exists.- Specified by:
exists
in interfaceSearchClient<ItemType>
- Parameters:
filter
- the filter to check- Returns:
- whether an element matching the filter actually exists
- Throws:
com.lexmark.saperion.exceptions.EcmException
-
page
public com.lexmark.saperion.search.SearchResultPage<ItemType> page(com.lexmark.saperion.search.PageDefinition paging) throws com.lexmark.saperion.exceptions.EcmException Description copied from interface:SearchClient
This method retrieves the given page of the result of the search.- Specified by:
page
in interfaceSearchClient<ItemType>
- Parameters:
paging
- the page to retrieve- Returns:
- the given page of the result of the search
- Throws:
com.lexmark.saperion.exceptions.EcmException
-
page
public com.lexmark.saperion.search.SearchResultPage<ItemType> page(int offset, int pageSize) throws com.lexmark.saperion.exceptions.EcmException Description copied from interface:SearchClient
This method retrieves the given page of the result of the search.- Specified by:
page
in interfaceSearchClient<ItemType>
- Parameters:
offset
- the offset of the pagepageSize
- the size of the page- Returns:
- the given page of the result of the search
- Throws:
com.lexmark.saperion.exceptions.EcmException
-