Package org.apache.qpid.proton.engine.impl

# Class HandshakeSniffingTransportWrapper<T1 extends TransportWrapper,T2 extends TransportWrapper>

java.lang.Object
org.apache.qpid.proton.engine.impl.HandshakeSniffingTransportWrapper<T1,T2>

All Implemented Interfaces:
  `TransportInput`, `TransportOutput`, `TransportWrapper`

Direct Known Subclasses:
  `SslHandshakeSniffingTransportWrapper`

public abstract class HandshakeSniffingTransportWrapper<T1 extends TransportWrapper,T2 extends TransportWrapper> extends Object implements TransportWrapper

## Field Summary

Fields
Modifier and Type
Field
Description
`protected TransportWrapper`
`_selectedTransportWrapper`
`protected final T1`
`_wrapper1`
`protected final T2`
`_wrapper2`

## Constructor Summary

Constructors
Modifier
Constructor
Description
`protected`
`HandshakeSniffingTransportWrapper(T1 wrapper1, T2 wrapper2)`

## Method Summary

Modifier and Type
Method
Description
`protected abstract int`
`bufferSize()`
`int`
`capacity()`
`void`
`close_head()`
`void`
`close_tail()`
`ByteBuffer`
`head()`
`protected boolean`
`isDeterminationMade()`
`protected abstract void`
`makeDetermination(byte[] bytes)`
`int`
`pending()`
`void`
`pop(int bytes)`
`int`
`position()`
`void`
`process()`
`ByteBuffer`
`tail()`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Field Details

### _wrapper1

protected final T1 extends TransportWrapper _wrapper1

### _wrapper2

protected final T2 extends TransportWrapper _wrapper2

### _selectedTransportWrapper

protected TransportWrapper _selectedTransportWrapper

## Constructor Details

### HandshakeSniffingTransportWrapper

protected HandshakeSniffingTransportWrapper(T1 wrapper1, T2 wrapper2)

## Method Details

### capacity

public int capacity()

Specified by:
  `capacity` in interface `TransportInput`

### position

public int position()

Specified by:
  `position` in interface `TransportInput`

### tail

public ByteBuffer tail()

Specified by:
  `tail` in interface `TransportInput`

### bufferSize

protected abstract int bufferSize()

### makeDetermination

protected abstract void makeDetermination(byte[] bytes)

### process

public void process() throws TransportException

Specified by:
  `process` in interface `TransportInput`
Throws:
  `TransportException`

### close_tail

public void close_tail()

Specified by:
  `close_tail` in interface `TransportInput`

### pending

public int pending()

Specified by:
  `pending` in interface `TransportOutput`

### head

public ByteBuffer head()

Specified by:
  `head` in interface `TransportOutput`

### pop

public void pop(int bytes)

Specified by:
  `pop` in interface `TransportOutput`

### close_head

public void close_head()

Specified by:
  `close_head` in interface `TransportOutput`

### isDeterminationMade

protected boolean isDeterminationMade()