package schedframe.scheduling; import java.util.List; import java.util.Map; import schedframe.resources.ResourceType; import schedframe.resources.providers.LocalSystem; import schedframe.resources.units.ResourceUnit; import schedframe.resources.units.ResourceUnitName; import schedframe.scheduling.manager.resources.ManagedResources; import schedframe.scheduling.policy.AbstractManagementSystem; import eduni.simjava.Sim_event; import gridsim.GridSimTags; import gridsim.IO_data; import gridsim.dcworms.DCWormsTags; public class Cluster extends Scheduler{ public Cluster(AbstractManagementSystem manSys, ResourceType schedType, ManagedResources managedResources) throws Exception { super(manSys, schedType, managedResources); } protected void processOtherRequest(Sim_event ev) { switch (ev.get_tag()) { case DCWormsTags.QUERY_RESOURCE_DESC: SchedulerDescription desc = new SchedulerDescription(new LocalSystem(get_name(), null, null)); Map> units = managementSystem.getResourceManager().getSharedResourceUnits(); desc.addResourceUnitList(units); desc.addQueuesDescription(getQueuesDescription()); IO_data data = new IO_data(desc, 0, ev.get_src()); send(ev.get_src(), GridSimTags.SCHEDULE_NOW, DCWormsTags.QUERY_RESOURCE_DESC_RESULT, data); break; default: managementSystem.processEvent(ev); break; } } }