View Javadoc

1   /**
2    * Copyright 2005-2013 The Kuali Foundation
3    *
4    * Licensed under the Educational Community License, Version 2.0 (the "License");
5    * you may not use this file except in compliance with the License.
6    * You may obtain a copy of the License at
7    *
8    * http://www.opensource.org/licenses/ecl2.php
9    *
10   * Unless required by applicable law or agreed to in writing, software
11   * distributed under the License is distributed on an "AS IS" BASIS,
12   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13   * See the License for the specific language governing permissions and
14   * limitations under the License.
15   */
16  package org.kuali.rice.kew.framework.document.search;
17  
18  import org.kuali.rice.kew.api.document.search.DocumentSearchCriteria;
19  import org.kuali.rice.kew.api.document.search.DocumentSearchResult;
20  
21  import java.util.List;
22  
23  /**
24   * An abstract implementation of a {@link DocumentSearchCustomizer} which classes can extend from and override the
25   * individual methods that they require in order to perform desired customization.  All of the base method
26   * implementations in this class perform the default operation of doing no customization.
27   *
28   * @author Kuali Rice Team (rice.collab@kuali.org)
29   */
30  public abstract class DocumentSearchCustomizerBase implements DocumentSearchCustomizer {
31  
32      /**
33       * Always returns a null reference which instructs the document search framework that the criteria was not
34       * customized.
35       *
36       * @param documentSearchCriteria the criteria on which to perform customization
37       * @return a null reference indicating that no customization was performed
38       */
39      @Override
40      public DocumentSearchCriteria customizeCriteria(DocumentSearchCriteria documentSearchCriteria) {
41          return null;
42      }
43  
44      /**
45       * Always returns a null reference which instructs the document search framework that custom criteria clearing was not
46       * performed.
47       *
48       * @param documentSearchCriteria the criteria on which to perform a customized clear
49       * @return a null reference indicating that no customization was performed
50       */
51      @Override
52      public DocumentSearchCriteria customizeClearCriteria(DocumentSearchCriteria documentSearchCriteria) {
53          return null;
54      }
55  
56      /**
57       * Always returns a null reference which instructs the document search framework that the customization of results
58       * was not performed.
59       *
60       * @param documentSearchCriteria the search criteria
61       * @param defaultResults the results obtained when executing the search
62       * @return a null reference indicating that no customization was performed
63       */
64      @Override
65      public DocumentSearchResultValues customizeResults(DocumentSearchCriteria documentSearchCriteria,
66              List<DocumentSearchResult> defaultResults) {
67          return null;
68      }
69  
70      /**
71       * Always returns a null reference which instructs the document search framework that the customization of result
72       * set fields was not performed.
73       *
74       * @param documentSearchCriteria the search criteria
75       * @return a null reference indicating that no customization was performed
76       */
77      @Override
78      public DocumentSearchResultSetConfiguration customizeResultSetConfiguration(
79              DocumentSearchCriteria documentSearchCriteria) {
80          return null;
81      }
82  
83      /**
84       * Always returns false indicating that criteria customization is disabled and should not be performed.
85       *
86       * @param documentTypeName the name of the document type under consideration
87       * @return false to indicate that no customization should be performed
88       */
89      @Override
90      public boolean isCustomizeCriteriaEnabled(String documentTypeName) {
91          return false;
92      }
93  
94      /**
95       * Always returns false indicating that criteria clearing customization is disabled and should not be performed.
96       *
97       * @param documentTypeName the name of the document type under consideration
98       * @return false to indicate that no customization should be performed
99       */
100     @Override
101     public boolean isCustomizeClearCriteriaEnabled(String documentTypeName) {
102         return false;
103     }
104 
105     /**
106      * Always returns false indicating that results customization is disabled and should not be performed.
107      *
108      * @param documentTypeName the name of the document type under consideration
109      * @return false to indicate that no customization should be performed
110      */
111     @Override
112     public boolean isCustomizeResultsEnabled(String documentTypeName) {
113         return false;
114     }
115 
116     /**
117      * Always returns false indicating that result set field customization is disabled and should not be performed.
118      *
119      * @param documentTypeName the name of the document type under consideration
120      * @return false to indicate that no customization should be performed
121      */
122     @Override
123     public boolean isCustomizeResultSetFieldsEnabled(String documentTypeName) {
124         return false;
125     }
126 
127 }