Class DefaultAccessorNamingStrategy.RecordNamingStrict

Enclosing class:
DefaultAccessorNamingStrategy

public static class DefaultAccessorNamingStrategy.RecordNamingStrict extends DefaultAccessorNamingStrategy.RecordNaming
Stricter DefaultAccessorNamingStrategy.RecordNaming implementation used when MapperFeature.INFER_RECORD_GETTERS_FROM_COMPONENTS_ONLY is enabled. Unlike the default DefaultAccessorNamingStrategy.RecordNaming, this strategy does NOT fall back to standard getter/setter detection for methods that don't match Record component names.

This prevents helper methods like getDisplayName() from being auto-detected and serialized when they are not actual Record components.

Since:
3.1
  • Constructor Details

  • Method Details

    • findNameForRegularGetter

      public String findNameForRegularGetter(AnnotatedMethod am, String name)
      Description copied from class: AccessorNamingStrategy
      Method called to find whether given method would be considered a "regular" getter method in context of type introspected, and if so, what is the logical property it is associated with (which in turn suggest external name for property)

      Note that signature acceptability has already been checked (no arguments, does have a return value) by caller.

      Note that this method MAY be called for potential "is-getter" methods too (before AccessorNamingStrategy.findNameForIsGetter(tools.jackson.databind.introspect.AnnotatedMethod, java.lang.String))

      Note that visibility checks are applied separately; strategy does not need to be concerned with that aspect.

      Overrides:
      findNameForRegularGetter in class DefaultAccessorNamingStrategy.RecordNaming
      Parameters:
      am - Method to check
      name - Name to check (usually same as AnnotatedMethod.getName()
      Returns:
      Implied property name for getter method, if match; null to indicate that the name does not conform to expected naming convention
    • findNameForIsGetter

      public String findNameForIsGetter(AnnotatedMethod am, String name)
      Description copied from class: AccessorNamingStrategy
      Method called to find whether given method would be considered an "is-getter" getter method in context of type introspected, and if so, what is the logical property it is associated with (which in turn suggest external name for property)

      Note that signature acceptability has already been checked (no arguments, has return value) but NOT the specific limitation that return type should be of boolean type -- implementation should apply latter check, if so desired (some languages may use different criteria). It is also possible that some implementations allow different return types than boolean types.

      Note that visibility checks are applied separately; strategy does not need to be concerned with that aspect.

      Overrides:
      findNameForIsGetter in class DefaultAccessorNamingStrategy
      Parameters:
      am - Method to check
      name - Name to check (usually same as AnnotatedMethod.getName()
      Returns:
      Implied property name for is-getter method, if match; null to indicate that the name does not conform to expected naming convention
    • findNameForMutator

      public String findNameForMutator(AnnotatedMethod am, String name)
      Description copied from class: AccessorNamingStrategy
      Method called to find whether given method would be considered a "mutator" (usually setter, but for builders "with-method" or similar) in context of type introspected, and if so, what is the logical property it is associated with (which in turn suggest external name for property)

      Note that signature acceptability has already been checked (exactly one parameter) by caller.

      Note that visibility checks are applied separately; strategy does not need to be concerned with that aspect.

      Overrides:
      findNameForMutator in class DefaultAccessorNamingStrategy
      Parameters:
      am - Method to check
      name - Name to check (usually same as AnnotatedMethod.getName()
      Returns:
      Implied property name for mutator method, if match; null to indicate that the name does not conform to expected naming convention