Le 4/8/13 5:46 PM, Jeff MAURY a écrit :
> Hello,
>
> as I has been working on the Codec API and MINA3, I have some points I want
> to share with you:
>
> 1) Codec API
> The new Codec API does not define exceptions. It seems that the old one
> does with the notion of recoverable exception, should we define exceptions
> as well or no. If no, then we should document how an exception should be
> generated (RuntimeException, any other) and which are the preferred ones.
We already discussed aout the exceptions, and how they should be
handled, and up to a point, we decided to not create an exceptionCaught
event - like what we have in Mina2 -, but this was not a final decision.

All in all, this is an aspect which is not well covered yet.

> Also, the decoder is expected to return an array of object, wouldn't it
> better to return a Collection ?
Depends. I don't even know if it's a good idea at all to return a list
or an array of decoded objects. What about sending each decoded message
as soon as we have one, keeping the current state for further calls ?
The idea would be to have a non-blocking decoder we can use this way :

while ( ( message = decode( data ) ) != null ) {
  do somethng with the decoded message
}

?

>
> 2) Session objects are not immutable
> I noticed that session objects (assigned to clients and servers) are not
> immutable, but I think changing properties of such objects may lead to
> unexpected behavior. Would the Builder pattern more accurate ?

Not sure. The session might change, as we store attributes into it.Jeff


-- 
Regards,
Cordialement,
Emmanuel Lécharny
www.iktek.com 

Reply via email to