Package org.powertac.common.interfaces
Class TimeslotPhaseProcessor
- java.lang.Object
-
- org.powertac.common.interfaces.TimeslotPhaseProcessor
-
- Direct Known Subclasses:
CustomerModelService
public abstract class TimeslotPhaseProcessor extends Object
Plugins must extend this class in order to be invoked during timeslot processing by the CompetitionControl. Each subclass must implement the activate() method to do its thing during a timeslot, and must call its superclass init() method during per-game initialization. Per-timeslot processing takes place in phases. See https://github.com/powertac/powertac-server/wiki/Competition-controller-timeslot-process for a summary of this process.- Author:
- John Collins
-
-
Constructor Summary
Constructors Constructor Description TimeslotPhaseProcessor()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description abstract void
activate(org.joda.time.Instant time, int phaseNumber)
This method gets called once during each timeslot.protected void
init()
This method must be called in the per-game initialization code in each implementing class.void
setTimeslotPhase(int newValue)
This is the Spring-accessible setter for the phase number
-
-
-
Method Detail
-
init
protected void init()
This method must be called in the per-game initialization code in each implementing class. This is where the timeslot phase registration gets done.
-
setTimeslotPhase
public void setTimeslotPhase(int newValue)
This is the Spring-accessible setter for the phase number
-
activate
public abstract void activate(org.joda.time.Instant time, int phaseNumber)
This method gets called once during each timeslot. To get called, the module must first call the register(phaseNumber) method on CompetitionControl. The call will give the current simulation time and phase number in the arguments.
-
-