[jboss-remoting-commits] JBoss Remoting SVN: r4788 - in remoting3/trunk: core/src/main/java/org/jboss/remoting/core and 2 other directories.
jboss-remoting-commits at lists.jboss.org
jboss-remoting-commits at lists.jboss.org
Wed Jan 7 23:17:15 EST 2009
Author: david.lloyd at jboss.com
Date: 2009-01-07 23:17:15 -0500 (Wed, 07 Jan 2009)
New Revision: 4788
Modified:
remoting3/trunk/build.xml
remoting3/trunk/core/src/main/java/org/jboss/remoting/core/ClientImpl.java
remoting3/trunk/core/src/main/java/org/jboss/remoting/core/util/QueueExecutor.java
remoting3/trunk/protocol/multiplex/src/main/java/org/jboss/remoting/protocol/multiplex/MultiplexConnection.java
remoting3/trunk/protocol/multiplex/src/main/java/org/jboss/remoting/protocol/multiplex/MultiplexReadHandler.java
Log:
Update for XNIO 1.2.0.CR2
Modified: remoting3/trunk/build.xml
===================================================================
--- remoting3/trunk/build.xml 2009-01-08 04:16:26 UTC (rev 4787)
+++ remoting3/trunk/build.xml 2009-01-08 04:17:15 UTC (rev 4788)
@@ -100,7 +100,7 @@
<target name="lib.xnio-api" depends="jboss.repository">
<mvn:dependencies pathId="lib.xnio-api.classpath">
<mvn:remoteRepository refid="jboss.repository"/>
- <mvn:dependency groupId="org.jboss.xnio" artifactId="xnio-api" version="1.2.0.CR1"/>
+ <mvn:dependency groupId="org.jboss.xnio" artifactId="xnio-api" version="1.2.0.CR2"/>
</mvn:dependencies>
<property name="lib.xnio-api.local" refid="lib.xnio-api.classpath"/>
</target>
@@ -110,7 +110,7 @@
<target name="lib.xnio-nio" depends="jboss.repository">
<mvn:dependencies pathId="lib.xnio-nio.classpath">
<mvn:remoteRepository refid="jboss.repository"/>
- <mvn:dependency groupId="org.jboss.xnio" artifactId="xnio-nio" version="1.2.0.CR1"/>
+ <mvn:dependency groupId="org.jboss.xnio" artifactId="xnio-nio" version="1.2.0.CR2"/>
</mvn:dependencies>
<property name="lib.xnio-nio.local" refid="lib.xnio-nio.classpath"/>
</target>
Modified: remoting3/trunk/core/src/main/java/org/jboss/remoting/core/ClientImpl.java
===================================================================
--- remoting3/trunk/core/src/main/java/org/jboss/remoting/core/ClientImpl.java 2009-01-08 04:16:26 UTC (rev 4787)
+++ remoting3/trunk/core/src/main/java/org/jboss/remoting/core/ClientImpl.java 2009-01-08 04:17:15 UTC (rev 4788)
@@ -79,11 +79,7 @@
final ReplyHandler replyHandler = futureReply.getReplyHandler();
final RemoteRequestContext requestContext = handle.getResource().receiveRequest(actualRequest, replyHandler);
futureReply.setRemoteRequestContext(requestContext);
- futureReply.addNotifier(new IoFuture.Notifier<O>() {
- public void notify(final IoFuture<O> future) {
- executor.shutdown();
- }
- });
+ futureReply.addNotifier(IoUtils.<O>attachmentClosingNotifier(), executor);
executor.runQueue();
try {
return futureReply.getInterruptibly();
Modified: remoting3/trunk/core/src/main/java/org/jboss/remoting/core/util/QueueExecutor.java
===================================================================
--- remoting3/trunk/core/src/main/java/org/jboss/remoting/core/util/QueueExecutor.java 2009-01-08 04:16:26 UTC (rev 4787)
+++ remoting3/trunk/core/src/main/java/org/jboss/remoting/core/util/QueueExecutor.java 2009-01-08 04:17:15 UTC (rev 4788)
@@ -2,8 +2,8 @@
import java.util.LinkedList;
import java.util.Queue;
-import java.util.concurrent.Executor;
import org.jboss.xnio.log.Logger;
+import org.jboss.xnio.CloseableExecutor;
/**
* An executor designed to run all submitted tasks in the current thread. The queue is run continuously
@@ -11,7 +11,7 @@
* Only one thread should invoke the {@code runQueue()} method, which will run until the executor is
* shut down.
*/
-public final class QueueExecutor implements Executor {
+public final class QueueExecutor implements CloseableExecutor {
private static final Logger log = org.jboss.xnio.log.Logger.getLogger(QueueExecutor.class);
private final Queue<Runnable> queue = new LinkedList<Runnable>();
@@ -88,7 +88,7 @@
}
}
- public void shutdown() {
+ public void close() {
synchronized(queue) {
switch (state) {
case WAITING:
Modified: remoting3/trunk/protocol/multiplex/src/main/java/org/jboss/remoting/protocol/multiplex/MultiplexConnection.java
===================================================================
--- remoting3/trunk/protocol/multiplex/src/main/java/org/jboss/remoting/protocol/multiplex/MultiplexConnection.java 2009-01-08 04:16:26 UTC (rev 4787)
+++ remoting3/trunk/protocol/multiplex/src/main/java/org/jboss/remoting/protocol/multiplex/MultiplexConnection.java 2009-01-08 04:17:15 UTC (rev 4788)
@@ -26,7 +26,6 @@
import org.jboss.marshalling.MarshallingConfiguration;
import org.jboss.xnio.BufferAllocator;
import org.jboss.xnio.IoUtils;
-import org.jboss.xnio.IoFuture;
import org.jboss.xnio.Buffers;
import org.jboss.xnio.log.Logger;
import org.jboss.xnio.channels.AllocatedMessageChannel;
@@ -47,7 +46,6 @@
import java.nio.ByteBuffer;
import java.io.IOException;
import java.io.InterruptedIOException;
-import java.io.Closeable;
/**
*
@@ -437,7 +435,7 @@
IoUtils.safeClose(x);
}
for (FutureRemoteRequestHandlerSource future : remoteServices.getKeys()) {
- future.addNotifier(MultiplexConnection.<RequestHandlerSource>closingNotifier());
+ future.addNotifier(IoUtils.<RequestHandlerSource>closingNotifier(), null);
}
// Things running locally
for (RemoteRequestContext localRequest : localRequests.getKeys()) {
@@ -454,17 +452,4 @@
public String toString() {
return "multiplex connection <" + Integer.toHexString(hashCode()) + "> via " + channel;
}
-
- @SuppressWarnings({ "unchecked" })
- private static <T extends Closeable> IoFuture.Notifier<T> closingNotifier() {
- return (IoFuture.Notifier<T>) CLOSING_NOTIFIER;
- }
-
- private static final ClosingNotifier CLOSING_NOTIFIER = new ClosingNotifier();
-
- private static class ClosingNotifier extends IoFuture.HandlingNotifier<Closeable> {
- public void handleDone(final Closeable result) {
- IoUtils.safeClose(result);
- }
- }
}
Modified: remoting3/trunk/protocol/multiplex/src/main/java/org/jboss/remoting/protocol/multiplex/MultiplexReadHandler.java
===================================================================
--- remoting3/trunk/protocol/multiplex/src/main/java/org/jboss/remoting/protocol/multiplex/MultiplexReadHandler.java 2009-01-08 04:16:26 UTC (rev 4787)
+++ remoting3/trunk/protocol/multiplex/src/main/java/org/jboss/remoting/protocol/multiplex/MultiplexReadHandler.java 2009-01-08 04:17:15 UTC (rev 4788)
@@ -24,7 +24,6 @@
import org.jboss.xnio.IoReadHandler;
import org.jboss.xnio.IoUtils;
-import org.jboss.xnio.IoFuture;
import org.jboss.xnio.Buffers;
import org.jboss.xnio.log.Logger;
import org.jboss.xnio.channels.AllocatedMessageChannel;
@@ -366,11 +365,7 @@
final int serviceId = buffer.getInt();
final FutureRemoteRequestHandlerSource future = connection.removeFutureRemoteService(serviceId);
log.trace("Received a service close notify message for service %d for %s", Integer.valueOf(serviceId), future);
- future.addNotifier(new IoFuture.HandlingNotifier<RequestHandlerSource>() {
- public void handleDone(final RequestHandlerSource result) {
- IoUtils.safeClose(result);
- }
- });
+ future.addNotifier(IoUtils.<RequestHandlerSource>closingNotifier(), null);
break;
}
case SERVICE_CLOSE_REQUEST: {
More information about the jboss-remoting-commits
mailing list