directory-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Irving, Dave" <>
Subject RE: [mina] Refactoring MINA IoFilterChain (Was: IoFilters: DIRMINA-121 / 122)
Date Tue, 15 Nov 2005 14:51:26 GMT
> Now, in this model it is very simple to define composite builders
since they just need to call the build method on 
> each one of its components passing the chain. This will allow a very
simple and straight forward composition patters.

This doesn't change.

>> But I also think that the refactoring Dave is working on will make
>> code simpler to understand/maintain and give more flexibilty. Let's
>> what he comes up with and take it from there.

> Simplification is good, and I am all for it. But the current solutions
seem to be requiring exposing more 
> and more things tat users can break instead of less. That looks like
more complexity to me. May be I am mistaken.

I think maybe I've made the change sound like more than it is.

All my first patch will do is make it easy for the inner workings of
mina to chain sub-chains together. 
Basically, Im implementing your "EncapsulatedChainFilter" (in a slightly
different way to how you described). 
As part of this, the AbstractIoHandler subclasses which provide
transport specific behaviour will be refactored in to normal filters
(this is an implementation detail of the change).

From the API perspective, nothing more will be exposed to the user (at
all) except for the following:

	- Ability to populate an acceptor specific chain with a builder
	- Alibity to populate a port specific chain with a builder
	- Ability to populate a session specific chain with a builder

The filter chain used for a given session will be the sequence of
acceptor chain, port chain, session chain.

Nothing else will change from the users perspective. If my
implementation makes it any easier for the user to break things, then
I've screwed up and any patch should be thrown in the bin :o)


This e-mail and any attachment is for authorised use by the intended recipient(s) only. It
may contain proprietary material, confidential information and/or be subject to legal privilege.
It should not be copied, disclosed to, retained or used by, any other party. If you are not
an intended recipient then please promptly delete this e-mail and any attachment and all copies
and inform the sender. Thank you.

View raw message