Coverage Report - org.kuali.student.core.enumerationmanagement.bo.options.EnumerationCodeValuesFinderBase
 
Classes in this File Line Coverage Branch Coverage Complexity
EnumerationCodeValuesFinderBase
0%
0/12
0%
0/2
1.5
 
 1  
 package org.kuali.student.core.enumerationmanagement.bo.options;
 2  
 
 3  
 import java.util.ArrayList;
 4  
 import java.util.Collection;
 5  
 import java.util.HashMap;
 6  
 import java.util.Iterator;
 7  
 import java.util.List;
 8  
 import java.util.Map;
 9  
 
 10  
 import org.kuali.rice.core.util.KeyLabelPair;
 11  
 import org.kuali.rice.kns.lookup.keyvalues.KeyValuesBase;
 12  
 import org.kuali.rice.kns.service.BusinessObjectService;
 13  
 import org.kuali.rice.kns.service.KNSServiceLocator;
 14  
 import org.kuali.student.core.enumerationmanagement.bo.EnumeratedValue;
 15  
 
 16  
 /**
 17  
  * This base class creates a KeyValuesFinder for EnumeratedValues consisting of
 18  
  * key=EnumeratedValue.code and value=EnumeratedValue.value.  Simply override
 19  
  * getEnumerationKey() to return the enumerationKey of the Enumeration you want
 20  
  * a KeyValuesFinder for.
 21  
  */
 22  0
 public abstract class EnumerationCodeValuesFinderBase extends KeyValuesBase {
 23  
     
 24  
     @SuppressWarnings("unchecked")
 25  
     @Override
 26  
     public List<KeyLabelPair> getKeyValues() {
 27  0
         List<KeyLabelPair> labels = new ArrayList<KeyLabelPair>();
 28  0
         Map<String, Object> criteria = new HashMap<String,Object>();
 29  
         
 30  0
         criteria.put(EnumeratedValue.ENUMERATION_KEY, getEnumerationKey());
 31  0
         BusinessObjectService boService = KNSServiceLocator.getBusinessObjectService();
 32  0
         Collection<EnumeratedValue> values = boService.findMatching(EnumeratedValue.class, criteria);
 33  
         
 34  0
         Iterator<EnumeratedValue> iterator = values.iterator(); 
 35  0
         while(iterator.hasNext()) {
 36  0
             EnumeratedValue value = iterator.next();
 37  0
             labels.add(new KeyLabelPair(value.getCode(), value.getValue()));
 38  0
         }
 39  
         
 40  0
         return labels;
 41  
     }
 42  
     
 43  
     public abstract String getEnumerationKey();
 44  
 
 45  
 }