I have started to add the EDR / v6 API to Tomcat trunk and have noticed
the following niggles. Most of them relate to the API, some of them are
specific to the RI.
1. DecodeException / EncodeException
Parameter ordering is inconsistent
(ByteBuffer, String) vs. (String, Object)
2. DefaultClientConfiguration
getExtensions() returns null
setExtensions() has a parameter of preferredExtensions
(should probably be extensions)
3. CloseReason
No accessor for closeCode
No accessor for reasonPhrase
4. Methods in public interfaces do not themselves need to be declared
public. (style issue / choice)
5. Endpoint
Parameter ordering is inconsistent
onClose(Session, CloseReason) vs. onError(Throwable, Session)
Parameter naming is inconsistent s vs. session
6. Generics
API uses raw types in a few places.
My next step is to migrate Tomcat's current WebSocket implementation to
Servlet 3.1 upgrade and this API. I'll provide more feedback as I come
across things.
Mark