Class TimestampType

All Implemented Interfaces:
DataType<Timestamp>

@Service(DataType.class) public class TimestampType extends AbstractDateTimeType<Timestamp>
Datatype for Timestamp.
  • Constructor Details

    • TimestampType

      public TimestampType()
      Creates the datatype for Timestamp.
  • Method Details

    • isTimezoneApplicable

      public boolean isTimezoneApplicable()
      Description copied from interface: DataType
      Returns whether a Calendar-timezone can be applied to this date and/or time related type.
      Only for types where methods with Calendar argument are provided in ResultSet and PreparedStatement.
      Specified by:
      isTimezoneApplicable in interface DataType<Timestamp>
      Overrides:
      isTimezoneApplicable in class AbstractDataType<Timestamp>
      Returns:
      true if methods exist with timezone correction
    • getJavaType

      public String getJavaType()
      Description copied from interface: DataType
      Gets the name of the Java type.
      Returns:
      the type
    • isMapNullSupported

      public boolean isMapNullSupported()
      Description copied from interface: DataType
      Returns whether this type supports mapping null values to some well-defined constant.
      Specified by:
      isMapNullSupported in interface DataType<Timestamp>
      Overrides:
      isMapNullSupported in class AbstractDataType<Timestamp>
      Returns:
      true if mapNull supported
    • getMappedNullValue

      public Timestamp getMappedNullValue(Backend backend, int index)
      Description copied from interface: DataType
      Gets the mapped non-null value that represents the model's null value.
      The method throws a BackendException, if !DataType.isMapNullSupported().
      Specified by:
      getMappedNullValue in interface DataType<Timestamp>
      Overrides:
      getMappedNullValue in class AbstractDataType<Timestamp>
      Parameters:
      backend - the backend, null if not backend-specific
      index - the column index
      Returns:
      the non-null mapped value
    • isUTCSupported

      public boolean isUTCSupported()
      Description copied from interface: DataType
      Returns whether this type supports the UTC option.
      Specified by:
      isUTCSupported in interface DataType<Timestamp>
      Overrides:
      isUTCSupported in class AbstractDataType<Timestamp>
      Returns:
      true if UTC supported
    • isMutable

      public boolean isMutable()
      Description copied from interface: DataType
      Returns whether type is a mutable java object.
      Mutable objects may change their state and must implement Freezable.
      Specified by:
      isMutable in interface DataType<Timestamp>
      Overrides:
      isMutable in class AbstractDataType<Timestamp>
      Returns:
      true if mutable and freezable
    • getSqlType

      public SqlType getSqlType(Backend backend, int index)
      Description copied from interface: DataType
      Gets the SQL type.
      For predefined types, the type must be the same for all backends and the backend argument may be null.
      Application specific types, however, can use different sql types for different backends and for those types the backend argument is always valid.
      Parameters:
      backend - the backend, not used by predefined types
      index - the column index
      Returns:
      the SQL type
    • valueOf

      public Timestamp valueOf(String str)
      Description copied from interface: DataType
      Parses a string and converts to the value of this type.
      The method is used to parse a literal (for example the default value defined in the model).

      Notice: the method doesn't use any locale, so the results are always the same regardless of the JVM's locale.

      Parameters:
      str - the source string
      Returns:
      the value
    • toString

      public String toString(Timestamp object)
      Description copied from interface: DataType
      Takes an object and converts it to a string that can in turn be parsed with DataType.valueOf(String).
      The method is used to print a literal (for example the default value of a dumped attribute).

      Notice: the method doesn't use any locale, so the results are always the same regardless of the JVM's locale.

      Specified by:
      toString in interface DataType<Timestamp>
      Overrides:
      toString in class AbstractDataType<Timestamp>
      Parameters:
      object - the object of this DataType
      Returns:
      the printable string
    • set

      public Object[] set(Backend backend, PreparedStatement statement, int pos, Timestamp object, boolean mapNull, Integer size) throws SQLException
      Description copied from interface: DataType
      Sets the object into a prepared statement.
      Must be implemented if DataType.isPredefined() returns false. Not invoked by framework otherwise.
      Parameters:
      backend - the database backend
      statement - the prepared statement
      pos - the position of the first SQL value
      object - the object, may be null
      mapNull - true if map null-values to non-null values
      size - the optional size specified in the model
      Returns:
      the values stored in the prepared statement
      Throws:
      SQLException - if failed
    • get

      public Timestamp get(Backend backend, ResultSet resultSet, int[] pos, boolean mapNull, Integer size) throws SQLException
      Description copied from interface: DataType
      Gets the object from a result set.
      Must be implemented if DataType.isPredefined() returns false. Not invoked by framework otherwise.
      Parameters:
      backend - the database backend
      resultSet - the result set
      pos - the column positions in the result set
      mapNull - true if unmap null-values from non-null values
      size - the optional size specified in the model
      Returns:
      the object or null if column(s) IS NULL
      Throws:
      SQLException - if failed
    • parse

      protected Timestamp parse(String str) throws BackendException
      Throws:
      BackendException
    • format

      protected String format(Timestamp timestamp)