com.fasterxml.jackson.annotation.JsonIdentityReference Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of ehcache Show documentation
Show all versions of ehcache Show documentation
Ehcache is an open source, standards-based cache used to boost performance,
offload the database and simplify scalability. Ehcache is robust, proven and full-featured and
this has made it the most widely-used Java-based cache.
package com.fasterxml.jackson.annotation;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
/**
* Optional annotation that can be used for customizing details of a reference
* to Objects for which "Object Identity" is enabled (see {@link JsonIdentityInfo}).
* The main use case is that of enforcing use of Object Id even for the first
* time an Object is referenced, instead of first instance being serialized
* as full POJO.
*
* @since 2.1
*/
@Target({ElementType.ANNOTATION_TYPE, ElementType.TYPE,
ElementType.FIELD, ElementType.METHOD, ElementType.PARAMETER})
@Retention(RetentionPolicy.RUNTIME)
@JacksonAnnotation
public @interface JsonIdentityReference
{
/**
* Marker to indicate whether all referenced values are to
* be serialized as ids (true); or by serializing the
* first encountered reference as POJO and only then as id (false).
*
* Note that if value of 'true' is used, deserialization may require
* additional contextual information, and possibly using a custom
* id resolver -- the default handling may not be sufficient.
*
* @since 2.1
*/
public boolean alwaysAsId() default false;
}