투케이2K

278. (java/자바) instanceof 사용해 Exception 예외 발생 타입 확인 방법 본문

Java

278. (java/자바) instanceof 사용해 Exception 예외 발생 타입 확인 방법

투케이2K 2022. 9. 16. 13:02

[개발 환경 설정]

개발 툴 : Eclipse

개발 언어 : Java

 

[소스 코드]

                //TODO [실패한 경우]
                @Override
                public void onFailure(Call call, IOException e) {
                    try {
                        if(e instanceof SocketTimeoutException) { // [커넥션 타임 아웃 체크]
                            final String responseCode = String.valueOf(e.toString());
                            final String responseData = String.valueOf(e.getMessage());
                            Log.i("---","---");
                            Log.e("//===========//","================================================");
                            Log.i("","\n"+"[C_Cache_Clear_Check >> checker() :: OK HTTP 파일 다운로드 요청 실패 [1]]");
                            Log.i("","\n"+"["+"instanceof :: " + "소켓 타임 아웃 >> 커넥션 실패" +"]");
                            Log.i("","\n"+"["+"에러 코드 :: " + String.valueOf(responseCode)+"]");
                            Log.i("","\n"+"["+"에러 값 :: " + String.valueOf(responseData)+"]");
                            Log.e("//===========//","================================================");
                            Log.i("---","---");

                            // [콜백 반환]
                            if (listener != null){
                                listener.onFail(false, String.valueOf("C_Cache_Clear_Check : onFailure : " + responseCode + " : " + responseData));
                            }
                            return;
                        }
                        else {
                            final String responseCode = String.valueOf(e.toString());
                            final String responseData = String.valueOf(e.getMessage());
                            Log.i("---","---");
                            Log.e("//===========//","================================================");
                            Log.i("","\n"+"[C_Cache_Clear_Check >> checker() :: OK HTTP 파일 다운로드 요청 실패 [2]]");
                            Log.i("","\n"+"["+"에러 코드 :: " + String.valueOf(responseCode)+"]");
                            Log.i("","\n"+"["+"에러 값 :: " + String.valueOf(responseData)+"]");
                            Log.e("//===========//","================================================");
                            Log.i("---","---");

                            // [콜백 반환]
                            if (listener != null){
                                listener.onFail(false, String.valueOf("C_Cache_Clear_Check : onFailure : " + responseCode + " : " + responseData));
                            }
                            return;
                        }
                    }
                    catch (Exception ex){
                        e.printStackTrace();
                    }
                }

 

반응형
Comments