source: xssim/trunk/src/test/rewolucja/resources/ResourceCharacteristics.java @ 104

Revision 104, 1.2 KB checked in by wojtekp, 13 years ago (diff)
  • Property svn:mime-type set to text/plain
Line 
1package test.rewolucja.resources;
2
3import java.util.ArrayList;
4import java.util.HashMap;
5import java.util.List;
6import java.util.Map;
7import java.util.Properties;
8
9import schedframe.resources.units.ResourceUnit;
10import schedframe.scheduling.utils.ResourceParameterName;
11
12
13public class ResourceCharacteristics extends Properties{
14
15        private static final long serialVersionUID = 2719535186621622647L;
16
17        protected Map<ResourceParameterName, List<ResourceUnit>> resUnits;
18
19        public ResourceCharacteristics(Map<ResourceParameterName, List<ResourceUnit>> resUnits){
20                this.resUnits = resUnits;
21        }
22
23        public ResourceCharacteristics(){
24                this.resUnits = null;
25        }
26       
27        public Map<ResourceParameterName, List<ResourceUnit>> getResourceUnits() {
28                return resUnits;
29        }
30       
31        public ResourceUnit getResourceUnit(ResourceParameterName unitName){
32                return getResourceUnits().get(unitName).get(0);
33        }
34       
35        public void addResourceUnit(ResourceUnit unit){
36                if(resUnits == null){
37                        resUnits = new HashMap<ResourceParameterName, List<ResourceUnit>>(2);
38                }
39                List<ResourceUnit> list = null;
40                if(resUnits.containsKey(unit.getName())){
41                        list = resUnits.get(unit.getName());
42                } else {
43                        list = new ArrayList<ResourceUnit>(1);
44                        resUnits.put(unit.getName(), list);
45                }
46                list.add(unit);
47        }
48
49}
Note: See TracBrowser for help on using the repository browser.