You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by kf...@apache.org on 2015/05/21 11:58:49 UTC
svn commit: r1680797 - in
/tomcat/trunk/java/org/apache/catalina/tribes/transport/nio:
LocalStrings.properties NioReceiver.java NioReplicationTask.java
NioSender.java ParallelNioSender.java PooledParallelSender.java
Author: kfujino
Date: Thu May 21 09:58:49 2015
New Revision: 1680797
URL: http://svn.apache.org/r1680797
Log:
Use StringManager to provide i18n support in the org.apache.catalina.tribes.transport.nio package.
Added:
tomcat/trunk/java/org/apache/catalina/tribes/transport/nio/LocalStrings.properties (with props)
Modified:
tomcat/trunk/java/org/apache/catalina/tribes/transport/nio/NioReceiver.java
tomcat/trunk/java/org/apache/catalina/tribes/transport/nio/NioReplicationTask.java
tomcat/trunk/java/org/apache/catalina/tribes/transport/nio/NioSender.java
tomcat/trunk/java/org/apache/catalina/tribes/transport/nio/ParallelNioSender.java
tomcat/trunk/java/org/apache/catalina/tribes/transport/nio/PooledParallelSender.java
Added: tomcat/trunk/java/org/apache/catalina/tribes/transport/nio/LocalStrings.properties
URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/tribes/transport/nio/LocalStrings.properties?rev=1680797&view=auto
==============================================================================
--- tomcat/trunk/java/org/apache/catalina/tribes/transport/nio/LocalStrings.properties (added)
+++ tomcat/trunk/java/org/apache/catalina/tribes/transport/nio/LocalStrings.properties Thu May 21 09:58:49 2015
@@ -0,0 +1,53 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+nioReceiver.alreadyStarted=ServerSocketChannel already started
+nioReceiver.cleanup.fail=Unable to cleanup on selector close
+nioReceiver.clientDisconnect=Replication client disconnected, error when polling key. Ignoring client.
+nioReceiver.requestError=Unable to process request in NioReceiver
+nioReceiver.run.fail=Unable to run replication listener
+nioReceiver.start.fail=Unable to start cluster receiver
+nioReceiver.stop.fail=Unable to close cluster receiver selector
+nioReceiver.stop.threadRunning=The NioReceiver thread did not stop in a timely manner. Errors may be observed when the selector is closed.
+nioReceiver.threadpool.fail=ThreadPool cannot be initialized. Listener not started.
+nioReceiver.threadsExhausted=Channel key is registered, but has had no interest ops for the last [{0}] ms. (cancelled: [{1}]):[{2}] last access:[{3} Possible cause: all threads used, perform thread dump
+nioReplicationTask.unable.drainChannel.ioe=IOException in replication worker, unable to drain channel. Probable cause: Keep alive socket closed[{0}].
+nioReplicationTask.exception.drainChannel=Exception caught in TcpReplicationThread.drainChannel.
+nioReplicationTask.process.clusterMsg.failed=Processing of cluster message failed.
+nioReplicationTask.error.register.key=Error registering key for read:{0}
+nioReplicationTask.unable.ack=Unable to send ACK back through channel, channel disconnected?: {0}
+nioSender.sender.disconnected=Sender has been disconnected, can't selection key.
+nioSender.key.inValid=Key is not valid, it must have been cancelled.
+nioSender.unknown.state=Data is in unknown state. readyOps={0}
+nioSender.unable.receive.ack=Unable to receive an ack message. EOF on socket channel has been reached.
+nioSender.receive.failedAck=Received a failed ack:org.apache.catalina.tribes.transport.Constants.FAIL_ACK_DATA
+nioSender.not.connected=NioSender is not connected, this should not occur.
+nioSender.already.connected=NioSender is already in connected state.
+nioSender.datagram.already.established=Datagram channel has already been established. Connection might be in progress.
+nioSender.socketChannel.already.established=Socket channel has already been established. Connection might be in progress.
+nioSender.unable.disconnect=Unable to disconnect NioSender. msg={0}
+parallelNioSender.send.failed=Parallel NIO send failed.
+parallelNioSender.operation.timedout=Operation has timed out({0} ms.).
+parallelNioSender.send.fail.retrying=Member send is failing for:{0} ; Setting to suspect and retrying.
+parallelNioSender.send.fail=Member send is failing for:{0} ; Setting to suspect.
+parallelNioSender.sender.disconnected.notRetry=Not retrying send for:{0}; Sender is disconnected.
+parallelNioSender.sender.disconnected.sendFailed=Send failed, and sender is disconnected. Not retrying.
+parallelNioSender.sendFailed.attempt=Send failed, attempt:{0} max:{1}
+parallelNioSender.unable.setup.NioSender=Unable to setup NioSender.
+parallelNioSender.error.keepalive=Error during keepalive test for sender:{0}
+pooledParallelSender.sender.disconnected=Sender not connected.
+pooledParallelSender.unable.retrieveSender.timeout=Unable to retrieve a data sender, time out({0} ms) error.
+pooledParallelSender.unable.retrieveSender=Unable to retrieve a sender from the sender pool
+pooledParallelSender.unable.open=Unable to open NIO selector.
\ No newline at end of file
Propchange: tomcat/trunk/java/org/apache/catalina/tribes/transport/nio/LocalStrings.properties
------------------------------------------------------------------------------
svn:eol-style = native
Modified: tomcat/trunk/java/org/apache/catalina/tribes/transport/nio/NioReceiver.java
URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/tribes/transport/nio/NioReceiver.java?rev=1680797&r1=1680796&r2=1680797&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/catalina/tribes/transport/nio/NioReceiver.java (original)
+++ tomcat/trunk/java/org/apache/catalina/tribes/transport/nio/NioReceiver.java Thu May 21 09:58:49 2015
@@ -34,7 +34,6 @@ import java.util.concurrent.atomic.Atomi
import org.apache.catalina.tribes.io.ObjectReader;
import org.apache.catalina.tribes.transport.AbstractRxTask;
-import org.apache.catalina.tribes.transport.Constants;
import org.apache.catalina.tribes.transport.ReceiverBase;
import org.apache.catalina.tribes.transport.RxTaskPool;
import org.apache.catalina.tribes.util.ExceptionUtils;
@@ -49,8 +48,7 @@ public class NioReceiver extends Receive
/**
* The string manager for this package.
*/
- protected static final StringManager sm =
- StringManager.getManager(Constants.Package);
+ protected static final StringManager sm = StringManager.getManager(NioReceiver.class);
private volatile boolean running = false;
@@ -80,7 +78,7 @@ public class NioReceiver extends Receive
try {
setPool(new RxTaskPool(getMaxThreads(),getMinThreads(),this));
} catch (Exception x) {
- log.fatal(sm.getString("NioReceiver.threadpool.fail"), x);
+ log.fatal(sm.getString("nioReceiver.threadpool.fail"), x);
if ( x instanceof IOException ) throw (IOException)x;
else throw new IOException(x.getMessage());
}
@@ -91,7 +89,7 @@ public class NioReceiver extends Receive
t.setDaemon(true);
t.start();
} catch (Exception x) {
- log.fatal(sm.getString("NioReceiver.start.fail"), x);
+ log.fatal(sm.getString("nioReceiver.start.fail"), x);
if ( x instanceof IOException ) throw (IOException)x;
else throw new IOException(x.getMessage());
}
@@ -211,7 +209,7 @@ public class NioReceiver extends Receive
if (delta > getTimeout() && (!ka.isAccessed())) {
if (log.isWarnEnabled())
log.warn(sm.getString(
- "NioReceiver.threadsExhausted",
+ "nioReceiver.threadsExhausted",
Integer.valueOf(getTimeout()),
Boolean.valueOf(ka.isCancelled()),
key,
@@ -239,7 +237,7 @@ public class NioReceiver extends Receive
*/
protected void listen() throws Exception {
if (doListen()) {
- log.warn(sm.getString("NioReceiver.alreadyStarted"));
+ log.warn(sm.getString("nioReceiver.alreadyStarted"));
return;
}
@@ -309,10 +307,10 @@ public class NioReceiver extends Receive
} catch (java.nio.channels.ClosedSelectorException cse) {
// ignore is normal at shutdown or stop listen socket
} catch (java.nio.channels.CancelledKeyException nx) {
- log.warn(sm.getString("NioReceiver.clientDisconnect"));
+ log.warn(sm.getString("nioReceiver.clientDisconnect"));
} catch (Throwable t) {
ExceptionUtils.handleThrowable(t);
- log.error(sm.getString("NioReceiver.requestError"), t);
+ log.error(sm.getString("nioReceiver.requestError"), t);
}
}
@@ -349,11 +347,11 @@ public class NioReceiver extends Receive
count ++;
}
if (running) {
- log.warn(sm.getString("NioReceiver.stop.threadRunning"));
+ log.warn(sm.getString("nioReceiver.stop.threadRunning"));
}
closeSelector();
} catch (Exception x) {
- log.error(sm.getString("NioReceiver.stop.fail"), x);
+ log.error(sm.getString("nioReceiver.stop.fail"), x);
} finally {
this.selector.set(null);
}
@@ -374,7 +372,7 @@ public class NioReceiver extends Receive
}
} catch (IOException ignore){
if (log.isWarnEnabled()) {
- log.warn(sm.getString("NioReceiver.cleanup.fail"), ignore);
+ log.warn(sm.getString("nioReceiver.cleanup.fail"), ignore);
}
} catch (ClosedSelectorException ignore){
// Ignore
@@ -414,7 +412,7 @@ public class NioReceiver extends Receive
try {
listen();
} catch (Exception x) {
- log.error(sm.getString("NioReceiver.run.fail"), x);
+ log.error(sm.getString("nioReceiver.run.fail"), x);
} finally {
running = false;
}
Modified: tomcat/trunk/java/org/apache/catalina/tribes/transport/nio/NioReplicationTask.java
URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/tribes/transport/nio/NioReplicationTask.java?rev=1680797&r1=1680796&r2=1680797&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/catalina/tribes/transport/nio/NioReplicationTask.java (original)
+++ tomcat/trunk/java/org/apache/catalina/tribes/transport/nio/NioReplicationTask.java Thu May 21 09:58:49 2015
@@ -37,6 +37,7 @@ import org.apache.catalina.tribes.io.Obj
import org.apache.catalina.tribes.transport.AbstractRxTask;
import org.apache.catalina.tribes.transport.Constants;
import org.apache.catalina.tribes.util.Logs;
+import org.apache.catalina.tribes.util.StringManager;
import org.apache.juli.logging.Log;
import org.apache.juli.logging.LogFactory;
@@ -53,6 +54,7 @@ import org.apache.juli.logging.LogFactor
public class NioReplicationTask extends AbstractRxTask {
private static final Log log = LogFactory.getLog(NioReplicationTask.class);
+ protected static final StringManager sm = StringManager.getManager(NioReplicationTask.class);
private ByteBuffer buffer = null;
private SelectionKey key;
@@ -106,10 +108,10 @@ public class NioReplicationTask extends
} else if ( e instanceof IOException ) {
//dont spew out stack traces for IO exceptions unless debug is enabled.
if (log.isDebugEnabled()) log.debug ("IOException in replication worker, unable to drain channel. Probable cause: Keep alive socket closed["+e.getMessage()+"].", e);
- else log.warn ("IOException in replication worker, unable to drain channel. Probable cause: Keep alive socket closed["+e.getMessage()+"].");
+ else log.warn (sm.getString("nioReplicationTask.unable.drainChannel.ioe", e.getMessage()));
} else if ( log.isErrorEnabled() ) {
//this is a real error, log it.
- log.error("Exception caught in TcpReplicationThread.drainChannel.",e);
+ log.error(sm.getString("nioReplicationTask.exception.drainChannel"),e);
}
cancelKey(key);
}
@@ -213,10 +215,10 @@ public class NioReplicationTask extends
*/
if (ChannelData.sendAckSync(msgs[i].getOptions())) sendAck(key,(WritableByteChannel)channel,Constants.ACK_COMMAND,saddr);
}catch ( RemoteProcessException e ) {
- if ( log.isDebugEnabled() ) log.error("Processing of cluster message failed.",e);
+ if ( log.isDebugEnabled() ) log.error(sm.getString("nioReplicationTask.process.clusterMsg.failed"),e);
if (ChannelData.sendAckSync(msgs[i].getOptions())) sendAck(key,(WritableByteChannel)channel,Constants.FAIL_ACK_COMMAND,saddr);
}catch ( Exception e ) {
- log.error("Processing of cluster message failed.",e);
+ log.error(sm.getString("nioReplicationTask.process.clusterMsg.failed"),e);
if (ChannelData.sendAckSync(msgs[i].getOptions())) sendAck(key,(WritableByteChannel)channel,Constants.FAIL_ACK_COMMAND,saddr);
}
if ( getUseBufferPool() ) {
@@ -261,7 +263,7 @@ public class NioReplicationTask extends
log.trace("CKX Cancelling key:"+key);
} catch (Exception x) {
- log.error("Error registering key for read:"+key,x);
+ log.error(sm.getString("nioReplicationTask.error.register.key", key),x);
}
}
};
@@ -320,7 +322,7 @@ public class NioReplicationTask extends
((DatagramChannel)channel).socket().getInetAddress()));
}
} catch ( java.io.IOException x ) {
- log.warn("Unable to send ACK back through channel, channel disconnected?: "+x.getMessage());
+ log.warn(sm.getString("nioReplicationTask.unable.ack", x.getMessage()));
}
}
Modified: tomcat/trunk/java/org/apache/catalina/tribes/transport/nio/NioSender.java
URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/tribes/transport/nio/NioSender.java?rev=1680797&r1=1680796&r2=1680797&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/catalina/tribes/transport/nio/NioSender.java (original)
+++ tomcat/trunk/java/org/apache/catalina/tribes/transport/nio/NioSender.java Thu May 21 09:58:49 2015
@@ -30,6 +30,7 @@ import java.util.Arrays;
import org.apache.catalina.tribes.RemoteProcessException;
import org.apache.catalina.tribes.io.XByteBuffer;
import org.apache.catalina.tribes.transport.AbstractSender;
+import org.apache.catalina.tribes.util.StringManager;
import org.apache.juli.logging.Log;
import org.apache.juli.logging.LogFactory;
@@ -49,7 +50,7 @@ import org.apache.juli.logging.LogFactor
public class NioSender extends AbstractSender {
private static final Log log = LogFactory.getLog(NioSender.class);
-
+ protected static final StringManager sm = StringManager.getManager(NioSender.class);
protected Selector selector;
@@ -83,8 +84,8 @@ public class NioSender extends AbstractS
int ops = key.readyOps();
key.interestOps(key.interestOps() & ~ops);
//in case disconnect has been called
- if ((!isConnected()) && (!connecting)) throw new IOException("Sender has been disconnected, can't selection key.");
- if ( !key.isValid() ) throw new IOException("Key is not valid, it must have been cancelled.");
+ if ((!isConnected()) && (!connecting)) throw new IOException(sm.getString("nioSender.sender.disconnected"));
+ if ( !key.isValid() ) throw new IOException(sm.getString("nioSender.key.inValid"));
if ( key.isConnectable() ) {
if ( socketChannel.finishConnect() ) {
completeConnect();
@@ -124,8 +125,8 @@ public class NioSender extends AbstractS
}//end if
} else {
//unknown state, should never happen
- log.warn("Data is in unknown state. readyOps="+ops);
- throw new IOException("Data is in unknown state. readyOps="+ops);
+ log.warn(sm.getString("nioSender.unknown.state", ops));
+ throw new IOException(sm.getString("nioSender.unknown.state", ops));
}//end if
return false;
}
@@ -168,7 +169,7 @@ public class NioSender extends AbstractS
if ( current == null ) return true;
int read = isUdpBased()?dataChannel.read(readbuf) : socketChannel.read(readbuf);
//end of stream
- if ( read == -1 ) throw new IOException("Unable to receive an ack message. EOF on socket channel has been reached.");
+ if ( read == -1 ) throw new IOException(sm.getString("nioSender.unable.receive.ack"));
//no data read
else if ( read == 0 ) return false;
readbuf.flip();
@@ -178,7 +179,7 @@ public class NioSender extends AbstractS
byte[] ackcmd = ackbuf.extractDataPackage(true).getBytes();
boolean ack = Arrays.equals(ackcmd,org.apache.catalina.tribes.transport.Constants.ACK_DATA);
boolean fack = Arrays.equals(ackcmd,org.apache.catalina.tribes.transport.Constants.FAIL_ACK_DATA);
- if ( fack && getThrowOnFailedAck() ) throw new RemoteProcessException("Received a failed ack:org.apache.catalina.tribes.transport.Constants.FAIL_ACK_DATA");
+ if ( fack && getThrowOnFailedAck() ) throw new RemoteProcessException(sm.getString("nioSender.receive.failedAck"));
return ack || fack;
} else {
return false;
@@ -188,7 +189,7 @@ public class NioSender extends AbstractS
protected boolean write() throws IOException {
if ( (!isConnected()) || (this.socketChannel==null && this.dataChannel==null)) {
- throw new IOException("NioSender is not connected, this should not occur.");
+ throw new IOException(sm.getString("nioSender.not.connected"));
}
if ( current != null ) {
if ( remaining > 0 ) {
@@ -219,7 +220,7 @@ public class NioSender extends AbstractS
public synchronized void connect() throws IOException {
if ( connecting || isConnected()) return;
connecting = true;
- if ( isConnected() ) throw new IOException("NioSender is already in connected state.");
+ if ( isConnected() ) throw new IOException(sm.getString("nioSender.already.connected"));
if ( readbuf == null ) {
readbuf = getReadBuffer();
} else {
@@ -233,7 +234,7 @@ public class NioSender extends AbstractS
if (isUdpBased()) {
InetSocketAddress daddr = new InetSocketAddress(getAddress(),getUdpPort());
- if ( dataChannel != null ) throw new IOException("Datagram channel has already been established. Connection might be in progress.");
+ if ( dataChannel != null ) throw new IOException(sm.getString("nioSender.datagram.already.established"));
dataChannel = DatagramChannel.open();
configureSocket();
dataChannel.connect(daddr);
@@ -242,7 +243,7 @@ public class NioSender extends AbstractS
} else {
InetSocketAddress addr = new InetSocketAddress(getAddress(),getPort());
- if ( socketChannel != null ) throw new IOException("Socket channel has already been established. Connection might be in progress.");
+ if ( socketChannel != null ) throw new IOException(sm.getString("nioSender.socketChannel.already.established"));
socketChannel = SocketChannel.open();
configureSocket();
if ( socketChannel.connect(addr) ) {
@@ -306,8 +307,8 @@ public class NioSender extends AbstractS
}
}
} catch ( Exception x ) {
- log.error("Unable to disconnect NioSender. msg="+x.getMessage());
- if ( log.isDebugEnabled() ) log.debug("Unable to disconnect NioSender. msg="+x.getMessage(),x);
+ log.error(sm.getString("nioSender.unable.disconnect", x.getMessage()));
+ if ( log.isDebugEnabled() ) log.debug(sm.getString("nioSender.unable.disconnect", x.getMessage()),x);
}
}
Modified: tomcat/trunk/java/org/apache/catalina/tribes/transport/nio/ParallelNioSender.java
URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/tribes/transport/nio/ParallelNioSender.java?rev=1680797&r1=1680796&r2=1680797&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/catalina/tribes/transport/nio/ParallelNioSender.java (original)
+++ tomcat/trunk/java/org/apache/catalina/tribes/transport/nio/ParallelNioSender.java Thu May 21 09:58:49 2015
@@ -36,12 +36,14 @@ import org.apache.catalina.tribes.transp
import org.apache.catalina.tribes.transport.MultiPointSender;
import org.apache.catalina.tribes.transport.SenderState;
import org.apache.catalina.tribes.util.Logs;
+import org.apache.catalina.tribes.util.StringManager;
import org.apache.juli.logging.Log;
import org.apache.juli.logging.LogFactory;
public class ParallelNioSender extends AbstractSender implements MultiPointSender {
private static final Log log = LogFactory.getLog(ParallelNioSender.class);
+ protected static final StringManager sm = StringManager.getManager(ParallelNioSender.class);
protected final long selectTimeout = 5000; //default 5 seconds, same as send timeout
protected final Selector selector;
protected final HashMap<Member, NioSender> nioSenders = new HashMap<>();
@@ -77,7 +79,7 @@ public class ParallelNioSender extends A
int faulty = (cx == null)?0:cx.getFaultyMembers().length;
if ( cx == null ) {
if ( x instanceof ChannelException ) cx = (ChannelException)x;
- else cx = new ChannelException("Parallel NIO send failed.", x);
+ else cx = new ChannelException(sm.getString("parallelNioSender.send.failed"), x);
} else {
if (x instanceof ChannelException) {
cx.addFaultyMember(((ChannelException) x).getFaultyMembers());
@@ -94,10 +96,8 @@ public class ParallelNioSender extends A
}
if ( remaining > 0 ) {
//timeout has occurred
- ChannelException cxtimeout = new ChannelException(
- "Operation has timed out(" + getTimeout() + " ms.).");
- if ( cx==null ) cx = new ChannelException(
- "Operation has timed out(" + getTimeout() + " ms.).");
+ ChannelException cxtimeout = new ChannelException(sm.getString("parallelNioSender.operation.timedout", getTimeout()));
+ if ( cx==null ) cx = new ChannelException(sm.getString("parallelNioSender.operation.timedout", getTimeout()));
for (int i=0; i<senders.length; i++ ) {
if (!senders[i].isComplete()) {
cx.addFaultyMember(senders[i].getDestination(),cxtimeout);
@@ -159,20 +159,14 @@ public class ParallelNioSender extends A
if (state.isReady()) {
state.setSuspect();
if ( retry )
- log.warn("Member send is failing for:" +
- sender.getDestination().getName() +
- " ; Setting to suspect and retrying.");
+ log.warn(sm.getString("parallelNioSender.send.fail.retrying", sender.getDestination().getName()));
else
- log.warn("Member send is failing for:" +
- sender.getDestination().getName() +
- " ; Setting to suspect.", x);
+ log.warn(sm.getString("parallelNioSender.send.fail", sender.getDestination().getName()), x);
}
}
if ( !isConnected() ) {
- log.warn("Not retrying send for:" + sender.getDestination().getName() +
- "; Sender is disconnected.");
- ChannelException cx = new ChannelException(
- "Send failed, and sender is disconnected. Not retrying.", x);
+ log.warn(sm.getString("parallelNioSender.sender.disconnected.notRetry", sender.getDestination().getName()));
+ ChannelException cx = new ChannelException(sm.getString("parallelNioSender.sender.disconnected.sendFailed"), x);
cx.addFaultyMember(sender.getDestination(),x);
throw cx;
}
@@ -189,7 +183,7 @@ public class ParallelNioSender extends A
}
} else {
ChannelException cx = new ChannelException(
- "Send failed, attempt:" + sender.getAttempt() + " max:" + maxAttempts,
+ sm.getString("parallelNioSender.sendFailed.attempt", sender.getAttempt(), maxAttempts),
x);
cx.addFaultyMember(sender.getDestination(),x);
throw cx;
@@ -245,7 +239,7 @@ public class ParallelNioSender extends A
sender.setUdpBased(isUdpBased());
result[i] = sender;
}catch ( UnknownHostException x ) {
- if (cx == null) cx = new ChannelException("Unable to setup NioSender.", x);
+ if (cx == null) cx = new ChannelException(sm.getString("parallelNioSender.unable.setup.NioSender"), x);
cx.addFaultyMember(destination[i], x);
}
}
@@ -329,7 +323,7 @@ public class ParallelNioSender extends A
i.remove();
result = true;
}catch ( Exception x ) {
- log.warn("Error during keepalive test for sender:"+sender,x);
+ log.warn(sm.getString("parallelNioSender.error.keepalive", sender),x);
}
}
}
Modified: tomcat/trunk/java/org/apache/catalina/tribes/transport/nio/PooledParallelSender.java
URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/tribes/transport/nio/PooledParallelSender.java?rev=1680797&r1=1680796&r2=1680797&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/catalina/tribes/transport/nio/PooledParallelSender.java (original)
+++ tomcat/trunk/java/org/apache/catalina/tribes/transport/nio/PooledParallelSender.java Thu May 21 09:58:49 2015
@@ -24,8 +24,11 @@ import org.apache.catalina.tribes.Member
import org.apache.catalina.tribes.transport.AbstractSender;
import org.apache.catalina.tribes.transport.DataSender;
import org.apache.catalina.tribes.transport.PooledSender;
+import org.apache.catalina.tribes.util.StringManager;
public class PooledParallelSender extends PooledSender {
+ protected static final StringManager sm = StringManager.getManager(PooledParallelSender.class);
+
protected boolean connected = true;
public PooledParallelSender() {
super();
@@ -33,11 +36,12 @@ public class PooledParallelSender extend
@Override
public void sendMessage(Member[] destination, ChannelMessage message) throws ChannelException {
- if ( !connected ) throw new ChannelException("Sender not connected.");
+ if ( !connected ) throw new ChannelException(sm.getString("pooledParallelSender.sender.disconnected"));
ParallelNioSender sender = (ParallelNioSender)getSender();
if (sender == null) {
- ChannelException cx = new ChannelException("Unable to retrieve a data sender, time out("+getMaxWait()+" ms) error.");
- for (int i = 0; i < destination.length; i++) cx.addFaultyMember(destination[i], new NullPointerException("Unable to retrieve a sender from the sender pool"));
+ ChannelException cx = new ChannelException(sm.getString("pooledParallelSender.unable.retrieveSender.timeout", getMaxWait()));
+ for (int i = 0; i < destination.length; i++)
+ cx.addFaultyMember(destination[i], new NullPointerException(sm.getString("pooledParallelSender.unable.retrieveSender")));
throw cx;
} else {
try {
@@ -60,7 +64,7 @@ public class PooledParallelSender extend
AbstractSender.transferProperties(this,sender);
return sender;
} catch ( IOException x ) {
- throw new RuntimeException("Unable to open NIO selector.",x);
+ throw new RuntimeException(sm.getString("pooledParallelSender.unable.open"),x);
}
}
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org