Interface VisibilityChecker<T extends VisibilityChecker<T>>

  • All Known Implementing Classes:
    VisibilityChecker.Std

    public interface VisibilityChecker<T extends VisibilityChecker<T>>
    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.

    Note on compatibility: 1.9 introduced overloaded "with" method (which takes JsonAutoDetect.Visibility as value to assign); which could be potential issue, but assumption here is that all custom implementations are based on "Std" base class

    Since:
    1.5
    Author:
    tatu
    • Method Detail

      • with

        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.
      • with

        T with​(JsonAutoDetect.Visibility v)
        Builder method that will create and return an instance that has specified JsonAutoDetect.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)
        Since:
        1.9
      • withVisibility

        T withVisibility​(JsonMethod method,
                         JsonAutoDetect.Visibility v)
        Builder method that will create and return an instance that has specified JsonAutoDetect.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)
        Since:
        1.9
      • withGetterVisibility

        T withGetterVisibility​(JsonAutoDetect.Visibility v)
        Builder method that will return a checker instance that has specified minimum visibility level for regular ("getXxx") getters.
      • withIsGetterVisibility

        T withIsGetterVisibility​(JsonAutoDetect.Visibility v)
        Builder method that will return a checker instance that has specified minimum visibility level for "is-getters" ("isXxx").
      • withSetterVisibility

        T withSetterVisibility​(JsonAutoDetect.Visibility v)
        Builder method that will return a checker instance that has specified minimum visibility level for setters.
      • withCreatorVisibility

        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)
      • withFieldVisibility

        T withFieldVisibility​(JsonAutoDetect.Visibility v)
        Builder method that will return a checker instance that has specified minimum visibility level for fields.
      • isGetterVisible

        boolean isGetterVisible​(java.lang.reflect.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)
      • isIsGetterVisible

        boolean isIsGetterVisible​(java.lang.reflect.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)
      • isSetterVisible

        boolean isSetterVisible​(java.lang.reflect.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)
      • isCreatorVisible

        boolean isCreatorVisible​(java.lang.reflect.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)
      • isFieldVisible

        boolean isFieldVisible​(java.lang.reflect.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)