1 package com.lexicalscope.fluentreflection;
2
3 import org.hamcrest.Matcher;
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 public class FieldNotFoundException extends ReflectionRuntimeException {
22 private static final long serialVersionUID = 6649785414761324558L;
23 private Class<?> klass;
24 private Matcher<? super FluentField> fieldMatcher;
25
26 public FieldNotFoundException() {
27 super();
28 }
29
30 public FieldNotFoundException(final String message, final Throwable cause) {
31 super(message, cause);
32 }
33
34 public FieldNotFoundException(final String message) {
35 super(message);
36 }
37
38 public FieldNotFoundException(final Throwable cause) {
39 super(cause);
40 }
41
42 public FieldNotFoundException(final Class<?> klass, final Matcher<? super FluentField> fieldMatcher) {
43 this(String.format("unable to find field matching <%s> in %s", fieldMatcher, klass));
44 this.klass = klass;
45 this.fieldMatcher = fieldMatcher;
46 }
47
48 public Class<?> getKlass() {
49 return klass;
50 }
51
52 public Matcher<? super FluentField> getFieldMatcher() {
53 return fieldMatcher;
54 }
55 }