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
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
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
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
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
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
Thomas Becker
f362fb0b48
spdy push implementation
...
Change-Id: Ibca8ce444588785f13c9890370422a2dc4b149ac
2012-04-27 17:44:22 +02:00
Simone Bordet
5ef7c3f2da
Fixed typo: server --> Server.
2012-04-16 15:18:11 +02:00
Jesse McConnell
b963840d40
[maven-release-plugin] prepare for next development iteration
2012-04-13 15:29:14 -05:00
Jesse McConnell
a652ee7396
[maven-release-plugin] prepare release jetty-7.6.3.v20120413
2012-04-13 15:29:05 -05:00
Simone Bordet
85710fb9ea
Reverted release back to 7.6.3-SNAPSHOT.
2012-04-13 16:59:06 +02:00
Jesse McConnell
cdcc0922c3
[maven-release-plugin] prepare for next development iteration
2012-04-12 09:49:52 -05:00
Jesse McConnell
5966c86571
[maven-release-plugin] prepare release jetty-7.6.3.v20120412
2012-04-12 09:49:46 -05:00
Simone Bordet
a389d08c26
376201 - HalfClosed state not handled properly.
...
Addendum to restore previous behavior, where a closed stream was also half closed.
2012-04-12 12:57:04 +02:00
Simone Bordet
972087d068
376201 - HalfClosed state not handled properly.
2012-04-11 12:18:56 +02:00
Simone Bordet
47c1587166
Strengthen the behavior of Stream methods to throw if they are used wrongly,
...
for example sending DATA frames before a REPLY and so on.
2012-04-11 10:39:23 +02:00
Simone Bordet
6ec1594010
Updated path location of the jetty config file for SPDY.
2012-04-05 17:33:48 +02:00
Simone Bordet
eaacd69ede
Moved from SLF4J to Jetty logging.
2012-04-05 17:30:05 +02:00
Simone Bordet
50f545b29a
Vastly improved queueing of FrameBytes, by appending at the end of the queue (instead of iterating over the queue).
...
Also, implemented a better fix for the missing flush() in case of missing handlers: now instead of flushing in the write
completion handler (which could lead to stack overflows), we use the same mechanism employed for FrameBytes,
where we avoid stack overflows by dispatching to a new thread after few recursive invocations.
2012-04-04 19:21:16 +02:00
Simone Bordet
5b668fd6f1
375970 - HttpServletRequest.getRemoteAddr() returns null when HTTP is over SPDY.
2012-04-03 18:23:16 +02:00
Simone Bordet
6c464238b7
Updated dependency on jetty-npn, now that it moved to its own project at github and it's unlocked from jetty releases.
2012-04-03 12:00:38 +02:00
Greg Wilkins
b2b4b2733b
jetty-spdy fixed version of api
2012-04-03 10:12:46 +10:00
Simone Bordet
d231b57144
Made the test more reliable.
2012-04-02 15:39:01 +02:00
Simone Bordet
30adf7cd18
Added missing flush after writing frames.
...
Frames may be written asynchronously but without a Handler, and therefore it was possible that frames
queued up, that one flush() was writing a frame without Handler, and the flush was stopping even if the
queue was non-empty.
Now we call flush() after writing a frame.
2012-04-02 13:22:06 +02:00
Simone Bordet
b44fe2094f
Fixed Maven warning.
2012-04-02 13:16:40 +02:00
Simone Bordet
bd0cc72439
Made the test more reliable.
2012-04-02 13:14:57 +02:00
Simone Bordet
bb429a7f18
375509 - Stalled stream stalls other streams or session control frames.
...
Now using a "death pill" instead of a boolean in order to avoid race conditions where
DataInfos were read from the queue (but the boolean not updated yet), and viceversa.
2012-04-02 10:09:55 +02:00
Simone Bordet
00b31b6577
Added defaults in switches.
2012-04-02 10:07:51 +02:00
Simone Bordet
fff059f7a9
Making sure bytes are masked when doing int operations.
2012-04-02 10:07:25 +02:00
Simone Bordet
b0a3d031aa
375509 - Stalled stream stalls other streams or session control frames.
...
Additional fixes to the implementation of flush(). Also implemented frame priority.
2012-03-30 18:47:47 +02:00
Simone Bordet
2a44fa5c22
Cosmetics.
2012-03-30 18:46:53 +02:00
Simone Bordet
50bc8fa400
375509 - Stalled stream stalls other streams or session control frames.
...
Additional improvements for thread visibility, and clarified code comment.
2012-03-29 12:50:01 +02:00
Simone Bordet
294c588023
375509 - Stalled stream stalls other streams or session control frames.
2012-03-28 11:41:06 +02:00
Simone Bordet
bb66cfc877
375083 - Flow control should take in account window size changes from concurrent SETTINGS
2012-03-22 17:08:11 +01:00
Greg Wilkins
7e3b8bcfd4
374611: do not redispatch if already dispatched when SSL reads content on write
2012-03-19 15:48:39 +11:00
Jesse McConnell
b3ac9235f7
add spdy to the distribution and make npn-boot test dependency pull from internal to build as opposed to out of a local repository
2012-03-16 12:46:47 -05:00
Simone Bordet
44017f18af
374258 - SPDY leaks SSLEngines. Made the test more reliable.
2012-03-14 17:49:57 +01:00
Simone Bordet
ab9bcf26b2
374258 - SPDY leaks SSLEngines
2012-03-14 16:31:29 +01:00
Simone Bordet
2f7f232d12
Merge branch 'master' of ssh://git.eclipse.org/gitroot/jetty/org.eclipse.jetty.project
2012-03-12 15:31:54 +01:00
Simone Bordet
9158115a82
Improved SPDY connector to take into account confidential and integral settings.
2012-03-12 15:31:23 +01:00
Simone Bordet
41874b5fbe
Made the test portable between Jetty7 and Jetty8.
2012-03-12 15:30:26 +01:00
Jesse McConnell
246e3ed756
[maven-release-plugin] prepare for next development iteration
2012-03-08 21:09:46 -06:00
Jesse McConnell
a63b3fdc5e
[maven-release-plugin] prepare release jetty-7.6.2.v20120308
2012-03-08 21:09:37 -06:00
Simone Bordet
6d34d6fdc6
Fixed recursive flush(): a stack overflow was still possible because the invocation count was not correctly decreased.
2012-03-08 15:36:54 +01:00
Simone Bordet
182efa38fa
Merge branch 'master' of ssh://git.eclipse.org/gitroot/jetty/org.eclipse.jetty.project
2012-03-08 09:50:31 +01:00
Jesse McConnell
3134984bb2
disabling spdy tests on release and commenting out jetty maven plugin usage
2012-03-07 15:08:05 -06:00
Jesse McConnell
0284e5e9d5
make sure tests run with profile
2012-03-07 14:16:36 -06:00
Jesse McConnell
313475576b
lock up spdy tests that rely on npn-boot codehaus artifact behind a profile for activation
2012-03-07 14:11:28 -06:00
Simone Bordet
c5c4425a0b
Ignoring data frames after RST_STREAM.
2012-03-07 14:04:27 +01:00
Simone Bordet
8f37221b56
Updated v3 stream status codes.
2012-03-07 13:40:58 +01:00
Simone Bordet
c67357f005
Fixed handling of unknown control frames.
2012-03-07 11:55:20 +01:00
Simone Bordet
156f138780
Introduced onException() callback in SessionFrameListener in case of processing exceptions.
...
Added test for unsupported SYN_STREAM versions.
2012-03-07 11:24:39 +01:00
Jesse McConnell
f12e3c390c
reset versions
2012-03-06 17:06:10 -06:00
Simone Bordet
234b2d8115
Updated NPN groupId and artifactId.
2012-03-05 22:15:51 +01:00
Simone Bordet
c1de3c0727
Updated NPN groupId and artifactId.
2012-03-05 21:51:28 +01:00
Simone Bordet
839a7cb15b
Fixed configuration of Jetty Maven plugin to make it work (needs to be changed because of JETTY-1494).
2012-03-05 21:31:30 +01:00
Simone Bordet
fef252eb6e
Added log statement that SPDY is experimental.
2012-03-05 21:03:20 +01:00