001package co.codewizards.cloudstore.core.dto; 002 003import java.io.Serializable; 004import java.util.ArrayList; 005import java.util.List; 006 007import javax.xml.bind.annotation.XmlRootElement; 008 009/** 010 * @author Marco หงุ่ยตระกูล-Schulze - marco at nightlabs dot de 011 */ 012@XmlRootElement 013public class Error 014implements Serializable 015{ 016 private static final long serialVersionUID = 1L; 017 018 private String className; 019 private String message; 020 private List<ErrorStackTraceElement> stackTraceElements; 021 private Error cause; 022 023 public Error() { } 024 025 public Error(String message) { 026 this.message = message; 027 } 028 029 public Error(Throwable throwable) { 030 if (throwable != null) { 031 this.message = throwable.getMessage(); 032 this.className = throwable.getClass().getName(); 033 } 034 } 035 036 public String getClassName() { 037 return className; 038 } 039 public void setClassName(String className) { 040 this.className = className; 041 } 042 043 public String getMessage() { 044 return message; 045 } 046 public void setMessage(String message) { 047 this.message = message; 048 } 049 050 public List<ErrorStackTraceElement> getStackTraceElements() { 051 if (stackTraceElements == null) 052 stackTraceElements = new ArrayList<ErrorStackTraceElement>(); 053 054 return stackTraceElements; 055 } 056 public void setStackTraceElements(List<ErrorStackTraceElement> stackTraceElements) { 057 this.stackTraceElements = stackTraceElements; 058 } 059 060 public Error getCause() { 061 return cause; 062 } 063 public void setCause(Error cause) { 064 this.cause = cause; 065 } 066}