Class CollectionJavaType<C>

java.lang.Object
org.hibernate.type.descriptor.java.AbstractClassJavaType<C>
org.hibernate.type.descriptor.java.spi.CollectionJavaType<C>
All Implemented Interfaces:
Serializable, BasicJavaType<C>, JavaType<C>

public class CollectionJavaType<C> extends AbstractClassJavaType<C>
Extension of the general JavaType for "collection types"
See Also:
API Note:
"Collection types" are defined loosely here to cover mapping collection types other than those from the "Java Collection Framework".
  • Constructor Details

  • Method Details

    • getSemantics

      public CollectionSemantics<C,?> getSemantics()
    • getRecommendedJdbcType

      public JdbcType getRecommendedJdbcType(JdbcTypeIndicators context)
      Description copied from interface: BasicJavaType
      Obtain the "recommended" SQL type descriptor for this Java type. Often, but not always, the source of this recommendation is the JDBC specification.
      Parameters:
      context - Contextual information
      Returns:
      The recommended SQL type descriptor
    • createJavaType

      public JavaType<C> createJavaType(ParameterizedType parameterizedType, TypeConfiguration typeConfiguration)
      Description copied from interface: JavaType
      Creates the JavaType for the given ParameterizedType based on this JavaType registered for the raw type.
    • fromString

      public C fromString(CharSequence string)
    • unwrap

      public <X> X unwrap(C value, Class<X> type, WrapperOptions options)
      Description copied from interface: JavaType
      Unwrap an instance of our handled Java type into the requested type.

      As an example, if this is a JavaType<Integer> and we are asked to unwrap the Integer value as a Long, we would return something like Long.valueOf( value.longValue() ).

      Intended use is during PreparedStatement binding.

      Type Parameters:
      X - The conversion type.
      Parameters:
      value - The value to unwrap
      type - The type as which to unwrap
      options - The options
      Returns:
      The unwrapped value.
    • wrap

      public <X> C wrap(X value, WrapperOptions options)
      Description copied from interface: JavaType
      Wrap a value as our handled Java type.

      Intended use is during ResultSet extraction.

      Type Parameters:
      X - The conversion type.
      Parameters:
      value - The value to wrap.
      options - The options
      Returns:
      The wrapped value.
    • areEqual

      public boolean areEqual(C one, C another)
      Description copied from interface: JavaType
      Determine if two instances are equal
      Specified by:
      areEqual in interface JavaType<C>
      Overrides:
      areEqual in class AbstractClassJavaType<C>
      Parameters:
      one - One instance
      another - The other instance
      Returns:
      True if the two are considered equal; false otherwise.
    • extractHashCode

      public int extractHashCode(C x)
      Description copied from interface: JavaType
      Extract a proper hash code for the given value.
      Specified by:
      extractHashCode in interface JavaType<C>
      Overrides:
      extractHashCode in class AbstractClassJavaType<C>
      Parameters:
      x - The value for which to extract a hash code.
      Returns:
      The extracted hash code.