| package org.codehaus.jackson.map.annotate; |
| |
| import java.lang.annotation.ElementType; |
| import java.lang.annotation.Retention; |
| import java.lang.annotation.RetentionPolicy; |
| import java.lang.annotation.Target; |
| |
| import org.codehaus.jackson.annotate.JacksonAnnotation; |
| |
| /** |
| * Marker annotation used to denote whether given instance |
| * (currently only used with {@link org.codehaus.jackson.map.JsonDeserializer}) |
| * can be cached. |
| *<p> |
| * Default action to take in absence of annotation depends |
| * on object using annotation; with deserializers default is |
| * to assume instances are not cachable. |
| * |
| * @since 1.1 |
| */ |
| @Target({ElementType.TYPE}) |
| @Retention(RetentionPolicy.RUNTIME) |
| @JacksonAnnotation |
| public @interface JsonCachable |
| { |
| /** |
| * Default value is true, giving semantics for parameterless tag instance |
| * such that empty instance indicates that instances of annotated class |
| * are indeed cachable. |
| */ |
| boolean value() default true; |
| } |