So I am doing an experimental refactoring to see what the code would look like with a Config class extracted and I ran into the following.
The class GenericObjectPool has an _softMinEvictableIdleTimeMillis ivar but the equivalent GenericKeyedObjectPool does not. Is that a little hole in implementation that could have been avoided with a common classes used for config? Even if GenericKeyedObjectPool would throw a "not implemented" exception. Thoughts? Gary Gregory Senior Software Engineer Rocket Software 3340 Peachtree Road, Suite 820 • Atlanta, GA 30326 • USA Tel: +1.404.760.1560 Email: ggreg...@seagullsoftware.com Web: seagull.rocketsoftware.com > -----Original Message----- > From: Simone Tripodi [mailto:simone.trip...@gmail.com] > Sent: Wednesday, October 20, 2010 12:22 > To: Commons Developers List > Subject: Re: [pool] Reusing Config > > sure, I always wait for feedbacks before coding :P Cool expression > "Rambo through the code", that was the first time I read it and made > me laugh :D > All the best, > Simo > > http://people.apache.org/~simonetripodi/ > http://www.99soft.org/ > > > > On Wed, Oct 20, 2010 at 9:17 PM, Gary Gregory > <ggreg...@seagullsoftware.com> wrote: > > It seems to me there is a reason the code is the way it is so I'd really > like to hear thoughts from some of the original authors before we go and Rambo > through the code ;) > > > > Gary > > > > On Oct 20, 2010, at 12:13, "Simone Tripodi" <simone.trip...@gmail.com> > wrote: > > > >> Hi Gary, > >> yes that's me that raised the question[1] and discussed a little with > >> Seb. What blocked me was the JMX support proposal since I'm not > >> familiar with that technology, so I was consulting documentation to > >> study. > >> > >> My very big +1 for that, with the wish of work directly on that stuff. > >> Anyone else has a different thought, before proceeding? > >> Thanks in advance, > >> Simo > >> > >> [1] http://markmail.org/message/q4y7ghux57s7hk6v > >> > >> http://people.apache.org/~simonetripodi/ > >> http://www.99soft.org/ > >> > >> > >> > >> On Wed, Oct 20, 2010 at 7:43 PM, Gary Gregory > >> <ggreg...@seagullsoftware.com> wrote: > >>> In the same department, I see the following ivars: > >>> > >>> lifo : boolean > >>> maxActive : int > >>> maxIdle : int > >>> maxTotal : int > >>> maxWait : long > >>> minEvictableIdleTimeMillis : long > >>> minIdle : int > >>> numTestsPerEvictionRun : int > >>> testOnBorrow : boolean > >>> testOnReturn : boolean > >>> testWhileIdle : boolean > >>> timeBetweenEvictionRunsMillis : long > >>> whenExhaustedAction : WhenExhaustedAction > >>> > >>> defined in four classes: > >>> > >>> GenericKeyedObjectPool > >>> GenericKeyedObjectPoolFactory > >>> GenericObjectPool > >>> GenericObjectPoolFactory > >>> > >>> Which feels to me like a missed opportunity to avoid duplication. > >>> > >>> Is making one ivar private or final or volatile be applied to all four > classes? > >>> > >>> We could: > >>> > >>> Use a config object instead of the 13 ivars. > >>> Or a common superclass then we can consider if it should hold the ivar > list or a Config object. > >>> > >>> Would it be too weird to have a common super class for BaseObjectPool and > BasePoolableObjectFactory for example? > >>> > >>> Gary Gregory > >>> Senior Software Engineer > >>> Rocket Software > >>> 3340 Peachtree Road, Suite 820 . Atlanta, GA 30326 . USA > >>> Tel: +1.404.760.1560 > >>> Email: ggreg...@seagullsoftware.com > >>> Web: seagull.rocketsoftware.com > >>> > >>> > >>> > >>>> -----Original Message----- > >>>> From: Gary Gregory [mailto:ggreg...@seagullsoftware.com] > >>>> Sent: Wednesday, October 20, 2010 10:29 > >>>> To: Commons Developers List > >>>> Subject: [pool] Reusing Config > >>>> > >>>> Hi All: > >>>> > >>>> I think this came up recently. Any thoughts or plans on extracting the > Config > >>>> class out of GenericKeyedObjectPool and GenericObjectPool so it can be > reused. > >>>> The constants for default values could then also be moved to Config. > >>>> Gary Gregory > >>>> Senior Software Engineer > >>>> Rocket Software > >>>> 3340 Peachtree Road, Suite 820 * Atlanta, GA 30326 * USA > >>>> Tel: +1.404.760.1560 > >>>> Email: ggreg...@seagullsoftware.com<mailto:ggreg...@seagullsoftware.com> > >>>> Web: seagull.rocketsoftware.com<http://www.seagull.rocketsoftware.com/> > >>>> > >>> > >>> > >>> --------------------------------------------------------------------- > >>> To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org > >>> For additional commands, e-mail: dev-h...@commons.apache.org > >>> > >>> > >> > >> --------------------------------------------------------------------- > >> To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org > >> For additional commands, e-mail: dev-h...@commons.apache.org > >> > > > > --------------------------------------------------------------------- > > To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org > > For additional commands, e-mail: dev-h...@commons.apache.org > > > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org > For additional commands, e-mail: dev-h...@commons.apache.org