You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by "Mark Thomas (JIRA)" <ji...@apache.org> on 2016/11/03 09:10:59 UTC

[jira] [Resolved] (DBCP-458) Allow subclasses of BasicDataSource to provide their own GenericObjectPool implementation

     [ https://issues.apache.org/jira/browse/DBCP-458?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Mark Thomas resolved DBCP-458.
------------------------------
       Resolution: Fixed
    Fix Version/s: 2.2

Thanks for the patch. Enjoy.

> Allow subclasses of BasicDataSource to provide their own GenericObjectPool implementation
> -----------------------------------------------------------------------------------------
>
>                 Key: DBCP-458
>                 URL: https://issues.apache.org/jira/browse/DBCP-458
>             Project: Commons Dbcp
>          Issue Type: Improvement
>    Affects Versions: 2.1.1
>            Reporter: Adrian Tarau
>             Fix For: 2.2
>
>         Attachments: DBCP-458.patch
>
>
> I had the same need in an older version and I had to do a terrible hack which I would not like to do with a newer version.
> The main idea is that I would like to be able to monitor borrow and return events (among other things) and for that I need to provide my own GenericObjectPool implementation.
> It would be a small change to add a createObjectPool method and use it in createConnectionPool. Default implementation would be to 
> {code}
> if (abandonedConfig != null &&
>                 (abandonedConfig.getRemoveAbandonedOnBorrow() ||
>                  abandonedConfig.getRemoveAbandonedOnMaintenance())) {
>             gop = new GenericObjectPool<>(factory, config, abandonedConfig);
>         }
>         else {
>             gop = new GenericObjectPool<>(factory, config);
>         }
> {code}
> Subclasses would have the flexibility to provide their own pool implementation.



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