1
2
3
4
5
6 package gov.nist.secauto.metaschema.databind.model.annotations;
7
8 import static java.lang.annotation.ElementType.FIELD;
9 import static java.lang.annotation.ElementType.METHOD;
10 import static java.lang.annotation.RetentionPolicy.RUNTIME;
11
12 import gov.nist.secauto.metaschema.core.datatype.IDataTypeAdapter;
13
14 import java.lang.annotation.Documented;
15 import java.lang.annotation.Retention;
16 import java.lang.annotation.Target;
17
18 import edu.umd.cs.findbugs.annotations.NonNull;
19
20
21
22
23
24
25 @Documented
26 @Retention(RUNTIME)
27 @Target({ FIELD, METHOD })
28 public @interface BoundFieldValue {
29
30
31
32
33
34 @NonNull
35 Class<? extends IDataTypeAdapter<?>> typeAdapter() default NullJavaTypeAdapter.class;
36
37
38
39
40
41
42
43
44
45 @NonNull
46 String defaultValue() default ModelUtil.NULL_VALUE;
47
48
49
50
51
52
53
54
55
56
57
58 @NonNull
59 String valueKeyName() default ModelUtil.NO_STRING_VALUE;
60 }