Package jmri.jmrit.withrottle
Class DeviceServer
java.lang.Object
jmri.jmrit.withrottle.DeviceServer
- All Implemented Interfaces:
Runnable,EventListener,ControllerInterface,ThrottleControllerListener
public class DeviceServer
extends Object
implements Runnable, ThrottleControllerListener, ControllerInterface
-
Field Summary
FieldsModifier and TypeFieldDescription(package private) String(package private) String(package private) BufferedReader(package private) final boolean(package private) final boolean(package private) final boolean(package private) final boolean(package private) HashMap<Character,MultiThrottle> (package private) String(package private) PrintStream(package private) final String(package private) ThrottleController(package private) ThrottleController -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidAdd a DeviceListenervoidvoidGet the Roster ID String.getName()getUDID()static Stringstatic StringvoidnotifyControllerAddressDeclined(ThrottleController tc, DccLocoAddress address, String reason) System has declined the address request, may be an in-use address.voidvoidvoidRemove a DeviceListenervoidrun()voidsendAlertMessage(String message) Send an Alert message (simple text string) to this clientvoidsendInfoMessage(String message) Send an Info message (simple text string) to this clientvoidsendPacketToDevice(String message) Called by various Controllers to send a string message to a connected device.Format a package to be sent to the device for roster list selections.voidstartEKG()voidstopEKG()
-
Field Details
-
newLine
-
in
-
out
-
deviceName
-
deviceUDID
-
throttleController
-
secondThrottleController
-
multiThrottles
-
isTrackPowerAllowed
-
isTurnoutAllowed
-
isRouteAllowed
-
isClockDisplayed
-
railroadName
-
-
Constructor Details
-
DeviceServer
DeviceServer(Socket socket, DeviceManager manager)
-
-
Method Details
-
run
-
closeThrottles
-
closeSocket
-
startEKG
-
stopEKG
-
getUDID
-
getName
-
getCurrentAddressString
-
getCurrentRosterIdString
Get the Roster ID String.- Returns:
- roster ID string.
- Since:
- 4.15.4
-
getWiTVersion
-
getWebServerPort
-
sendPacketToDevice
Called by various Controllers to send a string message to a connected device. Appends a newline to the end.- Specified by:
sendPacketToDevicein interfaceControllerInterface- Parameters:
message- The string to send.
-
sendAlertMessage
Send an Alert message (simple text string) to this client- Specified by:
sendAlertMessagein interfaceControllerInterface- Parameters:
message- Format: HMmessage
-
sendInfoMessage
Send an Info message (simple text string) to this client- Specified by:
sendInfoMessagein interfaceControllerInterface- Parameters:
message- Format: Hmmessage
-
addDeviceListener
Add a DeviceListener- Parameters:
l- handle for listener to add
-
removeDeviceListener
Remove a DeviceListener- Parameters:
l- listener to remove
-
notifyControllerAddressFound
- Specified by:
notifyControllerAddressFoundin interfaceThrottleControllerListener
-
notifyControllerAddressReleased
- Specified by:
notifyControllerAddressReleasedin interfaceThrottleControllerListener
-
notifyControllerAddressDeclined
public void notifyControllerAddressDeclined(ThrottleController tc, DccLocoAddress address, String reason) System has declined the address request, may be an in-use address. Need to clear the address from the proper multiThrottle.- Specified by:
notifyControllerAddressDeclinedin interfaceThrottleControllerListener- Parameters:
tc- The throttle controller that was listening for a response to an address requestaddress- The address to send a cancel toreason- The reason the request was declined, to be sent back to client
-
sendRoster
Format a package to be sent to the device for roster list selections.- Returns:
- String containing a formatted list of some of each RosterEntry's info. Include a header with the length of the string to be received.
-