Ignore:
Timestamp:
10/31/12 13:52:06 (12 years ago)
Author:
wojtekp
Message:
 
Location:
DCWoRMS/trunk/build/classes/simulator/reader
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • DCWoRMS/trunk/build/classes/simulator/reader/ResourceReader.java

    r477 r539  
    1111import java.util.Deque; 
    1212import java.util.HashMap; 
     13import java.util.LinkedHashSet; 
    1314import java.util.LinkedList; 
    1415import java.util.List; 
    1516import java.util.Map; 
     17import java.util.Set; 
    1618 
    1719import org.exolab.castor.types.AnyNode; 
     
    5456        private String globalSchedulingPluginName; 
    5557         
     58        private Set<String> compResLayers; 
     59         
    5660        public ResourceReader(ConfigurationOptions options) throws IOException { 
    5761 
     
    5963                globalSchedulingPluginName = "example.globalplugin.GridFCFSRoundRobinPlugin"; 
    6064                prepareCalendar(); 
     65                compResLayers = new LinkedHashSet<String>(); 
    6166        } 
    6267 
     
    6469                        UnknownParameter { 
    6570 
    66                 //File file = new File("src/test/rewolucja/schemas/example/coolemall/example4.xml"); 
    6771                File file = new File(resDescFileName); 
    68                 //File file = new File("example/tomekp/experiment1/tomExp3.xml"); 
    69                 /*long s =System.currentTimeMillis(); 
    70                 System.out.println("start: "); 
    71                 List<Processor> list = new ArrayList<Processor>(); 
    72                 for(int i =0;i<3000000;i++){ 
    73                         schemas.ComputingResource compResDef = new schemas.ComputingResource(); 
    74                         compResDef.setName("a"+i); 
    75                         compResDef.setClazz("Processor"); 
    76                         CompResourceDescription resDesc = new CompResourceDescription(compResDef); 
    77                         Processor proc = new Processor(resDesc); 
    78                         list.add(proc); 
    79                 } 
    80                 long e = System.currentTimeMillis(); 
    81                 System.out.println("end: "); 
    82                 System.out.println(e-s);*/ 
    8372                Environment env = Environment.unmarshal(new FileReader(file)); 
    8473                 
     
    9786                ResourceController rc = new ResourceController(mainScheduler, computingResources); 
    9887                rc.setInitList(toInit); 
     88                rc.setCompResLayers(compResLayers); 
    9989                return rc; 
    10090        } 
     
    177167 
    178168                List<ComputingResource> mainCompResourceList = new ArrayList<ComputingResource>(); 
    179                  
    180169                Deque<ComputingResourceDescription> toExamine = new ArrayDeque<ComputingResourceDescription>(); 
    181170                Deque<ComputingResource> resStructure = new ArrayDeque<ComputingResource>(); 
     
    192181                        ComputingResource parentResource = resStructure.pop(); 
    193182                        toInit.add(parentResource); 
     183                        compResLayers.add(parentResource.getType().getName()); 
    194184                        List<AbstractResourceDescription> childrenResDesc = parentResDesc.getChildren(); 
    195185                        if (childrenResDesc == null){ 
     
    250240                //TODO - refactor (remove - create scheduler on the basis of resource description) 
    251241                Scheduler mainScheduler = null; 
    252                 if(mainSchedulers.size() == 1 && mainSchedulers.get(0).get_name().equals("grid")){ 
     242                if(mainSchedulers.size() == 1 /*&& mainSchedulers.get(0).get_name().equals("grid")*/){ 
    253243                        mainScheduler = mainSchedulers.get(0); 
    254244                } 
     
    261251                        ManagedResources managedResources = new ManagedResources(mainCompResourceList, new HashMap<ResourceUnitName, List<ResourceUnit>>()); 
    262252                        mainScheduler = ResourceFactory.createScheduler(StandardResourceType.GS, "grid", schedulingPlugin , execTimeEstimationPlugin,  queues, managedResources); 
    263                         /*ManagementSystem ms = new GridBroker("grid", 
    264                                         globalSchedulingPluginName, execTimeEstimationPlugin); 
    265                         mainScheduler = new Scheduler(ms, mainCompResourceList);*/ 
     253 
    266254                        for(Scheduler lr: mainSchedulers){ 
    267255                                mainScheduler.addChild(lr); 
     
    280268                TaskQueueList queues = new TaskQueueList(1); 
    281269                 
    282                 if(schedulerDef.getQueue() != null && schedulerDef.getQueueCount() > 0){ 
    283                         int queueCount = schedulerDef.getQueueCount(); 
     270                if(schedulerDef.getQueues()!= null){ 
     271                        int queueCount = schedulerDef.getQueues().getQueueCount(); 
    284272                        for(int i = 0; i < queueCount; i++){ 
    285                                 schemas.QueueType queueDef = schedulerDef.getQueue(i); 
     273                                schemas.QueueType queueDef = schedulerDef.getQueues().getQueue(i); 
    286274                                TaskQueue queue = new TaskQueue(queueDef.getReservation()); 
    287275                                queue.setName(queueDef.getName()); 
Note: See TracChangeset for help on using the changeset viewer.