• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 package com.fasterxml.jackson.annotation;
2 
3 import java.lang.annotation.Annotation;
4 
5 /**
6  * Marker interface used by value classes like {@link JsonFormat.Value} that are used
7  * to contain information from one of Jackson annotations, and can be directly
8  * instantiated from those annotations, as well as programmatically constructed
9  * and possibly merged. The reason for such marker is to allow generic handling of
10  * some of the annotations, as well as to allow easier injection of configuration
11  * from sources other than annotations.
12  *
13  * @since 2.6
14  */
15 public interface JacksonAnnotationValue<A extends Annotation>
16 {
17     /**
18      * Introspection method that may be used to find actual annotation that may be used
19      * as the source for value instance.
20      *
21      * @return Annotation class for which instances of this value class are created
22      */
valueFor()23     public Class<A> valueFor();
24 }
25