001package org.kuali.ole.describe.keyvalue; 002 003import org.kuali.ole.describe.bo.OleElectronicLocationAndAccessRelationship; 004import org.kuali.rice.core.api.util.ConcreteKeyValue; 005import org.kuali.rice.core.api.util.KeyValue; 006import org.kuali.rice.krad.keyvalues.KeyValuesBase; 007import org.kuali.rice.krad.service.KRADServiceLocator; 008 009import java.util.ArrayList; 010import java.util.Collection; 011import java.util.List; 012 013/** 014 * Relationship used to render the values for Relationship dropdown control. 015 */ 016public class Relationship extends KeyValuesBase { 017 /** 018 * This method returns the List of ConcreteKeyValue, 019 * ConcreteKeyValue has two arguments elaRelationshipCode and 020 * elaRelationshipName. 021 * 022 * @return List<KeyValue> 023 */ 024 @Override 025 public List<KeyValue> getKeyValues() { 026 List<KeyValue> options = new ArrayList<KeyValue>(); 027 Collection<OleElectronicLocationAndAccessRelationship> oleElectronicLocationAndAccessRelationships = 028 KRADServiceLocator.getBusinessObjectService().findAll(OleElectronicLocationAndAccessRelationship.class); 029 options.add(new ConcreteKeyValue("", "")); 030 for (OleElectronicLocationAndAccessRelationship type : oleElectronicLocationAndAccessRelationships) { 031 options.add(new ConcreteKeyValue(type.getElaRelationshipCode(), type.getElaRelationshipName())); 032 } 033 return options; 034 } 035}