# Class ParallelNioSender

java.lang.Object
org.apache.catalina.tribes.transport.AbstractSender
org.apache.catalina.tribes.transport.nio.ParallelNioSender

All Implemented Interfaces:
  `DataSender`, `MultiPointSender`

public class ParallelNioSender extends AbstractSender implements MultiPointSender

## Field Summary

Fields
Modifier and Type
Field
Description
`protected final HashMap<Member,NioSender>`
`nioSenders`
`protected final Selector`
`selector`
`protected final long`
`selectTimeout`
`protected static final StringManager`
`sm`

## Constructor Summary

Constructors
Constructor
Description
`ParallelNioSender()`

## Method Summary

Modifier and Type
Method
Description
`void`
`add(Member member)`
Send to the specified member.
`void`
`connect()`
Connect.
`void`
`disconnect()`
Disconnect.
`protected void`
`finalize()`
`boolean`
`keepalive()`
Keepalive.
`void`
`remove(Member member)`
Stop sending to the specified member.
`void`
`sendMessage(Member[] destination, ChannelMessage msg)`
Send the specified message.

### Methods inherited from class org.apache.catalina.tribes.transport.AbstractSender

`getAddress, getAttempt, getConnectTime, getDestination, getDirectBuffer, getKeepAliveCount, getKeepAliveTime, getMaxRetryAttempts, getOoBInline, getPort, getRequestCount, getRxBufSize, getSoKeepAlive, getSoLingerOn, getSoLingerTime, getSoReuseAddress, getSoTrafficClass, getTcpNoDelay, getThrowOnFailedAck, getTimeout, getTxBufSize, getUdpPort, getUdpRxBufSize, getUdpTxBufSize, isConnected, isUdpBased, setAddress, setAttempt, setConnected, setConnectTime, setDestination, setDirectBuffer, setKeepAliveCount, setKeepAliveTime, setMaxRetryAttempts, setOoBInline, setPort, setRequestCount, setRxBufSize, setSoKeepAlive, setSoLingerOn, setSoLingerTime, setSoReuseAddress, setSoTrafficClass, setTcpNoDelay, setThrowOnFailedAck, setTimeout, setTxBufSize, setUdpBased, setUdpPort, setUdpRxBufSize, setUdpTxBufSize, transferProperties`

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

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

### Methods inherited from interface org.apache.catalina.tribes.transport.DataSender

`getConnectTime, getRequestCount, isConnected, setKeepAliveCount, setKeepAliveTime, setRxBufSize, setTimeout, setTxBufSize`

### Methods inherited from interface org.apache.catalina.tribes.transport.MultiPointSender

`setDirectBuffer, setMaxRetryAttempts`

## Field Details

### sm

protected static final StringManager sm

### selectTimeout

protected final long selectTimeout

See Also:
  - Constant Field Values

### selector

protected final Selector selector

### nioSenders

protected final HashMap<Member,NioSender> nioSenders

## Constructor Details

### ParallelNioSender

public ParallelNioSender() throws IOException

Throws:
  `IOException`

## Method Details

### sendMessage

public void sendMessage(Member[] destination, ChannelMessage msg) throws ChannelException
Description copied from interface: `MultiPointSender`
Send the specified message.

Specified by:
  `sendMessage` in interface `MultiPointSender`
Parameters:
  `destination` - the message destinations
  `msg` - the data to send
Throws:
  `ChannelException` - if an error occurs

### connect

public void connect()
Description copied from interface: `DataSender`
Connect.

Specified by:
  `connect` in interface `DataSender`

### add

public void add(Member member)
Description copied from interface: `MultiPointSender`
Send to the specified member.

Specified by:
  `add` in interface `MultiPointSender`
Parameters:
  `member` - the member

### remove

public void remove(Member member)
Description copied from interface: `MultiPointSender`
Stop sending to the specified member.

Specified by:
  `remove` in interface `MultiPointSender`
Parameters:
  `member` - the member

### disconnect

public void disconnect()
Description copied from interface: `DataSender`
Disconnect.

Specified by:
  `disconnect` in interface `DataSender`

### finalize

protected void finalize() throws Throwable

Overrides:
  `finalize` in class `Object`
Throws:
  `Throwable`

### keepalive

public boolean keepalive()
Description copied from interface: `DataSender`
Keepalive.

Specified by:
  `keepalive` in interface `DataSender`
Overrides:
  `keepalive` in class `AbstractSender`
Returns:
  `true` if kept alive