xref: /aosp_15_r20/external/jackson-annotations/src/main/java/com/fasterxml/jackson/annotation/JsonTypeName.java (revision 2bf6642460ffb10303bd46207a4555f36d9e5945)
1 package com.fasterxml.jackson.annotation;
2 
3 import java.lang.annotation.ElementType;
4 import java.lang.annotation.Retention;
5 import java.lang.annotation.RetentionPolicy;
6 import java.lang.annotation.Target;
7 
8 
9 /**
10  * Annotation used for binding logical name that the annotated class
11  * has. Used with {@link JsonTypeInfo} (and specifically its
12  * {@link JsonTypeInfo#use} property) to establish relationship
13  * between type names and types.
14  *
15  * @author tatu
16  */
17 @Target({ElementType.ANNOTATION_TYPE, ElementType.TYPE})
18 @Retention(RetentionPolicy.RUNTIME)
19 @JacksonAnnotation
20 public @interface JsonTypeName {
21     /**
22      * Logical type name for annotated type. If missing (or defined as Empty String),
23      * defaults to using non-qualified class name as the type.
24      */
value()25     public String value() default "";
26 }
27