org.apache.cayenne.access.types

## Interface ExtendedType<T>

- All Known Implementing Classes:
    BigDecimalType, BooleanType, ByteArrayType, ByteType, CalendarType, CharType, DateType, DoubleType, DurationType, EnumType, ExtendedEnumType, FloatType, GeoJsonType, IngresBooleanType, IntegerType, JsonType, LongType, ObjectType, OracleByteArrayType, OracleCharType, OracleUtilDateType, ShortType, TimestampType, TimeType, UtilDateType, VoidType, WktType

      public interface ExtendedType<T>

  Defines methods to read Java objects from JDBC ResultSets and write as parameters of PreparedStatements.

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static int` | `TRIM_VALUES_THRESHOLD` Defines trimming constant for toString method that helps to limit logging of large values.

  - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `String` | `getClassName()` Returns a full name of Java class that this ExtendedType supports.
    `T` | `materializeObject(CallableStatement rs, int index, int type)` Reads an object from a stored procedure OUT parameter, converting it to class returned by 'getClassName' method.
    `T` | `materializeObject(ResultSet rs, int index, int type)` Reads an object from JDBC ResultSet column, converting it to class returned by 'getClassName' method.
    `void` | `setJdbcObject(PreparedStatement statement, T value, int pos, int type, int scale)` Initializes a single parameter of a PreparedStatement with object value.
    `String` | `toString(T value)` Converts value of the supported type to a human-readable String representation.

- - ### Field Detail

    - #### TRIM_VALUES_THRESHOLD

          static final int TRIM_VALUES_THRESHOLD

      Defines trimming constant for toString method that helps to limit logging of large values.
      See Also:
        Constant Field Values

  - ### Method Detail

    - #### getClassName

          String getClassName()

      Returns a full name of Java class that this ExtendedType supports.

    - #### setJdbcObject

          void setJdbcObject(PreparedStatement statement,
                             T value,
                             int pos,
                             int type,
                             int scale)
                      throws Exception

      Initializes a single parameter of a PreparedStatement with object value.
      Throws:
        `Exception`

    - #### materializeObject

          T materializeObject(ResultSet rs,
                              int index,
                              int type)
                       throws Exception

      Reads an object from JDBC ResultSet column, converting it to class returned by 'getClassName' method.
      Throws:
        `Exception` - if read error occurred, or an object can't be converted to a target Java class.

    - #### materializeObject

          T materializeObject(CallableStatement rs,
                              int index,
                              int type)
                       throws Exception

      Reads an object from a stored procedure OUT parameter, converting it to class returned by 'getClassName' method.
      Throws:
        `Exception` - if read error occurred, or an object can't be converted to a target Java class.

    - #### toString

          String toString(T value)

      Converts value of the supported type to a human-readable String representation.
      Parameters:
        `value` - a value to convert to String.
      Since:
        4.0

Copyright © 2001–2021 Apache Cayenne. All rights reserved.