Statistics
| Branch: | Revision:

root / main / java / net / elasticgrid / rackspace / common / RackspaceException.java @ f8be9cce

History | View | Annotate | Download (1.9 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
}