All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.groupbyinc.common.jackson.annotation.JsonView Maven / Gradle / Ivy

There is a newer version: 198
Show newest version
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;

import com.fasterxml.jackson.annotation.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. *

* Starting with 2.9, it is also possible to use this annotation on * POJO classes to indicate the default view(s) for properties of the * type, unless overridden by per-property annotation. */ @Target({ElementType.ANNOTATION_TYPE, ElementType.METHOD, ElementType.FIELD, ElementType.PARAMETER, // since 2.5 ElementType.TYPE // since 2.9, to indicate "default view" for properties }) @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 { }; }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy