Add “getPutRequests” method.
[jFCPlib.git] / src / net / pterodactylus / fcp / FcpConnectionHandler.java
index b6404c5..2c37e5e 100644 (file)
@@ -28,7 +28,6 @@ import java.nio.charset.Charset;
  * Handles an FCP connection to a node.
  * 
  * @author David ‘Bombe’ Roden <bombe@freenetproject.org>
- * @version $Id$
  */
 class FcpConnectionHandler implements Runnable {
 
@@ -63,6 +62,7 @@ class FcpConnectionHandler implements Runnable {
         */
        public void run() {
                FcpMessage fcpMessage = null;
+               Throwable throwable = null;
                while (true) {
                        synchronized (this) {
                                if (shouldStop) {
@@ -83,7 +83,7 @@ class FcpConnectionHandler implements Runnable {
                                        fcpMessage = new FcpMessage(line);
                                        continue;
                                }
-                               if ("EndMessage".equals(line)) {
+                               if ("EndMessage".equalsIgnoreCase(line) || "Data".equalsIgnoreCase(line)) {
                                        fcpConnection.handleMessage(fcpMessage);
                                        fcpMessage = null;
                                }
@@ -96,11 +96,12 @@ class FcpConnectionHandler implements Runnable {
                                String value = line.substring(equalSign + 1);
                                assert fcpMessage != null: "fcp message is null";
                                fcpMessage.setField(field, value);
-                       } catch (IOException e) {
+                       } catch (IOException ioe1) {
+                               throwable = ioe1;
                                break;
                        }
                }
-               fcpConnection.handleDisconnect();
+               fcpConnection.handleDisconnect(throwable);
        }
 
        /**