org.almendra.janet.cas.schedulers
Class ArbitratedScheduler
java.lang.Object
org.almendra.commons.threads.ActiveObject
org.almendra.commons.threads.ActiveSchedulingObject
org.almendra.janet.cas.schedulers.AbstractScheduler
org.almendra.janet.cas.schedulers.CommandScheduler
org.almendra.janet.cas.schedulers.PriorityCommandScheduler
org.almendra.janet.cas.schedulers.ArbitratedScheduler
- All Implemented Interfaces:
- java.lang.Runnable, INamedObject, IExecutable, ISimpleActiveObject, ILoggable
- Direct Known Subclasses:
- ApplicationScheduler, SystemScheduler
public abstract class ArbitratedScheduler
- extends PriorityCommandScheduler
- implements IExecutable
- Author:
- Oliver
TODO To change the template for this generated type comment go to
Window - Preferences - Java - Code Generation - Code and Comments
Methods inherited from class org.almendra.janet.cas.schedulers.CommandScheduler |
accept, executableRemoved, execute, execute, execute, isDaemon, logExecuting, logInterpreterNotFound, messageResuming, messageSuspending, monitorFinishedCommand, monitorRemovedWaitingCommand, monitorStartedCommand, registeredLogEvents |
Methods inherited from class org.almendra.commons.threads.ActiveSchedulingObject |
add, available, doActivity, executePrimary, finishedExecution, getNext, getNextPrim, getQueueSize, hasNext, isIdle, remove, resuming, startingExecution, suspending |
Methods inherited from class org.almendra.commons.threads.ActiveObject |
getName, getPriority, isActive, isVerbose, run, setActive, setName, setPriority, setVerbose, start, stop |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface java.lang.Runnable |
run |
DEFAULT_PRIORITIES
public static final int DEFAULT_PRIORITIES
- See Also:
- Constant Field Values
STATE_NEW
public static final int STATE_NEW
- See Also:
- Constant Field Values
STATE_SLEEPING
public static final int STATE_SLEEPING
- See Also:
- Constant Field Values
STATE_SCHEDULED
public static final int STATE_SCHEDULED
- See Also:
- Constant Field Values
STATE_WAITING
public static final int STATE_WAITING
- See Also:
- Constant Field Values
Count
protected static java.math.BigInteger Count
arbitrator
protected Arbitrator arbitrator
application
protected AbstractApplication application
capability
protected Capability capability
state
protected int state
ArbitratedScheduler
public ArbitratedScheduler()
ArbitratedScheduler
public ArbitratedScheduler(int priority,
boolean verbose)
- Parameters:
priority
- verbose
-
ArbitratedScheduler
public ArbitratedScheduler(Logger logger)
- Parameters:
logger
-
ArbitratedScheduler
public ArbitratedScheduler(Logger logger,
int priority)
- Parameters:
logger
- priority
-
ArbitratedScheduler
public ArbitratedScheduler(Logger logger,
int priority,
boolean verbose)
- Parameters:
logger
- priority
- verbose
-
ArbitratedScheduler
public ArbitratedScheduler(int numPriorities)
- Parameters:
numPriorities
-
ArbitratedScheduler
public ArbitratedScheduler(Arbitrator arbitrator,
AbstractApplication application,
Capability capability,
Logger logger,
boolean verbose,
int numPriorities)
- Parameters:
node
- arbitrator
- verbose
- numPriorities
-
justCreated
protected void justCreated()
getLoggerObjectName
protected abstract java.lang.String getLoggerObjectName()
commandAdded
protected void commandAdded()
executableAdded
protected void executableAdded(IExecutable executable)
- Description copied from class:
ActiveSchedulingObject
- Called whentever a new item has been added to the
queue
.
May be redefined in subclasses as appropriate.
- Overrides:
executableAdded
in class ActiveSchedulingObject
finishedExecution
protected void finishedExecution(java.lang.Object object)
getApplicationName
protected java.lang.String getApplicationName()
- Specified by:
getApplicationName
in class CommandScheduler
- Returns:
getCapabilityName
protected java.lang.String getCapabilityName()
- Specified by:
getCapabilityName
in class CommandScheduler
- Returns:
getCurrentAgentName
protected java.lang.String getCurrentAgentName()
- Specified by:
getCurrentAgentName
in class CommandScheduler
- Returns:
getLogName
protected java.lang.String getLogName()
- Specified by:
getLogName
in class CommandScheduler
- Returns:
isRunning
public boolean isRunning()
isSleeping
public boolean isSleeping()
isWaiting
public boolean isWaiting()
setNew
public void setNew()
setScheduled
public void setScheduled()
setSleeping
public void setSleeping()
setWaiting
public void setWaiting()
setLogger
protected void setLogger(Logger logger)
- Overrides:
setLogger
in class CommandScheduler
getNumberOfSchedulersInSameApplication
public abstract int getNumberOfSchedulersInSameApplication()
getMaxPriority
public abstract int getMaxPriority()