Package jmri.jmrix.openlcb
Class OlcbStringIO
java.lang.Object
jmri.implementation.AbstractNamedBean
jmri.implementation.AbstractStringIO
jmri.jmrix.openlcb.OlcbStringIO
- All Implemented Interfaces:
Comparable<NamedBean>,PropertyChangeProvider,NamedBean,StringIO
Send a message to the OpenLCB/LCC network
-
Nested Class Summary
Nested ClassesNested classes/interfaces inherited from interface jmri.NamedBean
NamedBean.BadNameException, NamedBean.BadSystemNameException, NamedBean.BadUserNameException, NamedBean.DisplayOptions, NamedBean.DuplicateSystemNameException -
Field Summary
FieldsModifier and TypeFieldDescription(package private) EventTable.EventTableEntryHolder(package private) OlcbAddress(package private) BitProducerConsumerFields inherited from class jmri.implementation.AbstractNamedBean
listenerRefs, mSystemName, registerFields inherited from interface jmri.NamedBean
DISPLAY_NAME_FORMAT, INCONSISTENT, PROPERTY_COMMENT, PROPERTY_ENABLED, PROPERTY_KNOWN_STATE, PROPERTY_STATE, PROPERTY_USERNAME, QUOTED_NAME_FORMAT, UNKNOWN -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected booleanCut long strings instead of throwing an exception?(package private) voidHelper function that will be invoked after construction once the properties have been loaded.getEventID(boolean isActive) getEventName(boolean isActive) Computes the display name of a given event to be entered into the Event Table.intGet the maximum length of string that this StringIO can handle.Get a recommended text for a tooltip when displaying the NamedBean, e.g. in a list or table.voidRequest an update on status by sending an OpenLCB message.protected voidsendStringToLayout(String value) Sends the string to the layout.voidUpdates event table entries when the user name changes.Methods inherited from class jmri.implementation.AbstractStringIO
compareSystemNameSuffix, getBeanType, getCommandedStringValue, getKnownStringValue, getState, setCommandedStringValue, setState, setStringMethods inherited from class jmri.implementation.AbstractNamedBean
addPropertyChangeListener, addPropertyChangeListener, addPropertyChangeListener, addPropertyChangeListener, describeState, dispose, equals, firePropertyChange, getComment, getDisplayName, getDisplayName, getListenerRef, getListenerRefs, getNumPropertyChangeListeners, getProperty, getPropertyChangeListeners, getPropertyChangeListeners, getPropertyChangeListenersByReference, getPropertyKeys, getSystemName, getUserName, hashCode, removeProperty, removePropertyChangeListener, removePropertyChangeListener, setComment, setProperty, toString, toStringSuffix, updateListenerRef, vetoableChangeMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface jmri.NamedBean
addPropertyChangeListener, addPropertyChangeListener, compareTo, describeState, dispose, getComment, getDisplayName, getDisplayName, getListenerRef, getListenerRefs, getNumPropertyChangeListeners, getProperty, getPropertyChangeListenersByReference, getPropertyKeys, getSystemName, getUsageReport, getUserName, removeProperty, setComment, setProperty, toString, updateListenerRef, vetoableChangeMethods inherited from interface jmri.beans.PropertyChangeProvider
addPropertyChangeListener, addPropertyChangeListener, getPropertyChangeListeners, getPropertyChangeListeners, removePropertyChangeListener, removePropertyChangeListener
-
Field Details
-
addrActive
-
pc
-
activeEventTableEntryHolder
-
-
Constructor Details
-
OlcbStringIO
-
-
Method Details
-
finishLoad
void finishLoad()Helper function that will be invoked after construction once the properties have been loaded. Used specifically for preventing double initialization when loading StringIO from XML. -
getEventName
Computes the display name of a given event to be entered into the Event Table.- Parameters:
isActive- left over from interface for Turnout and Sensor, this is ignored- Returns:
- user-visible string to represent this event.
-
getEventID
-
getRecommendedToolTip
Description copied from interface:NamedBeanGet a recommended text for a tooltip when displaying the NamedBean, e.g. in a list or table. By default, this is the comment from the NamedBean, on the theory that the system name and/or user name are being displayed directly. Specific system implementations may override that.- Returns:
- empty String if no recommendation.
-
setUserName
@OverridingMethodsMustInvokeSuper public void setUserName(String s) throws NamedBean.BadUserNameException Updates event table entries when the user name changes.- Specified by:
setUserNamein interfaceNamedBean- Overrides:
setUserNamein classAbstractNamedBean- Parameters:
s- new user name- Throws:
NamedBean.BadUserNameException- seeNamedBean
-
requestUpdateFromLayout
Request an update on status by sending an OpenLCB message. -
sendStringToLayout
Sends the string to the layout. The string [u]must not[/u] be longer than the value of getMaximumLength() unless that value is zero. Some microcomputers have little memory and it's very important that this method is never called with too long strings.For systems that don't provide another form of feedback, this call is responsible for setting the known state to the new commanded state, and firing all listeners.
- Specified by:
sendStringToLayoutin classAbstractStringIO- Parameters:
value- the desired string value- Throws:
JmriException- general error when setting the value fails
-
getMaximumLength
Get the maximum length of string that this StringIO can handle.- Returns:
- the maximum length or 0 if arbitrary lengths are accepted.
-
cutLongStrings
Cut long strings instead of throwing an exception? For example, if the StringIO is a display, it could be desired to accept too long strings. On the other hand, if the StringIO is used to send a command, a too long string is an error.- Specified by:
cutLongStringsin classAbstractStringIO- Returns:
- true if long strings should be cut
-