Index: sdk/lib/io/http_parser.dart |
diff --git a/sdk/lib/io/http_parser.dart b/sdk/lib/io/http_parser.dart |
index 8edaa0c66c2d50b6992c81848f51a9b1d346846a..bcd27e018c89ddda1ee0c65ae0be63a93b28838e 100644 |
--- a/sdk/lib/io/http_parser.dart |
+++ b/sdk/lib/io/http_parser.dart |
@@ -273,10 +273,10 @@ class _HttpParser |
assert(!_parserCalled); |
_parserCalled = true; |
if (_state == _State.CLOSED) { |
- throw new HttpParserException("Data on closed connection"); |
+ throw new HttpException("Data on closed connection"); |
} |
if (_state == _State.FAILURE) { |
- throw new HttpParserException("Data on failed connection"); |
+ throw new HttpException("Data on failed connection"); |
} |
while (_buffer != null && |
_index < _buffer.length && |
@@ -298,11 +298,11 @@ class _HttpParser |
} else { |
// Start parsing method. |
if (!_isTokenChar(byte)) { |
- throw new HttpParserException("Invalid request method"); |
+ throw new HttpException("Invalid request method"); |
} |
_method_or_status_code.add(byte); |
if (!_requestParser) { |
- throw new HttpParserException("Invalid response line"); |
+ throw new HttpException("Invalid response line"); |
} |
_state = _State.REQUEST_LINE_METHOD; |
} |
@@ -319,7 +319,7 @@ class _HttpParser |
// method anymore. |
_httpVersionIndex++; |
if (_requestParser) { |
- throw new HttpParserException("Invalid request line"); |
+ throw new HttpException("Invalid request line"); |
} |
_state = _State.RESPONSE_HTTP_VERSION; |
} else { |
@@ -333,7 +333,7 @@ class _HttpParser |
_method_or_status_code.add(byte); |
_httpVersion = _HttpVersion.UNDETERMINED; |
if (!_requestParser) { |
- throw new HttpParserException("Invalid response line"); |
+ throw new HttpException("Invalid response line"); |
} |
_state = _State.REQUEST_LINE_METHOD; |
} |
@@ -362,7 +362,7 @@ class _HttpParser |
// HTTP version parsed. |
_state = _State.RESPONSE_LINE_STATUS_CODE; |
} else { |
- throw new HttpParserException("Invalid response line"); |
+ throw new HttpException("Invalid response line"); |
} |
break; |
@@ -371,7 +371,7 @@ class _HttpParser |
_state = _State.REQUEST_LINE_URI; |
} else { |
if (_Const.SEPARATORS_AND_CR_LF.indexOf(byte) != -1) { |
- throw new HttpParserException("Invalid request method"); |
+ throw new HttpException("Invalid request method"); |
} |
_method_or_status_code.add(byte); |
} |
@@ -380,13 +380,13 @@ class _HttpParser |
case _State.REQUEST_LINE_URI: |
if (byte == _CharCode.SP) { |
if (_uri_or_reason_phrase.length == 0) { |
- throw new HttpParserException("Invalid request URI"); |
+ throw new HttpException("Invalid request URI"); |
} |
_state = _State.REQUEST_LINE_HTTP_VERSION; |
_httpVersionIndex = 0; |
} else { |
if (byte == _CharCode.CR || byte == _CharCode.LF) { |
- throw new HttpParserException("Invalid request URI"); |
+ throw new HttpException("Invalid request URI"); |
} |
_uri_or_reason_phrase.add(byte); |
} |
@@ -408,7 +408,7 @@ class _HttpParser |
_persistentConnection = false; |
_httpVersionIndex++; |
} else { |
- throw new HttpParserException("Invalid response line"); |
+ throw new HttpException("Invalid response line"); |
} |
} else { |
_expect(byte, _CharCode.CR); |
@@ -425,12 +425,12 @@ class _HttpParser |
case _State.RESPONSE_LINE_STATUS_CODE: |
if (byte == _CharCode.SP) { |
if (_method_or_status_code.length != 3) { |
- throw new HttpParserException("Invalid response status code"); |
+ throw new HttpException("Invalid response status code"); |
} |
_state = _State.RESPONSE_LINE_REASON_PHRASE; |
} else { |
if (byte < 0x30 && 0x39 < byte) { |
- throw new HttpParserException("Invalid response status code"); |
+ throw new HttpException("Invalid response status code"); |
} else { |
_method_or_status_code.add(byte); |
} |
@@ -442,7 +442,7 @@ class _HttpParser |
_state = _State.RESPONSE_LINE_ENDING; |
} else { |
if (byte == _CharCode.CR || byte == _CharCode.LF) { |
- throw new HttpParserException("Invalid response reason phrase"); |
+ throw new HttpException("Invalid response reason phrase"); |
} |
_uri_or_reason_phrase.add(byte); |
} |
@@ -454,7 +454,7 @@ class _HttpParser |
_statusCode = int.parse( |
new String.fromCharCodes(_method_or_status_code)); |
if (_statusCode < 100 || _statusCode > 599) { |
- throw new HttpParserException("Invalid response status code"); |
+ throw new HttpException("Invalid response status code"); |
} else { |
// Check whether this response will never have a body. |
_noMessageBody = _statusCode <= 199 || _statusCode == 204 || |
@@ -479,7 +479,7 @@ class _HttpParser |
_state = _State.HEADER_VALUE_START; |
} else { |
if (!_isTokenChar(byte)) { |
- throw new HttpParserException("Invalid header field name"); |
+ throw new HttpException("Invalid header field name"); |
} |
_headerField.add(_toLowerCase(byte)); |
} |
@@ -728,8 +728,7 @@ class _HttpParser |
!(_state == _State.START && !_requestParser) && |
!(_state == _State.BODY && !_chunked && _transferLength == -1)) { |
_bodyController.addError( |
- new HttpParserException( |
- "Connection closed while receiving data")); |
+ new HttpException("Connection closed while receiving data")); |
} |
_closeIncoming(true); |
_controller.close(); |
@@ -738,7 +737,7 @@ class _HttpParser |
// If the connection is idle the HTTP stream is closed. |
if (_state == _State.START) { |
if (!_requestParser) { |
- error(new HttpParserException( |
+ error(new HttpException( |
"Connection closed before full header was received")); |
} |
_controller.close(); |
@@ -754,7 +753,7 @@ class _HttpParser |
_state = _State.FAILURE; |
// Report the error through the error callback if any. Otherwise |
// throw the error. |
- error(new HttpParserException( |
+ error(new HttpException( |
"Connection closed before full header was received")); |
_controller.close(); |
return; |
@@ -766,7 +765,7 @@ class _HttpParser |
_state = _State.FAILURE; |
// Report the error through the error callback if any. Otherwise |
// throw the error. |
- error(new HttpParserException( |
+ error(new HttpException( |
"Connection closed before full body was received")); |
} |
_controller.close(); |
@@ -863,7 +862,7 @@ class _HttpParser |
int _expect(int val1, int val2) { |
if (val1 != val2) { |
- throw new HttpParserException("Failed to parse HTTP"); |
+ throw new HttpException("Failed to parse HTTP"); |
} |
} |
@@ -875,7 +874,7 @@ class _HttpParser |
} else if (0x61 <= byte && byte <= 0x66) { |
return byte - 0x61 + 10; // a - f |
} else { |
- throw new HttpParserException("Failed to parse HTTP"); |
+ throw new HttpException("Failed to parse HTTP"); |
} |
} |
@@ -988,10 +987,3 @@ class _HttpParser |
StreamController<_HttpIncoming> _controller; |
StreamController<List<int>> _bodyController; |
} |
- |
- |
-class HttpParserException implements Exception { |
- const HttpParserException([String this.message = ""]); |
- String toString() => "HttpParserException: $message"; |
- final String message; |
-} |