com.mysql.jdbc
Class Util

java.lang.Object
  extended by com.mysql.jdbc.Util

public class Util
extends java.lang.Object

Various utility methods for the driver.


Nested Class Summary
(package private)  class Util.RandStructcture
           
 
Field Summary
protected static java.lang.reflect.Method systemNanoTimeMethod
           
 
Constructor Summary
Util()
           
 
Method Summary
static java.util.Map<java.lang.Object,java.lang.Object> calculateDifferences(java.util.Map<?,?> map1, java.util.Map<?,?> map2)
           
static java.lang.Object cast(java.lang.Object invokeOn, java.lang.Object toCast)
          Reflexive access on JDK-1.5's Class.cast() method so we don't have to move that out into separate classes built for JDBC-4.0.
static long getCurrentTimeNanosOrMillis()
           
(package private) static java.util.TimeZone getDefaultTimeZone()
           
static java.lang.Object getInstance(java.lang.String className, java.lang.Class<?>[] argTypes, java.lang.Object[] args, ExceptionInterceptor exceptionInterceptor)
           
static java.lang.Object handleNewInstance(java.lang.reflect.Constructor<?> ctor, java.lang.Object[] args, ExceptionInterceptor exceptionInterceptor)
          Handles constructing new instance with the given constructor and wrapping (or not, as required) the exceptions that could possibly be generated
static boolean interfaceExists(java.lang.String hostname)
          Does a network interface exist locally with the given hostname?
static boolean isColdFusion()
           
static boolean isJdbc4()
           
static java.util.List<Extension> loadExtensions(Connection conn, java.util.Properties props, java.lang.String extensionClassNames, java.lang.String errorMessageKey, ExceptionInterceptor exceptionInterceptor)
           
static boolean nanoTimeAvailable()
           
static java.lang.String newCrypt(java.lang.String password, java.lang.String seed)
           
(package private) static long[] newHash(java.lang.String password)
           
static java.lang.String oldCrypt(java.lang.String password, java.lang.String seed)
           
(package private) static long oldHash(java.lang.String password)
           
static java.lang.Object readObject(java.sql.ResultSet resultSet, int index)
          Given a ResultSet and an index into the columns of that ResultSet, read binary data from the column which represents a serialized object, and re-create the object.
static void resultSetToMap(java.util.Map mappedValues, java.sql.ResultSet rs)
           
static void resultSetToMap(java.util.Map mappedValues, java.sql.ResultSet rs, int key, int value)
           
static void resultSetToMap(java.util.Map mappedValues, java.sql.ResultSet rs, java.lang.String key, java.lang.String value)
           
static java.lang.String scramble(java.lang.String message, java.lang.String password)
          DOCUMENT ME!
static java.lang.String stackTraceToString(java.lang.Throwable ex)
          Converts a nested exception into a nicer message
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

systemNanoTimeMethod

protected static final java.lang.reflect.Method systemNanoTimeMethod
Constructor Detail

Util

public Util()
Method Detail

nanoTimeAvailable

public static boolean nanoTimeAvailable()

getDefaultTimeZone

static final java.util.TimeZone getDefaultTimeZone()

isJdbc4

public static boolean isJdbc4()

isColdFusion

public static boolean isColdFusion()

newCrypt

public static java.lang.String newCrypt(java.lang.String password,
                                        java.lang.String seed)

newHash

static long[] newHash(java.lang.String password)

oldCrypt

public static java.lang.String oldCrypt(java.lang.String password,
                                        java.lang.String seed)

oldHash

static long oldHash(java.lang.String password)

readObject

public static java.lang.Object readObject(java.sql.ResultSet resultSet,
                                          int index)
                                   throws java.lang.Exception
Given a ResultSet and an index into the columns of that ResultSet, read binary data from the column which represents a serialized object, and re-create the object.

Parameters:
resultSet - the ResultSet to use.
index - an index into the ResultSet.
Returns:
the object if it can be de-serialized
Throws:
java.lang.Exception - if an error occurs

scramble

public static java.lang.String scramble(java.lang.String message,
                                        java.lang.String password)
DOCUMENT ME!

Parameters:
message - DOCUMENT ME!
password - DOCUMENT ME!
Returns:
DOCUMENT ME!

stackTraceToString

public static java.lang.String stackTraceToString(java.lang.Throwable ex)
Converts a nested exception into a nicer message

Parameters:
ex - the exception to expand into a message.
Returns:
a message containing the exception, the message (if any), and a stacktrace.

getInstance

public static java.lang.Object getInstance(java.lang.String className,
                                           java.lang.Class<?>[] argTypes,
                                           java.lang.Object[] args,
                                           ExceptionInterceptor exceptionInterceptor)
                                    throws java.sql.SQLException
Throws:
java.sql.SQLException

handleNewInstance

public static final java.lang.Object handleNewInstance(java.lang.reflect.Constructor<?> ctor,
                                                       java.lang.Object[] args,
                                                       ExceptionInterceptor exceptionInterceptor)
                                                throws java.sql.SQLException
Handles constructing new instance with the given constructor and wrapping (or not, as required) the exceptions that could possibly be generated

Throws:
java.sql.SQLException

interfaceExists

public static boolean interfaceExists(java.lang.String hostname)
Does a network interface exist locally with the given hostname?

Parameters:
hostname - the hostname (or IP address in string form) to check
Returns:
true if it exists, false if no, or unable to determine due to VM version support of java.net.NetworkInterface

cast

public static java.lang.Object cast(java.lang.Object invokeOn,
                                    java.lang.Object toCast)
Reflexive access on JDK-1.5's Class.cast() method so we don't have to move that out into separate classes built for JDBC-4.0.

Parameters:
invokeOn -
toCast -
Returns:

getCurrentTimeNanosOrMillis

public static long getCurrentTimeNanosOrMillis()

resultSetToMap

public static void resultSetToMap(java.util.Map mappedValues,
                                  java.sql.ResultSet rs)
                           throws java.sql.SQLException
Throws:
java.sql.SQLException

resultSetToMap

public static void resultSetToMap(java.util.Map mappedValues,
                                  java.sql.ResultSet rs,
                                  int key,
                                  int value)
                           throws java.sql.SQLException
Throws:
java.sql.SQLException

resultSetToMap

public static void resultSetToMap(java.util.Map mappedValues,
                                  java.sql.ResultSet rs,
                                  java.lang.String key,
                                  java.lang.String value)
                           throws java.sql.SQLException
Throws:
java.sql.SQLException

calculateDifferences

public static java.util.Map<java.lang.Object,java.lang.Object> calculateDifferences(java.util.Map<?,?> map1,
                                                                                    java.util.Map<?,?> map2)

loadExtensions

public static java.util.List<Extension> loadExtensions(Connection conn,
                                                       java.util.Properties props,
                                                       java.lang.String extensionClassNames,
                                                       java.lang.String errorMessageKey,
                                                       ExceptionInterceptor exceptionInterceptor)
                                                throws java.sql.SQLException
Throws:
java.sql.SQLException