Author: markt Date: Wed Jun 10 08:13:30 2015 New Revision: 1684599 URL: http://svn.apache.org/r1684599 Log: Rename to make clear these are exceptions not errors
Added: tomcat/trunk/java/org/apache/coyote/http2/ConnectionException.java - copied, changed from r1684595, tomcat/trunk/java/org/apache/coyote/http2/ConnectionError.java tomcat/trunk/java/org/apache/coyote/http2/StreamException.java - copied, changed from r1684595, tomcat/trunk/java/org/apache/coyote/http2/StreamError.java Removed: tomcat/trunk/java/org/apache/coyote/http2/ConnectionError.java tomcat/trunk/java/org/apache/coyote/http2/StreamError.java Modified: tomcat/trunk/java/org/apache/coyote/http2/ConnectionSettings.java tomcat/trunk/java/org/apache/coyote/http2/FrameType.java tomcat/trunk/java/org/apache/coyote/http2/Http2Parser.java tomcat/trunk/java/org/apache/coyote/http2/Http2UpgradeHandler.java tomcat/trunk/java/org/apache/coyote/http2/StreamStateMachine.java tomcat/trunk/test/org/apache/coyote/http2/Http2TestBase.java Copied: tomcat/trunk/java/org/apache/coyote/http2/ConnectionException.java (from r1684595, tomcat/trunk/java/org/apache/coyote/http2/ConnectionError.java) URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/http2/ConnectionException.java?p2=tomcat/trunk/java/org/apache/coyote/http2/ConnectionException.java&p1=tomcat/trunk/java/org/apache/coyote/http2/ConnectionError.java&r1=1684595&r2=1684599&rev=1684599&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/coyote/http2/ConnectionError.java (original) +++ tomcat/trunk/java/org/apache/coyote/http2/ConnectionException.java Wed Jun 10 08:13:30 2015 @@ -16,11 +16,14 @@ */ package org.apache.coyote.http2; -public class ConnectionError extends Http2Exception { +/** + * Thrown when an HTTP/2 connection error occurs. + */ +public class ConnectionException extends Http2Exception { private static final long serialVersionUID = 1L; - public ConnectionError(String msg, Http2Error error) { + public ConnectionException(String msg, Http2Error error) { super(msg, error); } } Modified: tomcat/trunk/java/org/apache/coyote/http2/ConnectionSettings.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/http2/ConnectionSettings.java?rev=1684599&r1=1684598&r2=1684599&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/coyote/http2/ConnectionSettings.java (original) +++ tomcat/trunk/java/org/apache/coyote/http2/ConnectionSettings.java Wed Jun 10 08:13:30 2015 @@ -42,7 +42,7 @@ public class ConnectionSettings { private volatile int maxFrameSize = DEFAULT_MAX_FRAME_SIZE; private volatile long maxHeaderListSize = UNLIMITED; - public void set(int parameterId, long value) throws ConnectionError { + public void set(int parameterId, long value) throws ConnectionException { if (log.isDebugEnabled()) { log.debug(sm.getString("connectionSettings.debug", Integer.toString(parameterId), Long.toString(value))); @@ -78,10 +78,10 @@ public class ConnectionSettings { public int getHeaderTableSize() { return headerTableSize; } - public void setHeaderTableSize(long headerTableSize) throws ConnectionError { + public void setHeaderTableSize(long headerTableSize) throws ConnectionException { // Need to put a sensible limit on this. Start with 16k (default is 4k) if (headerTableSize > (16 * 1024)) { - throw new ConnectionError(sm.getString("connectionSettings.headerTableSizeLimit", + throw new ConnectionException(sm.getString("connectionSettings.headerTableSizeLimit", Long.toString(headerTableSize)), Http2Error.PROTOCOL_ERROR); } this.headerTableSize = (int) headerTableSize; @@ -91,11 +91,11 @@ public class ConnectionSettings { public boolean getEnablePush() { return enablePush; } - public void setEnablePush(long enablePush) throws ConnectionError { + public void setEnablePush(long enablePush) throws ConnectionException { // Can't be less than zero since the result of the byte->long conversion // will never be negative if (enablePush > 1) { - throw new ConnectionError(sm.getString("connectionSettings.enablePushInvalid", + throw new ConnectionException(sm.getString("connectionSettings.enablePushInvalid", Long.toString(enablePush)), Http2Error.PROTOCOL_ERROR); } this.enablePush = (enablePush == 1); @@ -113,9 +113,9 @@ public class ConnectionSettings { public int getInitialWindowSize() { return initialWindowSize; } - public void setInitialWindowSize(long initialWindowSize) throws ConnectionError { + public void setInitialWindowSize(long initialWindowSize) throws ConnectionException { if (initialWindowSize > MAX_WINDOW_SIZE) { - throw new ConnectionError(sm.getString("connectionSettings.windowSizeTooBig", + throw new ConnectionException(sm.getString("connectionSettings.windowSizeTooBig", Long.toString(initialWindowSize), Long.toString(MAX_WINDOW_SIZE)), Http2Error.PROTOCOL_ERROR); } @@ -126,9 +126,9 @@ public class ConnectionSettings { public int getMaxFrameSize() { return maxFrameSize; } - public void setMaxFrameSize(long maxFrameSize) throws ConnectionError { + public void setMaxFrameSize(long maxFrameSize) throws ConnectionException { if (maxFrameSize < MIN_MAX_FRAME_SIZE || maxFrameSize > MAX_MAX_FRAME_SIZE) { - throw new ConnectionError(sm.getString("connectionSettings.maxFrameSizeInvalid", + throw new ConnectionException(sm.getString("connectionSettings.maxFrameSizeInvalid", Long.toString(maxFrameSize), Integer.toString(MIN_MAX_FRAME_SIZE), Integer.toString(MAX_MAX_FRAME_SIZE)), Http2Error.PROTOCOL_ERROR); } Modified: tomcat/trunk/java/org/apache/coyote/http2/FrameType.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/http2/FrameType.java?rev=1684599&r1=1684598&r2=1684599&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/coyote/http2/FrameType.java (original) +++ tomcat/trunk/java/org/apache/coyote/http2/FrameType.java Wed Jun 10 08:13:30 2015 @@ -61,18 +61,18 @@ public enum FrameType { public void check(int streamId, int payloadSize) throws Http2Exception { // Is FrameType valid for the given stream? if (streamId == 0 && !streamZero || streamId != 0 && !streamNonZero) { - throw new ConnectionError(sm.getString("frameType.checkStream", this), + throw new ConnectionException(sm.getString("frameType.checkStream", this), Http2Error.PROTOCOL_ERROR); } // Is the payload size valid for the given FrameType if (payloadSizeValidator != null && !payloadSizeValidator.test(payloadSize)) { if (payloadErrorFatal || streamId == 0) { - throw new ConnectionError(sm.getString("frameType.checkPayloadSize", + throw new ConnectionException(sm.getString("frameType.checkPayloadSize", Integer.toString(payloadSize), this), Http2Error.FRAME_SIZE_ERROR); } else { - throw new StreamError(sm.getString("frameType.checkPayloadSize", + throw new StreamException(sm.getString("frameType.checkPayloadSize", Integer.toString(payloadSize), this), Http2Error.FRAME_SIZE_ERROR, streamId); } Modified: tomcat/trunk/java/org/apache/coyote/http2/Http2Parser.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/http2/Http2Parser.java?rev=1684599&r1=1684598&r2=1684599&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/coyote/http2/Http2Parser.java (original) +++ tomcat/trunk/java/org/apache/coyote/http2/Http2Parser.java Wed Jun 10 08:13:30 2015 @@ -85,7 +85,7 @@ class Http2Parser { try { validateFrame(expected, frameType, streamId, flags, payloadSize); - } catch (StreamError se) { + } catch (StreamException se) { swallow(payloadSize); throw se; } @@ -244,7 +244,7 @@ class Http2Parser { private void readSettingsFrame(int flags, int payloadSize) throws Http2Exception, IOException { boolean ack = Flags.isAck(flags); if (payloadSize > 0 && ack) { - throw new ConnectionError(sm.getString( + throw new ConnectionException(sm.getString( "http2Parser.processFrameSettings.ackWithNonZeroPayload"), Http2Error.FRAME_SIZE_ERROR); } @@ -264,7 +264,7 @@ class Http2Parser { private void readPushPromiseFrame(int streamId) throws Http2Exception { - throw new ConnectionError(sm.getString("http2Parser.processFramePushPromise", + throw new ConnectionException(sm.getString("http2Parser.processFramePushPromise", connectionId, Integer.valueOf(streamId)), Http2Error.PROTOCOL_ERROR); } @@ -308,11 +308,11 @@ class Http2Parser { // Validate the data if (windowSizeIncrement == 0) { if (streamId == 0) { - throw new ConnectionError( + throw new ConnectionException( sm.getString("http2Parser.processFrameWindowUpdate.invalidIncrement"), Http2Error.PROTOCOL_ERROR); } else { - throw new StreamError( + throw new StreamException( sm.getString("http2Parser.processFrameWindowUpdate.invalidIncrement"), Http2Error.PROTOCOL_ERROR, streamId); } @@ -326,7 +326,7 @@ class Http2Parser { throws Http2Exception, IOException { if (headersCurrentStream == -1) { // No headers to continue - throw new ConnectionError(sm.getString( + throw new ConnectionException(sm.getString( "http2Parser.processFrameContinuation.notExpected", connectionId, Integer.toString(streamId)), Http2Error.PROTOCOL_ERROR); } @@ -357,7 +357,7 @@ class Http2Parser { try { hpackDecoder.decode(headerReadBuffer); } catch (HpackException hpe) { - throw new ConnectionError( + throw new ConnectionException( sm.getString("http2Parser.processFrameHeaders.decodingFailed"), Http2Error.COMPRESSION_ERROR); } @@ -367,7 +367,7 @@ class Http2Parser { } if (headerReadBuffer.position() > 0 && endOfHeaders) { - throw new ConnectionError( + throw new ConnectionException( sm.getString("http2Parser.processFrameHeaders.decodingDataLeft"), Http2Error.COMPRESSION_ERROR); } @@ -413,26 +413,26 @@ class Http2Parser { } if (expected != null && frameType != expected) { - throw new StreamError(sm.getString("http2Parser.processFrame.unexpectedType", + throw new StreamException(sm.getString("http2Parser.processFrame.unexpectedType", expected, frameType), Http2Error.PROTOCOL_ERROR, streamId); } if (payloadSize > maxPayloadSize) { - throw new ConnectionError(sm.getString("http2Parser.payloadTooBig", + throw new ConnectionException(sm.getString("http2Parser.payloadTooBig", Integer.toString(payloadSize), Integer.toString(maxPayloadSize)), Http2Error.FRAME_SIZE_ERROR); } if (headersCurrentStream != -1) { if (headersCurrentStream != streamId) { - throw new ConnectionError(sm.getString("http2Parser.headers.wrongStream", + throw new ConnectionException(sm.getString("http2Parser.headers.wrongStream", connectionId, Integer.toString(headersCurrentStream), Integer.toString(streamId)), Http2Error.COMPRESSION_ERROR); } if (frameType == FrameType.RST) { // NO-OP: RST is OK here } else if (frameType != FrameType.CONTINUATION) { - throw new ConnectionError(sm.getString("http2Parser.headers.wrongFrameType", + throw new ConnectionException(sm.getString("http2Parser.headers.wrongFrameType", connectionId, Integer.toString(headersCurrentStream), frameType), Http2Error.COMPRESSION_ERROR); } @@ -517,11 +517,11 @@ class Http2Parser { // Data frames ByteBuffer getInputByteBuffer(int streamId, int payloadSize) throws Http2Exception; - void receiveEndOfStream(int streamId) throws ConnectionError; + void receiveEndOfStream(int streamId) throws ConnectionException; // Header frames HeaderEmitter headersStart(int streamId) throws Http2Exception; - void headersEnd(int streamId) throws ConnectionError; + void headersEnd(int streamId) throws ConnectionException; // Priority frames (also headers) void reprioritise(int streamId, int parentStreamId, boolean exclusive, int weight) @@ -531,7 +531,7 @@ class Http2Parser { void reset(int streamId, long errorCode) throws Http2Exception; // Settings frames - void setting(int identifier, long value) throws ConnectionError; + void setting(int identifier, long value) throws ConnectionException; void settingsEnd(boolean ack) throws IOException; // Ping frames Modified: tomcat/trunk/java/org/apache/coyote/http2/Http2UpgradeHandler.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/http2/Http2UpgradeHandler.java?rev=1684599&r1=1684598&r2=1684599&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/coyote/http2/Http2UpgradeHandler.java (original) +++ tomcat/trunk/java/org/apache/coyote/http2/Http2UpgradeHandler.java Wed Jun 10 08:13:30 2015 @@ -245,7 +245,7 @@ public class Http2UpgradeHandler extends if (!parser.readFrame(false)) { break; } - } catch (StreamError se) { + } catch (StreamException se) { // Stream errors are not fatal to the connection so // continue reading frames closeStream(se); @@ -340,7 +340,7 @@ public class Http2UpgradeHandler extends } - private void closeStream(StreamError se) throws ConnectionError, IOException { + private void closeStream(StreamException se) throws ConnectionException, IOException { if (log.isDebugEnabled()) { log.debug(sm.getString("upgradeHandler.rst.debug", connectionId, @@ -627,27 +627,27 @@ public class Http2UpgradeHandler extends } - private Stream getStream(int streamId, boolean unknownIsError) throws ConnectionError{ + private Stream getStream(int streamId, boolean unknownIsError) throws ConnectionException{ Integer key = Integer.valueOf(streamId); Stream result = streams.get(key); if (result == null && unknownIsError) { // Stream has been closed and removed from the map - throw new ConnectionError(sm.getString("upgradeHandler.stream.closed", key), Http2Error.PROTOCOL_ERROR); + throw new ConnectionException(sm.getString("upgradeHandler.stream.closed", key), Http2Error.PROTOCOL_ERROR); } return result; } - private Stream createRemoteStream(int streamId) throws ConnectionError { + private Stream createRemoteStream(int streamId) throws ConnectionException { Integer key = Integer.valueOf(streamId); if (streamId %2 != 1) { - throw new ConnectionError( + throw new ConnectionException( sm.getString("upgradeHandler.stream.even", key), Http2Error.PROTOCOL_ERROR); } if (streamId <= maxRemoteStreamId) { - throw new ConnectionError(sm.getString("upgradeHandler.stream.old", key, + throw new ConnectionException(sm.getString("upgradeHandler.stream.old", key, Integer.valueOf(maxRemoteStreamId)), Http2Error.PROTOCOL_ERROR); } @@ -770,7 +770,7 @@ public class Http2UpgradeHandler extends @Override - public void receiveEndOfStream(int streamId) throws ConnectionError { + public void receiveEndOfStream(int streamId) throws ConnectionException { Stream stream = getStream(streamId, true); if (stream != null) { stream.receivedEndOfStream(); @@ -807,7 +807,7 @@ public class Http2UpgradeHandler extends @Override - public void headersEnd(int streamId) throws ConnectionError { + public void headersEnd(int streamId) throws ConnectionException { Stream stream = getStream(streamId, true); // Process this stream on a container thread StreamProcessor streamProcessor = new StreamProcessor(stream, adapter, socketWrapper); @@ -828,7 +828,7 @@ public class Http2UpgradeHandler extends @Override - public void setting(int identifier, long value) throws ConnectionError { + public void setting(int identifier, long value) throws ConnectionException { remoteSettings.set(identifier, value); } Copied: tomcat/trunk/java/org/apache/coyote/http2/StreamException.java (from r1684595, tomcat/trunk/java/org/apache/coyote/http2/StreamError.java) URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/http2/StreamException.java?p2=tomcat/trunk/java/org/apache/coyote/http2/StreamException.java&p1=tomcat/trunk/java/org/apache/coyote/http2/StreamError.java&r1=1684595&r2=1684599&rev=1684599&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/coyote/http2/StreamError.java (original) +++ tomcat/trunk/java/org/apache/coyote/http2/StreamException.java Wed Jun 10 08:13:30 2015 @@ -16,13 +16,16 @@ */ package org.apache.coyote.http2; -public class StreamError extends Http2Exception { +/** + * Thrown when an HTTP/2 stream error occurs. + */ +public class StreamException extends Http2Exception { private static final long serialVersionUID = 1L; private final int streamId; - public StreamError(String msg, Http2Error error, int streamId) { + public StreamException(String msg, Http2Error error, int streamId) { super(msg, error); this.streamId = streamId; } Modified: tomcat/trunk/java/org/apache/coyote/http2/StreamStateMachine.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/http2/StreamStateMachine.java?rev=1684599&r1=1684598&r2=1684599&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/coyote/http2/StreamStateMachine.java (original) +++ tomcat/trunk/java/org/apache/coyote/http2/StreamStateMachine.java Wed Jun 10 08:13:30 2015 @@ -108,11 +108,11 @@ public class StreamStateMachine { // state of this stream. if (!isFrameTypePermitted(frameType)) { if (state.connectionErrorForInvalidFrame) { - throw new ConnectionError(sm.getString("streamStateMachine.invalidFrame", + throw new ConnectionException(sm.getString("streamStateMachine.invalidFrame", stream.getConnectionId(), stream.getIdentifier(), state, frameType), state.errorCodeForInvalidFrame); } else { - throw new StreamError(sm.getString("streamStateMachine.invalidFrame", + throw new StreamException(sm.getString("streamStateMachine.invalidFrame", stream.getConnectionId(), stream.getIdentifier(), state, frameType), state.errorCodeForInvalidFrame, stream.getIdentifier().intValue()); } Modified: tomcat/trunk/test/org/apache/coyote/http2/Http2TestBase.java URL: http://svn.apache.org/viewvc/tomcat/trunk/test/org/apache/coyote/http2/Http2TestBase.java?rev=1684599&r1=1684598&r2=1684599&view=diff ============================================================================== --- tomcat/trunk/test/org/apache/coyote/http2/Http2TestBase.java (original) +++ tomcat/trunk/test/org/apache/coyote/http2/Http2TestBase.java Wed Jun 10 08:13:30 2015 @@ -499,7 +499,7 @@ public abstract class Http2TestBase exte @Override - public void setting(int identifier, long value) throws ConnectionError { + public void setting(int identifier, long value) throws ConnectionException { trace.append("0-Settings-[" + identifier + "]-[" + value + "]\n"); remoteSettings.set(identifier, value); } --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org