java.lang.Object
java.lang.Enum<LogicalType>
edu.internet2.middleware.grouperClientExt.com.fasterxml.jackson.databind.type.LogicalType
All Implemented Interfaces:
Serializable, Comparable<LogicalType>, java.lang.constant.Constable

public enum LogicalType extends Enum<LogicalType>
Set of logical types (or type categories, classes of classes), used for defining applicability of configuration like coercion configuration. Used instead to allow easier targeting of types than having to enumerate physical types (Class or JavaType).
Since:
2.12
  • Enum Constant Details

    • Array

      public static final LogicalType Array
      Array types of other values.

      Note: excludes binary type byte[].

    • Collection

      public static final LogicalType Collection
      Collection values (and "Collection-like" for JVM languages and datatype libraries with semantically similar types)
    • Map

      public static final LogicalType Map
      Map values (and "Map-like" for JVM languages and datatype libraries with semantically similar types)
    • POJO

      public static final LogicalType POJO
      Types that are handled by default "set of key/value pairs" serialization, also known as "Beans".

      In addition to user-defined types, also includes JDK types like:

    • Untyped

      public static final LogicalType Untyped
      "Non-type", Type used to contained untyped, free-form content: maybe a "Tree" (sometimes called "AST"), or buffer of some kind, or even just nominal type of Object
    • Integer

      public static final LogicalType Integer
      Basic integral numbers types like short, int, long and matching wrapper types, BigInteger.
    • Float

      public static final LogicalType Float
      Basic floating-point numbers types like float, double, and matching wrapper types, BigDecimal.
    • Boolean

      public static final LogicalType Boolean
    • Enum

      public static final LogicalType Enum
      Various Enum types.
    • Textual

      public static final LogicalType Textual
      Purely textual types, String and similar (but not types that are generally expressed as Strings in input).
    • Binary

      public static final LogicalType Binary
      Binary data such as byte[] and ByteBuffer.
    • DateTime

      public static final LogicalType DateTime
      Date/time datatypes such as Date, Calendar.
    • OtherScalar

      public static final LogicalType OtherScalar
      Scalar types other than ones listed above: includes types like URL and UUID.
  • Method Details

    • values

      public static LogicalType[] 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 LogicalType 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
    • fromClass

      public static LogicalType fromClass(Class<?> raw, LogicalType defaultIfNotRecognized)
      Helper method to use for figuring out logical type from physical type, in cases where caller wants a guess. Note that introspection is not exhaustive and mostly covers basic Collection, Map and Enum cases; but not more specific types (for example datatype-provided extension types).
      Parameters:
      raw - Type-erased class to classify
      defaultIfNotRecognized - if no type recognized, value to return (for example, null)