Top Description Inners Methods
com.fasterxml.jackson.databind.introspect

public Interface VisibilityChecker<T extends VisibilityChecker<T>>

Known Direct Implementers
com.fasterxml.jackson.databind.introspect.VisibilityChecker.Std
Imports
java.lang.reflect.Field, .Member, .Method, com.fasterxml.jackson.annotation.JsonAutoDetect, .PropertyAccessor, .JsonAutoDetect.Visibility

Interface for object used for determine which property elements (methods, fields, constructors) can be auto-detected, with respect to their visibility modifiers.

Note on type declaration: funky recursive type is necessary to support builder/fluent pattern.

Nested and Inner Type Summary

Modifier and TypeClass and Description
public static class
VisibilityChecker.Std

Default standard implementation is purely based on visibility modifier of given class members, and its configured minimum levels.

Method Summary

Modifier and TypeMethod and Description
public boolean
isCreatorVisible(Member m)

Method for checking whether given method is auto-detectable as Creator, with respect to its visibility (not considering method signature or name, just visibility)

public boolean
public boolean
isFieldVisible(Field f)

Method for checking whether given field is auto-detectable as property, with respect to its visibility (not considering method signature or name, just visibility)

public boolean
public boolean
isGetterVisible(Method m)

Method for checking whether given method is auto-detectable as regular getter, with respect to its visibility (not considering method signature or name, just visibility)

public boolean
public boolean
isIsGetterVisible(Method m)

Method for checking whether given method is auto-detectable as is-getter, with respect to its visibility (not considering method signature or name, just visibility)

public boolean
public boolean
isSetterVisible(Method m)

Method for checking whether given method is auto-detectable as setter, with respect to its visibility (not considering method signature or name, just visibility)

public boolean
public T
with(JsonAutoDetect ann)

Builder method that will return an instance that has same settings as this instance has, except for values that given annotation overrides.

public T
with(JsonAutoDetect.Visibility v)

Builder method that will create and return an instance that has specified Visibility value to use for all property elements.

public T
withCreatorVisibility(JsonAutoDetect.Visibility v)

Builder method that will return a checker instance that has specified minimum visibility level for creator methods (constructors, factory methods)

public T
withFieldVisibility(JsonAutoDetect.Visibility v)

Builder method that will return a checker instance that has specified minimum visibility level for fields.

public T
withGetterVisibility(JsonAutoDetect.Visibility v)

Builder method that will return a checker instance that has specified minimum visibility level for regular ("getXxx") getters.

public T
withIsGetterVisibility(JsonAutoDetect.Visibility v)

Builder method that will return a checker instance that has specified minimum visibility level for "is-getters" ("isXxx").

public T
withOverrides(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.

public T
withSetterVisibility(JsonAutoDetect.Visibility v)

Builder method that will return a checker instance that has specified minimum visibility level for setters.

public T
withVisibility(PropertyAccessor method, JsonAutoDetect.Visibility v)

Builder method that will create and return an instance that has specified Visibility value to use for specified property.

Method Detail

isCreatorVisibleback to summary
public boolean isCreatorVisible(Member m)

Method for checking whether given method is auto-detectable as Creator, with respect to its visibility (not considering method signature or name, just visibility)

isCreatorVisibleback to summary
public boolean isCreatorVisible(AnnotatedMember m)
isFieldVisibleback to summary
public boolean isFieldVisible(Field f)

Method for checking whether given field is auto-detectable as property, with respect to its visibility (not considering method signature or name, just visibility)

isFieldVisibleback to summary
public boolean isFieldVisible(AnnotatedField f)
isGetterVisibleback to summary
public boolean isGetterVisible(Method m)

Method for checking whether given method is auto-detectable as regular getter, with respect to its visibility (not considering method signature or name, just visibility)

isGetterVisibleback to summary
public boolean isGetterVisible(AnnotatedMethod m)
isIsGetterVisibleback to summary
public boolean isIsGetterVisible(Method m)

Method for checking whether given method is auto-detectable as is-getter, with respect to its visibility (not considering method signature or name, just visibility)

isIsGetterVisibleback to summary
public boolean isIsGetterVisible(AnnotatedMethod m)
isSetterVisibleback to summary
public boolean isSetterVisible(Method m)

Method for checking whether given method is auto-detectable as setter, with respect to its visibility (not considering method signature or name, just visibility)

isSetterVisibleback to summary
public boolean isSetterVisible(AnnotatedMethod m)
withback to summary
public T with(JsonAutoDetect ann)

Builder method that will return an instance that has same settings as this instance has, except for values that given annotation overrides.

withback to summary
public T with(JsonAutoDetect.Visibility v)

Builder method that will create and return an instance that has specified Visibility value 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)
withCreatorVisibilityback to summary
public T withCreatorVisibility(JsonAutoDetect.Visibility v)

Builder method that will return a checker instance that has specified minimum visibility level for creator methods (constructors, factory methods)

withFieldVisibilityback to summary
public T withFieldVisibility(JsonAutoDetect.Visibility v)

Builder method that will return a checker instance that has specified minimum visibility level for fields.

withGetterVisibilityback to summary
public T withGetterVisibility(JsonAutoDetect.Visibility v)

Builder method that will return a checker instance that has specified minimum visibility level for regular ("getXxx") getters.

withIsGetterVisibilityback to summary
public T withIsGetterVisibility(JsonAutoDetect.Visibility v)

Builder method that will return a checker instance that has specified minimum visibility level for "is-getters" ("isXxx").

withOverridesback to summary
public T withOverrides(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.

Since
2.9
withSetterVisibilityback to summary
public T withSetterVisibility(JsonAutoDetect.Visibility v)

Builder method that will return a checker instance that has specified minimum visibility level for setters.

withVisibilityback to summary
public T withVisibility(PropertyAccessor method, JsonAutoDetect.Visibility v)

Builder method that will create and return an instance that has specified Visibility value 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)
com.fasterxml.jackson.databind.introspect back to summary

public Class VisibilityChecker.Std

extends Object
implements VisibilityChecker<VisibilityChecker.Std>, Serializable
Class Inheritance
  • java.lang.Object
  • com.fasterxml.jackson.databind.introspect.VisibilityChecker.Std
All Implemented Interfaces
java.io.Serializable, com.fasterxml.jackson.databind.introspect.VisibilityChecker

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.

Field Summary

Modifier and TypeField and Description
protected final JsonAutoDetect.Visibility
protected final JsonAutoDetect.Visibility
protected final JsonAutoDetect.Visibility
protected final JsonAutoDetect.Visibility
protected final JsonAutoDetect.Visibility
protected static final VisibilityChecker.Std
ALL_PUBLIC

Alternate base settings used for JDK types: public visibility required for everything

protected static final VisibilityChecker.Std
DEFAULT

This is the canonical base instance, configured with default visibility values

private static final long

Constructor Summary

AccessConstructor and Description
public
Std(JsonAutoDetect
Annotations to use for determining minimum visibility levels
ann
)

Constructor used for building instance that has minumum visibility levels as indicated by given annotation instance

public
Std(JsonAutoDetect.Visibility getter, JsonAutoDetect.Visibility isGetter, JsonAutoDetect.Visibility setter, JsonAutoDetect.Visibility creator, JsonAutoDetect.Visibility field)

Constructor that allows directly specifying minimum visibility levels to use

public
Std(JsonAutoDetect.Visibility
level to use for all property types
v
)

Constructor that will assign given visibility value for all properties.

Method Summary

Modifier and TypeMethod and Description
private JsonAutoDetect.Visibility
protected VisibilityChecker.Std
public static VisibilityChecker.Std

Returns:

Instance with all visibility levels set to "public"
allPublicInstance
()

public static VisibilityChecker.Std
public static VisibilityChecker.Std

Returns:

Instance with default settings: "public" for getters/is-getters, fields; "any" for setters and legacy 1-arg constructors
defaultInstance
()

public boolean
isCreatorVisible(Member m)

Implements com.fasterxml.jackson.databind.introspect.VisibilityChecker.isCreatorVisible.

Method for checking whether given method is auto-detectable as Creator, with respect to its visibility (not considering method signature or name, just visibility)

public boolean
public boolean
isFieldVisible(Field f)

Implements com.fasterxml.jackson.databind.introspect.VisibilityChecker.isFieldVisible.

Method for checking whether given field is auto-detectable as property, with respect to its visibility (not considering method signature or name, just visibility)

public boolean
public boolean
isGetterVisible(Method m)

Implements com.fasterxml.jackson.databind.introspect.VisibilityChecker.isGetterVisible.

Method for checking whether given method is auto-detectable as regular getter, with respect to its visibility (not considering method signature or name, just visibility)

public boolean
public boolean
isIsGetterVisible(Method m)

Implements com.fasterxml.jackson.databind.introspect.VisibilityChecker.isIsGetterVisible.

Method for checking whether given method is auto-detectable as is-getter, with respect to its visibility (not considering method signature or name, just visibility)

public boolean
public boolean
isSetterVisible(Method m)

Implements com.fasterxml.jackson.databind.introspect.VisibilityChecker.isSetterVisible.

Method for checking whether given method is auto-detectable as setter, with respect to its visibility (not considering method signature or name, just visibility)

public boolean
public String
toString()

Overrides java.lang.Object.toString.

Returns a string representation of the object.

public VisibilityChecker.Std
with(JsonAutoDetect ann)

Implements com.fasterxml.jackson.databind.introspect.VisibilityChecker.with.

Builder method that will return an instance that has same settings as this instance has, except for values that given annotation overrides.

public VisibilityChecker.Std
with(JsonAutoDetect.Visibility v)

Implements com.fasterxml.jackson.databind.introspect.VisibilityChecker.with.

Builder method that will create and return an instance that has specified Visibility value to use for all property elements.

public VisibilityChecker.Std
withCreatorVisibility(JsonAutoDetect.Visibility v)

Implements com.fasterxml.jackson.databind.introspect.VisibilityChecker.withCreatorVisibility.

Builder method that will return a checker instance that has specified minimum visibility level for creator methods (constructors, factory methods)

public VisibilityChecker.Std
withFieldVisibility(JsonAutoDetect.Visibility v)

Implements com.fasterxml.jackson.databind.introspect.VisibilityChecker.withFieldVisibility.

Builder method that will return a checker instance that has specified minimum visibility level for fields.

public VisibilityChecker.Std
withGetterVisibility(JsonAutoDetect.Visibility v)

Implements com.fasterxml.jackson.databind.introspect.VisibilityChecker.withGetterVisibility.

Builder method that will return a checker instance that has specified minimum visibility level for regular ("getXxx") getters.

public VisibilityChecker.Std
withIsGetterVisibility(JsonAutoDetect.Visibility v)

Implements com.fasterxml.jackson.databind.introspect.VisibilityChecker.withIsGetterVisibility.

Builder method that will return a checker instance that has specified minimum visibility level for "is-getters" ("isXxx").

public VisibilityChecker.Std
withOverrides(JsonAutoDetect.Value vis)

Implements com.fasterxml.jackson.databind.introspect.VisibilityChecker.withOverrides.

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.

public VisibilityChecker.Std
withSetterVisibility(JsonAutoDetect.Visibility v)

Implements com.fasterxml.jackson.databind.introspect.VisibilityChecker.withSetterVisibility.

Builder method that will return a checker instance that has specified minimum visibility level for setters.

public VisibilityChecker.Std
withVisibility(PropertyAccessor method, JsonAutoDetect.Visibility v)

Implements com.fasterxml.jackson.databind.introspect.VisibilityChecker.withVisibility.

Builder method that will create and return an instance that has specified Visibility value to use for specified property.

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAllwaitwaitwait

Field Detail

_creatorMinLevelback to summary
protected final JsonAutoDetect.Visibility _creatorMinLevel
_fieldMinLevelback to summary
protected final JsonAutoDetect.Visibility _fieldMinLevel
_getterMinLevelback to summary
protected final JsonAutoDetect.Visibility _getterMinLevel
_isGetterMinLevelback to summary
protected final JsonAutoDetect.Visibility _isGetterMinLevel
_setterMinLevelback to summary
protected final JsonAutoDetect.Visibility _setterMinLevel
ALL_PUBLICback to summary
protected static final VisibilityChecker.Std ALL_PUBLIC

Alternate base settings used for JDK types: public visibility required for everything

Since
2.13
DEFAULTback to summary
protected static final VisibilityChecker.Std DEFAULT

This is the canonical base instance, configured with default visibility values

serialVersionUIDback to summary
private static final long serialVersionUID

Constructor Detail

Stdback to summary
public Std(JsonAutoDetect ann)

Constructor used for building instance that has minumum visibility levels as indicated by given annotation instance

Parameters
ann:JsonAutoDetect

Annotations to use for determining minimum visibility levels

Stdback to summary
public Std(JsonAutoDetect.Visibility getter, JsonAutoDetect.Visibility isGetter, JsonAutoDetect.Visibility setter, JsonAutoDetect.Visibility creator, JsonAutoDetect.Visibility field)

Constructor that allows directly specifying minimum visibility levels to use

Stdback to summary
public Std(JsonAutoDetect.Visibility v)

Constructor that will assign given visibility value for all properties.

Parameters
v:JsonAutoDetect.Visibility

level to use for all property types

Method Detail

_defaultOrOverrideback to summary
private JsonAutoDetect.Visibility _defaultOrOverride(JsonAutoDetect.Visibility defaults, JsonAutoDetect.Visibility override)
_withback to summary
protected VisibilityChecker.Std _with(JsonAutoDetect.Visibility g, JsonAutoDetect.Visibility isG, JsonAutoDetect.Visibility s, JsonAutoDetect.Visibility cr, JsonAutoDetect.Visibility f)
allPublicInstanceback to summary
public static VisibilityChecker.Std allPublicInstance()
Returns:VisibilityChecker.Std

Instance with all visibility levels set to "public"

Since
2.13
constructback to summary
public static VisibilityChecker.Std construct(JsonAutoDetect.Value vis)
Since
2.9
defaultInstanceback to summary
public static VisibilityChecker.Std defaultInstance()
Returns:VisibilityChecker.Std

Instance with default settings: "public" for getters/is-getters, fields; "any" for setters and legacy 1-arg constructors

isCreatorVisibleback to summary
public boolean isCreatorVisible(Member m)

Implements com.fasterxml.jackson.databind.introspect.VisibilityChecker.isCreatorVisible.

Doc from com.fasterxml.jackson.databind.introspect.VisibilityChecker.isCreatorVisible.

Method for checking whether given method is auto-detectable as Creator, with respect to its visibility (not considering method signature or name, just visibility)

Annotations
@Override
isCreatorVisibleback to summary
public boolean isCreatorVisible(AnnotatedMember m)

Implements com.fasterxml.jackson.databind.introspect.VisibilityChecker.isCreatorVisible.

Annotations
@Override
isFieldVisibleback to summary
public boolean isFieldVisible(Field f)

Implements com.fasterxml.jackson.databind.introspect.VisibilityChecker.isFieldVisible.

Doc from com.fasterxml.jackson.databind.introspect.VisibilityChecker.isFieldVisible.

Method for checking whether given field is auto-detectable as property, with respect to its visibility (not considering method signature or name, just visibility)

Annotations
@Override
isFieldVisibleback to summary
public boolean isFieldVisible(AnnotatedField f)

Implements com.fasterxml.jackson.databind.introspect.VisibilityChecker.isFieldVisible.

Annotations
@Override
isGetterVisibleback to summary
public boolean isGetterVisible(Method m)

Implements com.fasterxml.jackson.databind.introspect.VisibilityChecker.isGetterVisible.

Doc from com.fasterxml.jackson.databind.introspect.VisibilityChecker.isGetterVisible.

Method for checking whether given method is auto-detectable as regular getter, with respect to its visibility (not considering method signature or name, just visibility)

Annotations
@Override
isGetterVisibleback to summary
public boolean isGetterVisible(AnnotatedMethod m)

Implements com.fasterxml.jackson.databind.introspect.VisibilityChecker.isGetterVisible.

Annotations
@Override
isIsGetterVisibleback to summary
public boolean isIsGetterVisible(Method m)

Implements com.fasterxml.jackson.databind.introspect.VisibilityChecker.isIsGetterVisible.

Doc from com.fasterxml.jackson.databind.introspect.VisibilityChecker.isIsGetterVisible.

Method for checking whether given method is auto-detectable as is-getter, with respect to its visibility (not considering method signature or name, just visibility)

Annotations
@Override
isIsGetterVisibleback to summary
public boolean isIsGetterVisible(AnnotatedMethod m)

Implements com.fasterxml.jackson.databind.introspect.VisibilityChecker.isIsGetterVisible.

Annotations
@Override
isSetterVisibleback to summary
public boolean isSetterVisible(Method m)

Implements com.fasterxml.jackson.databind.introspect.VisibilityChecker.isSetterVisible.

Doc from com.fasterxml.jackson.databind.introspect.VisibilityChecker.isSetterVisible.

Method for checking whether given method is auto-detectable as setter, with respect to its visibility (not considering method signature or name, just visibility)

Annotations
@Override
isSetterVisibleback to summary
public boolean isSetterVisible(AnnotatedMethod m)

Implements com.fasterxml.jackson.databind.introspect.VisibilityChecker.isSetterVisible.

Annotations
@Override
toStringback to summary
public String toString()

Overrides java.lang.Object.toString.

Doc from java.lang.Object.toString.

Returns a string representation of the object. Satisfying this method's contract implies a non-null result must be returned.

Returns:String

a string representation of the object

Annotations
@Override
withback to summary
public VisibilityChecker.Std with(JsonAutoDetect ann)

Implements com.fasterxml.jackson.databind.introspect.VisibilityChecker.with.

Doc from com.fasterxml.jackson.databind.introspect.VisibilityChecker.with.

Builder method that will return an instance that has same settings as this instance has, except for values that given annotation overrides.

Annotations
@Override
withback to summary
public VisibilityChecker.Std with(JsonAutoDetect.Visibility v)

Implements com.fasterxml.jackson.databind.introspect.VisibilityChecker.with.

Doc from com.fasterxml.jackson.databind.introspect.VisibilityChecker.with.

Builder method that will create and return an instance that has specified Visibility value 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)
Annotations
@Override
withCreatorVisibilityback to summary
public VisibilityChecker.Std withCreatorVisibility(JsonAutoDetect.Visibility v)

Implements com.fasterxml.jackson.databind.introspect.VisibilityChecker.withCreatorVisibility.

Doc from com.fasterxml.jackson.databind.introspect.VisibilityChecker.withCreatorVisibility.

Builder method that will return a checker instance that has specified minimum visibility level for creator methods (constructors, factory methods)

Annotations
@Override
withFieldVisibilityback to summary
public VisibilityChecker.Std withFieldVisibility(JsonAutoDetect.Visibility v)

Implements com.fasterxml.jackson.databind.introspect.VisibilityChecker.withFieldVisibility.

Doc from com.fasterxml.jackson.databind.introspect.VisibilityChecker.withFieldVisibility.

Builder method that will return a checker instance that has specified minimum visibility level for fields.

Annotations
@Override
withGetterVisibilityback to summary
public VisibilityChecker.Std withGetterVisibility(JsonAutoDetect.Visibility v)

Implements com.fasterxml.jackson.databind.introspect.VisibilityChecker.withGetterVisibility.

Doc from com.fasterxml.jackson.databind.introspect.VisibilityChecker.withGetterVisibility.

Builder method that will return a checker instance that has specified minimum visibility level for regular ("getXxx") getters.

Annotations
@Override
withIsGetterVisibilityback to summary
public VisibilityChecker.Std withIsGetterVisibility(JsonAutoDetect.Visibility v)

Implements com.fasterxml.jackson.databind.introspect.VisibilityChecker.withIsGetterVisibility.

Doc from com.fasterxml.jackson.databind.introspect.VisibilityChecker.withIsGetterVisibility.

Builder method that will return a checker instance that has specified minimum visibility level for "is-getters" ("isXxx").

Annotations
@Override
withOverridesback to summary
public VisibilityChecker.Std withOverrides(JsonAutoDetect.Value vis)

Implements com.fasterxml.jackson.databind.introspect.VisibilityChecker.withOverrides.

Doc from com.fasterxml.jackson.databind.introspect.VisibilityChecker.withOverrides.

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.

Annotations
@Override
withSetterVisibilityback to summary
public VisibilityChecker.Std withSetterVisibility(JsonAutoDetect.Visibility v)

Implements com.fasterxml.jackson.databind.introspect.VisibilityChecker.withSetterVisibility.

Doc from com.fasterxml.jackson.databind.introspect.VisibilityChecker.withSetterVisibility.

Builder method that will return a checker instance that has specified minimum visibility level for setters.

Annotations
@Override
withVisibilityback to summary
public VisibilityChecker.Std withVisibility(PropertyAccessor method, JsonAutoDetect.Visibility v)

Implements com.fasterxml.jackson.databind.introspect.VisibilityChecker.withVisibility.

Doc from com.fasterxml.jackson.databind.introspect.VisibilityChecker.withVisibility.

Builder method that will create and return an instance that has specified Visibility value 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)
Annotations
@Override