Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[jetty-dev] jetty-9 one connector to rule them all

The jetty-9-oneconnector branch looks about ready to be merged with
the jetty-9 branch.

It contains a simplification of the connectors so that now one
connector (SelectChannelConnector or LocalConnector) can handle all
know protocols: http, https, ws, wss, SPDY
and we can switch between them

Instead of configuring the connector itself with HTTP and SSL stuff,
this has all been moved to a ConnectionFactory that you plug into your
connector.   Currently the ConnectionFactory is
just hard coded to handle http and https, but eventually it will be a
pluggable factory to handle all protocols.   It also has a pluggable
HttpConfiguration instance that is used to configure HttpConnection
instances and customize HTTP requests.

The structure of the server has been simplified by using constructor
injection to final fields for many structural relationships.  So for
example the server thread pool is not not settable - it is only
injectable via the constructor.  Ease of API use has been maintained
by having null constructors where possible (or by passing null) to get
reasonable defaults.

Also the distinction between AsyncEndPoint and EndPoint is gone.  We
just now have EndPoint and it is asynchronous.   Thus AsyncConnection
has been renamed Connection and lots of similar classes have been able
to drop the Async part of there name.  This has reduced the class
count and made the code easier to follow as you no longer need to
consider if you are async or not.

It would be great if you could all check your current jetty-9
development against this branch.  Websocket looks pretty good and is
passing it's tests.  SPDY needs to have some work done on the
connection factory... perhaps driving the real pluggable factory
design.

cheers

PS.  the code is definitely feeling faster... a few test that used to
pass by happenstance have started failing because the server is too
fast.  I've fixed the tests that I've found that look to be time
dependent - but please report any failures in modules <= jetty-server

-- 
Greg Wilkins <gregw@xxxxxxxxxxx>
http://www.webtide.com
Developer advice and support from the Jetty & CometD experts.


Back to the top