01: package com.meterware.httpunit;
02:
03: /********************************************************************************************************************
04: * $Id: HttpException.java,v 1.6 2001/11/27 19:51:27 russgold Exp $
05: *
06: * Copyright (c) 2000-2001, Russell Gold
07: *
08: * Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated
09: * documentation files (the "Software"), to deal in the Software without restriction, including without limitation
10: * the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and
11: * to permit persons to whom the Software is furnished to do so, subject to the following conditions:
12: *
13: * The above copyright notice and this permission notice shall be included in all copies or substantial portions
14: * of the Software.
15: *
16: * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO
17: * THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18: * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
19: * CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
20: * DEALINGS IN THE SOFTWARE.
21: *
22: *******************************************************************************************************************/
23: import java.net.URL;
24:
25: /**
26: * This exception is thrown when an Http error (response code 4xx or 5xx) is detected.
27: * @author Seth Ladd
28: * @author Russell Gold
29: **/
30: public class HttpException extends RuntimeException {
31:
32: protected HttpException(int responseCode) {
33: _responseCode = responseCode;
34: }
35:
36: protected HttpException(int responseCode, String responseMessage,
37: URL baseURL) {
38: _responseMessage = responseMessage;
39: _responseCode = responseCode;
40: _url = baseURL;
41: }
42:
43: public String getMessage() {
44: StringBuffer sb = new StringBuffer(
45: HttpUnitUtils.DEFAULT_TEXT_BUFFER_SIZE)
46: .append("Error on HTTP request: ");
47: sb.append(_responseCode);
48: if (_responseMessage != null) {
49: sb.append(" ");
50: sb.append(_responseMessage);
51: sb.append("");
52: }
53: if (_url != null) {
54: sb.append(" [");
55: sb.append(_url.toExternalForm());
56: sb.append("]");
57: }
58: return sb.toString();
59: }
60:
61: public int getResponseCode() {
62: return _responseCode;
63: }
64:
65: public String getResponseMessage() {
66: return _responseMessage;
67: }
68:
69: private int _responseCode;
70: private URL _url;
71:
72: private String _responseMessage;
73:
74: }
|