package sh.calaba.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 sh.calaba.org.codehaus.jackson.annotate.JacksonAnnotation; /** * Annotation used for indicating view(s) that the property * that is defined by method or field annotated is part of. *

* An example annotation would be: *

 *  \@JsonView(BasicView.class)
 *
* which would specify that property annotated would be included * when processing (serializing, deserializing) View identified * by BasicView.class (or its sub-class). * If multiple View class identifiers are included, property will * be part of all of them. * * @since 1.4 */ @Target({ElementType.METHOD, ElementType.FIELD}) @Retention(RetentionPolicy.RUNTIME) @JacksonAnnotation public @interface JsonView { /** * View or views that annotated element is part of. Views are identified * by classes, and use expected class inheritance relationship: child * views contain all elements parent views have, for example. */ public Class[] value() default { }; }