source: DCWoRMS/trunk/src/schedframe/resources/units/ResourceUnitFactory.java @ 781

Revision 781, 3.4 KB checked in by wojtekp, 12 years ago (diff)
  • Property svn:mime-type set to text/plain
Line 
1package schedframe.resources.units;
2
3
4
5public class ResourceUnitFactory {
6       
7        /*public static ResourceUnit creteUnit(String resourceClass, int totalAmount, int usedAmount){
8                switch(ResourceParameterName.fromValue(resourceClass)){
9                        case CPUCOUNT: return new Processors(totalAmount, usedAmount, 1);
10                        case MEMORY: return new Memory(totalAmount, usedAmount);
11                        case FREEMEMORY: return new FreeMemory(totalAmount, usedAmount);
12                        case CPUSPEED: return new CpuSpeed(totalAmount, usedAmount);
13                default:
14                        return new FreeMemory(totalAmount, usedAmount);
15                        //throw new IllegalArgumentException("Paramter " + resourceClass + " is not supported.");
16                }
17        }*/
18       
19        public static ResourceUnit createUnit(String unitName, String resId, int totalAmount, int usedAmount){
20                if(unitName.equalsIgnoreCase(StandardResourceUnitName.CPU.getName()))
21                        return new PEUnit(resId, totalAmount, usedAmount);
22                if(unitName.equalsIgnoreCase(StandardResourceUnitName.PE.getName()))
23                        return new PEUnit(resId, totalAmount, usedAmount);
24                else if(unitName.equalsIgnoreCase(StandardResourceUnitName.MEMORY.getName()))
25                         return new Memory(resId, totalAmount, usedAmount);
26                else if(unitName.equalsIgnoreCase(StandardResourceUnitName.STORAGE.getName()))
27                         return new Storage(resId, totalAmount, usedAmount);
28                else if(unitName.equalsIgnoreCase(StandardResourceUnitName.GPU.getName()))
29                         return new GPU(resId, totalAmount, usedAmount);
30                else if (unitName.equalsIgnoreCase(StandardResourceUnitName.CPUSPEED.getName()))
31                        return new CpuSpeed(resId, totalAmount, usedAmount);
32                else if (unitName.equalsIgnoreCase(StandardResourceUnitName.COST.getName()))
33                        return new Cost(resId, totalAmount);
34                else if (unitName.equalsIgnoreCase(StandardResourceUnitName.APPLICATION.getName()))
35                        return new Applications(resId);
36                else
37                        return new SimpleResourceUnit(ResourceUnitNameFactory.createResourceUnitName(unitName), resId, totalAmount, usedAmount);
38        }
39       
40        public static ResourceUnit createUnit(String unitName, int totalAmount, int usedAmount){
41                if(unitName.equalsIgnoreCase(StandardResourceUnitName.CPU.getName()))
42                        return new PEUnit(totalAmount, usedAmount, 1);
43                else if(unitName.equalsIgnoreCase(StandardResourceUnitName.MEMORY.getName()))
44                         return new Memory(totalAmount, usedAmount);
45                else if (unitName.equalsIgnoreCase(StandardResourceUnitName.CPUSPEED.getName()))
46                        return new CpuSpeed(totalAmount, usedAmount);
47                else
48                        return new SimpleResourceUnit(ResourceUnitNameFactory.createResourceUnitName(unitName), totalAmount, usedAmount);
49        }
50       
51       
52        public static ResourceUnit createUnit(ResourceUnitName unitName, int totalAmount, int usedAmount){
53                if(unitName.equals(StandardResourceUnitName.CPU))
54                        return new PEUnit(totalAmount, usedAmount, 1);
55                else if(unitName.equals(StandardResourceUnitName.MEMORY))
56                         return new Memory(totalAmount, usedAmount);
57                else if (unitName.equals(StandardResourceUnitName.CPUSPEED))
58                        return new CpuSpeed(totalAmount, usedAmount);
59                else
60                        return new SimpleResourceUnit(unitName, totalAmount, usedAmount);
61        }
62       
63        /*public static ResourceUnit creteUnit(String resourceClass, int totalAmount, int usedAmount){
64               
65                switch(ResourceUnitClass.valueOf(resourceClass)){
66                        case CPU: return new Processors(totalAmount, usedAmount, 1);
67                        case MEMORY: return new Memory(totalAmount, usedAmount);
68                        case STORAGE: return new Storage(totalAmount, usedAmount);
69                default:
70                       
71                        throw new IllegalArgumentException("Paramter " + resourceClass + " is not supported.");
72                }
73        }*/
74}
Note: See TracBrowser for help on using the repository browser.