io.prestosql.jdbc.$internal.jackson.annotation.JacksonAnnotationValue Maven / Gradle / Ivy
The newest version!
package io.prestosql.jdbc.$internal.jackson.annotation;
import java.lang.annotation.Annotation;
/**
* Marker interface used by value classes like {@link JsonFormat.Value} that are used
* to contain information from one of Jackson annotations, and can be directly
* instantiated from those annotations, as well as programmatically constructed
* and possibly merged. The reason for such marker is to allow generic handling of
* some of the annotations, as well as to allow easier injection of configuration
* from sources other than annotations.
*
* @since 2.6
*/
public interface JacksonAnnotationValue
{
/**
* Introspection method that may be used to find actual annotation that may be used
* as the source for value instance.
*
* @return Annotation class for which instances of this value class are created
*/
public Class valueFor();
}