public abstract class Util
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
private static SQLExceptionFactory |
exceptionFactory |
private static int |
logSeverityLevel |
Constructor and Description |
---|
Util() |
Modifier and Type | Method and Description |
---|---|
static void |
ASSERT(EmbedConnection conn,
boolean mustBeTrue,
java.lang.String msg)
Mimic SanityManager.ASSERT in a JDBC-friendly way,
and providing system cleanup for JDBC failures.
|
static void |
checkForSupportedDataType(int dataType)
Checks whether a data type is supported and raises a SQLException
if it isn't.
|
static void |
checkSupportedRaiseStandard(int dataType)
Checks whether a data type is supported and raises a StandardException
if it isn't.
|
static java.sql.SQLException |
generateCsSQLException(StandardException se) |
static java.sql.SQLException |
generateCsSQLException(java.lang.String error) |
static java.sql.SQLException |
generateCsSQLException(java.lang.String error,
java.lang.Object arg1) |
static java.sql.SQLException |
generateCsSQLException(java.lang.String error,
java.lang.Object arg1,
java.lang.Object arg2) |
static java.sql.SQLException |
generateCsSQLException(java.lang.String error,
java.lang.Object arg1,
java.lang.Object arg2,
java.lang.Object arg3) |
(package private) static java.sql.SQLException |
generateCsSQLException(java.lang.String error,
java.lang.Object arg1,
java.lang.Throwable t) |
static SQLExceptionFactory |
getExceptionFactory()
Get the exception factory specific to the version of JDBC which
we are running.
|
private static boolean |
isSupportedType(int dataType)
Returns false if a data type is not supported for:
setObject(int, Object, int) and
setObject(int, Object, int, int) . |
static java.sql.SQLException |
javaException(java.lang.Throwable t) |
static void |
logAndThrowSQLException(java.sql.SQLException se)
Log SQLException to the error log if the severity exceeds the
logSeverityLevel and then throw it.
|
private static void |
logError(java.lang.String errorMessage,
java.lang.Throwable t) |
static void |
logSQLException(java.sql.SQLException se)
Log an SQLException to the error log or to the console if there is no
error log available.
|
(package private) static java.sql.SQLException |
newBatchUpdateException(java.lang.String message,
java.lang.String sqlState,
int errorCode,
long[] updateCounts,
java.lang.Throwable cause)
Create the correct BatchUpdateException depending on whether this is Java 8 or lower
|
private static java.sql.SQLException |
newEmbedSQLException(java.lang.String messageId,
int severity) |
static java.sql.SQLException |
newEmbedSQLException(java.lang.String messageId,
java.lang.Object[] args,
int severity) |
private static java.sql.SQLException |
newEmbedSQLException(java.lang.String messageId,
java.lang.Object[] args,
int severity,
java.lang.Throwable t) |
private static java.sql.SQLException |
newEmbedSQLException(java.lang.String messageId,
java.lang.Object[] args,
java.sql.SQLException next,
int severity,
java.lang.Throwable t)
This looks up the message and sqlstate values and calls
the SQLExceptionFactory method to generate
the appropriate exception off of them.
|
(package private) static java.sql.SQLException |
newException(java.lang.String messageID,
java.lang.Object a1,
java.lang.Object a2,
java.lang.Object a3) |
(package private) static java.io.IOException |
newIOException(java.lang.Throwable cause)
Create an
IOException that wraps another Throwable . |
static java.sql.SQLException |
noCurrentConnection() |
static java.sql.SQLException |
notImplemented() |
static java.sql.SQLException |
notImplemented(java.lang.String feature) |
static java.sql.SQLException |
policyNotReloaded(java.lang.Throwable t) |
(package private) static java.sql.SQLException |
seeNextException(java.lang.String messageId,
java.lang.Object[] args,
java.sql.SQLException next)
Generate an
SQLException which points to another
SQLException nested within it with
setNextException() . |
static void |
setExceptionFactory(SQLExceptionFactory factory)
this method is called to replace the exception factory to be
used to generate the SQLException or the subclass
|
(package private) static java.sql.SQLException |
setStreamFailure(java.io.IOException e) |
static int[] |
squashLongs(long[] longs)
Squash an array of longs into an array of ints
|
(package private) static void |
THROWASSERT(EmbedConnection conn,
java.lang.String msg)
Mimic SanityManager.THROWASSERT in a JDBC-friendly way,
and providing system cleanup for JDBC failures.
|
(package private) static java.sql.SQLException |
typeMisMatch(int targetSQLType) |
static java.lang.String |
typeName(int jdbcType) |
private static SQLExceptionFactory exceptionFactory
private static int logSeverityLevel
public static void logAndThrowSQLException(java.sql.SQLException se) throws java.sql.SQLException
se
- SQLException to log and throwjava.sql.SQLException
public static void logSQLException(java.sql.SQLException se)
se
- SQLException to logprivate static void logError(java.lang.String errorMessage, java.lang.Throwable t)
private static java.sql.SQLException newEmbedSQLException(java.lang.String messageId, java.lang.Object[] args, java.sql.SQLException next, int severity, java.lang.Throwable t)
public static java.sql.SQLException newEmbedSQLException(java.lang.String messageId, java.lang.Object[] args, int severity)
private static java.sql.SQLException newEmbedSQLException(java.lang.String messageId, java.lang.Object[] args, int severity, java.lang.Throwable t)
private static java.sql.SQLException newEmbedSQLException(java.lang.String messageId, int severity)
public static void ASSERT(EmbedConnection conn, boolean mustBeTrue, java.lang.String msg) throws java.sql.SQLException
java.sql.SQLException
- the exceptionstatic void THROWASSERT(EmbedConnection conn, java.lang.String msg) throws java.sql.SQLException
java.sql.SQLException
public static void checkForSupportedDataType(int dataType) throws java.sql.SQLException
java.sql.SQLException
public static void checkSupportedRaiseStandard(int dataType) throws StandardException
StandardException
private static boolean isSupportedType(int dataType)
setObject(int, Object, int)
and
setObject(int, Object, int, int)
.dataType
- the data type to checkstatic java.sql.SQLException newException(java.lang.String messageID, java.lang.Object a1, java.lang.Object a2, java.lang.Object a3)
public static java.sql.SQLException generateCsSQLException(java.lang.String error)
public static java.sql.SQLException generateCsSQLException(java.lang.String error, java.lang.Object arg1)
public static java.sql.SQLException generateCsSQLException(java.lang.String error, java.lang.Object arg1, java.lang.Object arg2)
public static java.sql.SQLException generateCsSQLException(java.lang.String error, java.lang.Object arg1, java.lang.Object arg2, java.lang.Object arg3)
static java.sql.SQLException generateCsSQLException(java.lang.String error, java.lang.Object arg1, java.lang.Throwable t)
public static java.sql.SQLException generateCsSQLException(StandardException se)
public static java.sql.SQLException noCurrentConnection()
static java.sql.SQLException seeNextException(java.lang.String messageId, java.lang.Object[] args, java.sql.SQLException next)
SQLException
which points to another
SQLException
nested within it with
setNextException()
.messageId
- message idargs
- the arguments to the message creationnext
- the next SQLExceptionpublic static java.sql.SQLException javaException(java.lang.Throwable t)
public static java.sql.SQLException policyNotReloaded(java.lang.Throwable t)
public static java.sql.SQLException notImplemented()
public static java.sql.SQLException notImplemented(java.lang.String feature)
static java.sql.SQLException setStreamFailure(java.io.IOException e)
static java.sql.SQLException typeMisMatch(int targetSQLType)
static java.sql.SQLException newBatchUpdateException(java.lang.String message, java.lang.String sqlState, int errorCode, long[] updateCounts, java.lang.Throwable cause)
public static int[] squashLongs(long[] longs)
static java.io.IOException newIOException(java.lang.Throwable cause)
IOException
that wraps another Throwable
.cause
- the underlying cause of the errorIOException
linked to cause
public static void setExceptionFactory(SQLExceptionFactory factory)
public static SQLExceptionFactory getExceptionFactory()
public static java.lang.String typeName(int jdbcType)
Apache Derby V10.10 Internals - Copyright © 2004,2014 The Apache Software Foundation. All Rights Reserved.