2 Replies Latest reply on Apr 17, 2006 5:12 AM by adrian.brock

    Pooling Aspects

    weston.price

      We seem to get a lot of requests along the lines of:

      http://jira.jboss.org/jira/browse/JBAS-3033

      or

      http://jira.jboss.org/jira/browse/JBAS-2737

      etc, etc

      I was wondering, and correct me if I am intruding on the domain of the MC as this point, but can't we 'aspetize' a lot of the behaviors of our pools? EJB's have similar behaviors on the instance pool (i.e. adding/removing behavior on an interceptor stack), can't we consider doing something similar?

      At the very least, maybe a PoolManager type services that allows people to plug and play behavior of the pool with a config type mechanism.

        • 1. Re: Pooling Aspects
          • 2. Re: Pooling Aspects

            In the past, I've suggested being able to add plugins for all policy decisions.
            e.g.

            <tx-connection-factory>
            ...
            <internal-pool-class>com.acme.Blah</internal-pool-class>
            </tx-connection-factory>
            


            But the difficulty comes in matching this up to the configuration of that plugin.
            With the Micrcontainer (ease of use configuration)
            and the more up-to-date JBossXB schema implementation it is much easier
            to mix and match configuration in a well defined way.
            http://jira.jboss.com/jira/browse/JBMICROCONT-73

            e.g.
            <deployment>
             <tx-connection-factory>
             ...
             <internal-pool>
             <pool xmlns="urn:com.acme:Pool:1.0">
             <some-config-option>123</some-config-option>
             </pool>
             </internal-pool>
             ...
             </tx-connection-factory>
            </deployment>
            


            With JBossXB injecting the object (preferably Micrcontainer metadata)
            created through the pool schema into the internal-pool part of the standard
            jca metadata.

            If there is no such element, it would just use the default.