[jboss-remoting-commits] JBoss Remoting SVN: r5847 - in remoting3/trunk/jboss-remoting/src/main/java/org/jboss/remoting3: remote and 1 other directory.
jboss-remoting-commits at lists.jboss.org
jboss-remoting-commits at lists.jboss.org
Fri Apr 9 09:37:43 EDT 2010
Author: david.lloyd at jboss.com
Date: 2010-04-09 09:37:42 -0400 (Fri, 09 Apr 2010)
New Revision: 5847
Modified:
remoting3/trunk/jboss-remoting/src/main/java/org/jboss/remoting3/ClientConnectorImpl.java
remoting3/trunk/jboss-remoting/src/main/java/org/jboss/remoting3/remote/InboundReplyExceptionTask.java
remoting3/trunk/jboss-remoting/src/main/java/org/jboss/remoting3/remote/InboundReplyTask.java
remoting3/trunk/jboss-remoting/src/main/java/org/jboss/remoting3/remote/InboundRequestTask.java
remoting3/trunk/jboss-remoting/src/main/java/org/jboss/remoting3/remote/OutboundReplyHandler.java
remoting3/trunk/jboss-remoting/src/main/java/org/jboss/remoting3/remote/OutboundRequestHandler.java
remoting3/trunk/jboss-remoting/src/main/java/org/jboss/remoting3/remote/RemoteConnectionHandler.java
Log:
Fix test failures
Modified: remoting3/trunk/jboss-remoting/src/main/java/org/jboss/remoting3/ClientConnectorImpl.java
===================================================================
--- remoting3/trunk/jboss-remoting/src/main/java/org/jboss/remoting3/ClientConnectorImpl.java 2010-04-09 13:06:00 UTC (rev 5846)
+++ remoting3/trunk/jboss-remoting/src/main/java/org/jboss/remoting3/ClientConnectorImpl.java 2010-04-09 13:37:42 UTC (rev 5847)
@@ -23,7 +23,9 @@
package org.jboss.remoting3;
import java.io.IOException;
+import java.io.ObjectInputStream;
import java.io.Serializable;
+import org.jboss.marshalling.FieldSetter;
import org.jboss.remoting3.spi.RemoteRequestHandler;
import org.jboss.remoting3.spi.RequestHandlerConnector;
import org.jboss.xnio.FutureResult;
@@ -34,7 +36,10 @@
private static final long serialVersionUID = -263585821458635701L;
+ private static final FieldSetter connectionSetter = FieldSetter.get(ClientConnectorImpl.class, "connection");
+
private transient final ClientContext clientContext;
+ private transient final Connection connection;
private final RequestHandlerConnector requestHandlerConnector;
private final EndpointImpl endpoint;
@@ -47,6 +52,7 @@
this.requestClass = requestClass;
this.replyClass = replyClass;
this.clientContext = clientContext;
+ connection = clientContext.getConnection();
}
public IoFuture<? extends Client<I, O>> getFutureClient() throws SecurityException {
@@ -57,7 +63,7 @@
final FutureResult<Client<I, O>> futureResult = new FutureResult<Client<I, O>>();
requestHandlerConnector.createRequestHandler(new TranslatingResult<RemoteRequestHandler, Client<I, O>>(futureResult) {
protected Client<I, O> translate(final RemoteRequestHandler input) throws IOException {
- return endpoint.createClient(input, requestClass, replyClass, classloader, RemotingContext.requireCurrent().getConnection());
+ return endpoint.createClient(input, requestClass, replyClass, classloader, connection);
}
});
return futureResult.getIoFuture();
@@ -69,4 +75,9 @@
}
return clientContext;
}
+
+ private void readObject(ObjectInputStream ois) throws ClassNotFoundException, IOException {
+ ois.defaultReadObject();
+ connectionSetter.set(this, RemotingContext.requireCurrent().getConnection());
+ }
}
Modified: remoting3/trunk/jboss-remoting/src/main/java/org/jboss/remoting3/remote/InboundReplyExceptionTask.java
===================================================================
--- remoting3/trunk/jboss-remoting/src/main/java/org/jboss/remoting3/remote/InboundReplyExceptionTask.java 2010-04-09 13:06:00 UTC (rev 5846)
+++ remoting3/trunk/jboss-remoting/src/main/java/org/jboss/remoting3/remote/InboundReplyExceptionTask.java 2010-04-09 13:37:42 UTC (rev 5847)
@@ -48,10 +48,11 @@
replyHandler = outboundRequest.getInboundReplyHandler();
oldByteInput = outboundRequest.getByteInput();
}
+ final RemoteConnectionHandler connectionHandler = remoteConnectionHandler;
+ connectionHandler.getConnectionContext().beginContext();
try {
final Object exception;
try {
- final RemoteConnectionHandler connectionHandler = remoteConnectionHandler;
final Unmarshaller unmarshaller = connectionHandler.getMarshallerFactory().createUnmarshaller(connectionHandler.getMarshallingConfiguration());
unmarshaller.start(outboundRequest.getByteInput());
exception = unmarshaller.readObject();
@@ -76,6 +77,7 @@
if (oldByteInput != null) {
oldByteInput.pushEof();
}
+ connectionHandler.getConnectionContext().endContext();
}
}
}
Modified: remoting3/trunk/jboss-remoting/src/main/java/org/jboss/remoting3/remote/InboundReplyTask.java
===================================================================
--- remoting3/trunk/jboss-remoting/src/main/java/org/jboss/remoting3/remote/InboundReplyTask.java 2010-04-09 13:06:00 UTC (rev 5846)
+++ remoting3/trunk/jboss-remoting/src/main/java/org/jboss/remoting3/remote/InboundReplyTask.java 2010-04-09 13:37:42 UTC (rev 5847)
@@ -51,20 +51,25 @@
final Object reply;
try {
final RemoteConnectionHandler connectionHandler = remoteConnectionHandler;
- final Unmarshaller unmarshaller = connectionHandler.getMarshallerFactory().createUnmarshaller(connectionHandler.getMarshallingConfiguration());
+ connectionHandler.getConnectionContext().beginContext();
try {
- log.trace("Unmarshalling inbound reply");
- unmarshaller.start(outboundRequest.getByteInput());
- final RemoteConnectionHandler old = RemoteConnectionHandler.setCurrent(connectionHandler);
+ final Unmarshaller unmarshaller = connectionHandler.getMarshallerFactory().createUnmarshaller(connectionHandler.getMarshallingConfiguration());
try {
- reply = unmarshaller.readObject();
- unmarshaller.close();
+ log.trace("Unmarshalling inbound reply");
+ unmarshaller.start(outboundRequest.getByteInput());
+ final RemoteConnectionHandler old = RemoteConnectionHandler.setCurrent(connectionHandler);
+ try {
+ reply = unmarshaller.readObject();
+ unmarshaller.close();
+ } finally {
+ RemoteConnectionHandler.setCurrent(old);
+ }
+ log.trace("Unmarshalled inbound reply %s", reply);
} finally {
- RemoteConnectionHandler.setCurrent(old);
+ IoUtils.safeClose(unmarshaller);
}
- log.trace("Unmarshalled inbound reply %s", reply);
} finally {
- IoUtils.safeClose(unmarshaller);
+ connectionHandler.getConnectionContext().endContext();
}
} catch (IOException e) {
log.trace(e, "Unmarshalling inbound reply failed");
Modified: remoting3/trunk/jboss-remoting/src/main/java/org/jboss/remoting3/remote/InboundRequestTask.java
===================================================================
--- remoting3/trunk/jboss-remoting/src/main/java/org/jboss/remoting3/remote/InboundRequestTask.java 2010-04-09 13:06:00 UTC (rev 5846)
+++ remoting3/trunk/jboss-remoting/src/main/java/org/jboss/remoting3/remote/InboundRequestTask.java 2010-04-09 13:37:42 UTC (rev 5847)
@@ -53,21 +53,27 @@
inboundRequest.setReplyHandler(replyHandler = new OutboundReplyHandler(inboundRequest, rid));
}
final Object request;
+ final RemoteConnectionHandler connectionHandler = remoteConnectionHandler;
try {
- final Unmarshaller unmarshaller = remoteConnectionHandler.getMarshallerFactory().createUnmarshaller(remoteConnectionHandler.getMarshallingConfiguration());
+ connectionHandler.getConnectionContext().beginContext();
try {
- log.trace("Unmarshalling inbound request");
- unmarshaller.start(inboundRequest.getByteInput());
- final RemoteConnectionHandler old = RemoteConnectionHandler.setCurrent(remoteConnectionHandler);
+ final Unmarshaller unmarshaller = connectionHandler.getMarshallerFactory().createUnmarshaller(connectionHandler.getMarshallingConfiguration());
try {
- request = unmarshaller.readObject();
- unmarshaller.close();
+ log.trace("Unmarshalling inbound request");
+ unmarshaller.start(inboundRequest.getByteInput());
+ final RemoteConnectionHandler old = RemoteConnectionHandler.setCurrent(connectionHandler);
+ try {
+ request = unmarshaller.readObject();
+ unmarshaller.close();
+ } finally {
+ RemoteConnectionHandler.setCurrent(old);
+ }
+ log.trace("Unmarshalled inbound request %s", request);
} finally {
- RemoteConnectionHandler.setCurrent(old);
+ IoUtils.safeClose(unmarshaller);
}
- log.trace("Unmarshalled inbound request %s", request);
} finally {
- IoUtils.safeClose(unmarshaller);
+ connectionHandler.getConnectionContext().endContext();
}
} catch (IOException e) {
log.trace(e, "Unmarshalling inbound request failed");
@@ -83,7 +89,7 @@
throw e;
}
final InboundClient inboundClient;
- final IntKeyMap<InboundClient> inboundClients = remoteConnectionHandler.getInboundClients();
+ final IntKeyMap<InboundClient> inboundClients = connectionHandler.getInboundClients();
synchronized (inboundClients) {
inboundClient = inboundClients.get(cid);
}
Modified: remoting3/trunk/jboss-remoting/src/main/java/org/jboss/remoting3/remote/OutboundReplyHandler.java
===================================================================
--- remoting3/trunk/jboss-remoting/src/main/java/org/jboss/remoting3/remote/OutboundReplyHandler.java 2010-04-09 13:06:00 UTC (rev 5846)
+++ remoting3/trunk/jboss-remoting/src/main/java/org/jboss/remoting3/remote/OutboundReplyHandler.java 2010-04-09 13:37:42 UTC (rev 5847)
@@ -60,6 +60,7 @@
if (! done.getAndSet(true)) {
final RemoteConnectionHandler connectionHandler = inboundRequest.getRemoteConnectionHandler();
boolean ok = false;
+ connectionHandler.getConnectionContext().beginContext();
try {
final Marshaller marshaller = connectionHandler.getMarshallerFactory().createMarshaller(connectionHandler.getMarshallingConfiguration());
marshaller.start(new NioByteOutput(new OutboundReplyBufferWriter(inboundRequest, rid, true)));
@@ -72,6 +73,7 @@
}
ok = true;
} finally {
+ connectionHandler.getConnectionContext().endContext();
if (! ok) {
// attempt to send an exception abort
final Pool<ByteBuffer> bufferPool = connectionHandler.getBufferPool();
Modified: remoting3/trunk/jboss-remoting/src/main/java/org/jboss/remoting3/remote/OutboundRequestHandler.java
===================================================================
--- remoting3/trunk/jboss-remoting/src/main/java/org/jboss/remoting3/remote/OutboundRequestHandler.java 2010-04-09 13:06:00 UTC (rev 5846)
+++ remoting3/trunk/jboss-remoting/src/main/java/org/jboss/remoting3/remote/OutboundRequestHandler.java 2010-04-09 13:37:42 UTC (rev 5847)
@@ -57,6 +57,7 @@
outboundRequests.put(rid, outboundRequest);
}
final NioByteOutput byteOutput = new NioByteOutput(new OutboundRequestBufferWriter(outboundRequest, rid));
+ connectionHandler.getConnectionContext().beginContext();
try {
log.trace("Starting sending request %s for %s", request, Integer.valueOf(rid));
final Marshaller marshaller = connectionHandler.getMarshallerFactory().createMarshaller(connectionHandler.getMarshallingConfiguration());
@@ -89,6 +90,8 @@
} catch (IOException e1) {
log.trace("Send failed: %s", e1);
}
+ } finally {
+ connectionHandler.getConnectionContext().endContext();
}
return outboundRequest;
}
Modified: remoting3/trunk/jboss-remoting/src/main/java/org/jboss/remoting3/remote/RemoteConnectionHandler.java
===================================================================
--- remoting3/trunk/jboss-remoting/src/main/java/org/jboss/remoting3/remote/RemoteConnectionHandler.java 2010-04-09 13:06:00 UTC (rev 5846)
+++ remoting3/trunk/jboss-remoting/src/main/java/org/jboss/remoting3/remote/RemoteConnectionHandler.java 2010-04-09 13:37:42 UTC (rev 5847)
@@ -31,7 +31,6 @@
import org.jboss.marshalling.Marshalling;
import org.jboss.marshalling.MarshallingConfiguration;
import org.jboss.marshalling.util.IntKeyMap;
-import org.jboss.remoting3.CloseHandler;
import org.jboss.remoting3.ClosingCloseHandler;
import org.jboss.remoting3.IndeterminateOutcomeException;
import org.jboss.remoting3.ServiceOpenException;
More information about the jboss-remoting-commits
mailing list