package tc.oc.commons.core.reflect; import javax.annotation.Nullable; public class ClassFormException extends ElementFormException { private final Class<?> klass; public ClassFormException(Class<?> klass) { this(klass, null, null); } public ClassFormException(Class<?> klass, String message) { this(klass, message, null); } public ClassFormException(Class<?> klass, Throwable cause) { this(klass, null, cause); } public ClassFormException(Class<?> klass, @Nullable String message, @Nullable Throwable cause) { super(makeMessage(klass, message), cause); this.klass = klass; } private static String makeMessage(Class<?> klass, @Nullable String message) { String text = "Invalid form for class " + klass.getName(); if(message != null) { text += ": " + message; } return text; } public Class<?> getBadClass() { return klass; } }