com.mindbright.ssh2
Class SSH2TransportPDUPool

java.lang.Object
  extended bycom.mindbright.ssh2.SSH2DataBuffer
      extended bycom.mindbright.ssh2.SSH2TransportPDU
          extended bycom.mindbright.ssh2.SSH2TransportPDUPool

public class SSH2TransportPDUPool
extends SSH2TransportPDU

Implements a pool of PDUs which can be reused. This class holds a pool of PDUs and tries to reuse them whenever possible.


Nested Class Summary
protected  class SSH2TransportPDUPool.InPDU
           
protected  class SSH2TransportPDUPool.OutPDU
           
 
Field Summary
 
Fields inherited from class com.mindbright.ssh2.SSH2TransportPDU
factoryInstance, PACKET_DEFAULT_SIZE, PACKET_MAX_SIZE, PACKET_MIN_SIZE, padSize, pktDefaultSize, pktSize, pktType
 
Fields inherited from class com.mindbright.ssh2.SSH2DataBuffer
BOOLEAN_FALSE, BOOLEAN_TRUE, data, rPos, wPos
 
Constructor Summary
protected SSH2TransportPDUPool()
           
 
Method Summary
protected  SSH2TransportPDU createInPDU(int bufSize)
          Create a new PDU to use for incoming packets.
protected  SSH2TransportPDU createOutPDU(int pktType, int bufSize)
          Create a new PDU for an outgoing packet.
protected  void releaseIn(SSH2TransportPDUPool.InPDU pdu)
          Internal class which releases an incoming PDU.
protected  void releaseOut(SSH2TransportPDUPool.OutPDU pdu)
          Internal class which releases an outgoing PDU.
 
Methods inherited from class com.mindbright.ssh2.SSH2TransportPDU
checkMac, createIncomingPacket, createIncomingPacket, createOutgoingPacket, createOutgoingPacket, createTranceiverContext, createTranceiverContextImpl, getPayloadLength, getPayloadOffset, getType, makeCopy, readFrom, readNextNFrom, release, setFactoryInstance, setType, toString, writeTo
 
Methods inherited from class com.mindbright.ssh2.SSH2DataBuffer
getData, getMaxReadSize, getMaxWriteSize, getRPos, getWPos, readBigInt, readBigIntBits, readBoolean, readByte, readInt, readJavaString, readRaw, readRaw, readRestRaw, readString, readString, reset, setData, setRPos, setWPos, writeBigInt, writeBigIntBits, writeBoolean, writeByte, writeInt, writeRaw, writeRaw, writeString, writeString, writeString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

SSH2TransportPDUPool

protected SSH2TransportPDUPool()
Method Detail

createInPDU

protected SSH2TransportPDU createInPDU(int bufSize)
Description copied from class: SSH2TransportPDU
Create a new PDU to use for incoming packets.

Overrides:
createInPDU in class SSH2TransportPDU
Parameters:
bufSize - How many bytes it should have room for.

createOutPDU

protected SSH2TransportPDU createOutPDU(int pktType,
                                        int bufSize)
Description copied from class: SSH2TransportPDU
Create a new PDU for an outgoing packet.

Overrides:
createOutPDU in class SSH2TransportPDU
Parameters:
pktType - Type of packet to create.
bufSize - How many bytes it should have room for.

releaseIn

protected void releaseIn(SSH2TransportPDUPool.InPDU pdu)
Internal class which releases an incoming PDU.


releaseOut

protected void releaseOut(SSH2TransportPDUPool.OutPDU pdu)
Internal class which releases an outgoing PDU.