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