Joakim Erdfelt
cf6c4a914e
Updating version to 9.3.1-SNAPSHOT
2015-06-15 10:25:49 -07:00
Joakim Erdfelt
1a9da9f9e4
Updating versions to 9.3.0.v20150612
2015-06-12 09:34:24 -07:00
Joakim Erdfelt
496b4dfc83
[maven-release-plugin] prepare for next development iteration
2015-06-11 15:08:36 -07:00
Joakim Erdfelt
f53c5d8fac
[maven-release-plugin] prepare release jetty-9.3.0.v20150611
2015-06-11 15:08:29 -07:00
Simone Bordet
a6ff4da9b1
Made the cipher comparator a constant field.
2015-05-26 18:03:55 +02:00
Greg Wilkins
bd27e7d2d4
467730 - HTTP2 requires enabled ciphers to be sorted by blacklist
2015-05-21 01:41:12 +10:00
Simone Bordet
64033e0958
Improved toString().
2015-05-04 12:33:10 +02:00
Simone Bordet
a6cc4ff2f5
465857 - Support HTTP/2 clear-text server-side upgrade.
...
Fixed and test both types of upgrade, from HTTP/1.1 via its
upgrade mechanism, and direct HTTP/2.
2015-04-29 22:27:50 +02:00
Joakim Erdfelt
9e6c8eade1
464727 - Update Javadoc for Java 8 DocLint
2015-04-22 12:43:22 -07:00
Simone Bordet
ffadcd6757
444721 - PushCacheFilter cleanup/improvements.
...
Ported the "maxAssociations" functionality from SPDY's ReferrerPushStrategy.
Added JMX support.
Removed __renew__ special path in favour of a JMX method.
Added clearPushCache() JMX method.
Made push reentrant by eliminating the check for "org.eclipse.jetty.pushed".
2015-04-10 15:22:49 +02:00
Simone Bordet
999177ccc2
Fixed race sending SETTINGS with INITIAL_WINDOW_SIZE.
...
Before, the sender was updating the window size after the SETTINGS
frame was written.
This was leading to a race where the receiver saw the updated window
size and sent DATA frames; these were received by the original sender
before it had the chance to update its local window size, causing an
error.
Now, the update of the window size happen just before writing the
SETTINGS frame to avoid this race.
2015-03-25 19:24:28 +01:00
Simone Bordet
e255bda694
459845 - Support upgrade from http1 to http2.
...
Simplified upgrade mechanism, and made it available through clearer
internal APIs.
2015-03-20 15:02:40 +01:00
Simone Bordet
2a21f8cb2f
Renamed ISession.control() to ISession.frames().
2015-03-20 15:02:07 +01:00
Greg Wilkins
caacebc223
459845 - Support upgrade from http1 to http2
...
functioning implementation. Not exactly the most elegant solution, but works with nghttp2 -u
2015-03-19 12:02:54 +11:00
Greg Wilkins
3f795da26c
459845 - Support upgrade from http1 to http2
...
Generalised Upgrade Connection Factories
2015-03-13 13:59:29 +11:00
Simone Bordet
feed8ea158
Small refactoring of HTTP/2 upgrade code.
2015-03-12 19:08:26 +01:00
Greg Wilkins
b7d719be5f
459845 - Support upgrade from http1 to http2
...
Parse setting frame.
2015-03-13 00:54:33 +11:00
Simone Bordet
a7cfc3dc2d
Renamed methods in FlowControlStrategy.
2015-03-11 20:38:40 +01:00
Simone Bordet
1dbf2be343
423974 - Optimize flow control.
...
Don't send the window update if the stream is closed.
2015-03-11 17:11:16 +01:00
Simone Bordet
48887377c9
459081 - http2 push failures.
...
Introduced ExecutionStrategy.dispatch() to handle the case where
resources that are being pushed block.
2015-03-11 00:12:57 +01:00
Simone Bordet
73821e7ac6
461052 - Local streams created after INITIAL_WINDOW_SIZE setting have wrong send window.
...
Fixed by tracking both send and recv initial stream windows.
This is needed because both client and server may send an
INITIAL_WINDOW_SIZE setting, and they must be treated
separately.
2015-02-27 19:21:35 +01:00
Joakim Erdfelt
aac427ab8c
Fixing compile error
2015-02-23 18:16:30 -07:00
Simone Bordet
59ae845d30
Guarding against null streams when resetting.
...
This is possible when receiving a frame for a non-existent stream:
it is replied with a reset, but the stream object is never created.
2015-02-18 23:00:37 +01:00
Simone Bordet
d4809e9b79
Improved handling of the stream close state.
...
Now the stream close state is updated when the frame has been
successfully written, and when it is received.
The stream is closed in case of failures.
Just after the stream close state update, if the stream is closed
then it is removed from the session.
2015-02-18 23:00:37 +01:00
Greg Wilkins
e18573f4a3
460211 Fixed Idle race in ExecuteProduceRun
...
Reimplemented ExecuteProduceRun with a spin lock
2015-02-18 21:47:22 +11:00
Simone Bordet
ff7e0e626a
Implemented notification of session failure events.
2015-02-13 14:18:08 +01:00
Simone Bordet
9677988960
Removed TODO.
2015-02-13 13:11:59 +01:00
Greg Wilkins
4db654ad32
Organised http2 imports
2015-02-13 13:43:32 +11:00
Greg Wilkins
98e3a28794
459845 - Support upgrade from http1 to http2/websocket
...
Added test harness for h2c upgrade.
2015-02-13 13:41:14 +11:00
Greg Wilkins
c3332e7d2e
459845 - Support upgrade from http1 to http2/websocket
...
Added support for unofficial "upgrade" from http/1 to h2c
2015-02-13 12:16:03 +11:00
Simone Bordet
0677735550
Simplified HTTP/2 parser and its listener.
...
It is not possible to perform asynchronous processing of the content
of DATA frames, because otherwise the parser has to stop, stalling
all other streams.
Parser.Listener methods were returning boolean in a vestigial attempt
to handle asynchronous data processing, and have now been converted to
return void.
2015-02-12 19:43:52 +01:00
Jan Bartel
b45389ad87
Fix http2 osgi manifests and tests
2015-02-12 10:32:16 +11:00
Simone Bordet
360b72a29e
HTTP/2 API Javadocs.
2015-02-11 17:44:05 +01:00
Simone Bordet
be860741d5
459655 - Remove SPDY and NPN.
...
Cleanup of javadocs, comments, XML and other text files.
2015-02-11 16:18:07 +01:00
Simone Bordet
44d262c65a
Renamed GatheringCallback to CountingCallback.
2015-02-10 13:16:41 +01:00
Simone Bordet
d0f0aa7c9f
Fixed removal of streams upon sending the response HEADERS frame.
2015-02-09 13:26:01 +01:00
Simone Bordet
7066f65e8c
423974 - Optimize flow control.
...
Implemented a buffering FlowControlStrategy that reduces the amount
of WindowUpdate exchanges.
2015-02-09 13:25:32 +01:00
Simone Bordet
fa72356d1d
Fixed failure of stalled frames.
2015-02-09 09:11:56 +01:00
Simone Bordet
02b5732720
First take at implementing the HttpClientTransport for HTTP2.
2015-02-09 09:11:56 +01:00
Greg Wilkins
e1cc5fb487
Merge remote-tracking branch 'origin/master' into jetty-9.3-ewyk
...
Conflicts:
jetty-server/src/main/java/org/eclipse/jetty/server/HttpChannel.java
jetty-server/src/main/java/org/eclipse/jetty/server/QueuedHttpInput.java
jetty-util/src/main/java/org/eclipse/jetty/util/thread/NonBlockingThread.java
2015-01-08 15:21:01 +01:00
Joakim Erdfelt
a3201a3c81
Happy New Year 2015
2015-01-07 17:06:59 -07:00
Simone Bordet
5bed6323c1
Reworked buffer releasing to ensure that it is always executed before
...
fillInterested() is called.
This is needed to avoid race conditions where fillInterested()
triggers a new thread entering onFillable() and acquiring a new buffer
while the previous thread is releasing the previous buffer.
2015-01-02 18:43:07 +01:00
Greg Wilkins
beacb948b1
Allow configuration of ExecutionStrategy
...
eg -Dorg.eclipse.jetty.io.ManagedSelector.ExecutionStrategy=org.eclipse.jetty.util.thread.ExecutionStrategy$ExecuteProduceRun
2015-01-01 17:04:00 +01:00
Greg Wilkins
3af9b145a3
Deprecated the AbstractConnection dispatchIO mechanism
2015-01-01 16:18:13 +01:00
Simone Bordet
448f150ac4
Cleaned up ExecutionStrategy by adding javadocs, removing methods not
...
used and renaming classes and methods to better names.
2014-12-19 11:25:09 +01:00
Simone Bordet
4ccd5207b5
Switched ExecutionStrategy to EWYK.
2014-12-18 17:14:34 +01:00
Simone Bordet
e35c51eb7d
Implemented dispatch to the application using an ExecutionStrategy.
...
Now instead of having the channel to dispatch when it detects that it
has to call the application (upon receiving a HEADERS frame, or upon
a push "fake" request), now the whole mechanism is controlled by an
ExecutionStrategy.
2014-12-18 17:14:34 +01:00
Simone Bordet
7f98b64658
Clearing the buffer in case of parser errors that lead to a
...
connection failure.
2014-12-18 17:14:34 +01:00
Greg Wilkins
2536c1cc3f
Handle HTTP2-16 black listed ciphers
2014-12-04 14:17:25 +01:00
Greg Wilkins
c3472f01c4
updated hpack for draft 10 name changes
2014-12-04 10:27:14 +01:00