jmri.jmrix.lenz
Class XNetLight

java.lang.Object
  extended by jmri.implementation.AbstractNamedBean
      extended by jmri.implementation.AbstractLight
          extended by jmri.jmrix.lenz.XNetLight
All Implemented Interfaces:
Serializable, EventListener, AbstractMRListener, XNetListener, Light, NamedBean

public class XNetLight
extends AbstractLight
implements XNetListener

XNetLight.java Implementation of the Light Object for XPressNet NOTE: This is a simplification of the XNetTurnout class.

Based in part on SerialLight.java

Author:
Paul Bender Copyright (C) 2008-2010
See Also:
Serialized Form

Field Summary
 
Fields inherited from class jmri.implementation.AbstractLight
lightControlList, mActive, mCurrentIntensity, mEnabled, mMaxIntensity, mMinIntensity, mState
 
Fields inherited from class jmri.implementation.AbstractNamedBean
mUserName
 
Fields inherited from interface jmri.Light
FAST_CLOCK_CONTROL, INTERMEDIATE, NO_CONTROL, OFF, ON, SENSOR_CONTROL, TIMED_ON_CONTROL, TRANSITIONING, TRANSITIONINGHIGHER, TRANSITIONINGLOWER, TRANSITIONINGTOFULLOFF, TRANSITIONINGTOFULLON, TURNOUT_STATUS_CONTROL, TWO_SENSOR_CONTROL
 
Fields inherited from interface jmri.NamedBean
INCONSISTENT, UNKNOWN
 
Constructor Summary
XNetLight(XNetTrafficController tc, XNetLightManager lm, String systemName)
          Create a Light object, with only system name.
XNetLight(XNetTrafficController tc, XNetLightManager lm, String systemName, String userName)
          Create a Light object, with both system and user names.
 
Method Summary
 void dispose()
          Deactivate this object, so that it releases as many resources as possible and no longer effects others.
 int getState()
          Return the current state of this Light
 void message(XNetMessage l)
          Member function that will be invoked by a XNetInterface implementation to forward a XNet message sent to the layout.
 void message(XNetReply l)
          Member function that will be invoked by a XNetInterface implementation to forward a XNet message from the layout.
 void notifyTimeout(XNetMessage msg)
          Member function invoked by an XNetInterface implementation to notify * a sender that an outgoing message timed out and was dropped from the * queue.
 void setState(int newState)
          Set the current state of this Light This routine requests the hardware to change.
 
Methods inherited from class jmri.implementation.AbstractLight
activateLight, addLightControl, clearLightControls, deactivateLight, doNewState, getCurrentIntensity, getEnabled, getLightControlList, getMaxIntensity, getMinIntensity, getTargetIntensity, getTransitionTime, isIntensityVariable, isTransitionAvailable, isTransitioning, notifyStateChange, notifyTargetIntensityChange, setEnabled, setMaxIntensity, setMinIntensity, setTargetIntensity, setTransitionTime, updateIntensityHigh, updateIntensityIntermediate, updateIntensityLow
 
Methods inherited from class jmri.implementation.AbstractNamedBean
addPropertyChangeListener, addPropertyChangeListener, firePropertyChange, getComment, getDisplayName, getListenerRef, getListenerRefs, getNumPropertyChangeListeners, getProperty, getPropertyChangeListeners, getPropertyChangeListeners, getPropertyKeys, getSystemName, getUserName, removePropertyChangeListener, setComment, setProperty, setUserName, updateListenerRef
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface jmri.NamedBean
addPropertyChangeListener, addPropertyChangeListener, getComment, getDisplayName, getListenerRef, getListenerRefs, getNumPropertyChangeListeners, getProperty, getPropertyChangeListeners, getPropertyKeys, getSystemName, getUserName, removePropertyChangeListener, setComment, setProperty, setUserName, updateListenerRef
 

Constructor Detail

XNetLight

public XNetLight(XNetTrafficController tc,
                 XNetLightManager lm,
                 String systemName)
Create a Light object, with only system name.

'systemName' was previously validated in LnLightManager


XNetLight

public XNetLight(XNetTrafficController tc,
                 XNetLightManager lm,
                 String systemName,
                 String userName)
Create a Light object, with both system and user names.

'systemName' was previously validated in XNetLightManager

Method Detail

dispose

public void dispose()
Description copied from interface: NamedBean
Deactivate this object, so that it releases as many resources as possible and no longer effects others.

For example, if this object has listeners, after a call to this method it should no longer notify those listeners. Any native or system-wide resources it maintains should be released, including threads, files, etc.

It is an error to invoke any other methods on this object once dispose() has been called. Note, however, that there is no guarantee about behavior in that case.

Afterwards, references to this object may still exist elsewhere, preventing its garbage collection. But it's formally dead, and shouldn't be keeping any other objects alive. Therefore, this method should null out any references to other objects that this NamedBean contained.

Specified by:
dispose in interface NamedBean
Overrides:
dispose in class AbstractNamedBean

getState

public int getState()
Return the current state of this Light

Specified by:
getState in interface Light
Specified by:
getState in interface NamedBean
Overrides:
getState in class AbstractLight

setState

public void setState(int newState)
Set the current state of this Light This routine requests the hardware to change.

Specified by:
setState in interface Light
Specified by:
setState in interface NamedBean
Overrides:
setState in class AbstractLight

message

public void message(XNetReply l)
Description copied from interface: XNetListener
Member function that will be invoked by a XNetInterface implementation to forward a XNet message from the layout.

Specified by:
message in interface XNetListener
Parameters:
l - The received XNet message. Note that this same object may be presented to multiple users. It should not be modified here.

message

public void message(XNetMessage l)
Description copied from interface: XNetListener
Member function that will be invoked by a XNetInterface implementation to forward a XNet message sent to the layout. Normally, this function will do nothing.

Specified by:
message in interface XNetListener
Parameters:
l - The received XNet message. Note that this same object may be presented to multiple users. It should not be modified here.

notifyTimeout

public void notifyTimeout(XNetMessage msg)
Description copied from interface: XNetListener
Member function invoked by an XNetInterface implementation to notify * a sender that an outgoing message timed out and was dropped from the * queue.

Specified by:
notifyTimeout in interface XNetListener


Copyright © 1997 - 2011 JMRI Community.
JMRI, DecoderPro, PanelPro, SoundPro, DispatcherPro and associated logos are our trademarks.

Additional information on copyright, trademarks and licenses is linked here.
Site hosted by: Get JMRI Model Railroad Interface at SourceForge.net. Fast, secure and Free Open Source software downloads