org.gridbus.broker.scheduler
Class DBScheduler

java.lang.Object
  extended by org.gridbus.broker.common.Scheduler
      extended by org.gridbus.broker.scheduler.DBScheduler
All Implemented Interfaces:
java.lang.Runnable, JobListener

public class DBScheduler
extends Scheduler

This is a simple economy based scheduler for the broker, which doesnot take into account remote data files.

Author:
Srikumar Venugopal (srikumar@cs.mu.oz.au)

Field Summary
 
Fields inherited from class org.gridbus.broker.common.Scheduler
applicationID, failed, feasible, finished, numPoll, pollTime, store, timeStart, totalStats, userMarketDir, useSoftwareCost
 
Constructor Summary
DBScheduler(java.lang.String applicationID, int optimisation)
          Constructor for the scheduler
 
Method Summary
 void jobReset(Job job)
          Job is reset
protected  void schedule()
          Implements the scheduling algorithm, based on cost/time/cost-time optimisation.
 void statusChanged(Job job)
          Status changed event for a Job
 void statusChanged(org.gridbus.scs.common.SCSJob j)
          SCS Job : Tom
 
Methods inherited from class org.gridbus.broker.common.Scheduler
freeQueueSlot, getCandidateSCSServers, getCandidateServers, getJobStatsFromStore, getKey, getNextReadyJob, getNextReadySCSJob, getPollTime, getReadyServers, groupServers, isClassValid, isFailed, isFeasible, isFinished, isJobRequirementMet, isSCSJobRequirementMet, run, saveJobMapping, saveJobMapping, saveStatusEvent, saveStatusEvent, setFailed, setFeasible, setFinished, sortByCost, sortByRunningJobs, sortByTime, updateJobStatus, updateQos, updateServerPerformance, updateStats
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DBScheduler

public DBScheduler(java.lang.String applicationID,
                   int optimisation)
            throws GridBrokerException
Constructor for the scheduler

Parameters:
applicationID -
optimisation - (one of the constants defined in ScheduleOptimisationType
Throws:
GridBrokerException
Method Detail

schedule

protected void schedule()
                 throws java.lang.Exception
Implements the scheduling algorithm, based on cost/time/cost-time optimisation. This scheduler works only for jobs where it is not required to consider the cost of data and its transfer. It is used with jobs which do not require remote data files.

Specified by:
schedule in class Scheduler
Throws:
java.lang.Exception
See Also:
org.gridbus.broker.farming.common.Scheduler#schedule()

statusChanged

public void statusChanged(Job job)
Description copied from interface: JobListener
Status changed event for a Job

Specified by:
statusChanged in interface JobListener
Overrides:
statusChanged in class Scheduler
See Also:
JobListener.statusChanged(org.gridbus.broker.common.Job)

statusChanged

public void statusChanged(org.gridbus.scs.common.SCSJob j)
Description copied from interface: JobListener
SCS Job : Tom

Specified by:
statusChanged in interface JobListener
Overrides:
statusChanged in class Scheduler
See Also:
JobListener.statusChanged(org.gridbus.broker.common.Job)

jobReset

public void jobReset(Job job)
Description copied from interface: JobListener
Job is reset

Specified by:
jobReset in interface JobListener
Overrides:
jobReset in class Scheduler

Copyright © The University of Melbourne. 2006