Simone Bordet
c66a4d5aa7
Merged branch 'jetty-9.3.x' into 'master'.
2015-12-24 10:47:10 +01:00
Simone Bordet
30694b675b
484876 - Make simpler to customize the FlowControlStrategy.
...
Introduced FlowControlStrategy.Factory along with getters and setters
in relevant classes.
2015-12-24 10:32:36 +01:00
Simone Bordet
802948259e
Merged branch 'jetty-9.3.x' into 'master'.
2015-12-23 11:26:11 +01:00
Simone Bordet
b7ab9e0a22
484818 - Expose interesting HTTP/2 attributes and operations via JMX.
...
Initial work to expose already existing attributes on the server.
2015-12-23 11:08:25 +01:00
Greg Wilkins
ac124094dd
Merge remote-tracking branch 'origin/jetty-9.3.x'
2015-11-26 07:08:06 +11:00
Greg Wilkins
a2c057892e
483039 - HTTP2 Upgrade case sensitivity on Connection header
2015-11-26 07:06:38 +11:00
Greg Wilkins
ff0d1b4c14
481903 Module Descriptions
2015-11-12 10:48:04 +11:00
Simone Bordet
279e56d336
481718 - Improve stream interleaving.
...
Introduced the constraint in the API that Stream.headers() and
Stream.data() calls cannot be invoked if the previous operation did
not complete.
Improved interleaving by appending unfinished DATA frames at the end
of the queue, rather than prepending them.
2015-11-09 21:58:48 +01:00
Joakim Erdfelt
edf686fe0a
Updating to version 9.3.7-SNAPSHOT
2015-11-06 12:13:00 -07:00
Joakim Erdfelt
d737e1c638
Updating to version 9.3.6.v20151106
2015-11-06 11:09:32 -07:00
Greg Wilkins
7843b7348e
480827 Implemented Unix Domain Socket Connector
...
Squashed commit of the following:
commit fbb680ba7cdb73495524ea9e5b0f49caee7f68d8
Merge: ed2550b 64ea0db
Author: Greg Wilkins <gregw@webtide.com>
Date: Fri Nov 6 10:44:00 2015 +1100
Merge branch 'master' into unix-socket
commit ed2550b50f978e1984e19fbda642baf450dbe6a1
Merge: 88d7b35 de137ab
Author: Greg Wilkins <gregw@webtide.com>
Date: Thu Nov 5 18:41:25 2015 +1100
Merge branch 'master' into unix-socket
commit 88d7b35f885de2da7dec836e6e4ae2b522d517f0
Merge: 7d4155f 3e2658a
Author: Greg Wilkins <gregw@webtide.com>
Date: Thu Nov 5 17:38:27 2015 +1100
Merge branch 'master' into unix-socket
commit 7d4155fe4a407d493683b66709bc638879b0b422
Author: Greg Wilkins <gregw@webtide.com>
Date: Thu Nov 5 17:24:48 2015 +1100
Unix socket configuration
commit 2737b19f73ad153c20e1762874558a5d62849f90
Merge: cd0cc2e 92cc44c
Author: Greg Wilkins <gregw@webtide.com>
Date: Wed Nov 4 15:13:40 2015 +1100
Merge branch 'master' into unix-socket
Conflicts:
jetty-server/src/main/java/org/eclipse/jetty/server/SecureRequestCustomizer.java
commit cd0cc2ef36a558d948bf26aff4f9e3519da2f823
Merge: 639753b 303f98e
Author: Greg Wilkins <gregw@webtide.com>
Date: Mon Nov 2 12:21:19 2015 +1100
Merge branch 'master' into unix-socket
commit 639753b5ed37778d7231acfe9d52039aed66351e
Author: Greg Wilkins <gregw@webtide.com>
Date: Fri Oct 30 15:42:58 2015 +1100
local connectors report NOIP address
commit 6d38c4195f145b99f775a06d546960b119094b0c
Author: Greg Wilkins <gregw@webtide.com>
Date: Fri Oct 30 12:11:13 2015 +1100
Gentler ssl close test
commit 40b46b66a738c9187f859d522a0165bb09b113c8
Merge: b7eb082 fa53b11
Author: Greg Wilkins <gregw@webtide.com>
Date: Fri Oct 30 11:09:42 2015 +1100
Merge branch 'master' into unix-socket
commit b7eb082be44864c058b6f01b10364013596d3650
Author: Greg Wilkins <gregw@webtide.com>
Date: Fri Oct 30 08:34:30 2015 +1100
SecureRequestCustomizer for UnixSockets
commit edbb3c080200b4c6aa2836eff6c81bf31a73a8c1
Merge: 90e8cc0 de7ac72
Author: Greg Wilkins <gregw@webtide.com>
Date: Thu Oct 29 19:47:05 2015 +1100
Merge branch 'master' into unix-socket
commit 90e8cc060ff6dc4b249818db38334ffa543f002f
Author: Greg Wilkins <gregw@webtide.com>
Date: Thu Oct 29 19:31:50 2015 +1100
use proxy connection
commit b1772ef5dcac9ddf9bb5ecda1cda6d038ca21755
Merge: e95a932 9fe7332
Author: Greg Wilkins <gregw@webtide.com>
Date: Thu Oct 29 16:46:29 2015 +1100
Merge branch 'master' into unix-socket
commit e95a932bda5a96bf98ada4fb47664790af2aa0a2
Author: Greg Wilkins <gregw@webtide.com>
Date: Wed Oct 28 15:58:25 2015 +1100
fixed config
commit f8963b2ed6b6b4b96f1d9403194c9d50ab1f12fd
Merge: 9c56b53 8b27484
Author: Greg Wilkins <gregw@webtide.com>
Date: Wed Oct 28 15:34:28 2015 +1100
Merge branch 'master' into unix-socket
commit 9c56b53cbec20d98e5cb05cf8d1f668fe84b95e0
Merge: 298a311 39768f8
Author: Greg Wilkins <gregw@webtide.com>
Date: Mon Oct 26 13:04:34 2015 +1100
Merge branch 'master' into unix-socket
commit 298a311af952ad3ef5d1c7635deabf47bddaa1c6
Author: Greg Wilkins <gregw@webtide.com>
Date: Fri Oct 23 15:24:19 2015 +1100
Async accepting
commit 8266753d124c04ec8bca8aa02be1ef3d826d6769
Author: Greg Wilkins <gregw@webtide.com>
Date: Fri Oct 23 14:45:35 2015 +1100
set acceptors
commit 6a56c5b9e19063fcb95cdc1228adf723c0d41362
Author: Greg Wilkins <gregw@webtide.com>
Date: Fri Oct 23 11:44:54 2015 +1100
licence
commit d80e5748e6c4327bae57de2af01983990dd2afe0
Author: Greg Wilkins <gregw@webtide.com>
Date: Fri Oct 23 11:24:14 2015 +1100
unixsocket work in progress adding modules
commit cf0c1153d9966cc7182ba29411527b4341c34da6
Merge: 645b671 c39bfa2
Author: Greg Wilkins <gregw@webtide.com>
Date: Fri Oct 23 08:52:01 2015 +1100
Merge branch 'master' into unix-socket
commit 645b6712d37282c26011a95c8c98e45c249b2e5f
Author: Greg Wilkins <gregw@webtide.com>
Date: Fri Oct 23 08:49:52 2015 +1100
IP headers
commit 67b210b9ea81af68ce3848a114bbbd1b80a8ca52
Author: Greg Wilkins <gregw@webtide.com>
Date: Thu Oct 22 23:48:57 2015 +1100
working with haproxy
commit e4fce9cf5d896a9a29a7c6280fcaa0336dfcc0f2
Author: Greg Wilkins <gregw@webtide.com>
Date: Thu Oct 22 18:25:09 2015 +1100
unixsocket working
commit 6f013788cad44e6641cd89720c5e7f3652cdc257
Author: Greg Wilkins <gregw@webtide.com>
Date: Thu Oct 22 15:39:55 2015 +1100
work in progress
2015-11-06 11:17:46 +11:00
Joakim Erdfelt
dde32787c4
Updating to version 9.3.6-SNAPSHOT
2015-10-12 15:47:37 -07:00
Joakim Erdfelt
29722bd880
Updating to version 9.3.5.v20151012
2015-10-12 15:10:39 -07:00
Simone Bordet
ccbd626cb2
479537 - Server preface sent after client preface reply.
...
Fixed by anticipating the onPreface() callback on server before
processing the client preface's SETTINGS frame.
2015-10-12 18:36:53 +02:00
Simone Bordet
3fd8a2e666
479537 - Server preface sent after client preface reply.
...
Fixed by anticipating the onPreface() callback on server before
processing the client preface's SETTINGS frame.
2015-10-12 17:52:19 +02:00
Joakim Erdfelt
2cce7510e1
Updating to 9.3.5-SNAPSHOT
2015-10-08 17:49:09 -07:00
Joakim Erdfelt
9cf0e34a1d
Updating to version 9.4.0-SNAPSHOT
2015-10-07 15:41:32 -07:00
Joakim Erdfelt
37296bec3c
Updating to version 9.3.4.v20151007
2015-10-07 14:58:38 -07:00
Simone Bordet
83c5105e71
478434 - Priority weights should be between 1 and 256 inclusive.
...
Added required +1 in parsers and -1 in generators to convert from
unsigned byte to weight.
2015-09-26 00:14:45 +02:00
Simone Bordet
0c9eba0485
478275 - Priority information in HEADERS frame is not sent.
...
Now the priority information present in HEADERS frame is correctly
generated and sent as part of the HEADERS frame.
2015-09-25 13:00:26 +02:00
Simone Bordet
30532786cc
Improved logging.
2015-09-14 11:51:19 +02:00
Simone Bordet
f2a3bd8f05
477087 - Enforce that the preface contains a SETTINGS frame.
...
Now the ServerParser enforces that the preface bytes are followed by
a SETTINGS frame.
2015-09-10 19:04:47 +02:00
Jesse McConnell
6409366499
[maven-release-plugin] prepare for next development iteration
2015-08-27 10:11:29 -05:00
Jesse McConnell
3086adc965
[maven-release-plugin] prepare release jetty-9.3.3.v20150827
2015-08-27 10:11:21 -05:00
Jesse McConnell
f8734f23ce
[maven-release-plugin] prepare for next development iteration
2015-08-25 14:10:01 -05:00
Jesse McConnell
e9edf4c24b
[maven-release-plugin] prepare release jetty-9.3.3.v20150825
2015-08-25 14:09:54 -05:00
Joakim Erdfelt
4b3879845d
[maven-release-plugin] prepare for next development iteration
2015-07-30 07:02:10 -07:00
Joakim Erdfelt
6b7e9ac4b0
[maven-release-plugin] prepare release jetty-9.3.2.v20150730
2015-07-30 07:02:02 -07:00
Simone Bordet
25ed10d205
473118 - HTTP/2 server does not retrieve Host header from client.
2015-07-28 12:26:53 +02:00
Greg Wilkins
607239028c
470727 - Thread Starvation of selector wakeups.
...
Changed the CallBack.NonBlocking to a default Callback.isNonBlocking, so that wrapping callbacks can determine if they are NonBlocking or not.
2015-07-22 17:31:54 +10:00
Jesse McConnell
9b790c38ce
[maven-release-plugin] prepare for next development iteration
2015-07-14 11:42:34 -05:00
Jesse McConnell
b35d32f2b8
[maven-release-plugin] prepare release jetty-9.3.1.v20150714
2015-07-14 11:42:28 -05:00
Simone Bordet
c367ea8a85
441020 - Support HEADERS followed by CONTINUATION+.
2015-07-08 18:55:47 +02:00
Greg Wilkins
30f8eb234e
Allow HTTP2C to be configured separately from HTTP2
2015-06-17 15:01:17 +10:00
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
c6ac82f50b
Merge branch 'master' into release-9.3
2015-06-12 09:30:46 -07:00
Joakim Erdfelt
7c737a587b
Removing [version] sections in modules
2015-06-12 09:14:34 -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
Joakim Erdfelt
916efd6aa7
469860 - Add module metadata versioning to support backwards compat
...
+ Adding [version] section to all existing jetty 9.3 distro modules
+ Updating testcases in jetty-start with new [version] sections too
+ Adding extra testcases for versioned modules
2015-06-10 10:59:18 -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
Greg Wilkins
356600716d
Draft 14 9.2.2 protection
2015-05-13 10:26:45 +10:00
Greg Wilkins
5d041ad54f
466645 Allow XmlConfiguration Properties to use Elements or Attributes
2015-05-07 16:24:11 +10:00
Greg Wilkins
8b39e7ffb8
464629 JDK8 Socket customization
...
Added the SocketCustomizationListener class which may be added as a bean to either a Connector or a ConnectionFactory
so that customizations may be made per connector by connection type or even per connection factory.
SSL is unwrapped.
2015-04-30 11:46:10 +10: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
Simone Bordet
2de8eb936d
464708 - Support HttpConfiguration.delayDispatchUntilContent in HTTP/2.
2015-04-24 12:36:53 +02:00
Simone Bordet
3d5164b651
Hiding exception stack printed by a successful test.
2015-04-24 12:26:36 +02:00
Simone Bordet
e868ab0b0d
464706 - HTTP/2 and async I/O: onDataAvailable() not called.
...
Changed HTTPServerConnection to return a Runnable to be run by the
execution strategy also in case of content.
This allows onDataAvailable() to be called at the proper times.
2015-04-15 17:21:17 +02:00
Simone Bordet
55e74c6867
460187 - infinite recursion in sending error.
...
Added test case.
2015-04-14 22:11:59 +02:00
Simone Bordet
599ab9bb1b
460671 - Rationalize property names.
...
Property format is now "jetty.<module|component>.<propertyName>".
Updated all references with new properties.
2015-04-13 16:21:48 +02:00
Greg Wilkins
663ff827ed
Blacklist ciphers only for h2-16 and later
2015-04-09 10:31:45 +10:00
Greg Wilkins
1cb0449be3
Organised imports
2015-03-26 12:32:15 +11: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
Simone Bordet
81f29576e6
Prevented NPE in abort().
2015-03-16 08:17:25 +01:00
Simone Bordet
4f0c63734c
462162 - StackOverflowException when response commit fails.
...
Fixed HttpChannel to avoid to stack overflow in case of unusual
exceptions thrown while committing.
Now it directly calls the transport to try to send a 500.
2015-03-15 12:10:27 +01: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
005870811d
Fixed compilation issue: using Jetty's B64Code instead of JDK8 Base64.
2015-03-12 11:06:30 +01:00
Greg Wilkins
0dd58d2efe
459845 - Support upgrade from http1 to http2
...
Moved the sneaky direct upgrade to its own method and added support to detect a standard upgrade.
The standard upgrade now creates the h2c connection and decodes the settings header, but it does not yet process the
settings nor send a response to the request.
2015-03-12 16:52:17 +11:00
Simone Bordet
560ec6301e
423974 - Optimize flow control.
...
Made the buffering flow control strategy the default.
2015-03-11 16:27:31 +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
Greg Wilkins
5d6bb9f5d0
460210 - ExecutionStragegy producer for SelectManager calls onOpen from produce method
...
Additional refactoring to better handle HttpInput state. Moved the unready and read possible states into the HttpChannelState
2015-02-23 23:06:23 +11:00
Greg Wilkins
b60ea47ef4
Revert "Revert "Fixed AsyncIO double dispatch""
...
This reverts commit 8bd94ec6be
.
This is a revert of the revert to add back in the useful debug, plus some TODO comments describing the problems
2015-02-20 00:18:29 +11:00
Greg Wilkins
8bd94ec6be
Revert "Fixed AsyncIO double dispatch"
...
This reverts commit 968063c1ab
.
2015-02-20 00:03:40 +11:00
Greg Wilkins
968063c1ab
Fixed AsyncIO double dispatch
2015-02-19 18:13:31 +11:00
Simone Bordet
84b8882624
Using TestTracker Rule in test classes.
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
c090f179a7
459845 - Support upgrade from http1 to http2/websocket
...
Added jetty-http2c.xml and http2c.mod
2015-02-13 15:06:24 +11: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
Greg Wilkins
a147cee480
459731 - Update for drafts hpack-11 and http2-17
2015-02-12 14:45:12 +11:00
Joakim Erdfelt
20fa13605c
459655 - Remove SPDY and NPN
...
+ Flattening protonego-* to alpn.mod + alpn-impl/alpn-${java.version}
2015-02-11 10:58:10 -07:00
Greg Wilkins
2162455b72
Removed SPDY and NPN
...
Because jetty 9.3 is targetted for HTTP2, we have removed support for SPDY and NPN.
2015-02-11 14:20:06 +11:00
Simone Bordet
3855024bba
Added tests for HTTP2Client idle timeout.
2015-02-09 16:53:22 +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
02b5732720
First take at implementing the HttpClientTransport for HTTP2.
2015-02-09 09:11:56 +01:00
Greg Wilkins
14cd10b676
experimenting with push API
2015-02-06 13:48:34 +11:00
Greg Wilkins
f6cfe07a69
added direct buffer configuration
2015-02-05 10:02:01 +11: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
Greg Wilkins
3af9b145a3
Deprecated the AbstractConnection dispatchIO mechanism
2015-01-01 16:18:13 +01:00
Greg Wilkins
3f59bc4c14
refactored HttpConnector for EWYK - work in progress
2014-12-23 17:15:27 +01:00
Greg Wilkins
ebaf84b97e
Refactored HttpInput to use poison pills
2014-12-21 10:43:37 +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
Greg Wilkins
dfe9dc3115
Further experimentation with PushBuilder
2014-12-09 12:27:39 +01:00
Greg Wilkins
06b1efc182
Added alternate push API and example
2014-12-05 17:47:25 +01:00
Greg Wilkins
7b41e78f74
Improved HttpChannelOverHTTP2 recycling
2014-12-05 08:36:51 +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
Greg Wilkins
0a144ed3ac
453487 Recycle HttpChannelOverHTTP2
...
This is an initial recyling of the channel. The pool is a concurrent linked list, but it may be better to use an array backed list/stack that can easily enforce a maximum pool size.
The pool is currently on the session listener, when it really should be on the HTTP2ServerConnection, but more refactoring is needed for that.
Also the pool is currently inaccessible to the push mechanism
2014-11-28 12:09:59 +11:00
Greg Wilkins
f853adb43c
fixed debug
2014-11-21 16:01:31 +11:00
Joakim Erdfelt
d4d6cfdfa7
Removing virtual module [ssl-protonego]
...
+ This virtual module, rolled the ssl + protonego + (xml) into
http2 & spdy modules instead.
2014-11-17 14:08:19 -07:00
Greg Wilkins
5b60e0c98d
support h2-15 and h2-14
2014-11-14 10:53:37 +11:00
Greg Wilkins
e3bda4efbe
446564 Refactored RequestLog Mechanism
...
RequestLog can now be set on the HttpChannel and is called during the onCommitted callback.
The RequestLog may be set either on the server or via an updated RequestLogHandler that can
be applied to a specific context.
2014-10-31 13:31:29 +11:00
Greg Wilkins
31e448ffd6
Removed duplication of HttpGenerator$Info vs http.MetaData
...
Use MetaData throughout code base
2014-10-24 15:51:20 +11:00
Greg Wilkins
ec79a6f88e
Improve HTTP header pre-encoding
...
The HttpContent class has been reworked to store HttpField instances, we may be generated on
demand or instances of PreEncodedHttpField.
The encoding of HTTP2 fields has been generalized to handle both indexed and literal fields, selected
by header enum set.
Default servlet and response classes have been cleaned up in how they set response headers.
2014-10-16 12:31:37 +11:00
Simone Bordet
8d2efaf7eb
445167 - Allow configuration of dispatch after select.
...
Introduced parameter "dispatchIO" in the relevant factories so that
they can be configured by users and connections will be created
taking into account this parameter.
For less configurable connection factories, this parameter is
currently hardcoded to either true or false depending on the case.
For example, ALPN and NPN connections have it to false, since they
don't do any blocking operation in onFillable().
2014-09-26 10:13:16 +02:00
Simone Bordet
a8b461fe91
Cosmetics: removed unused imports, cleaned up source code, improved javadocs.
2014-09-26 10:13:16 +02:00
Jesse McConnell
3095a179f9
[maven-release-plugin] prepare for next development iteration
2014-09-24 12:24:31 -05:00
Jesse McConnell
390f3200cc
[maven-release-plugin] prepare release jetty-9.3.0.M0
2014-09-24 12:24:23 -05:00
Greg Wilkins
a573430840
PushCacheFilter handles multiple hosts and ports
2014-09-22 11:10:13 +10:00
Greg Wilkins
fc4bfc8a66
improved debug logging
2014-09-21 15:03:54 +10:00
Simone Bordet
418a493337
More simplifications for the send() implementation.
2014-09-18 11:50:18 +02:00
Greg Wilkins
0acee9851f
minor cleanups of exceptions
2014-09-18 18:23:48 +10:00
Simone Bordet
3e602117b4
Improved send() implementation to be more clear, and covered also a
...
missing case where the callback may have not been notified.
2014-09-17 18:07:22 +02:00
Simone Bordet
17c8f71724
Renamed onConnect() to onAccept() to reflect its server-side role.
2014-08-21 11:54:03 +02:00
Simone Bordet
c07ea68b51
Improved configurability of stream idle timeout.
2014-08-21 11:54:03 +02:00
Simone Bordet
75c1322adc
Rewritten close workflow to make sure that connections are correctly closed.
2014-08-21 11:54:03 +02:00
Simone Bordet
c15480644f
442083 - Client resets stream, pending server data is failed, connection closed.
...
Introduced ResetException, and using it when failing frames of streams
that have been reset already.
HttpTransportOverHTTP2.abort(Throwable) checks for this exception and
does not close the connection.
2014-08-19 18:40:01 +02:00
Simone Bordet
728a7c3442
Made push functionality honor configuration parameter sent via SETTINGS.
2014-08-15 18:34:20 +02:00
Simone Bordet
c7987b154a
Reverted logging of HTTP2 tests from DEBUG to INFO.
2014-08-15 17:29:38 +02:00
Greg Wilkins
1c71040eca
moved config plugin to profile
2014-08-15 19:53:52 +10:00
Greg Wilkins
b47f9ef605
cleaned up OSGi manifest creation
2014-08-15 19:35:49 +10:00
Simone Bordet
48b1f9f3f1
Implemented HTTP/2 push functionality.
...
A PushCacheFilter contains the logic to associate secondary resources
to primary resources.
PushCacheFilter calls a Jetty-specific API on the request dispatcher:
Dispatcher.push(ServletRequest). This is a technology preview of the
push functionality slated for Servlet 4.0.
The push() invocation arrives to the transport and it is converted to
HTTP/2 specific PUSH_PROMISE, along with the mechanism to simulate
the request for the secondary resource.
2014-08-14 23:05:35 +02:00
Greg Wilkins
68a3ca8e31
improved debug logging of settings
2014-08-13 12:00:32 +10:00
Simone Bordet
814c84a212
Introduced configuration properties for ALPN/NPN advertised protocols.
...
No more need to copy protonego-alpn.xml to a jetty.base to specify
which protocols are advertised and in which order.
Instead, simply specify:
alpn.protocols=h2-14,http/1.1
alpn.defaultProtocol=http/1.1
in start.ini (in the example above for http2).
2014-08-12 18:54:33 +02:00
Simone Bordet
e147ce9528
Updated flow control implementation to detect when senders exceed
...
allowed windows.
2014-08-12 16:37:41 +02:00
Simone Bordet
d2fa4dca60
Introduced configuration properties for ALPN/NPN advertised protocols.
...
No more need to copy protonego-alpn.xml to a jetty.base to specify
which protocols are advertised.
Instead, simply specify:
protonego.protocols=h2-14,http/1.1
protonego.defaultProtocol=http/1.1
in start.ini (in the example above for http2).
2014-08-11 23:59:26 +02:00
Simone Bordet
107a4fff20
Fixed handling of INITIAL_WINDOW_SIZE setting.
...
It must update only stream windows, and not the session window.
2014-08-11 18:43:50 +02:00
Greg Wilkins
5da39140df
remove old TODOs
2014-08-08 18:30:56 +10:00
Greg Wilkins
287e86b7aa
decomposed https,http2 and spdy modules to share ServerConnector
2014-08-07 12:58:12 +10:00
Simone Bordet
55dec378fc
Merged branch 'jetty-http2' into 'http2_flow_control'
2014-08-06 15:43:56 +02:00
Simone Bordet
2cd53831c0
Refactored onReadTimeout() to parent class.
2014-08-06 15:39:29 +02:00
Greg Wilkins
17f46665df
preencoded httpfield optimisation
2014-08-06 21:09:26 +10:00
Greg Wilkins
b5971484a5
Basic push mechanism skeleton
2014-08-06 10:50:55 +10:00
Greg Wilkins
6b3c8d06a9
partial 100 continues support in http2
2014-08-05 16:14:53 +10:00
Simone Bordet
17c03385d6
Fixed send() by properly handling all cases.
2014-08-04 12:09:10 +02:00
Simone Bordet
67fd213263
Moved http2.parser.ErrorCode to http2.ErrorCodes.
2014-08-01 15:03:49 +02:00
Simone Bordet
6b6267ed31
Updated implementation to draft-14.
2014-08-01 13:32:56 +02:00
Greg Wilkins
70dafa8eb3
simplified HttpTransport API
2014-07-31 11:53:51 +10:00
Greg Wilkins
5d8780cb4e
Record some TODOs
2014-07-28 15:27:40 +10:00
Greg Wilkins
30123607c6
Major refactor of metadata and HttpURI
...
This refactor strives to remove duplication between the Metadata class and the HttpURI class.
Both classes have been made mutable (as they partially were anyway so best not to pretend).
HttpURI now holds the decomposed strings rather than a single string with indexes. This allows it to be rebuilt after changing just parts of the URI. It is now a lot more similar to the
JVM URI class and we could consider replacing it (after checking peformance).
Next step is to refactor the Request class to prevent it duplicating these fields.
2014-07-24 15:49:52 +10:00
Greg Wilkins
f9ffefbe13
refactored to avoid copying MetaData.Request instances
2014-07-11 16:35:25 +10:00
Simone Bordet
603985dcd2
Implemented gentler shutdown in case of reading -1.
...
This allows big responses to be sent even if the request half closes
the connection.
2014-06-27 17:06:07 +02:00
Simone Bordet
58b1ec9935
Improved logging.
2014-06-27 12:55:38 +02:00
Simone Bordet
86b0d77338
Improved the server transport implementation, and fixed a case where
...
the end stream flag was erroneously sent with more content to send.
2014-06-23 21:23:17 +02:00
Simone Bordet
72e0d800ac
Made ALPN API dependency provided.
2014-06-23 21:23:17 +02:00
Simone Bordet
4211653095
Fixed tests.
2014-06-18 16:09:52 +02:00
Simone Bordet
9d9260e634
Implemented idle timeout functionality for streams.
2014-06-18 13:57:37 +02:00
Simone Bordet
4dca6a71d3
Update Parser constructor to take additional parameters needed by
...
HpackDecoder.
2014-06-18 11:40:11 +02:00
Simone Bordet
9c95e29088
Implemented idle timeout functionality for both client and server.
2014-06-18 11:18:48 +02:00
Greg Wilkins
140e7ed0c5
encoder headers as lowercase
2014-06-18 10:22:23 +02:00