View Javadoc

1   /*
2    * Copyright 2005-2008 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.kns.service;
17  
18  import java.util.Collection;
19  import java.util.Map;
20  
21  /**
22   * This interface defines methods that a Lookup Service must provide.
23   * 
24   * 
25   */
26  public interface LookupService {
27      
28      /**
29       * 
30       * Returns a collection of objects based on the given search parameters. Will not limit results, so the returned Collection
31       * could be huge.
32       * 
33       * @param example
34       * @param formProps
35       * @return
36       */
37      public Collection findCollectionBySearchUnbounded(Class example, Map formProps);
38  
39  
40      /**
41       * Returns a collection of objects based on the given search parameters.
42       * 
43       * @return Collection returned from the search
44       */
45      public Collection findCollectionBySearch(Class example, Map formProps);
46      
47      public Collection findCollectionBySearchHelper(Class example, Map formProperties, boolean unbounded);
48  
49      /**
50       * Retrieves a Object based on the search criteria, which should uniquely identify a record.
51       * 
52       * @return Object returned from the search
53       */
54      public Object findObjectBySearch(Class example, Map formProps);
55      
56      public boolean allPrimaryKeyValuesPresentAndNotWildcard(Class boClass, Map formProps);
57  }