Interface DocumentSearchCustomizationHandlerService
- Author:
- Kuali Rice Team (rice.collab@kuali.org)
-
Method Summary
Modifier and TypeMethodDescriptioncustomizeClearCriteria(DocumentSearchCriteria documentSearchCriteria, String customizerName) Executes custom criteria clearing against the given criteria using theDocumentSearchCustomizerwith the given customizer name.customizeCriteria(DocumentSearchCriteria documentSearchCriteria, String customizerName) Executes criteria customization against the given criteria using theDocumentSearchCustomizerwith the given customizer name.customizeResults(DocumentSearchCriteria documentSearchCriteria, List<DocumentSearchResult> results, String customizerName) Executes customization of document search results using theDocumentSearchCustomizerwith the given customizer name.customizeResultSetConfiguration(DocumentSearchCriteria documentSearchCriteria, String customizerName) Executes customization of document search result set configuration using theDocumentSearchCustomizerwith the given customizer name.getDocumentSearchConfiguration(String documentTypeName, List<String> searchableAttributeNames) Retrieves the customDocumentSearchCriteriaConfigurationto use for the document type with the given name and for the given list of searchable attributes.getEnabledCustomizations(String documentTypeName, String customizerName) Returns the set of customizations that are enabled and should be executed for theDocumentSearchCustomizerwith the given customizer name.validateCriteria(DocumentSearchCriteria documentSearchCriteria, List<String> searchableAttributeNames) Executes validation of the givenDocumentSearchCriteriaagainst the searchable attributes with the given names..
-
Method Details
-
getDocumentSearchConfiguration
DocumentSearchCriteriaConfiguration getDocumentSearchConfiguration(String documentTypeName, List<String> searchableAttributeNames) throws RiceIllegalArgumentException Retrieves the customDocumentSearchCriteriaConfigurationto use for the document type with the given name and for the given list of searchable attributes. This method is invoked by the document search implementation in order to help assemble the final criteria attribute fields (which includes configuration for all searchable attributes on the document type).The given list of searchable attribute names may not necessary include all searchable attribute on the document type, only those which need to be handled by the client application hosting this service. This determination is made based on the applicationId which is associated with the searchable attribute. Implementations of this method will assemble this information by invoking the
SearchableAttribute.getSearchFields(org.kuali.rice.kew.api.extension.ExtensionDefinition, String)methods on each of the requested searchable attributes.- Parameters:
documentTypeName- the document type name for which to retrieve the configurationsearchableAttributeNames- the names of the searchable attributes from which to assemble criteria configuration which are owned by the application hosting this service- Returns:
- the custom document search criteria configuration for the given searchable attribute, or null if no custom configuration is needed
- Throws:
RiceIllegalArgumentException- if documentTypeName is a null or blank value
-
validateCriteria
List<RemotableAttributeError> validateCriteria(DocumentSearchCriteria documentSearchCriteria, List<String> searchableAttributeNames) throws RiceIllegalArgumentException Executes validation of the givenDocumentSearchCriteriaagainst the searchable attributes with the given names.. This method is invoked by the document search implementation in order to allow for validation to be customized via custom searchable attribute implementations.The given list of searchable attribute names may not necessary include all searchable attribute on the document type, only those which need to be handled by the client application hosting this service. This determination is made based on the applicationId which is associated with the searchable attribute. Implementations of this method execute this validationby invoking the
SearchableAttribute.validateDocumentAttributeCriteria(org.kuali.rice.kew.api.extension.ExtensionDefinition, org.kuali.rice.kew.api.document.search.DocumentSearchCriteria)methods on each of the requested searchable attributes.- Parameters:
documentSearchCriteria- the criteria against which to perform the validationsearchableAttributeNames- the names of the searchable attributes against which to execute validation which are owned by the application hosting this service- Returns:
- a list or remotable attribute errors in the case that any validation errors were raised by the requested searchable attributes
- Throws:
RiceIllegalArgumentException- if documentTypeName is a null or blank value
-
customizeCriteria
DocumentSearchCriteria customizeCriteria(DocumentSearchCriteria documentSearchCriteria, String customizerName) throws RiceIllegalArgumentException Executes criteria customization against the given criteria using theDocumentSearchCustomizerwith the given customizer name. This name is the name of theExtensionDefinitionthat defines the customizer where the customizer extension's applicationId is the same as the application hosting this service.This method effectively invokes the
DocumentSearchCustomizer.customizeCriteria(org.kuali.rice.kew.api.document.search.DocumentSearchCriteria)on the requested customizer which is owned by this application.- Parameters:
documentSearchCriteria- the criteria to customizecustomizerName- the name of the extension definition for theDocumentSearchCustomizerwhich should be used in order to execute the customization- Returns:
- the customized criteria, or null if no customization was performed
- Throws:
RiceIllegalArgumentException- if documentSearchCriteria is nullRiceIllegalArgumentException- if customizerName is a null or blank value
-
customizeClearCriteria
DocumentSearchCriteria customizeClearCriteria(DocumentSearchCriteria documentSearchCriteria, String customizerName) throws RiceIllegalArgumentException Executes custom criteria clearing against the given criteria using theDocumentSearchCustomizerwith the given customizer name. This name is the name of theExtensionDefinitionthat defines the customizer where the customizer extension's applicationId is the same as the application hosting this service.This method effectively invokes the
DocumentSearchCustomizer.customizeClearCriteria(org.kuali.rice.kew.api.document.search.DocumentSearchCriteria)on the requested customizer which is owned by this application.- Parameters:
documentSearchCriteria- the criteria on which to perform custom clearingcustomizerName- the name of the extension definition for theDocumentSearchCustomizerwhich should be used in order to execute the customization- Returns:
- the cleared criteria, or null if no custom clear was performed
- Throws:
RiceIllegalArgumentException- if documentSearchCriteria is nullRiceIllegalArgumentException- if customizerName is a null or blank value
-
customizeResults
DocumentSearchResultValues customizeResults(DocumentSearchCriteria documentSearchCriteria, List<DocumentSearchResult> results, String customizerName) throws RiceIllegalArgumentException Executes customization of document search results using theDocumentSearchCustomizerwith the given customizer name. This name is the name of theExtensionDefinitionthat defines the customizer where the customizer extension's applicationId is the same as the application hosting this service.This method effectively invokes the
DocumentSearchCustomizer.customizeResults(org.kuali.rice.kew.api.document.search.DocumentSearchCriteria, java.util.List)on the requested customizer which is owned by this application.- Parameters:
documentSearchCriteria- the criteria that was used to perform the lookupresults- the results that were returned from the lookupcustomizerName- the name of the extension definition for theDocumentSearchCustomizerwhich should be used in order to execute the customization- Returns:
- the customized document search results values, or null if no customization was performed
- Throws:
RiceIllegalArgumentException- if documentSearchCriteria is nullRiceIllegalArgumentException- if results is nullRiceIllegalArgumentException- if customizerName is a null or blank value
-
customizeResultSetConfiguration
DocumentSearchResultSetConfiguration customizeResultSetConfiguration(DocumentSearchCriteria documentSearchCriteria, String customizerName) throws RiceIllegalArgumentException Executes customization of document search result set configuration using theDocumentSearchCustomizerwith the given customizer name. This name is the name of theExtensionDefinitionthat defines the customizer where the customizer extension's applicationId is the same as the application hosting this service.This method effectively invokes the
DocumentSearchCustomizer.customizeResultSetConfiguration(org.kuali.rice.kew.api.document.search.DocumentSearchCriteria)on the requested customizer which is owned by this application.- Parameters:
documentSearchCriteria- the criteria that was used to perform the lookupcustomizerName- the name of the extension definition for theDocumentSearchCustomizerwhich should be used in order to execute the customization- Returns:
- the customized document search result configuration, or null if no customization was performed
- Throws:
RiceIllegalArgumentException- if documentSearchCriteria is nullRiceIllegalArgumentException- if customizerName is a null or blank value
-
getEnabledCustomizations
Set<DocumentSearchCustomization> getEnabledCustomizations(String documentTypeName, String customizerName) throws RiceIllegalArgumentException Returns the set of customizations that are enabled and should be executed for theDocumentSearchCustomizerwith the given customizer name. This name is the name of theExtensionDefinitionthat defines the customizer where the customizer extension's applicationId is the same as the application hosting this service.This method essentially invokes the various boolean methods on the
DocumentSearchCustomizerwhich indicate which customizations the implementation provides. This primarily serves as a means of optimization to reduce the number of remote callbacks that the document search implementation needs to make to the various customizations provided by this service and the customizers it delegates too.- Parameters:
documentTypeName- the name of the document type against which to check for enabled customizations on the specified customizercustomizerName- the name of the extension definition for theDocumentSearchCustomizerwhich should be used in order to check for enabled customizations- Returns:
- the set of customizations that are enabled
- Throws:
RiceIllegalArgumentException- if documentTypeName is a null or blank valueRiceIllegalArgumentException- if customizerName is a null or blank value
-