Class VisibilityChecker.Std
java.lang.Object
com.fasterxml.jackson.databind.introspect.VisibilityChecker.Std
- All Implemented Interfaces:
VisibilityChecker<VisibilityChecker.Std>, Serializable
- Enclosing interface:
VisibilityChecker<T extends VisibilityChecker<T>>
public static class VisibilityChecker.Std
extends Object
implements VisibilityChecker<VisibilityChecker.Std>, Serializable
Default standard implementation is purely based on visibility
modifier of given class members, and its configured minimum
levels.
Implemented using "builder" (or "Fluent") pattern, whereas instances
are immutable, and configuration is achieved by chainable factory
methods. As a result, type is declared is funky recursive generic
type, to allow for sub-classing of build methods with property type
co-variance.
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from interface VisibilityChecker
VisibilityChecker.Std -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final com.fasterxml.jackson.annotation.JsonAutoDetect.Visibilityprotected final com.fasterxml.jackson.annotation.JsonAutoDetect.Visibilityprotected final com.fasterxml.jackson.annotation.JsonAutoDetect.Visibilityprotected final com.fasterxml.jackson.annotation.JsonAutoDetect.Visibilityprotected final com.fasterxml.jackson.annotation.JsonAutoDetect.Visibilityprotected static final VisibilityChecker.StdAlternate base settings used for JDK types: public visibility required for everythingprotected static final VisibilityChecker.StdThis is the canonical base instance, configured with default visibility values -
Constructor Summary
ConstructorsConstructorDescriptionStd(com.fasterxml.jackson.annotation.JsonAutoDetect ann) Constructor used for building instance that has minumum visibility levels as indicated by given annotation instanceStd(com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility v) Constructor that will assign given visibility value for all properties.Std(com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility getter, com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility isGetter, com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility setter, com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility creator, com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility field) Constructor that allows directly specifying minimum visibility levels to use -
Method Summary
Modifier and TypeMethodDescriptionprotected VisibilityChecker.Std_with(com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility g, com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility isG, com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility s, com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility cr, com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility f) static VisibilityChecker.Stdstatic VisibilityChecker.Stdconstruct(com.fasterxml.jackson.annotation.JsonAutoDetect.Value vis) static VisibilityChecker.StdbooleanbooleanMethod for checking whether given method is auto-detectable as Creator, with respect to its visibility (not considering method signature or name, just visibility)booleanbooleanMethod for checking whether given field is auto-detectable as property, with respect to its visibility (not considering method signature or name, just visibility)booleanbooleanMethod for checking whether given method is auto-detectable as regular getter, with respect to its visibility (not considering method signature or name, just visibility)booleanbooleanMethod for checking whether given method is auto-detectable as is-getter, with respect to its visibility (not considering method signature or name, just visibility)booleanbooleanMethod for checking whether given method is auto-detectable as setter, with respect to its visibility (not considering method signature or name, just visibility)toString()with(com.fasterxml.jackson.annotation.JsonAutoDetect ann) Builder method that will return an instance that has same settings as this instance has, except for values that given annotation overrides.with(com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility v) Builder method that will create and return an instance that has specifiedJsonAutoDetect.Visibilityvalue to use for all property elements.withCreatorVisibility(com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility v) Builder method that will return a checker instance that has specified minimum visibility level for creator methods (constructors, factory methods)withFieldVisibility(com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility v) Builder method that will return a checker instance that has specified minimum visibility level for fields.withGetterVisibility(com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility v) Builder method that will return a checker instance that has specified minimum visibility level for regular ("getXxx") getters.withIsGetterVisibility(com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility v) Builder method that will return a checker instance that has specified minimum visibility level for "is-getters" ("isXxx").withOverrides(com.fasterxml.jackson.annotation.JsonAutoDetect.Value vis) Method that can be used for merging default values from `this` instance with specified overrides; and either return `this` if overrides had no effect (that is, result would be equal), or a new instance with merged visibility settings.withSetterVisibility(com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility v) Builder method that will return a checker instance that has specified minimum visibility level for setters.withVisibility(com.fasterxml.jackson.annotation.PropertyAccessor method, com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility v) Builder method that will create and return an instance that has specifiedJsonAutoDetect.Visibilityvalue to use for specified property.
-
Field Details
-
DEFAULT
This is the canonical base instance, configured with default visibility values -
ALL_PUBLIC
Alternate base settings used for JDK types: public visibility required for everything- Since:
- 2.13
-
_getterMinLevel
protected final com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility _getterMinLevel -
_isGetterMinLevel
protected final com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility _isGetterMinLevel -
_setterMinLevel
protected final com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility _setterMinLevel -
_creatorMinLevel
protected final com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility _creatorMinLevel -
_fieldMinLevel
protected final com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility _fieldMinLevel
-
-
Constructor Details
-
Std
public Std(com.fasterxml.jackson.annotation.JsonAutoDetect ann) Constructor used for building instance that has minumum visibility levels as indicated by given annotation instance- Parameters:
ann- Annotations to use for determining minimum visibility levels
-
Std
public Std(com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility getter, com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility isGetter, com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility setter, com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility creator, com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility field) Constructor that allows directly specifying minimum visibility levels to use -
Std
public Std(com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility v) Constructor that will assign given visibility value for all properties.- Parameters:
v- level to use for all property types
-
-
Method Details
-
defaultInstance
- Returns:
- Instance with default settings: "public" for getters/is-getters, fields; "any" for setters and legacy 1-arg constructors
-
allPublicInstance
- Returns:
- Instance with all visibility levels set to "public"
- Since:
- 2.13
-
construct
public static VisibilityChecker.Std construct(com.fasterxml.jackson.annotation.JsonAutoDetect.Value vis) - Since:
- 2.9
-
_with
protected VisibilityChecker.Std _with(com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility g, com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility isG, com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility s, com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility cr, com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility f) -
with
Description copied from interface:VisibilityCheckerBuilder method that will return an instance that has same settings as this instance has, except for values that given annotation overrides.- Specified by:
within interfaceVisibilityChecker<VisibilityChecker.Std>
-
withOverrides
public VisibilityChecker.Std withOverrides(com.fasterxml.jackson.annotation.JsonAutoDetect.Value vis) Description copied from interface:VisibilityCheckerMethod that can be used for merging default values from `this` instance with specified overrides; and either return `this` if overrides had no effect (that is, result would be equal), or a new instance with merged visibility settings.- Specified by:
withOverridesin interfaceVisibilityChecker<VisibilityChecker.Std>
-
with
Description copied from interface:VisibilityCheckerBuilder method that will create and return an instance that has specifiedJsonAutoDetect.Visibilityvalue to use for all property elements. Typical usage would be something like:mapper.setVisibilityChecker( mapper.getVisibilityChecker().with(Visibility.NONE));(which would basically disable all auto-detection)- Specified by:
within interfaceVisibilityChecker<VisibilityChecker.Std>
-
withVisibility
public VisibilityChecker.Std withVisibility(com.fasterxml.jackson.annotation.PropertyAccessor method, com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility v) Description copied from interface:VisibilityCheckerBuilder method that will create and return an instance that has specifiedJsonAutoDetect.Visibilityvalue to use for specified property. Typical usage would be:mapper.setVisibilityChecker( mapper.getVisibilityChecker().withVisibility(JsonMethod.FIELD, Visibility.ANY));(which would basically enable auto-detection for all member fields)- Specified by:
withVisibilityin interfaceVisibilityChecker<VisibilityChecker.Std>
-
withGetterVisibility
public VisibilityChecker.Std withGetterVisibility(com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility v) Description copied from interface:VisibilityCheckerBuilder method that will return a checker instance that has specified minimum visibility level for regular ("getXxx") getters.- Specified by:
withGetterVisibilityin interfaceVisibilityChecker<VisibilityChecker.Std>
-
withIsGetterVisibility
public VisibilityChecker.Std withIsGetterVisibility(com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility v) Description copied from interface:VisibilityCheckerBuilder method that will return a checker instance that has specified minimum visibility level for "is-getters" ("isXxx").- Specified by:
withIsGetterVisibilityin interfaceVisibilityChecker<VisibilityChecker.Std>
-
withSetterVisibility
public VisibilityChecker.Std withSetterVisibility(com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility v) Description copied from interface:VisibilityCheckerBuilder method that will return a checker instance that has specified minimum visibility level for setters.- Specified by:
withSetterVisibilityin interfaceVisibilityChecker<VisibilityChecker.Std>
-
withCreatorVisibility
public VisibilityChecker.Std withCreatorVisibility(com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility v) Description copied from interface:VisibilityCheckerBuilder method that will return a checker instance that has specified minimum visibility level for creator methods (constructors, factory methods)- Specified by:
withCreatorVisibilityin interfaceVisibilityChecker<VisibilityChecker.Std>
-
withFieldVisibility
public VisibilityChecker.Std withFieldVisibility(com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility v) Description copied from interface:VisibilityCheckerBuilder method that will return a checker instance that has specified minimum visibility level for fields.- Specified by:
withFieldVisibilityin interfaceVisibilityChecker<VisibilityChecker.Std>
-
isCreatorVisible
Description copied from interface:VisibilityCheckerMethod for checking whether given method is auto-detectable as Creator, with respect to its visibility (not considering method signature or name, just visibility)- Specified by:
isCreatorVisiblein interfaceVisibilityChecker<VisibilityChecker.Std>
-
isCreatorVisible
- Specified by:
isCreatorVisiblein interfaceVisibilityChecker<VisibilityChecker.Std>
-
isFieldVisible
Description copied from interface:VisibilityCheckerMethod for checking whether given field is auto-detectable as property, with respect to its visibility (not considering method signature or name, just visibility)- Specified by:
isFieldVisiblein interfaceVisibilityChecker<VisibilityChecker.Std>
-
isFieldVisible
- Specified by:
isFieldVisiblein interfaceVisibilityChecker<VisibilityChecker.Std>
-
isGetterVisible
Description copied from interface:VisibilityCheckerMethod for checking whether given method is auto-detectable as regular getter, with respect to its visibility (not considering method signature or name, just visibility)- Specified by:
isGetterVisiblein interfaceVisibilityChecker<VisibilityChecker.Std>
-
isGetterVisible
- Specified by:
isGetterVisiblein interfaceVisibilityChecker<VisibilityChecker.Std>
-
isIsGetterVisible
Description copied from interface:VisibilityCheckerMethod for checking whether given method is auto-detectable as is-getter, with respect to its visibility (not considering method signature or name, just visibility)- Specified by:
isIsGetterVisiblein interfaceVisibilityChecker<VisibilityChecker.Std>
-
isIsGetterVisible
- Specified by:
isIsGetterVisiblein interfaceVisibilityChecker<VisibilityChecker.Std>
-
isSetterVisible
Description copied from interface:VisibilityCheckerMethod for checking whether given method is auto-detectable as setter, with respect to its visibility (not considering method signature or name, just visibility)- Specified by:
isSetterVisiblein interfaceVisibilityChecker<VisibilityChecker.Std>
-
isSetterVisible
- Specified by:
isSetterVisiblein interfaceVisibilityChecker<VisibilityChecker.Std>
-
toString
-