Mercurial > 510Connectbot
comparison src/net/sourceforge/jsocks/SocksException.java @ 0:0ce5cc452d02
initial version
author | Carl Byington <carl@five-ten-sg.com> |
---|---|
date | Thu, 22 May 2014 10:41:19 -0700 |
parents | |
children | 205ee2873330 |
comparison
equal
deleted
inserted
replaced
-1:000000000000 | 0:0ce5cc452d02 |
---|---|
1 package net.sourceforge.jsocks; | |
2 | |
3 /** | |
4 Exception thrown by various socks classes to indicate errors | |
5 with protocol or unsuccessful server responses. | |
6 */ | |
7 public class SocksException extends java.io.IOException { | |
8 private static final long serialVersionUID = 6141184566248512277L; | |
9 | |
10 /** | |
11 Construct a SocksException with given error code. | |
12 <p> | |
13 Tries to look up message which corresponds to this error code. | |
14 @param errCode Error code for this exception. | |
15 */ | |
16 public SocksException(int errCode) { | |
17 this.errCode = errCode; | |
18 | |
19 if ((errCode >> 16) == 0) { | |
20 //Server reply error message | |
21 errString = errCode <= serverReplyMessage.length ? | |
22 serverReplyMessage[errCode] : | |
23 UNASSIGNED_ERROR_MESSAGE; | |
24 } | |
25 else { | |
26 //Local error | |
27 errCode = (errCode >> 16) - 1; | |
28 errString = errCode <= localErrorMessage.length ? | |
29 localErrorMessage[errCode] : | |
30 UNASSIGNED_ERROR_MESSAGE; | |
31 } | |
32 } | |
33 /** | |
34 Constructs a SocksException with given error code and message. | |
35 @param errCode Error code. | |
36 @param errString Error Message. | |
37 */ | |
38 public SocksException(int errCode, String errString) { | |
39 this.errCode = errCode; | |
40 this.errString = errString; | |
41 } | |
42 /** | |
43 Get the error code associated with this exception. | |
44 @return Error code associated with this exception. | |
45 */ | |
46 public int getErrorCode() { | |
47 return errCode; | |
48 } | |
49 /** | |
50 Get human readable representation of this exception. | |
51 @return String represntation of this exception. | |
52 */ | |
53 public String toString() { | |
54 return errString; | |
55 } | |
56 | |
57 static final String UNASSIGNED_ERROR_MESSAGE = | |
58 "Unknown error message"; | |
59 static final String serverReplyMessage[] = { | |
60 "Succeeded", | |
61 "General SOCKS server failure", | |
62 "Connection not allowed by ruleset", | |
63 "Network unreachable", | |
64 "Host unreachable", | |
65 "Connection refused", | |
66 "TTL expired", | |
67 "Command not supported", | |
68 "Address type not supported" | |
69 }; | |
70 | |
71 static final String localErrorMessage[] = { | |
72 "SOCKS server not specified", | |
73 "Unable to contact SOCKS server", | |
74 "IO error", | |
75 "None of Authentication methods are supported", | |
76 "Authentication failed", | |
77 "General SOCKS fault" | |
78 }; | |
79 | |
80 String errString; | |
81 public int errCode; | |
82 | |
83 }//End of SocksException class | |
84 |