* Send data to one member
* @see org.apache.catalina.tribes.ChannelSender#sendMessage(org.apache.catalina.tribes.ChannelMessage, org.apache.catalina.tribes.Member[])
*/
+ @Override
public void sendMessage(ChannelMessage message, Member[] destination) throws ChannelException {
MultiPointSender sender = getTransport();
sender.sendMessage(destination,message);
*
* @see org.apache.catalina.tribes.ChannelSender#start()
*/
+ @Override
public void start() throws java.io.IOException {
getTransport().connect();
}
*
* @see org.apache.catalina.tribes.ChannelSender#stop()
*/
+ @Override
public synchronized void stop() {
getTransport().disconnect();
}
*
* @see org.apache.catalina.tribes.ChannelSender#add(org.apache.catalina.tribes.Member)
*/
+ @Override
public synchronized void add(Member member) {
getTransport().add(member);
}
*
* @see org.apache.catalina.tribes.ChannelSender#remove(org.apache.catalina.tribes.Member)
*/
+ @Override
public synchronized void remove(Member member) {
getTransport().remove(member);
}
}
}
+ @Override
public AbstractRxTask createRxTask() {
NioReplicationTask thread = new NioReplicationTask(this,this);
thread.setUseBufferPool(this.getUseBufferPool());
/**
* Start thread and listen
*/
+ @Override
public void run() {
try {
listen();
}
// loop forever waiting for work to do
+ @Override
public synchronized void run() {
if ( buffer == null ) {
int size = getRxBufSize();
reader.finish();
//register our OP_READ interest
Runnable r = new Runnable() {
+ @Override
public void run() {
try {
if (key.isValid()) {
reader.finish();
}
Runnable cx = new Runnable() {
+ @Override
public void run() {
if ( log.isTraceEnabled() )
log.trace("Cancelling key:"+key);
public PooledParallelSender() {
super();
}
-
+
+ @Override
public void sendMessage(Member[] destination, ChannelMessage message) throws ChannelException {
if ( !connected ) throw new ChannelException("Sender not connected.");
ParallelNioSender sender = (ParallelNioSender)getSender();