+1 for idea #1

On Nov 28, 2007 4:05 PM, Trustin Lee <[EMAIL PROTECTED]> wrote:
> Hi community,
>
> Currently, MINA 2.0.0-M1-SNAPSHOT doesn't allow a user to call
> setLocalAddresses() after IoAcceptor.bind() is called.  To change the
> local addresses, a user have to unbind, change the localAddresses
> property and bind again, which is not very convenient and causes
> interruption of service.
>
> MINA 1.x doesn't have this problem because user always specify the
> local address and the IoHandler for each bind() call and the local
> address for each unbind() (or unbindAll()).
>
> However, considering an IoService is a logical group of managed
> sessions with the same business logic, specifying IoHandler for every
> bind() call doesn't make sense.  That's why we removed handler
> parameter from bind() method.  One mistake I've made at the moment of
> the change is that I also removed the local address parameter from the
> bind() method.  I'd like to know what change do you prefer.  Let me
> list my idea:
>
> 1) Change localAddress(es) to represent the list of the currently
> bound addresses.  Add defaultLocalAddress(es) property, which is used
> when bind() method is called with no parameter.  Also add
> bind(localAddress), unbind(localAddress) and unbindAll() methods.
>
> 2) Retain the current trunk API and let setLocalAddresses() method
> decide what address to bind and what address to unbind.
>
> I think the first solution is better because A) it resembles the 1.x
> API, 2) is easy to understand and 3) IoConnector already has the
> similar API design:
> * 
> http://mina.apache.org/report/trunk/apidocs/org/apache/mina/common/IoConnector.html
> (defaultRemoteAddress)
>
> What do you think about the suggested changes?  Any feed back or whole
> new idea is appreciated.  If there's no objection within next 72
> hours, I will execute the idea #1.
>
> Thank in advance,
> Trustin
> --
> what we call human nature is actually human habit
> --
> http://gleamynode.net/
> --
> PGP Key ID: 0x0255ECA6
>

Reply via email to