1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package org.kuali.ole.sys.businessobject.lookup;
17
18 import java.util.ArrayList;
19 import java.util.Collections;
20 import java.util.List;
21 import java.util.Map;
22
23 import org.kuali.ole.sys.OLEPropertyConstants;
24 import org.kuali.ole.sys.businessobject.FunctionalFieldDescription;
25 import org.kuali.ole.sys.service.OleBusinessObjectMetaDataService;
26 import org.kuali.rice.kns.lookup.KualiLookupableHelperServiceImpl;
27 import org.kuali.rice.krad.bo.BusinessObject;
28 import org.kuali.rice.krad.util.BeanPropertyComparator;
29
30 public class FunctionalFieldDescriptionLookupableHelperServiceImpl extends KualiLookupableHelperServiceImpl {
31 private static final List<String> SORT_PROPERTIES = new ArrayList<String>();
32 static {
33 SORT_PROPERTIES.add(OLEPropertyConstants.NAMESPACE_CODE);
34 SORT_PROPERTIES.add(OLEPropertyConstants.BUSINESS_OBJECT_PROPERTY_COMPONENT_LABEL);
35 SORT_PROPERTIES.add(OLEPropertyConstants.BUSINESS_OBJECT_PROPERTY_LABEL);
36 }
37 protected OleBusinessObjectMetaDataService kfsBusinessObjectMetaDataService;
38
39 @Override
40 public List<? extends BusinessObject> getSearchResults(Map<String, String> fieldValues) {
41 List<FunctionalFieldDescription> searchResults = kfsBusinessObjectMetaDataService.findFunctionalFieldDescriptions(fieldValues.get(OLEPropertyConstants.NAMESPACE_CODE), fieldValues.get(OLEPropertyConstants.BUSINESS_OBJECT_PROPERTY_COMPONENT_LABEL), fieldValues.get(OLEPropertyConstants.BUSINESS_OBJECT_PROPERTY_LABEL), fieldValues.get(OLEPropertyConstants.DESCRIPTION), fieldValues.get(OLEPropertyConstants.ACTIVE));
42 Collections.sort(searchResults, new BeanPropertyComparator(getSortProperties(), true));
43 return searchResults;
44 }
45
46 protected List<String> getSortProperties() {
47 return SORT_PROPERTIES;
48 }
49
50 public void setKfsBusinessObjectMetaDataService(OleBusinessObjectMetaDataService kfsBusinessObjectMetaDataService) {
51 this.kfsBusinessObjectMetaDataService = kfsBusinessObjectMetaDataService;
52 }
53 }