root / main / java / net / elasticgrid / rackspace / common / RackspaceException.java @ af63e739
History | View | Annotate | Download (2 kB)
1 |
/**
|
---|---|
2 |
* Licensed to the Apache Software Foundation (ASF) under one
|
3 |
* or more contributor license agreements. See the NOTICE file
|
4 |
* distributed with this work for additional information
|
5 |
* regarding copyright ownership. The ASF licenses this file
|
6 |
* to you under the Apache License, Version 2.0 (the
|
7 |
* "License"); you may not use this file except in compliance
|
8 |
* with the License. You may obtain a copy of the License at
|
9 |
*
|
10 |
* http://www.apache.org/licenses/LICENSE-2.0
|
11 |
*
|
12 |
* Unless required by applicable law or agreed to in writing,
|
13 |
* software distributed under the License is distributed on an
|
14 |
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
15 |
* KIND, either express or implied. See the License for the
|
16 |
* specific language governing permissions and limitations
|
17 |
* under the License.
|
18 |
*/
|
19 |
package net.elasticgrid.rackspace.common; |
20 |
|
21 |
/**
|
22 |
* A wrapper exception to simplify catching errors related to Rackspace activity.
|
23 |
*
|
24 |
* @author Jerome Bernard
|
25 |
*/
|
26 |
public class RackspaceException extends Exception { |
27 |
private int code; |
28 |
private String details; |
29 |
|
30 |
public RackspaceException(String message) { |
31 |
this(message, null); |
32 |
} |
33 |
|
34 |
public RackspaceException(int code, String message, String details) { |
35 |
super(message);
|
36 |
this.code = code;
|
37 |
this.details = details;
|
38 |
} |
39 |
|
40 |
public RackspaceException(Throwable cause) { |
41 |
super(cause);
|
42 |
if (cause instanceof RackspaceException) { |
43 |
this.code = ((RackspaceException) cause).code;
|
44 |
this.details = ((RackspaceException) cause).details;
|
45 |
} |
46 |
} |
47 |
|
48 |
public RackspaceException(String message, Throwable cause) { |
49 |
super(message, cause);
|
50 |
} |
51 |
|
52 |
public int getCode() { |
53 |
return code;
|
54 |
} |
55 |
|
56 |
public String getDetails() { |
57 |
return details;
|
58 |
} |
59 |
|
60 |
@Override
|
61 |
public String toString() { |
62 |
return "Error " + getCode() + ": " + super.getMessage() + "\nDetails: " + getDetails(); |
63 |
} |
64 |
} |