Class BeanUtil


  • public class BeanUtil
    extends Object
    Helper class that contains functionality needed by both serialization and deserialization side.
    • Constructor Detail

      • BeanUtil

        public BeanUtil()
    • Method Detail

      • okNameForGetter

        public static String okNameForGetter​(AnnotatedMethod am,
                                             boolean stdNaming)
        Since:
        2.5
      • okNameForRegularGetter

        public static String okNameForRegularGetter​(AnnotatedMethod am,
                                                    String name,
                                                    boolean stdNaming)
        Since:
        2.5
      • getDefaultValue

        public static Object getDefaultValue​(JavaType type)
        Accessor used to find out "default value" to use for comparing values to serialize, to determine whether to exclude value from serialization with inclusion type of JsonInclude.Include.NON_DEFAULT.

        Default logic is such that for primitives and wrapper types for primitives, expected defaults (0 for `int` and `java.lang.Integer`) are returned; for Strings, empty String, and for structured (Maps, Collections, arrays) and reference types, criteria JsonInclude.Include.NON_DEFAULT is used.

        Since:
        2.7
      • isCglibGetCallbacks

        protected static boolean isCglibGetCallbacks​(AnnotatedMethod am)
        This method was added to address the need to weed out CGLib-injected "getCallbacks" method. At this point caller has detected a potential getter method with name "getCallbacks" and we need to determine if it is indeed injectect by Cglib. We do this by verifying that the result type is "net.sf.cglib.proxy.Callback[]"
      • isGroovyMetaClassGetter

        protected static boolean isGroovyMetaClassGetter​(AnnotatedMethod am)
        Another helper method to deal with Groovy's problematic metadata accessors
      • legacyManglePropertyName

        protected static String legacyManglePropertyName​(String basename,
                                                         int offset)
        Method called to figure out name of the property, given corresponding suggested name based on a method or field name.
        Parameters:
        basename - Name of accessor/mutator method, not including prefix ("get"/"is"/"set")
      • stdManglePropertyName

        protected static String stdManglePropertyName​(String basename,
                                                      int offset)
        Since:
        2.5