# 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