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: [email protected]
For additional commands, e-mail: [email protected]