com.mysql.jdbc

## Class TimeUtil

- java.lang.Object
- - com.mysql.jdbc.TimeUtil

    public class TimeUtil
    extends java.lang.Object

Timezone conversion routines

### Field Summary

Fields
`(package private) static java.util.Map<java.lang.String,java.lang.String[]>` `ABBREVIATED_TIMEZONES`
`(package private) static java.util.TimeZone` `GMT_TIMEZONE`
`(package private) static java.util.Map<java.lang.String,java.lang.String>` `TIMEZONE_MAPPINGS`

### Constructor Summary

Constructors
Constructor and Description
`TimeUtil()`

### Method Summary

Methods
`static java.sql.Timestamp` `changeTimezone(MySQLConnection conn, java.util.Calendar sessionCalendar, java.util.Calendar targetCalendar, java.sql.Timestamp tstamp, java.util.TimeZone fromTz, java.util.TimeZone toTz, boolean rollForward)` Change the given timestamp from one timezone to another
`static java.sql.Time` `changeTimezone(MySQLConnection conn, java.util.Calendar sessionCalendar, java.util.Calendar targetCalendar, java.sql.Time t, java.util.TimeZone fromTz, java.util.TimeZone toTz, boolean rollForward)` Change the given times from one timezone to another
`(package private) static java.sql.Date` `fastDateCreate(boolean useGmtConversion, java.util.Calendar gmtCalIfNeeded, java.util.Calendar cal, int year, int month, int day)`
`(package private) static java.sql.Date` `fastDateCreate(int year, int month, int day, java.util.Calendar targetCalendar)`
`(package private) static java.sql.Time` `fastTimeCreate(java.util.Calendar cal, int hour, int minute, int second, ExceptionInterceptor exceptionInterceptor)`
`(package private) static java.sql.Time` `fastTimeCreate(int hour, int minute, int second, java.util.Calendar targetCalendar, ExceptionInterceptor exceptionInterceptor)`
`(package private) static java.sql.Timestamp` `fastTimestampCreate(boolean useGmtConversion, java.util.Calendar gmtCalIfNeeded, java.util.Calendar cal, int year, int month, int day, int hour, int minute, int seconds, int secondsPart)`
`(package private) static java.sql.Timestamp` `fastTimestampCreate(java.util.TimeZone tz, int year, int month, int day, int hour, int minute, int seconds, int secondsPart)`
`static java.lang.String` `formatNanos(int nanos, boolean serverSupportsFracSecs)`
`static java.lang.String` `getCanoncialTimezone(java.lang.String timezoneStr, ExceptionInterceptor exceptionInterceptor)` Returns the 'official' Java timezone name for the given timezone

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Field Detail

#### ABBREVIATED_TIMEZONES

    static final java.util.Map<java.lang.String,java.lang.String[]> ABBREVIATED_TIMEZONES

#### GMT_TIMEZONE

    static final java.util.TimeZone GMT_TIMEZONE

#### TIMEZONE_MAPPINGS

    static final java.util.Map<java.lang.String,java.lang.String> TIMEZONE_MAPPINGS

### Constructor Detail

#### TimeUtil

    public TimeUtil()

### Method Detail

#### changeTimezone

    public static java.sql.Time changeTimezone(MySQLConnection conn,
                               java.util.Calendar sessionCalendar,
                               java.util.Calendar targetCalendar,
                               java.sql.Time t,
                               java.util.TimeZone fromTz,
                               java.util.TimeZone toTz,
                               boolean rollForward)

Change the given times from one timezone to another

Parameters:
  `conn` - the current connection to the MySQL server
  `t` - the times to change
  `fromTz` - the timezone to change from
  `toTz` - the timezone to change to
Returns:
  the times changed to the timezone 'toTz'

#### changeTimezone

    public static java.sql.Timestamp changeTimezone(MySQLConnection conn,
                                    java.util.Calendar sessionCalendar,
                                    java.util.Calendar targetCalendar,
                                    java.sql.Timestamp tstamp,
                                    java.util.TimeZone fromTz,
                                    java.util.TimeZone toTz,
                                    boolean rollForward)

Change the given timestamp from one timezone to another

Parameters:
  `conn` - the current connection to the MySQL server
  `tstamp` - the timestamp to change
  `fromTz` - the timezone to change from
  `toTz` - the timezone to change to
Returns:
  the timestamp changed to the timezone 'toTz'

#### fastDateCreate

    static final java.sql.Date fastDateCreate(boolean useGmtConversion,
                               java.util.Calendar gmtCalIfNeeded,
                               java.util.Calendar cal,
                               int year,
                               int month,
                               int day)

#### fastDateCreate

    static final java.sql.Date fastDateCreate(int year,
                               int month,
                               int day,
                               java.util.Calendar targetCalendar)

#### fastTimeCreate

    static final java.sql.Time fastTimeCreate(java.util.Calendar cal,
                               int hour,
                               int minute,
                               int second,
                               ExceptionInterceptor exceptionInterceptor)
                                       throws java.sql.SQLException

Throws:
  `java.sql.SQLException`

#### fastTimeCreate

    static final java.sql.Time fastTimeCreate(int hour,
                               int minute,
                               int second,
                               java.util.Calendar targetCalendar,
                               ExceptionInterceptor exceptionInterceptor)
                                       throws java.sql.SQLException

Throws:
  `java.sql.SQLException`

#### fastTimestampCreate

    static final java.sql.Timestamp fastTimestampCreate(boolean useGmtConversion,
                                         java.util.Calendar gmtCalIfNeeded,
                                         java.util.Calendar cal,
                                         int year,
                                         int month,
                                         int day,
                                         int hour,
                                         int minute,
                                         int seconds,
                                         int secondsPart)

#### fastTimestampCreate

    static final java.sql.Timestamp fastTimestampCreate(java.util.TimeZone tz,
                                         int year,
                                         int month,
                                         int day,
                                         int hour,
                                         int minute,
                                         int seconds,
                                         int secondsPart)

#### getCanoncialTimezone

    public static java.lang.String getCanoncialTimezone(java.lang.String timezoneStr,
                                        ExceptionInterceptor exceptionInterceptor)
                                                 throws java.sql.SQLException

Returns the 'official' Java timezone name for the given timezone

Parameters:
  `timezoneStr` - the 'common' timezone name
Returns:
  the Java timezone name for the given timezone
Throws:
  `java.sql.SQLException`
  `java.lang.IllegalArgumentException` - DOCUMENT ME!

#### formatNanos

    public static java.lang.String formatNanos(int nanos,
                               boolean serverSupportsFracSecs)