Right, I overlooked that aspect. Still I think you can get access to the Oracle connection intercepting the Connection creation in a different place. The trick is to use the following PoolManager constructor in the factory:

public PoolManager(ConnectionPoolDataSource, int, int, String, String)


and for ConnectionPoolDataSource do something like this:

   // subclass DriverDataSource to intercept connection creation
DriverDataSource driverDS = new DriverDataSource(jdbcDriver, dataSourceUrl) { public Connection getConnection(String userName, String password) throws SQLException { OracleConnection c = super.getConnection(userName, password);
               c.setEndToEndMetrics(...);
               return c;
         }
   }

   ConnectionPoolDataSource poolDS = new PoolDataSource(driverDS);

Andrus

On Jun 12, 2007, at 7:32 PM, Daniel Uribe wrote:


Andrus,

We are pursuing this idea, but unfortunately it seems that the connection object returned from the wrapped data source (in this case, the wrapped data
source is a PoolManager) is a ConnectionWrapper object. I can't find a
method in that class to retrieve the native OracleConnection to be able to
call the 'setEndToEndMetrics' method on it.

Any ideas?

Thanks,
Daniel


Andrus Adamchik wrote:

The other day I posted a DataSource customization advice in reply to
a different question:

http://objectstyle.org/cayenne/lists/cayenne-user/ 2007/06/0039.html

This approach (custom DataSourceFactory, that instantiates a
DataSource wrapper that in turn would call 'setEndToEndMetrics' on
every returned connection) is applicable for your case as well.

Andrus

P.S. Custom DataSource is a solution to like 80% of the environment
integration problems. Probably need to write a detailed article on
that under the user guide at http://cayenne.apache.org/doc/
customizing.html


On Jun 8, 2007, at 8:43 PM, Srinivas Chinthalapudi wrote:

Hi,

  In our project GLIN we would like to have a debugging mechanism
and hence
would like to pass user object or userID to be passed into the
connection as
a parameter, this can be done using the method setEndToEndMetrics in =
oracle.jdbc.OracleConnectionWrapper. But I do not find a way in
Cayenne's
implementation where I can set these metrics into the
setEndToEndMetrics
method. I appreciate if I get some sort of hint or resolution for
the same.
--
Thanks & Regards
Sri

The Seven Blunders of the World:

 * Wealth without work
 * Pleasure without conscience
 * Knowledge without character
 * Commerce without morality
 * Science without humanity
 * Worship without sacrifice
 * Politics without principle




--
View this message in context: http://www.nabble.com/How-to-set- setEndToEndMetrics-through-Cayenne-tf3891375.html#a11082191
Sent from the Cayenne - User mailing list archive at Nabble.com.



Reply via email to