1 /*
2  * Copyright (C) 2011 The Android Open Source Project
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *      http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 
17 package com.android.volley;
18 
19 /** Exception style class encapsulating Volley errors */
20 @SuppressWarnings("serial")
21 public class VolleyError extends Exception {
22     public final NetworkResponse networkResponse;
23     private long networkTimeMs;
24 
VolleyError()25     public VolleyError() {
26         networkResponse = null;
27     }
28 
VolleyError(NetworkResponse response)29     public VolleyError(NetworkResponse response) {
30         networkResponse = response;
31     }
32 
VolleyError(String exceptionMessage)33     public VolleyError(String exceptionMessage) {
34         super(exceptionMessage);
35         networkResponse = null;
36     }
37 
VolleyError(String exceptionMessage, Throwable reason)38     public VolleyError(String exceptionMessage, Throwable reason) {
39         super(exceptionMessage, reason);
40         networkResponse = null;
41     }
42 
VolleyError(Throwable cause)43     public VolleyError(Throwable cause) {
44         super(cause);
45         networkResponse = null;
46     }
47 
setNetworkTimeMs(long networkTimeMs)48     /* package */ void setNetworkTimeMs(long networkTimeMs) {
49         this.networkTimeMs = networkTimeMs;
50     }
51 
getNetworkTimeMs()52     public long getNetworkTimeMs() {
53         return networkTimeMs;
54     }
55 }
56