directory-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Stefan Seelmann (JIRA)" <j...@apache.org>
Subject [jira] [Comment Edited] (DIRAPI-239) Client API exposes implementation classes of common-pools
Date Tue, 05 May 2015 17:40:01 GMT

    [ https://issues.apache.org/jira/browse/DIRAPI-239?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14528864#comment-14528864
] 

Stefan Seelmann edited comment on DIRAPI-239 at 5/5/15 5:40 PM:
----------------------------------------------------------------

We can consider to change that.

However do you have a concrete case where this breaks your OSGi deployment? commons-pool 1.6
exports the org.apache.commons.pool.impl package. I was able create an LdapConnectionPool
with such an GenericObjectPool.Config object in two environments:
1. in the API OSGi test suite that users PAX+Felix, see http://svn.apache.org/r1677869
2. Within Studio that uses Eclipse Equinox



was (Author: seelmann):
We can consider to change that.

However do you have a concrete broblem where this breaks your OSGi deployment? commons-pool
1.6 exports the org.apache.commons.pool.impl package. I was able create an LdapConnectionPool
with such an GenericObjectPool.Config object in two environments:
1. in the API OSGi test suite that users PAX+Felix, see http://svn.apache.org/r1677869
2. Within Studio that uses Eclipse Equinox


> Client API exposes implementation classes of common-pools
> ---------------------------------------------------------
>
>                 Key: DIRAPI-239
>                 URL: https://issues.apache.org/jira/browse/DIRAPI-239
>             Project: Directory Client API
>          Issue Type: Bug
>    Affects Versions: 1.0.0-M30
>            Reporter: Federico Marmori
>
> The  constructors:
> LdapConnectionPool(LdapConnectionConfig connectionConfig, LdapApiService apiService,
long timeout, org.apache.commons.pool.impl.GenericObjectPool.Config poolConfig)
> and 
> LdapConnectionPool(org.apache.commons.pool.PoolableObjectFactory<LdapConnection>
factory, org.apache.commons.pool.impl.GenericObjectPool.Config poolConfig)
> ...allows the user to provide its own pool configuration.
> However, using the Config object is really a bad idea. This forces the user code to depend
on an implementation class of the commons-pool library, which will break any OSGI deployment
and force the user to implement tedious workarounds. Probably common-pools could solve the
issue by exposing the Config object in the API, however the DIRAPI can fix the issue by making
sure that the LdapConnectionPool either:
> - expose all pool configuration attributes in a constructor instead of the GenericObjectPool.Config
> - provide its own LdapPoolConfiguration bean object instead of using the GenericObjectPool.Config
> - provide an LdapConnectionPoolFactory instead



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message