This is an automated email from the git hooks/post-receive script. ebourg-guest pushed a commit to annotated tag REL9_3_1100 in repository libpostgresql-jdbc-java.
commit 1318486141ceebafc7ebaa00f2ffb41b5eb70fac Author: Justin Santa Barbara <[email protected]> Date: Sat Feb 23 11:19:49 2013 -0800 Support for JDBC4 isWrapperFor & unwrap methods --- org/postgresql/ds/jdbc4/AbstractJdbc4PoolingDataSource.java | 8 ++++++-- org/postgresql/ds/jdbc4/AbstractJdbc4SimpleDataSource.java | 8 ++++++-- org/postgresql/jdbc4/AbstractJdbc4Connection.java | 8 ++++++-- org/postgresql/jdbc4/AbstractJdbc4DatabaseMetaData.java | 8 ++++++-- org/postgresql/jdbc4/AbstractJdbc4ParameterMetaData.java | 8 ++++++-- org/postgresql/jdbc4/AbstractJdbc4ResultSet.java | 8 ++++++-- org/postgresql/jdbc4/AbstractJdbc4ResultSetMetaData.java | 8 ++++++-- org/postgresql/jdbc4/AbstractJdbc4Statement.java | 8 ++++++-- 8 files changed, 48 insertions(+), 16 deletions(-) diff --git a/org/postgresql/ds/jdbc4/AbstractJdbc4PoolingDataSource.java b/org/postgresql/ds/jdbc4/AbstractJdbc4PoolingDataSource.java index 426f016..72d40d2 100644 --- a/org/postgresql/ds/jdbc4/AbstractJdbc4PoolingDataSource.java +++ b/org/postgresql/ds/jdbc4/AbstractJdbc4PoolingDataSource.java @@ -17,12 +17,16 @@ public abstract class AbstractJdbc4PoolingDataSource extends AbstractJdbc23Pooli public boolean isWrapperFor(Class<?> iface) throws SQLException { - throw org.postgresql.Driver.notImplemented(this.getClass(), "isWrapperFor(Class<?>)"); + return iface.isAssignableFrom(getClass()); } public <T> T unwrap(Class<T> iface) throws SQLException { - throw org.postgresql.Driver.notImplemented(this.getClass(), "unwrap(Class<T>)"); + if (iface.isAssignableFrom(getClass())) + { + return (T) this; + } + throw new SQLException("Cannot unwrap to " + iface.getName()); } public java.util.logging.Logger getParentLogger() throws SQLFeatureNotSupportedException diff --git a/org/postgresql/ds/jdbc4/AbstractJdbc4SimpleDataSource.java b/org/postgresql/ds/jdbc4/AbstractJdbc4SimpleDataSource.java index 1d9b502..da52644 100644 --- a/org/postgresql/ds/jdbc4/AbstractJdbc4SimpleDataSource.java +++ b/org/postgresql/ds/jdbc4/AbstractJdbc4SimpleDataSource.java @@ -16,12 +16,16 @@ public abstract class AbstractJdbc4SimpleDataSource extends AbstractJdbc23Simple { public boolean isWrapperFor(Class<?> iface) throws SQLException { - throw org.postgresql.Driver.notImplemented(this.getClass(), "isWrapperFor(Class<?>)"); + return iface.isAssignableFrom(getClass()); } public <T> T unwrap(Class<T> iface) throws SQLException { - throw org.postgresql.Driver.notImplemented(this.getClass(), "unwrap(Class<T>)"); + if (iface.isAssignableFrom(getClass())) + { + return (T) this; + } + throw new SQLException("Cannot unwrap to " + iface.getName()); } public java.util.logging.Logger getParentLogger() throws SQLFeatureNotSupportedException diff --git a/org/postgresql/jdbc4/AbstractJdbc4Connection.java b/org/postgresql/jdbc4/AbstractJdbc4Connection.java index 8a89a80..d25710a 100644 --- a/org/postgresql/jdbc4/AbstractJdbc4Connection.java +++ b/org/postgresql/jdbc4/AbstractJdbc4Connection.java @@ -208,13 +208,17 @@ abstract class AbstractJdbc4Connection extends org.postgresql.jdbc3g.AbstractJdb public boolean isWrapperFor(Class<?> iface) throws SQLException { checkClosed(); - throw org.postgresql.Driver.notImplemented(this.getClass(), "isWrapperFor(Class<?>)"); + return iface.isAssignableFrom(getClass()); } public <T> T unwrap(Class<T> iface) throws SQLException { checkClosed(); - throw org.postgresql.Driver.notImplemented(this.getClass(), "unwrap(Class<T>)"); + if (iface.isAssignableFrom(getClass())) + { + return (T) this; + } + throw new SQLException("Cannot unwrap to " + iface.getName()); } public java.util.logging.Logger getParentLogger() throws SQLFeatureNotSupportedException diff --git a/org/postgresql/jdbc4/AbstractJdbc4DatabaseMetaData.java b/org/postgresql/jdbc4/AbstractJdbc4DatabaseMetaData.java index b88bba4..7fc7b2a 100644 --- a/org/postgresql/jdbc4/AbstractJdbc4DatabaseMetaData.java +++ b/org/postgresql/jdbc4/AbstractJdbc4DatabaseMetaData.java @@ -70,12 +70,16 @@ public abstract class AbstractJdbc4DatabaseMetaData extends org.postgresql.jdbc3 public boolean isWrapperFor(Class<?> iface) throws SQLException { - throw org.postgresql.Driver.notImplemented(this.getClass(), "isWrapperFor(Class<?>)"); + return iface.isAssignableFrom(getClass()); } public <T> T unwrap(Class<T> iface) throws SQLException { - throw org.postgresql.Driver.notImplemented(this.getClass(), "unwrap(Class<T>)"); + if (iface.isAssignableFrom(getClass())) + { + return (T) this; + } + throw new SQLException("Cannot unwrap to " + iface.getName()); } public ResultSet getFunctions(String catalog, String schemaPattern, String functionNamePattern) throws SQLException diff --git a/org/postgresql/jdbc4/AbstractJdbc4ParameterMetaData.java b/org/postgresql/jdbc4/AbstractJdbc4ParameterMetaData.java index b3895b5..34dad2b 100644 --- a/org/postgresql/jdbc4/AbstractJdbc4ParameterMetaData.java +++ b/org/postgresql/jdbc4/AbstractJdbc4ParameterMetaData.java @@ -20,12 +20,16 @@ public abstract class AbstractJdbc4ParameterMetaData extends org.postgresql.jdbc public boolean isWrapperFor(Class<?> iface) throws SQLException { - throw org.postgresql.Driver.notImplemented(this.getClass(), "isWrapperFor(Class<?>)"); + return iface.isAssignableFrom(getClass()); } public <T> T unwrap(Class<T> iface) throws SQLException { - throw org.postgresql.Driver.notImplemented(this.getClass(), "unwrap(Class<T>)"); + if (iface.isAssignableFrom(getClass())) + { + return (T) this; + } + throw new SQLException("Cannot unwrap to " + iface.getName()); } } diff --git a/org/postgresql/jdbc4/AbstractJdbc4ResultSet.java b/org/postgresql/jdbc4/AbstractJdbc4ResultSet.java index 665c0ae..f3d0445 100644 --- a/org/postgresql/jdbc4/AbstractJdbc4ResultSet.java +++ b/org/postgresql/jdbc4/AbstractJdbc4ResultSet.java @@ -278,12 +278,16 @@ abstract class AbstractJdbc4ResultSet extends org.postgresql.jdbc3g.AbstractJdbc public boolean isWrapperFor(Class<?> iface) throws SQLException { - throw org.postgresql.Driver.notImplemented(this.getClass(), "isWrapperFor(Class<?>)"); + return iface.isAssignableFrom(getClass()); } public <T> T unwrap(Class<T> iface) throws SQLException { - throw org.postgresql.Driver.notImplemented(this.getClass(), "unwrap(Class<T>)"); + if (iface.isAssignableFrom(getClass())) + { + return (T) this; + } + throw new SQLException("Cannot unwrap to " + iface.getName()); } protected Object internalGetObject(int columnIndex, Field field) throws SQLException diff --git a/org/postgresql/jdbc4/AbstractJdbc4ResultSetMetaData.java b/org/postgresql/jdbc4/AbstractJdbc4ResultSetMetaData.java index d83c9d9..68a411d 100644 --- a/org/postgresql/jdbc4/AbstractJdbc4ResultSetMetaData.java +++ b/org/postgresql/jdbc4/AbstractJdbc4ResultSetMetaData.java @@ -21,12 +21,16 @@ abstract class AbstractJdbc4ResultSetMetaData extends org.postgresql.jdbc2.Abstr public boolean isWrapperFor(Class<?> iface) throws SQLException { - throw org.postgresql.Driver.notImplemented(this.getClass(), "isWrapperFor(Class<?>)"); + return iface.isAssignableFrom(getClass()); } public <T> T unwrap(Class<T> iface) throws SQLException { - throw org.postgresql.Driver.notImplemented(this.getClass(), "unwrap(Class<T>)"); + if (iface.isAssignableFrom(getClass())) + { + return (T) this; + } + throw new SQLException("Cannot unwrap to " + iface.getName()); } } diff --git a/org/postgresql/jdbc4/AbstractJdbc4Statement.java b/org/postgresql/jdbc4/AbstractJdbc4Statement.java index ad89a84..c511d71 100644 --- a/org/postgresql/jdbc4/AbstractJdbc4Statement.java +++ b/org/postgresql/jdbc4/AbstractJdbc4Statement.java @@ -364,12 +364,16 @@ abstract class AbstractJdbc4Statement extends org.postgresql.jdbc3g.AbstractJdbc public boolean isWrapperFor(Class<?> iface) throws SQLException { - throw org.postgresql.Driver.notImplemented(this.getClass(), "isWrapperFor(Class<?>)"); + return iface.isAssignableFrom(getClass()); } public <T> T unwrap(Class<T> iface) throws SQLException { - throw org.postgresql.Driver.notImplemented(this.getClass(), "unwrap(Class<T>)"); + if (iface.isAssignableFrom(getClass())) + { + return (T) this; + } + throw new SQLException("Cannot unwrap to " + iface.getName()); } public java.util.logging.Logger getParentLogger() throws SQLFeatureNotSupportedException -- Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-java/libpostgresql-jdbc-java.git _______________________________________________ pkg-java-commits mailing list [email protected] http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-java-commits

