You are viewing a plain text version of this content. The canonical link for it is here.
Posted to awf-commits@incubator.apache.org by sl...@apache.org on 2011/09/20 21:47:49 UTC
svn commit: r1173399 - in /incubator/deft/sandbox/src:
main/java/org/apache/deft/io/IOLoop.java
main/java/org/apache/deft/web/http/HttpProtocol.java
test/java/org/apache/deft/web/DeftSystemTest.java
Author: slemesle
Date: Tue Sep 20 21:47:49 2011
New Revision: 1173399
URL: http://svn.apache.org/viewvc?rev=1173399&view=rev
Log:
Fix build and unpredictable IOLoop.stop() behaviour
Modified:
incubator/deft/sandbox/src/main/java/org/apache/deft/io/IOLoop.java
incubator/deft/sandbox/src/main/java/org/apache/deft/web/http/HttpProtocol.java
incubator/deft/sandbox/src/test/java/org/apache/deft/web/DeftSystemTest.java
Modified: incubator/deft/sandbox/src/main/java/org/apache/deft/io/IOLoop.java
URL: http://svn.apache.org/viewvc/incubator/deft/sandbox/src/main/java/org/apache/deft/io/IOLoop.java?rev=1173399&r1=1173398&r2=1173399&view=diff
==============================================================================
--- incubator/deft/sandbox/src/main/java/org/apache/deft/io/IOLoop.java (original)
+++ incubator/deft/sandbox/src/main/java/org/apache/deft/io/IOLoop.java Tue Sep 20 21:47:49 2011
@@ -57,7 +57,7 @@ public class IOLoop implements IOLoopMXB
*/
public static final IOLoop INSTANCE = new IOLoop();
- private boolean running = false;
+ private volatile boolean running = false;
private final Logger logger = LoggerFactory.getLogger(IOLoop.class);
Modified: incubator/deft/sandbox/src/main/java/org/apache/deft/web/http/HttpProtocol.java
URL: http://svn.apache.org/viewvc/incubator/deft/sandbox/src/main/java/org/apache/deft/web/http/HttpProtocol.java?rev=1173399&r1=1173398&r2=1173399&view=diff
==============================================================================
--- incubator/deft/sandbox/src/main/java/org/apache/deft/web/http/HttpProtocol.java (original)
+++ incubator/deft/sandbox/src/main/java/org/apache/deft/web/http/HttpProtocol.java Tue Sep 20 21:47:49 2011
@@ -247,31 +247,26 @@ public class HttpProtocol implements IOH
private HttpRequest doGetHttpRequest(SelectionKey key, SocketChannel clientChannel, ByteBuffer buffer) {
// do we have any unfinished http post requests for this channel?
HttpRequestImpl request = null;
- try {
- if (partials.containsKey(clientChannel)) {
- request = parser.parseRequestBuffer(buffer, partials.get(clientChannel));
- if (request.isFinished()) {
- // received the entire payload/body
- partials.remove(clientChannel);
- }
- } else {
- request = parser.parseRequestBuffer(buffer);
- if (!request.isFinished()) {
- partials.put(key.channel(), request);
- }
+ if (partials.containsKey(clientChannel)) {
+ request = parser.parseRequestBuffer(buffer, partials.get(clientChannel));
+ if (request.isFinished()) {
+ // received the entire payload/body
+ partials.remove(clientChannel);
}
+ } else {
+ request = parser.parseRequestBuffer(buffer);
+ if (!request.isFinished()) {
+ partials.put(key.channel(), request);
+ }
+ }
- // set extra request info
- request.setRemoteHost(clientChannel.socket().getInetAddress());
- request.setRemotePort(clientChannel.socket().getPort());
- request.setServerHost(clientChannel.socket().getLocalAddress());
- request.setServerPort(clientChannel.socket().getLocalPort());
- return (request.isFinished() ? request : null);
- } catch (Exception e) {
- e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates.
- }
- return null;
+ // set extra request info
+ request.setRemoteHost(clientChannel.socket().getInetAddress());
+ request.setRemotePort(clientChannel.socket().getPort());
+ request.setServerHost(clientChannel.socket().getLocalAddress());
+ request.setServerPort(clientChannel.socket().getLocalPort());
+ return (request.isFinished() ? request : null);
}
@Override
Modified: incubator/deft/sandbox/src/test/java/org/apache/deft/web/DeftSystemTest.java
URL: http://svn.apache.org/viewvc/incubator/deft/sandbox/src/test/java/org/apache/deft/web/DeftSystemTest.java?rev=1173399&r1=1173398&r2=1173399&view=diff
==============================================================================
--- incubator/deft/sandbox/src/test/java/org/apache/deft/web/DeftSystemTest.java (original)
+++ incubator/deft/sandbox/src/test/java/org/apache/deft/web/DeftSystemTest.java Tue Sep 20 21:47:49 2011
@@ -1068,7 +1068,7 @@ public class DeftSystemTest {
http.get(url, cb);
}
});
- latch.await(15, TimeUnit.SECONDS);
+ latch.await(30, TimeUnit.SECONDS);
assertEquals(0, latch.getCount());
assertEquals("hello test", result[0]);
assertEquals("HTTP/1.1 200 OK", result[1]);
@@ -1127,7 +1127,7 @@ public class DeftSystemTest {
http.get(url, cb);
}
});
- latch.await(5, TimeUnit.SECONDS);
+ latch.await(10, TimeUnit.SECONDS);
assertEquals(0, latch.getCount());
}
@@ -1155,7 +1155,7 @@ public class DeftSystemTest {
http.get(url, cb);
}
});
- latch.await(5, TimeUnit.SECONDS);
+ latch.await(10, TimeUnit.SECONDS);
assertEquals(0, latch.getCount());
}