Enum Class WrapperArrayHandling

java.lang.Object
java.lang.Enum<WrapperArrayHandling>
org.hibernate.type.WrapperArrayHandling
All Implemented Interfaces:
Serializable, Comparable<WrapperArrayHandling>, Constable

public enum WrapperArrayHandling extends Enum<WrapperArrayHandling>
Possible options for how to handle Byte[] and Character[] basic mappings encountered in the application domain model.
Since:
6.2
  • Enum Constant Details

    • DISALLOW

      public static final WrapperArrayHandling DISALLOW
      Throw an informative and actionable error if the types are used explicitly in the domain model
      Implementation Note:
      The default behavior; unless JPA compliance is enabled - see PICK
    • ALLOW

      public static final WrapperArrayHandling ALLOW
      Allows the use of the wrapper arrays. Stores the arrays using ARRAY or SQLXML SQL types to maintain proper null element semantics.
    • LEGACY

      public static final WrapperArrayHandling LEGACY
      Allows the use of the wrapper arrays. Stores the arrays using VARBINARY and VARCHAR, disallowing null elements.
      See Also:
      API Note:
      Hibernate recommends users who want the legacy semantic change the domain model to use byte[] and char[] rather than using this setting.
      Implementation Note:
      The pre-6.2 behavior
    • PICK

      public static final WrapperArrayHandling PICK
      Hibernate will pick between ALLOW and LEGACY depending on whether the Dialect supports SQL ARRAY types.
      Implementation Note:
      The default if JPA compliance is enabled.
  • Method Details

    • values

      public static WrapperArrayHandling[] values()
      Returns an array containing the constants of this enum class, in the order they are declared.
      Returns:
      an array containing the constants of this enum class, in the order they are declared
    • valueOf

      public static WrapperArrayHandling valueOf(String name)
      Returns the enum constant of this class with the specified name. The string must match exactly an identifier used to declare an enum constant in this class. (Extraneous whitespace characters are not permitted.)
      Parameters:
      name - the name of the enum constant to be returned.
      Returns:
      the enum constant with the specified name
      Throws:
      IllegalArgumentException - if this enum class has no constant with the specified name
      NullPointerException - if the argument is null
    • interpretExternalSetting

      public static WrapperArrayHandling interpretExternalSetting(Object value)
    • interpretExternalSettingLeniently

      public static WrapperArrayHandling interpretExternalSettingLeniently(@Nullable Object value)
      Form of interpretExternalSetting(Object) which allows incoming null values and simply returns null. Useful for chained resolutions