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

org.codehaus.jackson.annotate.JsonMethod Maven / Gradle / Ivy

There is a newer version: 1.1.6
Show newest version
package org.codehaus.jackson.annotate;

/**
 * Enumeration used to define kinds of methods that annotations like
 * {@link JsonAutoDetect} apply to.
 *

* In addition to actual method types (GETTER, SETTER, CREATOR; and * sort-of-method, FIELD), 2 pseudo-types * are defined for convenience: ALWAYS and NONE. These * can be used to indicate, all or none of available method types (respectively), * for use by annotations that takes JsonMethod argument. */ public enum JsonMethod { /** * Getters are methods used to get a POJO field value for serialization, * or, under certain conditions also for de-serialization. Latter * can be used for effectively setting Collection or Map values * in absence of setters, iff returned value is not a copy but * actual value of the logical property. *

* Since version 1.3, this does NOT include "is getters" (methods * that return boolean and named 'isXxx' for property 'xxx'); instead, * {@link #IS_GETTER} is used}. */ GETTER, /** * Setters are methods used to set a POJO value for deserialization. */ SETTER, /** * Creators are constructors and (static) factory methods used to * construct POJO instances for deserialization */ CREATOR, /** * Field refers to fields of regular Java objects. Although * they are not really methods, addition of optional field-discovery * in version 1.1 meant that there was need to enable/disable * their auto-detection, and this is the place to add it in. * * @since 1.1 */ FIELD, /** * "Is getters" are getter-like methods that are named "isXxx" * (instead of "getXxx" for getters) and return boolean value * (either primitive, or {@link java.lang.Boolean}). * * @since 1.3 */ IS_GETTER, /** * This pseudo-type indicates that none of real types is included */ NONE, /** * This pseudo-type indicates that all of real types are included */ ALL ; private JsonMethod() { } public boolean creatorEnabled() { return (this == CREATOR) || (this == ALL); } public boolean getterEnabled() { return (this == GETTER) || (this == ALL); } public boolean isGetterEnabled() { return (this == IS_GETTER) || (this == ALL); } public boolean setterEnabled() { return (this == SETTER) || (this == ALL); } public boolean fieldEnabled() { return (this == FIELD) || (this == ALL); } }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy