You are viewing a plain text version of this content. The canonical link for it is here.
Posted to ddlutils-dev@db.apache.org by to...@apache.org on 2006/01/30 00:10:19 UTC
svn commit: r373386 -
/db/ddlutils/trunk/src/java/org/apache/ddlutils/platform/PlatformImplBase.java
Author: tomdz
Date: Sun Jan 29 15:10:16 2006
New Revision: 373386
URL: http://svn.apache.org/viewcvs?rev=373386&view=rev
Log:
Fixed connection leak
Added more special type handling in setObject
Modified:
db/ddlutils/trunk/src/java/org/apache/ddlutils/platform/PlatformImplBase.java
Modified: db/ddlutils/trunk/src/java/org/apache/ddlutils/platform/PlatformImplBase.java
URL: http://svn.apache.org/viewcvs/db/ddlutils/trunk/src/java/org/apache/ddlutils/platform/PlatformImplBase.java?rev=373386&r1=373385&r2=373386&view=diff
==============================================================================
--- db/ddlutils/trunk/src/java/org/apache/ddlutils/platform/PlatformImplBase.java (original)
+++ db/ddlutils/trunk/src/java/org/apache/ddlutils/platform/PlatformImplBase.java Sun Jan 29 15:10:16 2006
@@ -1455,7 +1455,16 @@
*/
public Database readModelFromDatabase(String name, String catalog, String schema, String[] tableTypes) throws DynaSqlException
{
- return readModelFromDatabase(borrowConnection(), name, catalog, schema, tableTypes);
+ Connection connection = borrowConnection();
+
+ try
+ {
+ return readModelFromDatabase(connection, name, catalog, schema, tableTypes);
+ }
+ finally
+ {
+ returnConnection(connection);
+ }
}
/**
@@ -1546,13 +1555,33 @@
{
statement.setNull(sqlIndex, typeCode);
}
+ else if (value instanceof String)
+ {
+ statement.setString(sqlIndex, (String)value);
+ }
else if (value instanceof byte[])
{
statement.setBytes(sqlIndex, (byte[])value);
}
- else if (value instanceof String)
+ else if (value instanceof Boolean)
{
- statement.setString(sqlIndex, (String)value);
+ statement.setBoolean(sqlIndex, ((Boolean)value).booleanValue());
+ }
+ else if (value instanceof Byte)
+ {
+ statement.setByte(sqlIndex, ((Byte)value).byteValue());
+ }
+ else if (value instanceof Short)
+ {
+ statement.setShort(sqlIndex, ((Short)value).shortValue());
+ }
+ else if (value instanceof Integer)
+ {
+ statement.setInt(sqlIndex, ((Integer)value).intValue());
+ }
+ else if (value instanceof Long)
+ {
+ statement.setLong(sqlIndex, ((Long)value).longValue());
}
else if (value instanceof BigDecimal)
{