You are viewing a plain text version of this content. The canonical link for it is here.
Posted to server-dev@james.apache.org by no...@apache.org on 2011/11/20 21:44:40 UTC

svn commit: r1204245 - in /james/protocols/trunk/api/src/main/java/org/apache/james/protocols/api: FutureResponseImpl.java FutureStreamResponseImpl.java

Author: norman
Date: Sun Nov 20 20:44:40 2011
New Revision: 1204245

URL: http://svn.apache.org/viewvc?rev=1204245&view=rev
Log:
Cleanup for FutureResponse implementations

Modified:
    james/protocols/trunk/api/src/main/java/org/apache/james/protocols/api/FutureResponseImpl.java
    james/protocols/trunk/api/src/main/java/org/apache/james/protocols/api/FutureStreamResponseImpl.java

Modified: james/protocols/trunk/api/src/main/java/org/apache/james/protocols/api/FutureResponseImpl.java
URL: http://svn.apache.org/viewvc/james/protocols/trunk/api/src/main/java/org/apache/james/protocols/api/FutureResponseImpl.java?rev=1204245&r1=1204244&r2=1204245&view=diff
==============================================================================
--- james/protocols/trunk/api/src/main/java/org/apache/james/protocols/api/FutureResponseImpl.java (original)
+++ james/protocols/trunk/api/src/main/java/org/apache/james/protocols/api/FutureResponseImpl.java Sun Nov 20 20:44:40 2011
@@ -98,7 +98,7 @@ public class FutureResponseImpl extends 
     @Override
     public synchronized void appendLine(CharSequence line) {
         if (ready) {
-            throw new IllegalStateException("FutureSMTPResponse MUST NOT get modified after its ready");
+            throw new IllegalStateException("FutureResponse MUST NOT get modified after its ready");
         }
         response.appendLine(line);
     }
@@ -112,7 +112,7 @@ public class FutureResponseImpl extends 
     @Override
     public synchronized void setRetCode(String retCode) {
         if (ready) {
-            throw new IllegalStateException("FutureSMTPResponse MUST NOT get modified after its ready");
+            throw new IllegalStateException("FutureResponse MUST NOT get modified after its ready");
         }
         response.setRetCode(retCode);
     }
@@ -126,7 +126,7 @@ public class FutureResponseImpl extends 
     @Override
     public synchronized void setEndSession(boolean endSession) {
         if (ready) {
-            throw new IllegalStateException("FutureSMTPResponse MUST NOT get modified after its ready");
+            throw new IllegalStateException("FutureResponse MUST NOT get modified after its ready");
         }
         response.setEndSession(endSession);
     }

Modified: james/protocols/trunk/api/src/main/java/org/apache/james/protocols/api/FutureStreamResponseImpl.java
URL: http://svn.apache.org/viewvc/james/protocols/trunk/api/src/main/java/org/apache/james/protocols/api/FutureStreamResponseImpl.java?rev=1204245&r1=1204244&r2=1204245&view=diff
==============================================================================
--- james/protocols/trunk/api/src/main/java/org/apache/james/protocols/api/FutureStreamResponseImpl.java (original)
+++ james/protocols/trunk/api/src/main/java/org/apache/james/protocols/api/FutureStreamResponseImpl.java Sun Nov 20 20:44:40 2011
@@ -19,10 +19,13 @@
 
 package org.apache.james.protocols.api;
 
+import java.io.IOException;
 import java.io.InputStream;
 
 public class FutureStreamResponseImpl extends FutureResponseImpl implements StreamResponse{
 
+    private static final  EmptyInputStream EMPTY = new EmptyInputStream();
+    
     private InputStream in;
     public FutureStreamResponseImpl(AbstractResponse response) {
         super(response);
@@ -31,13 +34,28 @@ public class FutureStreamResponseImpl ex
         }
     }
 
-    public synchronized void setInputStream(InputStream in) {
+    public synchronized void setStream(InputStream in) {
+        if (isReady()) {
+            throw new IllegalStateException("FutureResponse MUST NOT get modified after its ready");
+        }
         this.in = in;
     }
     @Override
     public InputStream getStream() {
         checkReady();
-        return in;
+        if (in == null) {
+            return EMPTY;
+        } else {
+            return in;
+        }
     }
 
+    private final static class EmptyInputStream extends InputStream {
+
+        @Override
+        public int read() throws IOException {
+            return -1;
+        }
+        
+    }
 }



---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org