java.lang.Object
org.elasticsearch.common.inject.util.Types

public final class Types extends Object
Static methods for working with types.
Since:
2.0
  • Method Details

    • newParameterizedType

      public static ParameterizedType newParameterizedType(Type rawType, Type... typeArguments)
      Returns a new parameterized type, applying typeArguments to rawType. The returned type does not have an owner type.
      Returns:
      a parameterized type.
    • newParameterizedTypeWithOwner

      public static ParameterizedType newParameterizedTypeWithOwner(Type ownerType, Type rawType, Type... typeArguments)
      Returns a new parameterized type, applying typeArguments to rawType and enclosed by ownerType.
      Returns:
      a parameterized type.
    • arrayOf

      public static GenericArrayType arrayOf(Type componentType)
      Returns an array type whose elements are all instances of componentType.
      Returns:
      a generic array type.
    • subtypeOf

      public static WildcardType subtypeOf(Type bound)
      Returns a type that represents an unknown type that extends bound. For example, if bound is CharSequence.class, this returns ? extends CharSequence. If bound is Object.class, this returns ?, which is shorthand for ? extends Object.
    • supertypeOf

      public static WildcardType supertypeOf(Type bound)
      Returns a type that represents an unknown supertype of bound. For example, if bound is String.class, this returns ? super String.
    • listOf

      public static ParameterizedType listOf(Type elementType)
      Returns a type modelling a List whose elements are of type elementType.
      Returns:
      a parameterized type.
    • setOf

      public static ParameterizedType setOf(Type elementType)
      Returns a type modelling a Set whose elements are of type elementType.
      Returns:
      a parameterized type.
    • mapOf

      public static ParameterizedType mapOf(Type keyType, Type valueType)
      Returns a type modelling a Map whose keys are of type keyType and whose values are of type valueType.
      Returns:
      a parameterized type.
    • providerOf

      public static ParameterizedType providerOf(Type providedType)
      Returns a type modelling a Provider that provides elements of type elementType.
      Returns:
      a parameterized type.