stella.parameter
Class SwitchSkeleton

java.lang.Object
  extended by util.PropertyContainer
      extended by util.PropertyResources
          extended by util.PropertyBundles
              extended by stella.parameter.AbstractParameter
                  extended by stella.parameter.AbstractRemoteParameter
                      extended by stella.parameter.AbstractRemoteTrigger
                          extended by stella.parameter.AbstractRemoteSwitch
                              extended by stella.parameter.SwitchSkeleton
All Implemented Interfaces:
Cloneable, Remote, Parameter, ParameterDepending, RemoteParameter, RemoteSwitch, RemoteTrigger, Switch, Trigger, ExitCleaning, Initializable, LocalizedSupplying, PropertySupplying, Reloadable, ResourceSupplying, RmiCaster

public class SwitchSkeleton
extends AbstractRemoteSwitch
implements ParameterDepending, Reloadable

A trigger that takes a non-remote trigger and exports it to the registry. Intended for triggers that are only to a limited extend used as remote.


Nested Class Summary
static class SwitchSkeleton.Turn
          Allows rmi-access to the AbstractRemoteSwitch.switchOn(long), AbstractRemoteSwitch.switchOff(), and the #switchOnTimeout methods.
 
Nested classes/interfaces inherited from class util.PropertyResources
PropertyResources.URLResource
 
Field Summary
private  Switch export
          The parameter that is to be exported.
static String KEY_EXPORT
          The parameter that should be exported.
 
Fields inherited from class stella.parameter.AbstractRemoteParameter
DEFBIND, KEY_BIND
 
Fields inherited from class stella.parameter.AbstractParameter
KEY_FORMAT, KEY_NAME, KEY_PRESERVE, UNKNOWN
 
Fields inherited from class util.PropertyBundles
KEY_LOCALECOUNTRY, KEY_LOCALELANGUAGE, KEY_RESOURCEBUNDLES
 
Fields inherited from class util.PropertyResources
KEY_NOINITONCREATE, localurl, locate, POSTFIX_DIR, POSTFIX_EXT, POSTFIX_FILE, POSTFIX_LIST, POSTFIX_URL, urlset
 
Fields inherited from class util.PropertyContainer
KEY_LISTSEPARATOR, KEY_MAPKEYVALUECHAR, KEY_MAPSEPARATOR
 
Fields inherited from interface stella.rmi.RemoteTrigger
NAMING_EXTENSION
 
Fields inherited from interface util.PropertySupplying
CONFIG, KEY_CLASS
 
Fields inherited from interface util.ResourceSupplying
KEY_URLRESOURCES, KEY_URLUSECONFIG, KEY_URLUSECURRENT, KEY_URLUSEHOME
 
Constructor Summary
SwitchSkeleton(Map prop)
          Constructs a new parameter skeleton.
 
Method Summary
 Object get()
          Returns the value of the registered parameter.
 long getElapsedToggleTime()
          Returns the elapsed time from the last toggle event on the trigger until now.
 Date getLastToggleTime()
          Returns the date of the last toggle event on this trigger.
 Boolean getTrigger()
          Returns the same value as Parameter.get() but already cast into a boolean.
 boolean isTrue()
          Returns the value of the trigger as a boolean primitive.
 void registerParameter(Parameter what)
          Registers a parameter to this skeleton.
 double rescanned(String key, String old, String newval)
          We throw an illegal argument exception if export changed
 Object set(Object to)
          Sets the value of this parameter.
 Boolean setTrigger(Boolean to)
          Does the same thing as Parameter.set(java.lang.Object) but returns the old value as a boolean.
 Boolean toggleTrigger()
          Toggles the value of this trigger.
 boolean turnOff()
          Switches the local switch.
 boolean turnOn(long timeout)
          Switches the local switch.
 
Methods inherited from class stella.parameter.AbstractRemoteSwitch
switchOff, switchOn
 
Methods inherited from class stella.parameter.AbstractRemoteTrigger
remoteGetTrigger, remoteIsTrue, remoteToggleTime
 
Methods inherited from class stella.parameter.AbstractRemoteParameter
addRmiListener, bindToRegistry, exit, init, isValid, remoteGet, removeRmiListener, unbindFromRegistry
 
Methods inherited from class stella.parameter.AbstractParameter
createParameter, delivers, getFormatted, getFormatted, getName, getPreserveFile, getString, getString, register, setName, toString
 
Methods inherited from class util.PropertyBundles
clone, getLocalized, getLocalized, getLocalizedString, getLocalizedString, loadResource
 
Methods inherited from class util.PropertyResources
createFrom, createFrom, createFrom, getApplet, getAsResources, getLocalClassLoader, getPropertiesToKey, getPropertiesToKey, getResource, getResourceAsStream, getResourceFromKey, getResources, keyCreate, keyCreate, reload, setApplet
 
Methods inherited from class util.PropertyContainer
augment, augment, augment, defaultBoolean, defaultChar, defaultDouble, defaultFloat, defaultInt, defaultLong, defaultObject, defaultObject, defaultProperties, defaultProperty, getAsBoolean, getAsChar, getAsDouble, getAsEnums, getAsFloat, getAsInt, getAsList, getAsLong, getAsMap, getAsMap, getAsObject, getAsObject, getProperties, getProperty, has, isNew, parseObject, 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 util.Reloadable
reload
 
Methods inherited from interface stella.rmi.RemoteTrigger
remoteGetTrigger, remoteIsTrue, remoteToggleTime
 
Methods inherited from interface stella.rmi.RemoteParameter
addRmiListener, remoteGet, removeRmiListener
 
Methods inherited from interface util.rmi.RmiCaster
bindToRegistry, isValid, unbindFromRegistry
 
Methods inherited from interface stella.Parameter
getFormatted, getName, getString
 
Methods inherited from interface util.PropertySupplying
defaultBoolean, defaultChar, defaultDouble, defaultFloat, defaultInt, defaultLong, defaultObject, defaultObject, defaultProperties, defaultProperty, getAsBoolean, getAsChar, getAsDouble, getAsFloat, getAsInt, getAsList, getAsLong, getAsMap, getAsObject, getAsObject, getProperties, getProperty, has, parseObject, removeProperty, setObject, setProperty, stringProperties
 
Methods inherited from interface util.Initializable
init
 
Methods inherited from interface util.ResourceSupplying
getResource, getResourceAsStream, getResources
 

Field Detail

KEY_EXPORT

public static final String KEY_EXPORT
The parameter that should be exported.

See Also:
Constant Field Values

export

private transient Switch export
The parameter that is to be exported.

Constructor Detail

SwitchSkeleton

public SwitchSkeleton(Map prop)
               throws RemoteException
Constructs a new parameter skeleton. This is the server-side of an rmi-enabled parameter.

Throws:
RemoteException
Method Detail

rescanned

public double rescanned(String key,
                        String old,
                        String newval)
We throw an illegal argument exception if export changed

Specified by:
rescanned in interface Reloadable
Overrides:
rescanned in class AbstractRemoteParameter

registerParameter

public void registerParameter(Parameter what)
Registers a parameter to this skeleton. If the parameter's name matches the KEY_EXPORT property, the parameter is exported via its #KEY_BINDNAME.

Specified by:
registerParameter in interface ParameterDepending

get

public Object get()
Returns the value of the registered parameter.

Specified by:
get in interface Parameter

set

public Object set(Object to)
Sets the value of this parameter. Passes the call to the registered parameter.

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

getTrigger

public Boolean getTrigger()
Returns the same value as Parameter.get() but already cast into a boolean.

Specified by:
getTrigger in interface Trigger

isTrue

public boolean isTrue()
Returns the value of the trigger as a boolean primitive.

Specified by:
isTrue in interface Trigger

setTrigger

public Boolean setTrigger(Boolean to)
                   throws UnsupportedOperationException
Does the same thing as Parameter.set(java.lang.Object) but returns the old value as a boolean.

Specified by:
setTrigger in interface Trigger
Throws:
UnsupportedOperationException

toggleTrigger

public Boolean toggleTrigger()
                      throws UnsupportedOperationException
Toggles the value of this trigger. This method does not have a Parameter counterpart. The return value is the old value of the trigger.

Specified by:
toggleTrigger in interface Trigger
Throws:
UnsupportedOperationException

getLastToggleTime

public Date getLastToggleTime()
Returns the date of the last toggle event on this trigger.

Specified by:
getLastToggleTime in interface Trigger

getElapsedToggleTime

public long getElapsedToggleTime()
Returns the elapsed time from the last toggle event on the trigger until now. The returned time is a time in ms, passed over as a long.

Specified by:
getElapsedToggleTime in interface Trigger

turnOn

public boolean turnOn(long timeout)
Switches the local switch.

Specified by:
turnOn in interface Switch
Parameters:
timeout - The maximum time the switch should be on (ms), zero for unlimited.
Returns:
True, if switch was successfully turned on.

turnOff

public boolean turnOff()
Switches the local switch.

Specified by:
turnOff in interface Switch
Returns:
True, if switch was successfully turned off.