[jboss-remoting-commits] JBoss Remoting SVN: r3982 - in remoting3/trunk: http-mina-client and 4 other directories.
jboss-remoting-commits at lists.jboss.org
jboss-remoting-commits at lists.jboss.org
Sun Apr 13 09:42:30 EDT 2008
Author: trustin
Date: 2008-04-13 09:42:29 -0400 (Sun, 13 Apr 2008)
New Revision: 3982
Modified:
remoting3/trunk/compat/.classpath
remoting3/trunk/http-mina-client/.classpath
remoting3/trunk/http-mina-server/.classpath
remoting3/trunk/http-servlet/.classpath
remoting3/trunk/jrpp/src/main/java/org/jboss/cx/remoting/jrpp/JrppConnection.java
remoting3/trunk/transaction/.classpath
Log:
Fixed wrong source path
Modified: remoting3/trunk/compat/.classpath
===================================================================
--- remoting3/trunk/compat/.classpath 2008-04-13 13:38:17 UTC (rev 3981)
+++ remoting3/trunk/compat/.classpath 2008-04-13 13:42:29 UTC (rev 3982)
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
- <classpathentry kind="src" path="src"/>
+ <classpathentry kind="src" path="src/main/java"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
<classpathentry combineaccessrules="false" kind="src" path="/remoting3-api"/>
<classpathentry combineaccessrules="false" kind="src" path="/remoting3-util"/>
Modified: remoting3/trunk/http-mina-client/.classpath
===================================================================
--- remoting3/trunk/http-mina-client/.classpath 2008-04-13 13:38:17 UTC (rev 3981)
+++ remoting3/trunk/http-mina-client/.classpath 2008-04-13 13:42:29 UTC (rev 3982)
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
- <classpathentry kind="src" path="src"/>
+ <classpathentry kind="src" path="src/main/java"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
<classpathentry combineaccessrules="false" kind="src" path="/remoting3-http"/>
<classpathentry combineaccessrules="false" kind="src" path="/remoting3-api"/>
Modified: remoting3/trunk/http-mina-server/.classpath
===================================================================
--- remoting3/trunk/http-mina-server/.classpath 2008-04-13 13:38:17 UTC (rev 3981)
+++ remoting3/trunk/http-mina-server/.classpath 2008-04-13 13:42:29 UTC (rev 3982)
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
- <classpathentry kind="src" path="src"/>
+ <classpathentry kind="src" path="src/main/java"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
<classpathentry combineaccessrules="false" kind="src" path="/remoting3-http"/>
<classpathentry combineaccessrules="false" kind="src" path="/remoting3-api"/>
Modified: remoting3/trunk/http-servlet/.classpath
===================================================================
--- remoting3/trunk/http-servlet/.classpath 2008-04-13 13:38:17 UTC (rev 3981)
+++ remoting3/trunk/http-servlet/.classpath 2008-04-13 13:42:29 UTC (rev 3982)
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
- <classpathentry kind="src" path="src"/>
+ <classpathentry kind="src" path="src/main/java"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
<classpathentry combineaccessrules="false" kind="src" path="/remoting3-http"/>
<classpathentry kind="var" path="JBOSS_REPO/sun-servlet/2.4/lib/servlet-api.jar"/>
Modified: remoting3/trunk/jrpp/src/main/java/org/jboss/cx/remoting/jrpp/JrppConnection.java
===================================================================
--- remoting3/trunk/jrpp/src/main/java/org/jboss/cx/remoting/jrpp/JrppConnection.java 2008-04-13 13:38:17 UTC (rev 3981)
+++ remoting3/trunk/jrpp/src/main/java/org/jboss/cx/remoting/jrpp/JrppConnection.java 2008-04-13 13:42:29 UTC (rev 3982)
@@ -1,8 +1,9 @@
package org.jboss.cx.remoting.jrpp;
+import static java.lang.Math.*;
+
import java.io.IOException;
import java.io.ObjectOutput;
-import static java.lang.Math.min;
import java.util.Enumeration;
import java.util.HashMap;
import java.util.HashSet;
@@ -11,6 +12,20 @@
import java.util.Set;
import java.util.concurrent.Executor;
import java.util.concurrent.atomic.AtomicInteger;
+
+import javax.security.auth.callback.Callback;
+import javax.security.auth.callback.CallbackHandler;
+import javax.security.auth.callback.NameCallback;
+import javax.security.auth.callback.PasswordCallback;
+import javax.security.auth.callback.UnsupportedCallbackException;
+import javax.security.sasl.AuthorizeCallback;
+import javax.security.sasl.RealmCallback;
+import javax.security.sasl.Sasl;
+import javax.security.sasl.SaslClient;
+import javax.security.sasl.SaslException;
+import javax.security.sasl.SaslServer;
+import javax.security.sasl.SaslServerFactory;
+
import org.apache.mina.common.AttributeKey;
import org.apache.mina.common.IdleStatus;
import org.apache.mina.common.IoBuffer;
@@ -40,19 +55,6 @@
import org.jboss.cx.remoting.util.CollectionUtil;
import org.jboss.cx.remoting.util.WeakHashSet;
-import javax.security.auth.callback.Callback;
-import javax.security.auth.callback.CallbackHandler;
-import javax.security.auth.callback.NameCallback;
-import javax.security.auth.callback.PasswordCallback;
-import javax.security.auth.callback.UnsupportedCallbackException;
-import javax.security.sasl.AuthorizeCallback;
-import javax.security.sasl.RealmCallback;
-import javax.security.sasl.Sasl;
-import javax.security.sasl.SaslClient;
-import javax.security.sasl.SaslException;
-import javax.security.sasl.SaslServer;
-import javax.security.sasl.SaslServerFactory;
-
/**
*
*/
@@ -63,6 +65,7 @@
private static final int PROTOCOL_VERSION = 0x0000;
private static final AttributeKey JRPP_CONNECTION = new AttributeKey(JrppConnection.class, "jrppConnection");
+ private static final int PING_INTERVAL = 10; // 10 seconds
public static final String SASL_CLIENT_FILTER_NAME = "SASL client filter";
public static final String SASL_SERVER_FILTER_NAME = "SASL server filter";
@@ -653,12 +656,18 @@
}
private final class IoHandlerImpl implements SingleSessionIoHandler {
- public void sessionCreated() {
+ public void sessionCreated() throws IOException {
+ // Send a ping message every PING_INTERVAL seconds
+ // if there's nothing to send.
+ ioSession.getConfig().setWriterIdleTime(PING_INTERVAL);
+ // Close the session if no ping message is received
+ // within (PING_INTERVAL * 2) seconds.
+ ioSession.getConfig().setReaderIdleTime(PING_INTERVAL * 2);
+ sendVersionMessage();
}
public void sessionOpened() throws IOException {
- // TODO - there may be a mina bug where this method is not guaranteed to be called before any messages can be received! DIRMINA-535
- sendVersionMessage();
+ // Nothing to do here.
}
public void sessionClosed() {
@@ -682,7 +691,18 @@
}
}
- public void sessionIdle(IdleStatus idleStatus) {
+ public void sessionIdle(IdleStatus idleStatus) throws IOException {
+ if (idleStatus == IdleStatus.WRITER_IDLE) {
+ // Send a ping message before the remote peer closes the
+ // connection.
+ final IoBuffer buffer = newBuffer(60, false);
+ final ObjectMessageOutput output = protocolContext.getMessageOutput(new IoBufferByteMessageOutput(buffer, ioSession));
+ write(output, MessageType.PING);
+ output.commit();
+ } else if (idleStatus == IdleStatus.READER_IDLE) {
+ // No message since last communication - close the connection.
+ close();
+ }
}
public void exceptionCaught(Throwable throwable) {
@@ -966,6 +986,7 @@
}
public void messageSent(Object object) {
+ // Nothing to do.
}
}
Modified: remoting3/trunk/transaction/.classpath
===================================================================
--- remoting3/trunk/transaction/.classpath 2008-04-13 13:38:17 UTC (rev 3981)
+++ remoting3/trunk/transaction/.classpath 2008-04-13 13:42:29 UTC (rev 3982)
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
- <classpathentry kind="src" path="src"/>
+ <classpathentry kind="src" path="src/main/java"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
<classpathentry combineaccessrules="false" kind="src" path="/remoting3-api"/>
<classpathentry kind="output" path="target/main/classes"/>
More information about the jboss-remoting-commits
mailing list