jmri.jmrix.lenz.xntcp
Class XnTcpXNetPacketizer

java.lang.Object
  extended by jmri.jmrix.AbstractMRTrafficController
      extended by jmri.jmrix.lenz.XNetTrafficController
          extended by jmri.jmrix.lenz.XNetPacketizer
              extended by jmri.jmrix.lenz.xntcp.XnTcpXNetPacketizer
All Implemented Interfaces:
XNetInterface

public class XnTcpXNetPacketizer
extends XNetPacketizer

This is an extension of the XNetPacketizer to handle the device specific requirements of the XnTcp.

In particular, XnTcpXNetPacketizer counts the number of commands received.

Author:
Giorgio Terdina Copyright (C) 2008-2011, based on LIUSB packetizer by Paul Bender, Copyright (C) 2005

Nested Class Summary
 
Nested classes/interfaces inherited from class jmri.jmrix.AbstractMRTrafficController
AbstractMRTrafficController.RcvNotifier, AbstractMRTrafficController.XmtNotifier
 
Field Summary
 
Fields inherited from class jmri.jmrix.lenz.XNetTrafficController
mListenerMasks
 
Fields inherited from class jmri.jmrix.AbstractMRTrafficController
allowUnexpectedReply, AUTORETRYSTATE, cmdListeners, controller, flushReceiveChars, IDLESTATE, istream, mCurrentMode, mCurrentState, mLastSender, mWaitBeforePoll, NORMALMODE, NOTIFIEDSTATE, OKSENDMSGSTATE, ostream, POLLSTATE, PROGRAMINGMODE, rcvException, replyInDispatch, WAITMSGREPLYSTATE, WAITREPLYINNORMMODESTATE, WAITREPLYINPROGMODESTATE, waitTimePoll, xmtException, xmtRunnable
 
Fields inherited from interface jmri.jmrix.lenz.XNetInterface
ALL, COMMINFO, CONSIST, CS_INFO, FEEDBACK, INTERFACE, PROGRAMMING, THROTTLE
 
Constructor Summary
XnTcpXNetPacketizer(LenzCommandStation pCommandStation)
           
 
Method Summary
protected  void loadChars(AbstractMRReply msg, DataInputStream istream)
          Get characters from the input source, and fill a message.
 
Methods inherited from class jmri.jmrix.lenz.XNetPacketizer
addTrailerToOutput, portReadyToSend, sendXNetMessage, status
 
Methods inherited from class jmri.jmrix.lenz.XNetTrafficController
addXNetListener, endOfMessage, enterNormalMode, enterProgMode, forwardMessage, forwardReply, getCommandStation, getSystemConnectionMemo, handleTimeout, instance, newReply, pollMessage, pollReplyHandler, programmerIdle, removeXNetListener, sendHighPriorityXNetMessage, setInstance, setSystemConnectionMemo
 
Methods inherited from class jmri.jmrix.AbstractMRTrafficController
addHeaderToOutput, addListener, canReceive, connectionWarn, connectPort, disconnectPort, enterProgModeDelayTime, finalize, forwardToPort, getLastSender, getPortName, getSelfLock, handleOneIncomingReply, hasTimeouts, lengthOfByteStream, newRcvNotifier, notifyMessage, notifyReply, portWarn, portWarnTCP, readByteProtected, receiveLoop, removeListener, reportReceiveLoopException, resetTimeout, sendMessage, setAllowUnexpectedReply, terminate, transmitWait, waitForStartOfReply
 
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

XnTcpXNetPacketizer

public XnTcpXNetPacketizer(LenzCommandStation pCommandStation)
Method Detail

loadChars

protected void loadChars(AbstractMRReply msg,
                         DataInputStream istream)
                  throws IOException
Get characters from the input source, and fill a message.

Returns only when the message is complete.

Only used in the Receive thread.

Overrides:
loadChars in class XNetTrafficController
Parameters:
msg - message to fill
istream - character source.
Throws:
IOException - when presented by the input source.


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