1 package org.kuali.ole.batch.keyvalue;
2
3 import org.kuali.ole.OLEConstants;
4 import org.kuali.ole.describe.bo.OleLocation;
5 import org.kuali.rice.core.api.criteria.QueryByCriteria;
6 import org.kuali.rice.core.api.util.ConcreteKeyValue;
7 import org.kuali.rice.core.api.util.KeyValue;
8 import org.kuali.rice.kns.service.KNSServiceLocator;
9 import org.kuali.rice.krad.keyvalues.KeyValuesBase;
10 import org.kuali.rice.krad.service.KRADServiceLocator;
11
12 import java.util.ArrayList;
13 import java.util.Collection;
14 import java.util.List;
15
16
17
18
19
20
21
22
23 public class OLEBatchConstantsLocationLevel4KeyValues extends KeyValuesBase {
24 @Override
25 public List<KeyValue> getKeyValues() {
26 List<KeyValue> keyValues = new ArrayList<KeyValue>();
27 keyValues = getLocationsByLocationLevel(OLEConstants.OLEBatchProcess.LOCATION_LEVEL_COLLECTION);
28 return keyValues;
29 }
30
31 private List<KeyValue> getLocationsByLocationLevel(String locationLevel) {
32 List<KeyValue> keyValues = new ArrayList<KeyValue>();
33 Collection<OleLocation> oleLocations = KRADServiceLocator.getDataObjectService().findMatching(OleLocation.class, QueryByCriteria.Builder.create().build()).getResults();
34 for (OleLocation oleLocation : oleLocations) {
35 if (locationLevel.equalsIgnoreCase(oleLocation.getLevelCode()))
36 keyValues.add(new ConcreteKeyValue(oleLocation.getLocationCode(), oleLocation.getLocationCode()));
37 }
38 return keyValues;
39 }
40 }