001 /* 002 * Cumulus4j - Securing your data in the cloud - http://cumulus4j.org 003 * Copyright (C) 2011 NightLabs Consulting GmbH 004 * 005 * This program is free software: you can redistribute it and/or modify 006 * it under the terms of the GNU Affero General Public License as 007 * published by the Free Software Foundation, either version 3 of the 008 * License, or (at your option) any later version. 009 * 010 * This program is distributed in the hope that it will be useful, 011 * but WITHOUT ANY WARRANTY; without even the implied warranty of 012 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 013 * GNU Affero General Public License for more details. 014 * 015 * You should have received a copy of the GNU Affero General Public License 016 * along with this program. If not, see <http://www.gnu.org/licenses/>. 017 */ 018 package org.cumulus4j.store.crypto.keymanager.rest; 019 020 import org.cumulus4j.keymanager.back.shared.ErrorResponse; 021 022 /** 023 * Exception used to wrap and throw an {@link ErrorResponse}. 024 * @author Marco หงุ่ยตระกูล-Schulze - marco at nightlabs dot de 025 */ 026 public class ErrorResponseException extends Exception 027 { 028 private static final long serialVersionUID = 1L; 029 030 private ErrorResponse errorResponse; 031 032 /** 033 * Instantiate an <code>ErrorResponseException</code> for a given {@link ErrorResponse}. 034 * @param errorResponse the {@link ErrorResponse} to be wrapped and thrown. 035 */ 036 public ErrorResponseException(ErrorResponse errorResponse) { 037 super(errorResponse == null ? null : errorResponse.getMessage()); 038 039 if (errorResponse == null) 040 throw new IllegalArgumentException("errorResponse == null"); 041 042 this.errorResponse = errorResponse; 043 } 044 045 /** 046 * Get the {@link ErrorResponse} wrapped by this exception. 047 * @return the {@link ErrorResponse} wrapped by this exception. 048 */ 049 public ErrorResponse getErrorResponse() { 050 return errorResponse; 051 } 052 053 // public ErrorResponseException() { } 054 // 055 // public ErrorResponseException(String message) { 056 // super(message); 057 // } 058 // 059 // public ErrorResponseException(Throwable cause) { 060 // super(cause); 061 // } 062 // 063 // public ErrorResponseException(String message, Throwable cause) { 064 // super(message, cause); 065 // } 066 067 }