diff -Nru xapool-1.5.0-src/build.xml xapool-1.5.0-src-gil/build.xml
--- xapool-1.5.0-src/build.xml	2012-08-03 13:23:15.364427907 +0200
+++ xapool-1.5.0-src-gil/build.xml	2012-08-03 13:22:56.935336995 +0200
@@ -73,6 +73,8 @@
     <javac
       srcdir="${src}"
       destdir="${build}/classes"
+      source="1.5"
+      target="1.5"
       deprecation="${compiler.deprecation}"
       debug="${compiler.debug}"
       nowarn="${compiler.nowarn}"
@@ -211,7 +213,7 @@
       packagenames="org.enhydra.*"
       destdir="${dist.jdoc}"
       windowtitle="XAPool Developer Documentation"
-      author="true" version="true" use="true" source="1.4" >
+      author="true" version="true" use="true" source="1.5" >
       <doctitle><![CDATA[<h1>XAPool Developer Documentation</h1>]]></doctitle>
       <sourcepath>
         <pathelement path="${src}"/>
diff -Nru xapool-1.5.0-src/src/org/enhydra/jdbc/informix/InformixConnectionHandle.java xapool-1.5.0-src-gil/src/org/enhydra/jdbc/informix/InformixConnectionHandle.java
--- xapool-1.5.0-src/src/org/enhydra/jdbc/informix/InformixConnectionHandle.java	2005-05-03 12:09:02.000000000 +0200
+++ xapool-1.5.0-src-gil/src/org/enhydra/jdbc/informix/InformixConnectionHandle.java	2012-05-08 09:47:11.343893353 +0200
@@ -24,6 +24,8 @@
 import org.enhydra.jdbc.standard.StandardConnectionHandle;
 
 import java.util.Hashtable;
+import java.util.Properties;
+import java.sql.SQLClientInfoException;
 import java.sql.SQLException;
 import java.sql.Statement;
 
@@ -53,4 +55,14 @@
         stat.execute(sql);
     }
 
+    public void setClientInfo(Properties properties) throws SQLClientInfoException {
+        // TODO 
+        throw new SQLClientInfoException();
+    }
+
+    public void setClientInfo(String name, String value) throws SQLClientInfoException {
+        // TODO 
+        throw new SQLClientInfoException();
+    }
+
 }
diff -Nru xapool-1.5.0-src/src/org/enhydra/jdbc/pool/GenericPool.java xapool-1.5.0-src-gil/src/org/enhydra/jdbc/pool/GenericPool.java
--- xapool-1.5.0-src/src/org/enhydra/jdbc/pool/GenericPool.java	2005-05-03 12:09:02.000000000 +0200
+++ xapool-1.5.0-src-gil/src/org/enhydra/jdbc/pool/GenericPool.java	2012-04-28 17:14:13.930153004 +0200
@@ -416,10 +416,10 @@
 	public synchronized void checkIn(Object o) {
 		log.debug("GenericPool:checkIn return an object to the pool");
 
-		for (Enumeration enum = locked.keys();
-			enum.hasMoreElements();
+		for (Enumeration mune = locked.keys();
+			mune.hasMoreElements();
 			) { // for each object of
-			GenerationObject obj = (GenerationObject) enum.nextElement();
+			GenerationObject obj = (GenerationObject) mune.nextElement();
 			// the locked pool
 
 			if (obj.getObj().equals(o)) {
@@ -444,13 +444,13 @@
 			// if we have more than maxSize object in the pool
 			log.info(
 				"GenericPool:checkIn more than maxSize object in the pool");
-			Enumeration enum = unlocked.keys(); // get the unlocked pool
+			Enumeration mune = unlocked.keys(); // get the unlocked pool
 			for (int i = maxSize;
 				i < count;
 				i++) { // try to remove object from this pool
 				if (getUnlockedObjectCount() > 0) {
 					GenerationObject obj =
-						(GenerationObject) enum.nextElement();
+						(GenerationObject) mune.nextElement();
 					removeUnlockedObject(obj);
 				}
 			}
@@ -511,12 +511,12 @@
 				log.info(
 					"GenericPool:setMaxSize pool has more than max element");
 				// we try to remove element from the unlocked pool
-				Enumeration enum = unlocked.keys();
+				Enumeration mune = unlocked.keys();
 				for (int i = max; i < count; i++) {
 					if (getUnlockedObjectCount() > 0) {
 						// if there is element in the unlocked pool
 						GenerationObject o =
-							(GenerationObject) enum.nextElement();
+							(GenerationObject) mune.nextElement();
 						removeUnlockedObject(o);
 					}
 				}
@@ -696,10 +696,10 @@
 		}
 		long now = System.currentTimeMillis(); // current time
 		synchronized (this) {
-		        for (Enumeration enum = unlocked.keys();
-		        	enum.hasMoreElements();
+		        for (Enumeration mune = unlocked.keys();
+		        	mune.hasMoreElements();
 		        	) { // for each object of the
-		        	GenerationObject o = (GenerationObject) enum.nextElement();
+		        	GenerationObject o = (GenerationObject) mune.nextElement();
 	        		// unlocked pool
 		        	long lasttouch = ((Long) unlocked.get(o)).longValue();
 		        	// birth day of the pool
@@ -782,19 +782,19 @@
 	void expireAll() {
 		log.debug(
 			"GenericPool:expireAll close all object in the unlocked and locked structures");
-		for (Enumeration enum = unlocked.keys();
-			enum.hasMoreElements();
+		for (Enumeration mune = unlocked.keys();
+			mune.hasMoreElements();
 			) { // for each object of
-			GenerationObject o = (GenerationObject) enum.nextElement();
+			GenerationObject o = (GenerationObject) mune.nextElement();
 			// the unlocked pool
 			poolHelper.expire(o.getObj()); // try to "kill" the object
 			o.killObject();
 			o = null;
 		}
-		for (Enumeration enum = locked.keys();
-			enum.hasMoreElements();
+		for (Enumeration mune = locked.keys();
+			mune.hasMoreElements();
 			) { // for each object of
-			GenerationObject o = (GenerationObject) enum.nextElement();
+			GenerationObject o = (GenerationObject) mune.nextElement();
 			// the locked pool
 			poolHelper.expire(o.getObj()); // try to "kill" the object
 			o.killObject();
@@ -810,20 +810,20 @@
 	public void nextGeneration(Object obj) {
 		log.debug("GenericPool:nextGeneration");
 		int genObj = 0;
-		for (Enumeration enum = locked.keys();
-			enum.hasMoreElements();
+		for (Enumeration mune = locked.keys();
+			mune.hasMoreElements();
 			) { // for each object of
-			GenerationObject o = (GenerationObject) enum.nextElement();
+			GenerationObject o = (GenerationObject) mune.nextElement();
 			// the locked pool
 
 			if (o.getObj().equals(obj))
 				genObj = o.getGeneration(); // get the generation number
 		}
 
-		for (Enumeration enum = unlocked.keys();
-			enum.hasMoreElements();
+		for (Enumeration mune = unlocked.keys();
+			mune.hasMoreElements();
 			) { // for each object of
-			GenerationObject o = (GenerationObject) enum.nextElement();
+			GenerationObject o = (GenerationObject) mune.nextElement();
 			// the unlocked pool
 
 			if (o.getGeneration() <= genObj) {
@@ -844,10 +844,10 @@
 	 */
 	synchronized public void removeLockedObject(Object obj) {
 		log.debug("GenericPool:removeObject remove an object");
-		for (Enumeration enum = locked.keys();
-			enum.hasMoreElements();
+		for (Enumeration mune = locked.keys();
+			mune.hasMoreElements();
 			) { // for each object of
-			GenerationObject o = (GenerationObject) enum.nextElement();
+			GenerationObject o = (GenerationObject) mune.nextElement();
 			// the locked pool
 			if (o.getObj().equals(obj)) {
 				locked.remove(o); // remove the object from the locked pool
diff -Nru xapool-1.5.0-src/src/org/enhydra/jdbc/pool/StandardPoolDataSource.java xapool-1.5.0-src-gil/src/org/enhydra/jdbc/pool/StandardPoolDataSource.java
--- xapool-1.5.0-src/src/org/enhydra/jdbc/pool/StandardPoolDataSource.java	2005-05-03 12:09:02.000000000 +0200
+++ xapool-1.5.0-src-gil/src/org/enhydra/jdbc/pool/StandardPoolDataSource.java	2012-04-28 17:58:34.694182580 +0200
@@ -24,9 +24,11 @@
 import java.io.PrintWriter;
 import java.sql.Connection;
 import java.sql.SQLException;
+import java.sql.SQLFeatureNotSupportedException;
 import java.sql.Statement;
 import java.util.Hashtable;
 
+import java.lang.NullPointerException;
 import javax.naming.Context;
 import javax.naming.InitialContext;
 import javax.naming.Name;
@@ -597,4 +599,18 @@
 		super.setThreadFactory(tf);
 		pool.setThreadFactory(tf);
 	}
+
+	public java.util.logging.Logger getParentLogger() throws SQLFeatureNotSupportedException {
+		throw new NullPointerException();
+	}
+
+	public boolean isWrapperFor(Class<?> iface) throws SQLException {
+		// TODO 
+		throw new SQLFeatureNotSupportedException();
+	}
+
+	public <T> T unwrap(Class<T> iface) throws SQLException {
+		// TODO 
+		throw new SQLFeatureNotSupportedException();
+	}
 }
\ Manca newline alla fine del file
diff -Nru xapool-1.5.0-src/src/org/enhydra/jdbc/standard/StandardConnectionHandle.java xapool-1.5.0-src-gil/src/org/enhydra/jdbc/standard/StandardConnectionHandle.java
--- xapool-1.5.0-src/src/org/enhydra/jdbc/standard/StandardConnectionHandle.java	2005-05-03 12:09:02.000000000 +0200
+++ xapool-1.5.0-src-gil/src/org/enhydra/jdbc/standard/StandardConnectionHandle.java	2012-08-03 10:48:37.882646335 +0200
@@ -21,11 +21,22 @@
  */
 package org.enhydra.jdbc.standard;
 
+import java.io.InputStream;
+
 import java.sql.CallableStatement;
+import java.sql.Blob;
+import java.sql.Clob;
+import java.sql.NClob;
 import java.sql.PreparedStatement;
+import java.sql.SQLClientInfoException;
 import java.sql.SQLException;
+import java.sql.SQLFeatureNotSupportedException;
+import java.sql.SQLXML;
+import java.sql.Struct;
 import java.util.Enumeration;
 import java.util.Hashtable;
+import java.util.concurrent.Executor;
+import java.util.Properties;
 import java.sql.Connection;
 import org.enhydra.jdbc.core.CoreConnection;
 import org.enhydra.jdbc.util.LRUCache;
@@ -376,4 +387,100 @@
 		}
 		return null;
 	}
+
+	public int getNetworkTimeout() throws SQLException {
+		// TODO 
+		throw new SQLFeatureNotSupportedException();
+	}
+
+	public void setNetworkTimeout(Executor executor, int timeout) throws SQLException {
+		// TODO 
+		throw new SQLFeatureNotSupportedException();
+	}
+
+	public void abort(Executor executor) throws SQLException {
+		// TODO 
+		throw new SQLFeatureNotSupportedException();
+	}
+
+	public String getSchema() throws SQLException {
+		// TODO 
+		throw new SQLFeatureNotSupportedException();
+	}
+
+	public void setSchema(String schema) throws SQLException {
+		// TODO 
+		throw new SQLFeatureNotSupportedException();
+	}
+
+	public Struct createStruct(String typeName,Object[] attributes) throws SQLException {
+		// TODO 
+		throw new SQLFeatureNotSupportedException();
+	}
+
+	public java.sql.Array createArrayOf(String typeName, Object[] elements)throws SQLException {
+		// TODO 
+		throw new SQLFeatureNotSupportedException();
+	}
+
+	public Properties getClientInfo() throws SQLException {
+		// TODO 
+		throw new SQLFeatureNotSupportedException();
+	}
+
+	public String getClientInfo(String name) throws SQLException {
+		// TODO 
+		throw new SQLFeatureNotSupportedException();
+	}
+
+	public void setClientInfo(Properties properties) throws SQLClientInfoException {
+		// TODO 
+		throw new SQLClientInfoException();
+	}
+
+	public void setClientInfo(String name, String value) throws SQLClientInfoException {
+		// TODO 
+		throw new RuntimeException("Not implemented method setClientInfo(String, String)");
+	}
+
+	public boolean isValid(int timeout) throws SQLException {
+		// TODO 
+		throw new SQLClientInfoException();
+	}
+
+	public SQLXML createSQLXML() throws SQLException {
+		// TODO 
+		throw new SQLFeatureNotSupportedException();
+	}
+
+	public NClob createNClob() throws SQLException {
+		// TODO 
+		throw new SQLFeatureNotSupportedException();
+	}
+
+	public Blob createBlob() throws SQLException {
+		// TODO 
+		throw new SQLFeatureNotSupportedException();
+	}
+
+	public Clob createClob() throws SQLException {
+		// TODO 
+		throw new SQLFeatureNotSupportedException();
+	}
+
+	public boolean isWrapperFor(Class<?> iface) throws SQLException {
+		// TODO 
+		throw new SQLFeatureNotSupportedException();
+	}
+
+	public <T> T unwrap(Class<T> iface) throws SQLException {
+		// TODO 
+		throw new SQLFeatureNotSupportedException();
+	}
+
+	public void setBlob(int parameterIndex, InputStream inputStream, long length) throws SQLException {
+		// TODO 
+		throw new SQLFeatureNotSupportedException();
+	}
+
 }
diff -Nru xapool-1.5.0-src/src/org/enhydra/jdbc/standard/StandardConnectionPoolDataSource.java xapool-1.5.0-src-gil/src/org/enhydra/jdbc/standard/StandardConnectionPoolDataSource.java
--- xapool-1.5.0-src/src/org/enhydra/jdbc/standard/StandardConnectionPoolDataSource.java	2005-05-03 12:09:02.000000000 +0200
+++ xapool-1.5.0-src-gil/src/org/enhydra/jdbc/standard/StandardConnectionPoolDataSource.java	2012-04-28 17:13:12.572152321 +0200
@@ -22,10 +22,13 @@
 package org.enhydra.jdbc.standard;
 
 import java.sql.SQLException;
+import java.sql.SQLFeatureNotSupportedException;
+import java.lang.NullPointerException;
 import java.util.Hashtable;
 import javax.sql.ConnectionPoolDataSource;
 import javax.sql.PooledConnection;
 import java.util.Enumeration;
+import java.util.logging.Logger;
 import org.enhydra.jdbc.util.LRUCache;
 
 /**
@@ -91,9 +94,9 @@
 		if (preparedStmtCacheSize <= 0) {
 			masterPrepStmtCache.clear();
 		} else {
-			Enumeration enum = masterPrepStmtCache.elements();
-			while (enum.hasMoreElements()) {
-				((LRUCache) enum.nextElement()).resize(value);
+			Enumeration mune = masterPrepStmtCache.elements();
+			while (mune.hasMoreElements()) {
+				((LRUCache) mune.nextElement()).resize(value);
 			}
 		}
 	}
@@ -107,4 +110,10 @@
 		
 		return sb.toString();
 	}
+
+	public Logger getParentLogger() throws SQLFeatureNotSupportedException {
+		throw new NullPointerException();
+	}
+
+
 }
diff -Nru xapool-1.5.0-src/src/org/enhydra/jdbc/standard/StandardDataSource.java xapool-1.5.0-src-gil/src/org/enhydra/jdbc/standard/StandardDataSource.java
--- xapool-1.5.0-src/src/org/enhydra/jdbc/standard/StandardDataSource.java	2005-05-03 12:09:02.000000000 +0200
+++ xapool-1.5.0-src-gil/src/org/enhydra/jdbc/standard/StandardDataSource.java	2012-04-28 17:53:48.056179394 +0200
@@ -24,7 +24,9 @@
 import java.sql.Connection;
 import java.sql.DriverManager;
 import java.sql.SQLException;
+import java.sql.SQLFeatureNotSupportedException;
 import java.util.Hashtable;
+import java.lang.NullPointerException;
 import javax.naming.Context;
 import javax.naming.Name;
 import javax.naming.NamingException;
@@ -316,4 +318,18 @@
 	public int hashCode() {
 		return toString().hashCode();
 	}
+
+	public java.util.logging.Logger getParentLogger() throws SQLFeatureNotSupportedException {
+		throw new NullPointerException();
+	}
+
+	public boolean isWrapperFor(Class<?> iface) throws SQLException {
+		// TODO 
+		throw new SQLFeatureNotSupportedException();
+	}
+
+	public <T> T unwrap(Class<T> iface) throws SQLException {
+		// TODO 
+		throw new SQLFeatureNotSupportedException();
+	}
 }
\ Manca newline alla fine del file
diff -Nru xapool-1.5.0-src/src/org/enhydra/jdbc/standard/StandardPooledConnection.java xapool-1.5.0-src-gil/src/org/enhydra/jdbc/standard/StandardPooledConnection.java
--- xapool-1.5.0-src/src/org/enhydra/jdbc/standard/StandardPooledConnection.java	2005-05-03 12:09:02.000000000 +0200
+++ xapool-1.5.0-src-gil/src/org/enhydra/jdbc/standard/StandardPooledConnection.java	2012-05-08 10:03:19.926904119 +0200
@@ -29,6 +29,7 @@
 import javax.sql.ConnectionEvent;
 import javax.sql.ConnectionEventListener;
 import javax.sql.PooledConnection;
+import javax.sql.StatementEventListener;
 
 /**
  * Provides an implementation of javax.sql.PooledConnection which
@@ -159,4 +160,12 @@
 		
 		return sb.toString();
 	}
+
+	public void removeStatementEventListener(StatementEventListener listener) {
+		throw new UnsupportedOperationException();
+	}
+
+	public void addStatementEventListener(StatementEventListener listener) {
+		throw new UnsupportedOperationException();
+	}
 }
diff -Nru xapool-1.5.0-src/src/org/enhydra/jdbc/standard/StandardPreparedStatement.java xapool-1.5.0-src-gil/src/org/enhydra/jdbc/standard/StandardPreparedStatement.java
--- xapool-1.5.0-src/src/org/enhydra/jdbc/standard/StandardPreparedStatement.java	2005-05-03 12:09:02.000000000 +0200
+++ xapool-1.5.0-src-gil/src/org/enhydra/jdbc/standard/StandardPreparedStatement.java	2012-08-03 11:54:18.034344398 +0200
@@ -21,10 +21,19 @@
  */
 package org.enhydra.jdbc.standard;
 
+import java.lang.Class;
+import java.sql.Blob;
+import java.sql.NClob;
 import java.sql.PreparedStatement;
+import java.sql.RowId;
 import java.sql.SQLException;
+import java.sql.SQLFeatureNotSupportedException;
+import java.sql.SQLXML;
 import org.enhydra.jdbc.core.CorePreparedStatement;
 
+import java.io.InputStream;
+import java.io.Reader;
+
 /**
  * A very simple implementation of PreparedStatement. When created
  * it is supplied with another PreparedStatement to which nearly all
@@ -92,4 +101,132 @@
 		throw (sqlException);
 	}
 
+	public void setNClob(int parameterIndex, Reader reader) throws SQLException {
+		// TODO 
+		throw new SQLFeatureNotSupportedException();
+	}
+
+	public void setBlob(int parameterIndex, InputStream inputStream) throws SQLException {
+		// TODO 
+		throw new SQLFeatureNotSupportedException();
+	}
+
+	public void setClob(int parameterIndex, Reader reader) throws SQLException {
+		// TODO 
+		throw new SQLFeatureNotSupportedException();
+	}
+
+	public void setCharacterStream(int parameterIndex, Reader reader) throws SQLException {
+		// TODO 
+		throw new SQLFeatureNotSupportedException();
+	}
+
+	public void setBinaryStream(int parameterIndex, InputStream x) throws SQLException {
+		// TODO 
+		throw new SQLFeatureNotSupportedException();
+	}
+
+	public void setAsciiStream(int parameterIndex, InputStream x) throws SQLException {
+		// TODO 
+		throw new SQLFeatureNotSupportedException();
+	}
+
+	public void setCharacterStream(int parameterIndex, Reader reader, long length) throws SQLException {
+		// TODO 
+		throw new SQLFeatureNotSupportedException();
+	}
+
+	public void setBinaryStream(int parameterIndex, InputStream x, long length) throws SQLException {
+		// TODO 
+		throw new SQLFeatureNotSupportedException();
+	}
+
+	public void setAsciiStream(int parameterIndex, InputStream x, long length) throws SQLException {
+		// TODO 
+		throw new SQLFeatureNotSupportedException();
+	}
+
+	public void setSQLXML(int parameterIndex, SQLXML xmlObject) throws SQLException {
+		// TODO 
+		throw new SQLFeatureNotSupportedException();
+	}
+
+	public void setBlob(String parameterName, Blob x) throws SQLException {
+		// TODO 
+		throw new SQLFeatureNotSupportedException();
+	}
+
+	public void setBlob(int parameterIndex, InputStream inputStream, long length) throws SQLException {
+		// TODO 
+		throw new SQLFeatureNotSupportedException();
+	}
+
+	public void setClob(int parameterIndex, Reader reader, long length) throws SQLException {
+		throw new RuntimeException("Not implemented method setClob(int, Reader, long)");
+	}
+
+	public void setNClob(int parameterIndex, NClob value) throws SQLException {
+		throw new RuntimeException("Not implemented method setNClob(int,NClob)");
+	}
+
+	public void setNClob(int parameterIndex, Reader reader, long length) throws SQLException {
+		throw new RuntimeException("Not implemented method setNClob(int, Reader, long)");
+	}
+
+	public void setNCharacterStream(int parameterIndex, Reader value) throws SQLException {
+		throw new RuntimeException("Not implemented method setNCharacterStream(int, Reader)");
+	}
+
+	public void setNCharacterStream(String parameterName, Reader value) throws SQLException {
+		throw new RuntimeException("Not implemented method setNCharacterStream(String, Reader)");
+	}
+
+	public void setNCharacterStream(int parameterIndex, Reader value, long length) throws SQLException {
+		throw new RuntimeException("Not implemented method setNCharacterStream(int, Reader, long)");
+	}
+
+	public void setNString(int parameterIndex, String value) throws SQLException {
+		throw new RuntimeException("Not implemented method setNString(int, String)");
+	}
+
+	public void setNString(String parameterName, String value) throws SQLException {
+		throw new RuntimeException("Not implemented method setNString(String, String)");
+	}
+
+	public void setRowId(int parameterIndex, RowId x) throws SQLException {
+		throw new RuntimeException("Not implemented method setRowId(int, RowId)");
+	}
+
+	public void setRowId(String parameterName, RowId x) throws SQLException {
+		throw new RuntimeException("Not implemented method setRowId(String, RowId)");
+	}
+
+	public boolean isCloseOnCompletion() throws SQLException {
+		throw new RuntimeException("Not implemented method isCloseOnCompletion()");
+	}
+
+	public void closeOnCompletion() throws SQLException {
+		throw new RuntimeException("Not implemented method closeOnCompletion()");
+	}
+
+	public boolean isClosed() throws SQLException {
+		throw new RuntimeException("Not implemented method isClosed()");
+	}   
+
+	public void setPoolable(boolean poolable) throws SQLException {
+		throw new RuntimeException("Not implemented method setPoolable(boolean)");
+	}   
+
+	public boolean isPoolable() throws SQLException {
+		throw new RuntimeException("Not implemented method isPoolable()");
+	}
+
+	public <T> T unwrap(Class<T> iface) throws SQLException {
+		throw new RuntimeException("Not implemented method unwrap(Class<T>)");
+	}   
+
+	public boolean isWrapperFor(Class<?> iface) throws SQLException {
+		throw new RuntimeException("Not implemented method isWrapperFor(Class<?>)");
+	}
+
 }
diff -Nru xapool-1.5.0-src/src/org/enhydra/jdbc/standard/StandardXACallableStatement.java xapool-1.5.0-src-gil/src/org/enhydra/jdbc/standard/StandardXACallableStatement.java
--- xapool-1.5.0-src/src/org/enhydra/jdbc/standard/StandardXACallableStatement.java	2005-05-03 12:09:02.000000000 +0200
+++ xapool-1.5.0-src-gil/src/org/enhydra/jdbc/standard/StandardXACallableStatement.java	2012-08-03 13:17:12.409334432 +0200
@@ -21,8 +21,18 @@
  */
 package org.enhydra.jdbc.standard;
 
-import java.sql.SQLException;
+import java.io.InputStream;
+import java.io.Reader;
+import java.lang.Class;
+
+import java.sql.Blob;
 import java.sql.CallableStatement;
+import java.sql.Clob;
+import java.sql.NClob;
+import java.sql.RowId;
+import java.sql.SQLException;
+import java.sql.SQLFeatureNotSupportedException;
+import java.sql.SQLXML;
 import org.enhydra.jdbc.core.CoreCallableStatement;
 import javax.transaction.Transaction;
 import javax.transaction.SystemException;
@@ -144,4 +154,242 @@
 		throw (sqlException);
 	}
 
+	public <T> T getObject(String columnLabel, Class<T> arg0) throws SQLException {
+		// TODO 
+		throw new SQLFeatureNotSupportedException();
+	}
+
+	public <T> T getObject(int columnIndex, Class<T> arg0) throws SQLException {
+		// TODO 
+		throw new SQLFeatureNotSupportedException();
+	}
+
+	public Reader getCharacterStream(int parameterIndex) throws SQLException {
+		throw new RuntimeException("Not implemented method getCharacterStream(int)");
+	}  
+
+	public Reader getCharacterStream(String parameterName) throws SQLException {
+		throw new RuntimeException("Not implemented method getCharacterStream(String)");
+	} 
+
+	public Reader getNCharacterStream(int parameterIndex) throws SQLException {
+		throw new RuntimeException("Not implemented method getNCharacterStream(int)");
+	}   
+
+	public Reader getNCharacterStream(String parameterName) throws SQLException {
+		throw new RuntimeException("Not implemented method getNCharacterStream(String)");
+	}
+
+	public String getNString(int parameterIndex) throws SQLException {
+		throw new RuntimeException("Not implemented method getNString(int)");
+	}   
+
+	public String getNString(String parameterName) throws SQLException {
+		throw new RuntimeException("Not implemented method getNString(String)");
+	}
+
+	public SQLXML getSQLXML(int parameterIndex) throws SQLException {
+		throw new RuntimeException("Not implemented method getSQLXML(int)");
+	}   
+
+	public SQLXML getSQLXML(String parameterName) throws SQLException {
+		throw new RuntimeException("Not implemented method getSQLXML(String)");
+	}
+
+	public void setSQLXML(int parameterIndex, SQLXML xmlObject) throws SQLException {
+		throw new RuntimeException("Not implemented method setSQLXML(int, SQLXM)");
+	}
+
+	public void setSQLXML(String parameterName, SQLXML xmlObject) throws SQLException {
+		throw new RuntimeException("Not implemented method setSQLXML(String, SQLXML)");
+	}
+
+	public NClob getNClob(int parameterIndex) throws SQLException {
+		throw new RuntimeException("Not implemented method (int)");
+	}   
+
+	public NClob getNClob(String parameterName) throws SQLException {
+		throw new RuntimeException("Not implemented method (String)");
+	}
+
+	public void setNClob(int parameterIndex, Reader reader) throws SQLException {
+		throw new RuntimeException("Not implemented method setNClob(int, Reader)");
+	}
+
+	public void setNClob(int parameterIndex, Reader reader, long length) throws SQLException {
+		throw new RuntimeException("Not implemented method setNClob(int, Reader, long)");
+	}
+
+	public void setNClob(String parameterName, Reader reader) throws SQLException {
+		throw new RuntimeException("Not implemented method setNClob(String, NClob)");
+	}
+
+	public void setNClob(int parameterIndex, NClob value) throws SQLException {
+		throw new RuntimeException("Not implemented method setNClob(int, NClob)");
+	}
+
+	public void setNClob(String parameterName, NClob value) throws SQLException {
+		throw new RuntimeException("Not implemented method setNClob(String, NClob)");
+	}
+
+	public void setNClob(String parameterName, Reader reader, long length) throws SQLException {
+		throw new RuntimeException("Not implemented method setNClob(String, Reader, long)");
+	}
+
+	public void setBlob(int parameterIndex, InputStream inputStream) throws SQLException {
+		throw new RuntimeException("Not implemented method setBlob(int, InputStream)");
+	}
+
+	public void setBlob(int parameterIndex, InputStream inputStream, long length) throws SQLException {
+		throw new RuntimeException("Not implemented method setBlob(int, InputStream, long)");
+	}
+
+	public void setBlob(String parameterName, InputStream inputStream) throws SQLException {
+		throw new RuntimeException("Not implemented method setBlob(String, InputStream)");
+	}
+
+	public void setBlob(String parameterName, InputStream inputStream, long length) throws SQLException {
+		throw new RuntimeException("Not implemented method setBlob(String, InputStream, long)");
+	}
+
+	public void setBlob(String parameterName, Blob x) throws SQLException {
+		throw new RuntimeException("Not implemented method setBlob(String, Blob)");
+	}
+
+	public void setClob(int parameterIndex, Reader reader) throws SQLException {
+		throw new RuntimeException("Not implemented method setClob(int, Reader)");
+	}
+
+	public void setClob(int parameterIndex, Reader reader, long length) throws SQLException {
+		throw new RuntimeException("Not implemented method setClob(int, Reader, long)");
+	}
+
+	public void setClob(String parameterName, Reader reader) throws SQLException {
+		throw new RuntimeException("Not implemented method setClob(String, Reader)");
+	}
+
+	public void setClob(String parameterName, Reader reader, long length) throws SQLException {
+		throw new RuntimeException("Not implemented method setClob(String, Reader, long)");
+	}
+
+	public void setClob(String parameterName, Clob x) throws SQLException {
+		throw new RuntimeException("Not implemented method setClob(String, Clob)");
+	}
+
+	public void setNCharacterStream(int parameterIndex, Reader value) throws SQLException {
+		throw new RuntimeException("Not implemented method setNCharacterStream(int, Reader)");
+	}
+
+	public void setNCharacterStream(int parameterIndex, Reader value, long length) throws SQLException {
+		throw new RuntimeException("Not implemented method setNCharacterStream(int, Reader, long)");
+	}
+
+	public void setNCharacterStream(String parameterName, Reader value) throws SQLException {
+		throw new RuntimeException("Not implemented method setNCharacterStream(String, Reader)");
+	}
+
+	public void setNCharacterStream(String parameterName, Reader value, long length) throws SQLException {
+		throw new RuntimeException("Not implemented method setNCharacterStream(String, Reader, long)");
+	}
+
+	public void setNString(int parameterIndex, String value) throws SQLException {
+		throw new RuntimeException("Not implemented method setNString(int, String)");
+	}
+
+	public void setNString(String parameterName, String value) throws SQLException {
+		throw new RuntimeException("Not implemented method setNString(String, String)");
+	}
+
+	public void setRowId(int parameterIndex, RowId x) throws SQLException {
+		throw new RuntimeException("Not implemented method setRowId(int, RowId)");
+	}
+
+	public void setRowId(String parameterName, RowId x) throws SQLException {
+		throw new RuntimeException("Not implemented method setRowId(String, RowId)");
+	}
+
+	public RowId getRowId(int parameterIndex) throws SQLException {
+		throw new RuntimeException("Not implemented method getRowId(int)");
+	}   
+
+	public RowId getRowId(String parameterName) throws SQLException {
+		throw new RuntimeException("Not implemented method getRowId(String)");
+	}
+
+	public void setCharacterStream(int parameterIndex, Reader reader) throws SQLException {
+		throw new RuntimeException("Not implemented method setCharacterStream(int, Reader)");
+	}
+
+	public void setCharacterStream(int parameterIndex, Reader reader, long length) throws SQLException {
+		throw new RuntimeException("Not implemented method setCharacterStream(int, Reader, long)");
+	}
+
+	public void setCharacterStream(String parameterName, Reader reader) throws SQLException {
+		throw new RuntimeException("Not implemented method setCharacterStream(String, Reader)");
+	}
+
+	public void setCharacterStream(String parameterName, Reader reader, long length) throws SQLException {
+		throw new RuntimeException("Not implemented method setCharacterStream(String, Reader, long)");
+	}
+
+	public void setBinaryStream(int parameterIndex, InputStream x) throws SQLException {
+		throw new RuntimeException("Not implemented method setBinaryStream(int, InputStream)");
+	}
+
+	public void setBinaryStream(int parameterIndex, InputStream x, long length) throws SQLException {
+		throw new RuntimeException("Not implemented method setBinaryStream(int, InputStream, long)");
+	}
+
+	public void setBinaryStream(String parameterName, InputStream x) throws SQLException {
+		throw new RuntimeException("Not implemented method setBinaryStream(String, InputStream)");
+	}
+
+	public void setBinaryStream(String parameterName, InputStream x, long length) throws SQLException {
+		throw new RuntimeException("Not implemented method setBinaryStream(String, InputStream, long)");
+	}
+
+	public void setAsciiStream(int parameterIndex, InputStream x) throws SQLException {
+		throw new RuntimeException("Not implemented method setAsciiStream(int, InputStream)");
+	}
+
+	public void setAsciiStream(int parameterIndex, InputStream x, long length) throws SQLException {
+		throw new RuntimeException("Not implemented method setAsciiStream(int, InputStream, long)");
+	}
+
+	public void setAsciiStream(String parameterName, InputStream x) throws SQLException {
+		throw new RuntimeException("Not implemented method setAsciiStream(String, InputStream)");
+	}
+
+	public void setAsciiStream(String parameterName, InputStream x, long length) throws SQLException {
+		throw new RuntimeException("Not implemented method setAsciiStream(String, InputStream, long)");
+	}
+
+	public boolean isCloseOnCompletion() throws SQLException {
+		throw new RuntimeException("Not implemented method isCloseOnCompletion()");
+	}
+
+	public void closeOnCompletion() throws SQLException {
+		throw new RuntimeException("Not implemented method closeOnCompletion()");
+	}
+
+	public boolean isClosed() throws SQLException {
+		throw new RuntimeException("Not implemented method isClosed()");
+	}   
+
+	public void setPoolable(boolean poolable) throws SQLException {
+		throw new RuntimeException("Not implemented method setPoolable(boolean)");
+	}   
+
+	public boolean isPoolable() throws SQLException {
+		throw new RuntimeException("Not implemented method isPoolable()");
+	}
+
+	public <T> T unwrap(Class<T> iface) throws SQLException {
+		throw new RuntimeException("Not implemented method unwrap(Class<T>)");
+	}   
+
+	public boolean isWrapperFor(Class<?> iface) throws SQLException {
+		throw new RuntimeException("Not implemented method isWrapperFor(Class<?>)");
+	}
+
 }
diff -Nru xapool-1.5.0-src/src/org/enhydra/jdbc/standard/StandardXAConnectionHandle.java xapool-1.5.0-src-gil/src/org/enhydra/jdbc/standard/StandardXAConnectionHandle.java
--- xapool-1.5.0-src/src/org/enhydra/jdbc/standard/StandardXAConnectionHandle.java	2005-05-03 12:09:02.000000000 +0200
+++ xapool-1.5.0-src-gil/src/org/enhydra/jdbc/standard/StandardXAConnectionHandle.java	2012-05-08 09:55:22.663898813 +0200
@@ -22,10 +22,12 @@
 package org.enhydra.jdbc.standard;
 
 import java.sql.PreparedStatement;
+import java.sql.SQLClientInfoException;
 import java.sql.SQLException;
 import java.sql.Statement;
 import java.sql.CallableStatement;
 import java.util.Hashtable;
+import java.util.Properties;
 import javax.transaction.Transaction;
 import javax.transaction.TransactionManager;
 import javax.transaction.RollbackException;
@@ -505,4 +507,14 @@
 		
 		return sb.toString();
 	}
+	
+	public void setClientInfo(Properties properties) throws SQLClientInfoException {
+		// TODO 
+		throw new SQLClientInfoException();
+	}
+
+	public void setClientInfo(String name, String value) throws SQLClientInfoException {
+		// TODO 
+		throw new SQLClientInfoException();
+	}
 }
diff -Nru xapool-1.5.0-src/src/org/enhydra/jdbc/standard/StandardXAConnection.java xapool-1.5.0-src-gil/src/org/enhydra/jdbc/standard/StandardXAConnection.java
--- xapool-1.5.0-src/src/org/enhydra/jdbc/standard/StandardXAConnection.java	2005-05-03 12:09:02.000000000 +0200
+++ xapool-1.5.0-src-gil/src/org/enhydra/jdbc/standard/StandardXAConnection.java	2012-05-08 10:13:22.135910813 +0200
@@ -23,6 +23,7 @@
 
 import java.sql.Connection;
 import java.sql.SQLException;
+import javax.sql.StatementEventListener;
 import javax.sql.XAConnection;
 import javax.transaction.xa.XAException;
 import javax.transaction.xa.XAResource;
@@ -753,4 +754,13 @@
 		return sb.toString();
 	
 	}
+
+	public void removeStatementEventListener(StatementEventListener listener) {
+		throw new UnsupportedOperationException();
+	}
+
+	public void addStatementEventListener(StatementEventListener listener) {
+		throw new UnsupportedOperationException();
+	}
+
 }
diff -Nru xapool-1.5.0-src/src/org/enhydra/jdbc/standard/StandardXADataSource.java xapool-1.5.0-src-gil/src/org/enhydra/jdbc/standard/StandardXADataSource.java
--- xapool-1.5.0-src/src/org/enhydra/jdbc/standard/StandardXADataSource.java	2005-05-03 12:09:02.000000000 +0200
+++ xapool-1.5.0-src-gil/src/org/enhydra/jdbc/standard/StandardXADataSource.java	2012-04-28 17:12:35.591151910 +0200
@@ -170,10 +170,10 @@
 		deadConnections.putAll(xidConnections);
 
 		// now we'll just clear out the freeConnections
-		Enumeration enum = freeConnections.elements();
-		while (enum.hasMoreElements()) {
+		Enumeration mune = freeConnections.elements();
+		while (mune.hasMoreElements()) {
 			StandardXAStatefulConnection xasc =
-				(StandardXAStatefulConnection) enum.nextElement();
+				(StandardXAStatefulConnection) mune.nextElement();
 			try {
 				log.debug(
 					"StandardXADataSource:resetCache closing Connection:"
@@ -562,10 +562,10 @@
 					+ freeConnections.elementAt(i).toString()
 					+ ">");
 		}
-		for (Enumeration enum = xidConnections.elements();
-			enum.hasMoreElements();
+		for (Enumeration mune = xidConnections.elements();
+			mune.hasMoreElements();
 			) {
-			log.debug("xidConnection:<" + enum.nextElement().toString() + ">");
+			log.debug("xidConnection:<" + mune.nextElement().toString() + ">");
 		}
 
 	}
diff -Nru xapool-1.5.0-src/src/org/enhydra/jdbc/standard/StandardXAStatement.java xapool-1.5.0-src-gil/src/org/enhydra/jdbc/standard/StandardXAStatement.java
--- xapool-1.5.0-src/src/org/enhydra/jdbc/standard/StandardXAStatement.java	2005-05-03 12:09:02.000000000 +0200
+++ xapool-1.5.0-src-gil/src/org/enhydra/jdbc/standard/StandardXAStatement.java	2012-04-28 18:46:52.018214786 +0200
@@ -22,6 +22,7 @@
 package org.enhydra.jdbc.standard;
 
 import java.sql.SQLException;
+import java.sql.SQLFeatureNotSupportedException;
 import java.sql.Statement;
 import org.enhydra.jdbc.core.CoreStatement;
 
@@ -77,4 +78,39 @@
 		throw (sqlException);
 	}
 
+	public boolean isCloseOnCompletion() throws SQLException {
+		// TODO 
+		throw new SQLFeatureNotSupportedException();
+	}
+
+	public void closeOnCompletion() throws SQLException {
+		// TODO 
+		throw new SQLFeatureNotSupportedException();
+	}
+
+	public boolean isPoolable() throws SQLException {
+		// TODO 
+		throw new SQLFeatureNotSupportedException();
+	}
+
+	public void setPoolable(boolean poolable) throws SQLException {
+		// TODO 
+		throw new SQLFeatureNotSupportedException();
+	}
+
+	public boolean isClosed() throws SQLException {
+		// TODO 
+		throw new SQLFeatureNotSupportedException();
+	}
+
+	public boolean isWrapperFor(Class<?> iface) throws SQLException {
+		// TODO 
+		throw new SQLFeatureNotSupportedException();
+	}
+
+	public <T> T unwrap(Class<T> iface) throws SQLException {
+		// TODO 
+		throw new SQLFeatureNotSupportedException();
+	}
+
 }
diff -Nru xapool-1.5.0-src/src/org/enhydra/jdbc/sybase/SybaseConnectionHandle.java xapool-1.5.0-src-gil/src/org/enhydra/jdbc/sybase/SybaseConnectionHandle.java
--- xapool-1.5.0-src/src/org/enhydra/jdbc/sybase/SybaseConnectionHandle.java	2005-05-03 12:09:02.000000000 +0200
+++ xapool-1.5.0-src-gil/src/org/enhydra/jdbc/sybase/SybaseConnectionHandle.java	2012-05-08 09:48:39.896894336 +0200
@@ -24,6 +24,8 @@
 import org.enhydra.jdbc.standard.StandardConnectionHandle;
 
 import java.util.Hashtable;
+import java.util.Properties;
+import java.sql.SQLClientInfoException;
 import java.sql.SQLException;
 
 public class SybaseConnectionHandle extends StandardConnectionHandle {
@@ -42,4 +44,13 @@
         }
     }
 
+    public void setClientInfo(Properties properties) throws SQLClientInfoException {
+        // TODO 
+        throw new SQLClientInfoException();
+    }
+
+    public void setClientInfo(String name, String value) throws SQLClientInfoException {
+        // TODO 
+        throw new SQLClientInfoException();
+    }
 }
diff -Nru xapool-1.5.0-src/src/org/enhydra/jdbc/util/LRUCache.java xapool-1.5.0-src-gil/src/org/enhydra/jdbc/util/LRUCache.java
--- xapool-1.5.0-src/src/org/enhydra/jdbc/util/LRUCache.java	2005-05-03 12:09:02.000000000 +0200
+++ xapool-1.5.0-src-gil/src/org/enhydra/jdbc/util/LRUCache.java	2012-04-28 17:11:45.623151354 +0200
@@ -150,9 +150,9 @@
     protected void cleanupObject(Object o) {}
 
     public void cleanupAll() {
-        for (Enumeration enum = cache.keys();enum.hasMoreElements();) {
+        for (Enumeration mune = cache.keys();mune.hasMoreElements();) {
 
-            Object o = remove(enum.nextElement());
+            Object o = remove(mune.nextElement());
             cleanupObject(o);
 
         }
