Changeset 1207 for DCWoRMS/branches/coolemall/src/schedframe/resources/computing/description/ExecutingResourceDescription.java
- Timestamp:
- 11/26/13 11:56:07 (11 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
DCWoRMS/branches/coolemall/src/schedframe/resources/computing/description/ExecutingResourceDescription.java
r477 r1207 1 1 package schedframe.resources.computing.description; 2 2 3 import java.util.ArrayList;4 3 import java.util.Collection; 5 import java.util.HashMap;6 import java.util.Iterator;7 4 import java.util.List; 8 5 import java.util.Map; 9 6 10 import schedframe.Parameters;11 import schedframe.resources.ResourceType;12 7 import schedframe.resources.units.ResourceUnit; 13 8 import schedframe.resources.units.ResourceUnitName; 14 9 15 public class ExecutingResourceDescription extends AbstractResourceDescription { 10 public interface ExecutingResourceDescription { 11 12 public void addResourceUnit(ResourceUnit unit); 13 14 public ResourceUnit getResourceUnit(ResourceUnitName unitName) throws NoSuchFieldException ; 16 15 17 protected Map<ResourceUnitName, List<ResourceUnit>> resUnits; 18 protected Parameters parameters; 16 public List<ResourceUnit> getResourceUnitList(ResourceUnitName unitName) throws NoSuchFieldException; 17 18 public Collection<ResourceUnit> getResourceUnit(); 19 19 20 public ExecutingResourceDescription(ResourceType type) { 21 super(type); 22 } 23 24 public Parameters getParameters() { 25 return parameters; 26 } 27 28 public String getCompResourceParameterValue(String name){ 29 return getParameters().get(name).get(0).getContent(); 30 } 31 32 public void addResourceUnit(ResourceUnit unit) { 33 if (this.resUnits == null) 34 this.resUnits = new HashMap<ResourceUnitName, List<ResourceUnit>>(1); 35 List<ResourceUnit> list = null; 36 if (this.resUnits.containsKey(unit.getName())) { 37 list = this.resUnits.get(unit.getName()); 38 } else { 39 list = new ArrayList<ResourceUnit>(1); 40 this.resUnits.put(unit.getName(), list); 41 } 42 list.add(unit); 43 } 44 45 public ResourceUnit getResourceUnit(ResourceUnitName unitName) throws NoSuchFieldException { 46 return getResourceUnitList(unitName).get(0); 47 } 48 49 public List<ResourceUnit> getResourceUnitList(ResourceUnitName unitName) throws NoSuchFieldException { 50 if (resUnits.containsKey(unitName)) 51 return resUnits.get(unitName); 52 else 53 throw new NoSuchFieldException("Resource unit " + unitName + " is not available in resource " + this.id); 54 } 55 56 public Collection<ResourceUnit> getResourceUnit() { 57 if (resUnits == null) 58 return null; 59 List<ResourceUnit> values = new ArrayList<ResourceUnit>(); 60 Collection<List<ResourceUnit>> lists = resUnits.values(); 61 Iterator<List<ResourceUnit>> itr = lists.iterator(); 62 63 while (itr.hasNext()) { 64 List<ResourceUnit> list = itr.next(); 65 values.addAll(list); 66 } 67 68 return values; 69 } 70 71 public Map<ResourceUnitName, List<ResourceUnit>> getResourceUnits() { 72 return resUnits; 73 } 20 public Map<ResourceUnitName, List<ResourceUnit>> getResourceUnits(); 74 21 }
Note: See TracChangeset
for help on using the changeset viewer.