use of java.sql.SQLClientInfoException in project jdk8u_jdk by JetBrains.
the class SQLClientInfoExceptionTests method test11.
/**
* Validate that the ordering of the returned Exceptions is correct using
* for-each loop
*/
@Test
public void test11() {
SQLClientInfoException ex = new SQLClientInfoException("Exception 1", map, t1);
SQLClientInfoException ex1 = new SQLClientInfoException("Exception 2", map);
SQLClientInfoException ex2 = new SQLClientInfoException("Exception 3", map, t2);
ex.setNextException(ex1);
ex.setNextException(ex2);
int num = 0;
for (Throwable e : ex) {
assertTrue(msgs[num++].equals(e.getMessage()));
}
}
use of java.sql.SQLClientInfoException in project voltdb by VoltDB.
the class JDBCConnection method setClientInfo.
//#endif JAVA6
/** @todo 20051207 */
/**
* Sets the value of the client info property specified by name to the
* value specified by value.
* <p>
* Applications may use the <code>DatabaseMetaData.getClientInfoProperties</code>
* method to determine the client info properties supported by the driver
* and the maximum length that may be specified for each property.
* <p>
* The driver stores the value specified in a suitable location in the
* database. For example in a special register, session parameter, or
* system table column. For efficiency the driver may defer setting the
* value in the database until the next time a statement is executed or
* prepared. Other than storing the client information in the appropriate
* place in the database, these methods shall not alter the behavior of
* the connection in anyway. The values supplied to these methods are
* used for accounting, diagnostics and debugging purposes only.
* <p>
* The driver shall generate a warning if the client info name specified
* is not recognized by the driver.
* <p>
* If the value specified to this method is greater than the maximum
* length for the property the driver may either truncate the value and
* generate a warning or generate a <code>SQLClientInfoException</code>. If the driver
* generates a <code>SQLClientInfoException</code>, the value specified was not set on the
* connection.
* <p>
* The following are standard client info properties. Drivers are not
* required to support these properties however if the driver supports a
* client info property that can be described by one of the standard
* properties, the standard property name should be used.
* <p>
* <ul>
* <li>ApplicationName - The name of the application currently utilizing
* the connection</li>
* <li>ClientUser - The name of the user that the application using
* the connection is performing work for. This may
* not be the same as the user name that was used
* in establishing the connection.</li>
* <li>ClientHostname - The hostname of the computer the application
* using the connection is running on.</li>
* </ul>
* <p>
* @param name The name of the client info property to set
* @param value The value to set the client info property to. If the
* value is null, the current value of the specified
* property is cleared.
* <p>
* @throws SQLClientInfoException if the database server returns an error while
* setting the client info value on the database server or this method
* is called on a closed connection
* <p>
* @since JDK 1.6, HSQLDB 1.9.0
*/
//#ifdef JAVA6
public void setClientInfo(String name, String value) throws SQLClientInfoException {
try {
checkClosed();
} catch (SQLException ex) {
SQLClientInfoException e = new SQLClientInfoException(ex.getMessage(), null);
e.initCause(ex);
throw e;
}
SQLWarning warning = new SQLWarning("ClientInfo name not recognized: " + name);
warning.initCause(Util.notSupported());
addWarning(warning);
}
Aggregations