Commit Graph

214 Commits

Author SHA1 Message Date
Thomas Becker 0fcb42e7bf spdy: add logging when ProxyEngineSelector resets a stream 2012-07-13 16:46:24 +02:00
Jesse McConnell 12ecc10c6a [maven-release-plugin] prepare for next development iteration 2012-07-13 09:35:08 -05:00
Jesse McConnell bf40110fb8 [maven-release-plugin] prepare release jetty-7.6.5.v20120713 2012-07-13 09:34:52 -05:00
Jesse McConnell 5222459aa7 Merge branch 'master' into jetty-8 2012-07-13 09:05:05 -05:00
Thomas Becker 198f713f7d spdy: spdy-proxy refactoring to allow multiple ProxyEngine implementations for different protocols. Header name fix to lowercase header names before creating the bytes to sent over the wire. 2012-07-13 11:53:56 +02:00
Simone Bordet 1843324bab Added support for X-Forwarded-For header. 2012-07-12 17:45:00 +02:00
Simone Bordet a7dab4bd2d Fixed spin loop caused by interaction of HttpGenerator._bypass and HttpGenerator.isBufferFull().
In HttpOutput.write(), an infinite spin loop was triggered when a previous write() set _bypass to true,
but _bypass was not reset after the write was complete. An additional write would have caused
a call to isBufferFull(), implemented in terms of _bypass, which would have returned true erroneously,
and this would have caused the infinite spin loop.
Now we properly reset _bypass when we fully write a data frame, so that isBufferFull() can properly
return false and allow for further writes.
2012-07-12 17:16:57 +02:00
Simone Bordet 0ad04eca6e Fixed test that was broken by changes to the pushed URI header in spdy/2. 2012-07-12 15:13:47 +02:00
Jesse McConnell 81d72052c8 merged master to jetty-8 2012-07-11 14:04:49 -05:00
Jesse McConnell aa941f5711 quick pass through to clean up missing or incorrect license blocks 2012-07-11 12:29:46 -05:00
Jesse McConnell 0fa17c13b1 Merge branch 'master' into jetty-8 2012-07-11 10:10:00 -05:00
Simone Bordet 6348a96071 Added test to show how to connect to an external server with the SPDY client. 2012-07-10 16:16:41 +02:00
Simone Bordet 9253bb791e Added capability of customizing request and response headers by overriding a method, and added Via header also on responses. 2012-07-09 16:00:44 +02:00
Thomas Becker e3b6344641 spdy: proxy fix to keep scheme on forwarded requests 2012-07-09 14:09:47 +02:00
Simone Bordet 4738584ccd Improved proxy logging. 2012-07-09 13:21:32 +02:00
Thomas Becker 77c673c89b spdy: push referrer call period starts when first resource is added. Before it started when main resource was created 2012-07-06 17:33:52 +02:00
Simone Bordet 652fcc3552 Merge "spdy: move x-spdy-push header to internal request. fix StandardStream.toString()" 2012-07-06 09:54:57 -04:00
Simone Bordet dd7eb898c9 Merge "spdy: different push strategies per connection factory" 2012-07-06 09:53:28 -04:00
Thomas Becker ac7c3c8f0d spdy: move x-spdy-push header to internal request. fix StandardStream.toString() 2012-07-06 15:46:31 +02:00
Thomas Becker e7a52df43d spdy: different push strategies per connection factory 2012-07-06 15:23:06 +02:00
Simone Bordet f4ebc89ee3 Merge "spdy: add StandardSession and StandardStream toString() improvements" 2012-07-06 06:52:27 -04:00
Thomas Becker 17b585d2ce spdy: isIfModifiedSinceHeaderPresent should have been removed, but slipped through a conflict merge. remove that method. 2012-07-05 17:47:50 +02:00
Thomas Becker 1ff0b18b94 spdy: ReferrerPushStrategy configurable by SPDY version and add referrer push period 2012-07-04 19:28:08 +02:00
Simone Bordet 5e619ce525 Merge "spdy: push strategy move if-modified-since check from connection to ReferrerPushStrategy" 2012-07-04 11:38:19 -04:00
Thomas Becker 091fd73c3e spdy: add StandardSession and StandardStream toString() improvements 2012-07-04 15:43:09 +02:00
Greg Wilkins a519ecc1fb improved SPDY dump 2012-07-03 15:31:56 +02:00
Thomas Becker f09eaee521 spdy: push strategy move if-modified-since check from connection to ReferrerPushStrategy 2012-06-18 18:17:25 +02:00
Jesse McConnell 571b1da632 Merge branch 'master' into jetty-8 2012-06-14 15:46:59 -05:00
Simone Bordet 3c0e13a7fe Fixed test after changes to the semantic of last-good-stream-id. 2012-06-12 14:07:18 +02:00
Simone Bordet 0ac2b99f6a Final pass at the implementation of a reverse SPDY proxy. 2012-06-12 12:56:58 +02:00
Simone Bordet 8f356ea922 Second pass at the implementation of a reverse SPDY proxy. 2012-06-12 00:38:46 +02:00
Simone Bordet 479c957a68 First pass at the implementation of a reverse SPDY proxy. 2012-06-11 18:53:37 +02:00
Simone Bordet 457fdc74e5 Modified StandardStream to not depend on SynStreamFrame. 2012-06-11 14:32:14 +02:00
Simone Bordet aeb3a23482 Making sure that cancelling the attempt to connect closes the channel. 2012-06-11 14:25:51 +02:00
Simone Bordet af836eb4b7 As per the Future contract, throw CancellationException if the Promise has been cancelled. 2012-06-11 14:23:53 +02:00
Simone Bordet 836c647fb8 Added utility method valuesAsString(). 2012-06-11 14:22:46 +02:00
Simone Bordet 4bb0a30839 Overridden allocate() to support direct buffers. 2012-06-11 14:21:03 +02:00
Simone Bordet b4e45d1bb7 Added method to allow to clear the async connection factories, for better configurability. 2012-06-08 12:29:39 +02:00
Simone Bordet 8894cdc31d Reviewed handling of the last stream id.
Now the last stream id is updated when a SYN is received, as the spec states.
2012-06-08 10:13:18 +02:00
Simone Bordet 7f39b8b7a4 Refactored atomic updates of max and min into utility class Atomics. 2012-06-08 09:59:36 +02:00
Jan Bartel a7b1dd5e93 Merge remote-tracking branch 'origin/master' into jetty-8 2012-06-07 00:59:37 +02:00
Simone Bordet cd05259be4 Updated ReferrerPushStrategy to limit the number of associated resources. 2012-06-05 13:30:15 +02:00
Simone Bordet c7d09af3f2 Improved ReferrerPushStrategy to check also for content-type of pushed resources. 2012-06-05 12:33:10 +02:00
Simone Bordet f5d63e8626 Moved version() method to base test class, and using HTTPSPDYHeader instead of hardcoded strings. 2012-06-05 12:32:07 +02:00
Simone Bordet b9a3c98055 Benchmark for PushStrategy: HTTP vs SPDY no push vs SPDY push. 2012-06-04 19:28:45 +02:00
Simone Bordet 3b0076fc6a Fixed completeHeader() to just not attempt to detect the close state.
This is needed because the buffer to write may be big, and while it's
the only buffer, it may take multiple writes to be written.
If it takes more than one write, we risk to mark the first frame as closed
and subsequent frames cannot be written.

Fixed flush() to loop until the whole content has been flushed.
2012-06-04 19:28:45 +02:00
Simone Bordet e328cb8141 Improved push of resources by executing them in a different thread.\nAdded a HTTP header that signal to the application that the HTTP request is actually a push. 2012-06-04 19:28:45 +02:00
Simone Bordet 51f307ca7c Made test more reliable. 2012-06-04 19:28:45 +02:00
Simone Bordet 20c0f23cc7 Improved exception logging. 2012-06-04 19:28:45 +02:00
Simone Bordet f0c2fd2474 Improved error reporting in case of a write failure. 2012-06-04 19:28:45 +02:00
Jan Bartel 9149a69446 Merge remote-tracking branch 'origin/master' into jetty-8 2012-06-04 13:49:25 +02:00
Simone Bordet c9251e5c73 Fixed bug in AbstractFrameBytes.compareTo(), avoiding NPE when comparing
FrameBytes that have a related stream, and those that don't (such as PING).
2012-06-03 22:53:06 +02:00
Simone Bordet a2a9fd59a2 Cosmetics. 2012-06-03 18:30:06 +02:00
Simone Bordet 2cb703b0b5 Fixed bug in case of large files being downloaded, and refactored writing of data frames. 2012-06-03 18:30:06 +02:00
Simone Bordet b0156b69bc Moved factory method for FlowControlStrategy to SPDYServerConnector for easier overriding. 2012-06-03 18:30:06 +02:00
Simone Bordet 4b29f18703 Removed constructors that take the "compressed" parameter (compression has been removed from the specification).
Added constructor that takes byte[], offset and length.
2012-06-03 18:30:05 +02:00
Simone Bordet d84889b2e9 Added configuration to enable NPN debugging, but commented out. 2012-06-01 22:13:26 +02:00
Simone Bordet eb47f93d86 Corrected order of SPDY protocols, so that most recent ones are chosen over older ones
(e.g. spdy/3 over spdy/2 over http/1.1).
2012-06-01 22:13:26 +02:00
Simone Bordet 6ff1a5fddc Implemented SPDY/3 HTTP layering. 2012-06-01 19:31:14 +02:00
Simone Bordet f872676a65 Added handling of the "slot" field in SYN_STREAM frames.
Modified parser and generator, and the session implementation
for now ignores this field.
2012-06-01 19:31:14 +02:00
Simone Bordet 70e4a103ec Implemented correctly SPDY v2 parsing and generation of the HEADERS frame. 2012-06-01 19:31:14 +02:00
Simone Bordet d12c2fec21 Renamed enum constant. 2012-06-01 19:31:14 +02:00
Simone Bordet 85e2503eec Added handling of the "slot" field in SYN_STREAM frames.
Modified parser and generator, and the session implementation
for now ignores this field.
2012-06-01 19:31:14 +02:00
Simone Bordet fb34f9b824 Added handling of Credential frames (for now just issuing a warning). 2012-06-01 19:31:14 +02:00
Simone Bordet 91105910ca Added handling of Certificate encoding and decoding. 2012-06-01 19:31:14 +02:00
Simone Bordet 395d49ba71 Basic implementation of CREDENTIAL frame, parser and generator. 2012-06-01 19:31:14 +02:00
Simone Bordet 24f4631a06 Refactored flow control, encapsulating it into a strategy.
The reason for this change is that the server will soon be serving both SPDY/2 and SPDY/3 browsers,
so the flow control strategy must be dynamically chosen depending on the SPDY version.
2012-06-01 10:46:18 +02:00
Simone Bordet 58dd9c3bf1 Enabled flow control configuration in SPDYClient. 2012-05-26 22:49:43 +02:00
Simone Bordet 0ea58ab1d5 Updated default maxIdleTime for SPDYClient to -1, so that the default from the SelectorManager is used. 2012-05-26 22:49:17 +02:00
Simone Bordet f41e43bce3 Updated to NPN API version 1.1.0, calling NextProtoNego.remove(), instead of using AtomicReferences to clear the SSLEngine references. 2012-05-26 22:44:57 +02:00
Simone Bordet 146f5edfde Updated to NPN API version 1.1.0, calling NextProtoNego.remove(), instead of using AtomicReferences to clear the SSLEngine references. 2012-05-26 22:31:02 +02:00
Thomas Becker b92e7b01a9 spdy: improve errorHandling, additional tests for sending big data with/without flow control, test that no more frames are sent on reset pushstreams, test for failing controller.writer(), small improvements
Change-Id: Ide714e01b0ed3753b3e37103de2665158f41f35d
2012-05-25 20:21:10 +02:00
Jesse McConnell 30e8e40ef2 [maven-release-plugin] prepare for next development iteration 2012-05-24 15:41:45 -05:00
Jesse McConnell 667cf9a643 [maven-release-plugin] prepare release jetty-8.1.4.v20120524 2012-05-24 15:41:38 -05:00
Jesse McConnell e45a89694a [maven-release-plugin] prepare for next development iteration 2012-05-24 09:30:58 -05:00
Jesse McConnell 36fc6fe890 [maven-release-plugin] prepare release jetty-8.1.4.v20120524 2012-05-24 09:30:52 -05:00
Jesse McConnell c7a9adaa32 reset for release 2012-05-24 08:33:44 -05:00
Jesse McConnell ea176f0586 [maven-release-plugin] prepare for next development iteration 2012-05-22 15:14:05 -05:00
Jesse McConnell 3fdda881d8 [maven-release-plugin] prepare release jetty-8.1.4.v20120522 2012-05-22 15:13:56 -05:00
Jesse McConnell 300a37319a [maven-release-plugin] prepare for next development iteration 2012-05-22 14:34:10 -05:00
Jesse McConnell 9ccd059375 [maven-release-plugin] prepare release jetty-7.6.4.v20120522 2012-05-22 14:33:59 -05:00
Jesse McConnell ce5e5cbad2 Merge branch 'master' into jetty-8 2012-05-22 14:02:58 -05:00
Thomas Becker b371315606 make spdy tests more reliable: fix race condition with goAway frame
Change-Id: I3bbdb8eee4a12f082f83730209bd0f8cf2fe7d03
2012-05-22 18:16:12 +02:00
Jan Bartel 34954bc617 Merge remote-tracking branch 'origin/master' into jetty-8 2012-05-22 17:28:40 +02:00
Simone Bordet ced2d9efd3 Made test more reliable. 2012-05-22 15:55:42 +02:00
Thomas Becker fdf6dac1d3 spdy: no push if the main request contains if-modified-since header
Change-Id: I9462d8d3ff68dd9cf74ad5a45a093e598c6d704b
2012-05-14 18:50:49 +02:00
Thomas Becker 5687aa8beb SPDY: move probably blocking/long running flush out of synchronized block in StandardSession.syn(..)
Change-Id: I29b748495adb1fa48fab8dc130a8067ff3be6bc5
2012-05-10 12:29:58 +02:00
Simone Bordet 72befc31b0 Adding the scheme header to the tests. 2012-05-07 22:45:21 +02:00
Simone Bordet 858c143b4f Fixed tests: pushed streams cannot reply. 2012-05-07 22:45:21 +02:00
Simone Bordet 14f8091252 Completed implementation of the referrer SPDY push strategy. 2012-05-07 22:45:21 +02:00
Simone Bordet 362e011851 Fixed SPDY push implementation, by correctly supporting pushed streams also on the client side. 2012-05-07 22:45:21 +02:00
Simone Bordet f607d34fdc Fixed Javadocs. 2012-05-07 22:45:21 +02:00
Simone Bordet 75414a05c0 Guarded against NPE in case of null Header. 2012-05-07 22:45:21 +02:00
Simone Bordet f75a9d83f1 Updates to the SPDY push implementation. 2012-05-07 22:45:21 +02:00
Simone Bordet 3ce07230d5 Initial draft for SPDY push. 2012-05-07 22:45:20 +02:00
Jan Bartel 2131a40559 Merge remote-tracking branch 'origin/master' into jetty-8 2012-05-07 13:54:30 +02:00
Thomas Becker f362fb0b48 spdy push implementation
Change-Id: Ibca8ce444588785f13c9890370422a2dc4b149ac
2012-04-27 17:44:22 +02:00
Simone Bordet 45b2c3b1b5 Merged from master after fixing typo in jetty-spdy.xml. 2012-04-16 15:55:49 +02:00
Simone Bordet 5ef7c3f2da Fixed typo: server --> Server. 2012-04-16 15:18:11 +02:00
Jesse McConnell b64909900c [maven-release-plugin] prepare for next development iteration 2012-04-13 15:31:47 -05:00