stella.parameter
Class AbstractTrigger

java.lang.Object
  extended by util.PropertyContainer
      extended by stella.parameter.AbstractParameter
          extended by stella.parameter.AbstractTrigger
All Implemented Interfaces:
Cloneable, Parameter, Trigger, ExitCleaning, Initializable, PropertyBearing
Direct Known Subclasses:
InferPark, MissmatchTrigger, SimpleTrigger, WeatherTrigger

public abstract class AbstractTrigger
extends AbstractParameter
implements Trigger

An intermediate class from an abstract parameter to a concrete trigger class. Links the Parameter.get() and Parameter.set(java.lang.Object) methods to the appropriate Trigger.getTrigger() and Trigger.setTrigger(java.lang.Boolean) method. The elapsed toggle time is linked to Trigger.getLastToggleTime(). Three methods have to be defined, #setTigger, Trigger.getTrigger() and Trigger.getLastToggleTime().


Nested Class Summary
 
Nested classes/interfaces inherited from class util.PropertyContainer
PropertyContainer.URLResource
 
Field Summary
 
Fields inherited from class stella.parameter.AbstractParameter
KEY_FORMAT, KEY_NAME, KEY_PRESERVE, UNKNOWN
 
Fields inherited from class util.PropertyContainer
KEY_LISTSEPARATOR, KEY_LOCALECOUNTRY, KEY_LOCALELANGUAGE, KEY_MAPKEYVALUECHAR, KEY_MAPSEPARATOR, KEY_NOINITONCREATE, KEY_RESOURCEBUNDLES
 
Fields inherited from interface util.PropertyBearing
CONFIG, KEY_CLASS, KEY_URLRESOURCES, KEY_URLUSECONFIG, KEY_URLUSECURRENT, KEY_URLUSEHOME
 
Constructor Summary
protected AbstractTrigger(Map info)
          Constructs a abstract value.
 
Method Summary
 Object get()
          Links the Parameter.get() to the Trigger.getTrigger() method.
 long getElapsedToggleTime()
          Returns the elapsed time since the last toggle event.
 boolean isTrue()
          Returns the value of this trigger already interpreted as a primitive boolean.
 Object set(Object number)
          Links the Parameter.set(java.lang.Object) to the Trigger.setTrigger(java.lang.Boolean) method.
 Boolean toggleTrigger()
          Builds the toggle method.
 
Methods inherited from class stella.parameter.AbstractParameter
createParameter, delivers, exit, getFormatted, getFormatted, getName, getPreserveFile, getString, getString, init, register, rescanned, setName, toString
 
Methods inherited from class util.PropertyContainer
augment, augment, augment, clone, createFrom, createFrom, createFrom, defaultBoolean, defaultChar, defaultDouble, defaultFloat, defaultInt, defaultLong, defaultObject, defaultObject, defaultProperties, defaultProperty, getAsBoolean, getAsChar, getAsDouble, getAsEnums, getAsFloat, getAsInt, getAsList, getAsLong, getAsMap, getAsMap, getAsObject, getAsObject, getLocalClassLoader, getLocalized, getLocalized, getLocalizedString, getLocalizedString, getProperties, getPropertiesToKey, getPropertiesToKey, getProperty, getResource, getResourceAsStream, getResourceFromKey, getResources, has, isNew, keyCreate, keyCreate, parseObject, reload, reload, removeProperty, setObject, setProperties, setProperty, stringProperties
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface stella.Trigger
getLastToggleTime, getTrigger, setTrigger
 
Methods inherited from interface stella.Parameter
getFormatted, getName, getString
 
Methods inherited from interface util.PropertyBearing
defaultBoolean, defaultChar, defaultDouble, defaultFloat, defaultInt, defaultLong, defaultObject, defaultObject, defaultProperties, defaultProperty, getAsBoolean, getAsChar, getAsDouble, getAsFloat, getAsInt, getAsList, getAsLong, getAsMap, getAsObject, getAsObject, getLocalized, getProperties, getProperty, getResource, getResourceAsStream, getResources, has, parseObject, removeProperty, setObject, setProperty, stringProperties
 
Methods inherited from interface util.Initializable
init
 

Constructor Detail

AbstractTrigger

protected AbstractTrigger(Map info)
Constructs a abstract value. Used for constructor chaining.

Method Detail

get

public Object get()
Links the Parameter.get() to the Trigger.getTrigger() method.

Specified by:
get in interface Parameter

set

public Object set(Object number)
Links the Parameter.set(java.lang.Object) to the Trigger.setTrigger(java.lang.Boolean) method. If the argument cannot be cast into a Boolean or is null an IllegalArgumentException is thrown.

Specified by:
set in interface Parameter
Returns:
The previous value of this parameter.

isTrue

public boolean isTrue()
Returns the value of this trigger already interpreted as a primitive boolean. If the trigger was never set prior to this call, false is returned.

Specified by:
isTrue in interface Trigger

toggleTrigger

public Boolean toggleTrigger()
Builds the toggle method. If the actual value of the trigger is defined, it is inverted with a call to the Trigger.setTrigger(java.lang.Boolean) method.

Specified by:
toggleTrigger in interface Trigger
Returns:
The old value of the trigger.

getElapsedToggleTime

public long getElapsedToggleTime()
Returns the elapsed time since the last toggle event. If this trigger was never toggled, i.e. its state changed from one logical state to the other, -1 is returned.

Specified by:
getElapsedToggleTime in interface Trigger
Returns:
The time since the last toggle event, in ms, or -1