Hi Emilian,
It these some way to make Cayenne use this (basically
DataSource.getConnection(user,password) instead of
DataSource.getConnection()) ?
Not out-of-the-box. But you can achieve that via a custom DataSource
wrapper that channels DataSource.getConnection() to
DataSource.getConnection(user,password):
class DataSourceDecorator implements DataSource {
protected PerUserPoolDataSource delegate;
public Connection getConnection() {
// get user name and password via some custom mechanism, e.g.
via a ThreadLocal...
String userName = ...
String password = ...
return delegate.getConnection(userName, password);
}
.....
}
Such custom DataSource can be installed in runtime via a custom
DataSourceFactory that can be configured for the DataNode in the
Modeler:
http://cayenne.apache.org/doc/api/org/apache/cayenne/conf/
DataSourceFactory.html
Andrus
On Jun 4, 2007, at 4:16 PM, Emilian Bold wrote:
Hy,
I would like to use Cayenne with something like PerUserPoolDataSource
[1]. Basically I would like separate database-connections for
particular users and not generic data-source-wide user /passwords.
It these some way to make Cayenne use this (basically
DataSource.getConnection(user,password) instead of
DataSource.getConnection()) ?
I would also like to know of any other way to have a per-user pool
with Cayenne, if any.
Thanks,
Emilian Bold
1.http://jakarta.apache.org/commons/dbcp/apidocs/org/apache/commons/
dbcp/datasources/PerUserPoolDataSource.html
--
Emilian Bold
+40 740235562
http://www.emilianbold.ro
Java and NetBeans Platform-loving consulting services from
Timisoara, Romania.