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 com.fasterxml.jackson.databind.introspect.VisibilityChecker

    VisibilityChecker.Std
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    protected final com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility
     
    protected final com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility
     
    protected final com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility
     
    protected final com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility
     
    protected final com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility
     
    protected static final VisibilityChecker.Std
    Alternate base settings used for JDK types: public visibility required for everything
    protected static final VisibilityChecker.Std
    This is the canonical base instance, configured with default visibility values
  • Constructor Summary

    Constructors
    Constructor
    Description
    Std(com.fasterxml.jackson.annotation.JsonAutoDetect ann)
    Constructor used for building instance that has minumum visibility levels as indicated by given annotation instance
    Std(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 Type
    Method
    Description
    _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)
     
     
    construct(com.fasterxml.jackson.annotation.JsonAutoDetect.Value vis)
     
     
    boolean
     
    boolean
    Method for checking whether given method is auto-detectable as Creator, with respect to its visibility (not considering method signature or name, just visibility)
    boolean
     
    boolean
    Method for checking whether given field is auto-detectable as property, with respect to its visibility (not considering method signature or name, just visibility)
    boolean
     
    boolean
    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)
    boolean
     
    boolean
    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)
    boolean
     
    boolean
    Method for checking whether given method is auto-detectable as setter, with respect to its visibility (not considering method signature or name, just visibility)
     
    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 specified JsonAutoDetect.Visibility value 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 specified JsonAutoDetect.Visibility value to use for specified property.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
  • Field Details

    • DEFAULT

      protected static final VisibilityChecker.Std DEFAULT
      This is the canonical base instance, configured with default visibility values
    • ALL_PUBLIC

      protected static final VisibilityChecker.Std 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