001 package org.vafer.jdeb.descriptors;
002
003 public final class InvalidDescriptorException extends Exception {
004
005 private static final long serialVersionUID = 1L;
006 private final AbstractDescriptor desc;
007
008 public InvalidDescriptorException(AbstractDescriptor desc) {
009 this.desc = desc;
010 }
011
012 public InvalidDescriptorException(AbstractDescriptor desc, String message) {
013 super(message);
014 this.desc = desc;
015 }
016
017 public InvalidDescriptorException(AbstractDescriptor desc, Throwable cause) {
018 super(cause);
019 this.desc = desc;
020 }
021
022 public InvalidDescriptorException(AbstractDescriptor desc, String message, Throwable cause) {
023 super(message, cause);
024 this.desc = desc;
025 }
026
027 public AbstractDescriptor getDescriptor() {
028 return desc;
029 }
030
031 public String toString() {
032 return "Invalid keys are " + desc.invalidKeys() + "\n" + desc;
033 }
034
035
036 }