Updated Branches: refs/heads/trunk 890f95f89 -> 282dc8f05
removed some raw exceptions Project: http://git-wip-us.apache.org/repos/asf/mina/repo Commit: http://git-wip-us.apache.org/repos/asf/mina/commit/833d6e1a Tree: http://git-wip-us.apache.org/repos/asf/mina/tree/833d6e1a Diff: http://git-wip-us.apache.org/repos/asf/mina/diff/833d6e1a Branch: refs/heads/trunk Commit: 833d6e1a923a5cedcd2622457724d9ad3d7d2072 Parents: 890f95f Author: jvermillard <[email protected]> Authored: Sun May 12 14:24:16 2013 +0200 Committer: jvermillard <[email protected]> Committed: Sun May 12 14:24:16 2013 +0200 ---------------------------------------------------------------------- .../mina/codec/textline/TextLineDecoder.java | 5 ++- .../mina/session/AbstractIoSessionConfig.java | 27 ++++++++++---- .../mina/transport/nio/tcp/NioTcpClient.java | 3 +- .../mina/transport/nio/tcp/NioTcpSession.java | 25 +------------- .../mina/transport/tcp/ProxyTcpSessionConfig.java | 6 ++- .../mina/transport/udp/AbstractUdpServer.java | 3 +- .../org/apache/mina/http/HttpServerDecoder.java | 2 +- 7 files changed, 32 insertions(+), 39 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/mina/blob/833d6e1a/codec/src/main/java/org/apache/mina/codec/textline/TextLineDecoder.java ---------------------------------------------------------------------- diff --git a/codec/src/main/java/org/apache/mina/codec/textline/TextLineDecoder.java b/codec/src/main/java/org/apache/mina/codec/textline/TextLineDecoder.java index 9ccb324..6616b39 100644 --- a/codec/src/main/java/org/apache/mina/codec/textline/TextLineDecoder.java +++ b/codec/src/main/java/org/apache/mina/codec/textline/TextLineDecoder.java @@ -26,6 +26,7 @@ import java.nio.charset.Charset; import java.nio.charset.CharsetDecoder; import org.apache.mina.codec.ProtocolDecoder; +import org.apache.mina.codec.ProtocolDecoderException; /** * A {@link ProtocolDecoder} which decodes a text line into a string. @@ -227,7 +228,7 @@ public class TextLineDecoder implements ProtocolDecoder<ByteBuffer, String, Text throw new IllegalStateException("Line is too long: " + overflowPosition); } } catch (CharacterCodingException cce) { - throw new RuntimeException(cce); + throw new ProtocolDecoderException(cce); } finally { ctx.reset(); } @@ -288,7 +289,7 @@ public class TextLineDecoder implements ProtocolDecoder<ByteBuffer, String, Text throw new IllegalStateException("Line is too long: " + overflowLength); } } catch (CharacterCodingException cce) { - throw new RuntimeException(cce); + throw new ProtocolDecoderException(cce); } finally { ctx.reset(); } http://git-wip-us.apache.org/repos/asf/mina/blob/833d6e1a/core/src/main/java/org/apache/mina/session/AbstractIoSessionConfig.java ---------------------------------------------------------------------- diff --git a/core/src/main/java/org/apache/mina/session/AbstractIoSessionConfig.java b/core/src/main/java/org/apache/mina/session/AbstractIoSessionConfig.java index 13a6922..3b426f5 100644 --- a/core/src/main/java/org/apache/mina/session/AbstractIoSessionConfig.java +++ b/core/src/main/java/org/apache/mina/session/AbstractIoSessionConfig.java @@ -25,15 +25,15 @@ import org.apache.mina.api.IdleStatus; import org.apache.mina.api.IoSessionConfig; /** - * Base class for session configuration. - * Implements session configuration properties commons to all the different transports. + * Base class for session configuration. Implements session configuration properties commons to all the different + * transports. * * @author <a href="http://mina.apache.org">Apache MINA Project</a> */ public abstract class AbstractIoSessionConfig implements IoSessionConfig { - //===================== + // ===================== // idle management - //===================== + // ===================== /** The delay we wait for a read before we consider the session is staled */ private long idleTimeRead = -1; @@ -66,7 +66,7 @@ public abstract class AbstractIoSessionConfig implements IoSessionConfig { case WRITE_IDLE: return idleTimeWrite; default: - throw new RuntimeException("unexpected excetion, unknown idle status : " + status); + throw new IllegalStateException("unexpected excetion, unknown idle status : " + status); } } @@ -83,13 +83,14 @@ public abstract class AbstractIoSessionConfig implements IoSessionConfig { this.idleTimeWrite = ildeTimeInMilli; break; default: - throw new RuntimeException("unexpected excetion, unknown idle status : " + status); + throw new IllegalStateException("unexpected excetion, unknown idle status : " + status); } } /** - * {@inheritDoc} - */ + * {@inheritDoc} + */ + @Override public Integer getReadBufferSize() { return readBufferSize; } @@ -97,6 +98,7 @@ public abstract class AbstractIoSessionConfig implements IoSessionConfig { /** * {@inheritDoc} */ + @Override public void setReadBufferSize(int readBufferSize) { if (readBufferSize <= 0) { throw new IllegalArgumentException("readBufferSize: " + readBufferSize + " (expected: 1+)"); @@ -107,6 +109,7 @@ public abstract class AbstractIoSessionConfig implements IoSessionConfig { /** * {@inheritDoc} */ + @Override public Integer getSendBufferSize() { return sendBufferSize; } @@ -114,6 +117,7 @@ public abstract class AbstractIoSessionConfig implements IoSessionConfig { /** * {@inheritDoc} */ + @Override public void setSendBufferSize(int sendBufferSize) { this.sendBufferSize = sendBufferSize; } @@ -121,6 +125,7 @@ public abstract class AbstractIoSessionConfig implements IoSessionConfig { /** * {@inheritDoc} */ + @Override public int getTrafficClass() { return trafficClass.getValue(); } @@ -128,6 +133,7 @@ public abstract class AbstractIoSessionConfig implements IoSessionConfig { /** * {@inheritDoc} */ + @Override public void setTrafficClass(TrafficClassEnum trafficClass) { this.trafficClass = trafficClass; } @@ -135,6 +141,7 @@ public abstract class AbstractIoSessionConfig implements IoSessionConfig { /** * {@inheritDoc} */ + @Override public void setTrafficClass(int trafficClass) { this.trafficClass = TrafficClassEnum.valueOf(trafficClass); } @@ -142,6 +149,7 @@ public abstract class AbstractIoSessionConfig implements IoSessionConfig { /** * {@inheritDoc} */ + @Override public Boolean isReuseAddress() { return reuseAddress; } @@ -149,6 +157,7 @@ public abstract class AbstractIoSessionConfig implements IoSessionConfig { /** * {@inheritDoc} */ + @Override public void setReuseAddress(boolean reuseAddress) { this.reuseAddress = reuseAddress; } @@ -156,6 +165,7 @@ public abstract class AbstractIoSessionConfig implements IoSessionConfig { /** * {@inheritDoc} */ + @Override public Integer getTimeout() { return timeout; } @@ -163,6 +173,7 @@ public abstract class AbstractIoSessionConfig implements IoSessionConfig { /** * {@inheritDoc} */ + @Override public void setTimeout(int timeout) { this.timeout = timeout; } http://git-wip-us.apache.org/repos/asf/mina/blob/833d6e1a/core/src/main/java/org/apache/mina/transport/nio/tcp/NioTcpClient.java ---------------------------------------------------------------------- diff --git a/core/src/main/java/org/apache/mina/transport/nio/tcp/NioTcpClient.java b/core/src/main/java/org/apache/mina/transport/nio/tcp/NioTcpClient.java index 5178d05..fce1a2f 100644 --- a/core/src/main/java/org/apache/mina/transport/nio/tcp/NioTcpClient.java +++ b/core/src/main/java/org/apache/mina/transport/nio/tcp/NioTcpClient.java @@ -31,6 +31,7 @@ import org.apache.mina.service.executor.IoHandlerExecutor; import org.apache.mina.service.executor.OrderedHandlerExecutor; import org.apache.mina.service.idlechecker.IdleChecker; import org.apache.mina.service.idlechecker.IndexedIdleChecker; +import org.apache.mina.transport.nio.ConnectFuture; import org.apache.mina.transport.nio.FixedSelectorLoopPool; import org.apache.mina.transport.nio.NioSelectorLoop; import org.apache.mina.transport.nio.RegistrationCallback; @@ -187,7 +188,7 @@ public class NioTcpClient extends AbstractTcpClient { // the socket is blocking, and either true or false if it's non blocking boolean connected = clientSocket.connect(remoteAddress); - NioTcpSession.ConnectFuture connectFuture = new NioTcpSession.ConnectFuture(); + ConnectFuture connectFuture = new ConnectFuture(); session.setConnectFuture(connectFuture); if (!connected) { http://git-wip-us.apache.org/repos/asf/mina/blob/833d6e1a/core/src/main/java/org/apache/mina/transport/nio/tcp/NioTcpSession.java ---------------------------------------------------------------------- diff --git a/core/src/main/java/org/apache/mina/transport/nio/tcp/NioTcpSession.java b/core/src/main/java/org/apache/mina/transport/nio/tcp/NioTcpSession.java index cd9e8d7..2a62689 100644 --- a/core/src/main/java/org/apache/mina/transport/nio/tcp/NioTcpSession.java +++ b/core/src/main/java/org/apache/mina/transport/nio/tcp/NioTcpSession.java @@ -27,17 +27,16 @@ import java.nio.channels.SelectionKey; import java.nio.channels.SocketChannel; import org.apache.mina.api.IoService; -import org.apache.mina.api.IoSession; import org.apache.mina.service.idlechecker.IdleChecker; import org.apache.mina.session.AbstractIoSession; import org.apache.mina.session.SslHelper; import org.apache.mina.session.WriteRequest; +import org.apache.mina.transport.nio.ConnectFuture; import org.apache.mina.transport.nio.RegistrationCallback; import org.apache.mina.transport.nio.SelectorListener; import org.apache.mina.transport.nio.SelectorLoop; import org.apache.mina.transport.tcp.ProxyTcpSessionConfig; import org.apache.mina.transport.tcp.TcpSessionConfig; -import org.apache.mina.util.AbstractIoFuture; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -386,26 +385,4 @@ public class NioTcpSession extends AbstractIoSession implements SelectorListener void setSelectionKey(SelectionKey key) { this.selectionKey = key; } - - static class ConnectFuture extends AbstractIoFuture<IoSession> { - - @Override - protected boolean cancelOwner(boolean mayInterruptIfRunning) { - return false; - } - - /** - * session connected - */ - public void complete(IoSession session) { - setResult(session); - } - - /** - * connection error - */ - public void error(Exception e) { - setException(e); - } - } } http://git-wip-us.apache.org/repos/asf/mina/blob/833d6e1a/core/src/main/java/org/apache/mina/transport/tcp/ProxyTcpSessionConfig.java ---------------------------------------------------------------------- diff --git a/core/src/main/java/org/apache/mina/transport/tcp/ProxyTcpSessionConfig.java b/core/src/main/java/org/apache/mina/transport/tcp/ProxyTcpSessionConfig.java index 1032601..2a3bc22 100644 --- a/core/src/main/java/org/apache/mina/transport/tcp/ProxyTcpSessionConfig.java +++ b/core/src/main/java/org/apache/mina/transport/tcp/ProxyTcpSessionConfig.java @@ -59,7 +59,7 @@ public class ProxyTcpSessionConfig implements TcpSessionConfig { case WRITE_IDLE: return idleTimeWrite; default: - throw new RuntimeException("unexpected excetion, unknown idle status : " + status); + throw new IllegalStateException("unexpected excetion, unknown idle status : " + status); } } @@ -76,7 +76,7 @@ public class ProxyTcpSessionConfig implements TcpSessionConfig { this.idleTimeWrite = ildeTimeInMilli; break; default: - throw new RuntimeException("unexpected excetion, unknown idle status : " + status); + throw new IllegalStateException("unexpected excetion, unknown idle status : " + status); } } @@ -313,6 +313,7 @@ public class ProxyTcpSessionConfig implements TcpSessionConfig { /** * {@inheritDoc} */ + @Override public Integer getTimeout() { try { return socket.getSoTimeout(); @@ -324,6 +325,7 @@ public class ProxyTcpSessionConfig implements TcpSessionConfig { /** * {@inheritDoc} */ + @Override public void setTimeout(int timeout) { try { socket.setSoTimeout(timeout); http://git-wip-us.apache.org/repos/asf/mina/blob/833d6e1a/core/src/main/java/org/apache/mina/transport/udp/AbstractUdpServer.java ---------------------------------------------------------------------- diff --git a/core/src/main/java/org/apache/mina/transport/udp/AbstractUdpServer.java b/core/src/main/java/org/apache/mina/transport/udp/AbstractUdpServer.java index 9c278cf..4bc62e7 100644 --- a/core/src/main/java/org/apache/mina/transport/udp/AbstractUdpServer.java +++ b/core/src/main/java/org/apache/mina/transport/udp/AbstractUdpServer.java @@ -59,12 +59,13 @@ public abstract class AbstractUdpServer extends AbstractIoServer { * {@inheritDoc} */ public void initSecured(IoSession session) throws SSLException { - throw new RuntimeException("SSL is not supported for UDP"); + throw new IllegalStateException("SSL is not supported for UDP"); } /** * {@inheritDoc} */ + @Override public UdpSessionConfig getSessionConfig() { return (UdpSessionConfig) config; } http://git-wip-us.apache.org/repos/asf/mina/blob/833d6e1a/http/src/main/java/org/apache/mina/http/HttpServerDecoder.java ---------------------------------------------------------------------- diff --git a/http/src/main/java/org/apache/mina/http/HttpServerDecoder.java b/http/src/main/java/org/apache/mina/http/HttpServerDecoder.java index c5fed39..4877dbc 100644 --- a/http/src/main/java/org/apache/mina/http/HttpServerDecoder.java +++ b/http/src/main/java/org/apache/mina/http/HttpServerDecoder.java @@ -126,7 +126,7 @@ public class HttpServerDecoder implements ProtocolDecoder<ByteBuffer, HttpPdu, H case DONE: return new HttpEndOfContent(); default: - throw new RuntimeException("Unknonwn decoder state : " + context.getState()); + throw new IllegalStateException("Unknonwn decoder state : " + context.getState()); } return null;
