Package jmri.jmrix.lenz
Class XNetStreamPortController
- java.lang.Object
-
- jmri.jmrix.AbstractPortController
-
- jmri.jmrix.AbstractStreamPortController
-
- jmri.jmrix.lenz.XNetStreamPortController
-
- All Implemented Interfaces:
XNetPortController,PortAdapter
- Direct Known Subclasses:
Z21XNetStreamPortController
public class XNetStreamPortController extends AbstractStreamPortController implements XNetPortController
Abstract base for classes representing an XNet communications port
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class jmri.jmrix.AbstractPortController
AbstractPortController.Option
-
-
Field Summary
-
Fields inherited from class jmri.jmrix.AbstractStreamPortController
_name, input, output
-
Fields inherited from class jmri.jmrix.AbstractPortController
allowConnectionRecovery, manufacturerName, opened, option1Name, option2Name, option3Name, option4Name, options, reconnectinterval, reconnectMaxAttempts, reconnectMaxInterval
-
-
Constructor Summary
Constructors Constructor Description XNetStreamPortController()XNetStreamPortController(java.io.DataInputStream in, java.io.DataOutputStream out, java.lang.String pname)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidconfigure()Configure all of the other jmrix widgets needed to work with this adapter.XNetSystemConnectionMemogetSystemConnectionMemo()Get theSystemConnectionMemoassociated with this object.booleanhasTimeSlot()Indicate whether the Command Station is currently providing a timeslot to this port controller.booleanokToSend()Can the port accept additional characters?voidsetOutputBufferEmpty(boolean s)We need a way to say if the output buffer is empty or full this should only be set to false by external processes.voidsetTimeSlot(boolean timeslot)Set a variable indicating whether or not the command station is providing a timeslot.booleanstatus()Check that this object is ready to operate.-
Methods inherited from class jmri.jmrix.AbstractStreamPortController
connect, connect, dispose, getCurrentPortName, getInputStream, getOutputStream, recover
-
Methods inherited from class jmri.jmrix.AbstractPortController
closeConnection, configureOption1, configureOption2, configureOption3, configureOption4, getDisabled, getManufacturer, getOption1Name, getOption2Name, getOption3Name, getOption4Name, getOptionChoices, getOptionDisplayName, getOptions, getOptionState, getReconnectMaxAttempts, getReconnectMaxInterval, getSystemPrefix, getUserName, isDirty, isOptionAdvanced, isOptionTypePassword, isOptionTypeText, isRestartRequired, purgeStream, reconnect, reconnectFromLoop, resetupConnection, safeSleep, setClosed, setDisabled, setManufacturer, setOpened, setOptionState, setReconnectMaxAttempts, setReconnectMaxInterval, setSystemConnectionMemo, setSystemPrefix, setUserName
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface jmri.jmrix.PortAdapter
configureOption1, configureOption2, configureOption3, configureOption4, connect, dispose, getCurrentPortName, getDisabled, getInputStream, getManufacturer, getOption1Name, getOption2Name, getOption3Name, getOption4Name, getOptionChoices, getOptionDisplayName, getOptions, getOptionState, getOutputStream, getReconnectMaxAttempts, getReconnectMaxInterval, getSystemPrefix, getUserName, isDirty, isOptionAdvanced, isOptionTypePassword, isOptionTypeText, isRestartRequired, recover, setDisabled, setManufacturer, setOptionState, setReconnectMaxAttempts, setReconnectMaxInterval, setSystemConnectionMemo, setSystemPrefix, setUserName
-
-
-
-
Constructor Detail
-
XNetStreamPortController
public XNetStreamPortController(java.io.DataInputStream in, java.io.DataOutputStream out, java.lang.String pname)
-
XNetStreamPortController
public XNetStreamPortController()
-
-
Method Detail
-
configure
public void configure()
Description copied from interface:PortAdapterConfigure all of the other jmrix widgets needed to work with this adapter.- Specified by:
configurein interfacePortAdapter
-
getSystemConnectionMemo
public XNetSystemConnectionMemo getSystemConnectionMemo()
Description copied from class:AbstractPortControllerGet theSystemConnectionMemoassociated with this object.This method should only be overridden to ensure that a specific subclass of SystemConnectionMemo is returned. The recommended pattern is:
public MySystemConnectionMemo getSystemConnectionMemo() { return (MySystemConnectionMemo) super.getSystemConnectionMemo(); }- Specified by:
getSystemConnectionMemoin interfacePortAdapter- Overrides:
getSystemConnectionMemoin classAbstractPortController- Returns:
- the currently associated SystemConnectionMemo
-
status
public boolean status()
Check that this object is ready to operate. This is a question of configuration, not transient hardware status.- Specified by:
statusin interfacePortAdapter- Specified by:
statusin interfaceXNetPortController- Overrides:
statusin classAbstractPortController- Returns:
- true if OK, at least as far as known
-
okToSend
@OverridingMethodsMustInvokeSuper public boolean okToSend()
Can the port accept additional characters?- Specified by:
okToSendin interfaceXNetPortController- Returns:
- true if OK to send, else false.
-
hasTimeSlot
public boolean hasTimeSlot()
Indicate whether the Command Station is currently providing a timeslot to this port controller.- Specified by:
hasTimeSlotin interfaceXNetPortController- Returns:
- true if the Command Station is currently providing a timeslot.
-
setTimeSlot
public void setTimeSlot(boolean timeslot)
Set a variable indicating whether or not the command station is providing a timeslot.This method should be called with the paramter set to false if a "Command Station No Longer Providing a timeslot for communications" (01 05 04) is received.
This method should be called with the parameter set to true if a "Command Station is providing a timeslot for communications again." (01 07 06) is received.
- Specified by:
setTimeSlotin interfaceXNetPortController- Parameters:
timeslot- true if a timeslot is being sent, false otherwise.
-
setOutputBufferEmpty
public void setOutputBufferEmpty(boolean s)
We need a way to say if the output buffer is empty or full this should only be set to false by external processes.- Specified by:
setOutputBufferEmptyin interfaceXNetPortController- Parameters:
s- true to set buffer empty, else false.
-
-