Commit Graph

1645 Commits

Author SHA1 Message Date
Simone Bordet aaf0d8889d Merged branch 'jetty-9.2.x' into 'master'. 2015-06-11 15:44:06 +02:00
Simone Bordet 2c26e82fea 469936 - Remove usages of SpinLock.
Causes high CPU usage when contended, and the JVM can do better with
its own spin lock and biased locking.
2015-06-11 15:36:20 +02: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 b18adb525f 469633 - Make SpinLock behavior pluggable.
Renamed SpinLock to Locker, uses ReentrantLock by default, but can be
turned into a spin lock by setting the system property
org.eclipse.jetty.util.thread.Locker.spin=true.
2015-06-08 17:15:54 +02:00
Jesse McConnell bfe6c2638e [maven-release-plugin] prepare for next development iteration 2015-05-29 09:06:42 -05:00
Jesse McConnell 71e0f4d8ce [maven-release-plugin] prepare release jetty-9.2.11.v20150529 2015-05-29 09:06:36 -05:00
Jesse McConnell a7087cbfbf [maven-release-plugin] prepare for next development iteration 2015-05-28 10:06:51 -05:00
Jesse McConnell 913c63e597 [maven-release-plugin] prepare release jetty-9.2.11.v20150528 2015-05-28 10:03:44 -05:00
Simone Bordet 061a8e253e Merged remote branch 'jetty-9.2.x' into 'master'. 2015-05-28 15:39:42 +02:00
Simone Bordet 0ad471449b 468421 - HttpClient#send fails with IllegalArgumentException on non-lowercase schemes.
RFC 7230 specifies that both scheme and host must be case insensitive.
2015-05-28 15:38:28 +02:00
Simone Bordet c7cff6ec7e 467603 - Response 401 from server hangs client. 2015-05-19 19:05:06 +02:00
Simone Bordet a2566bedd8 Merged branch 'jetty-9.2.x' into 'master'. 2015-04-23 09:09:48 +02:00
Simone Bordet 1270d291cc 465181 - HttpParser parse full end chunk.
Continue parsing until the buffer is empty, or the parser returns
true to indicate that content is being handled asynchronously.
2015-04-23 08:58:54 +02:00
Joakim Erdfelt c9d8d07a63 464727 - Update Javadoc for Java 8 DocLint 2015-04-22 14:21:53 -07:00
Joakim Erdfelt 09b5f680b7 464727 - Update Javadoc for Java 8 DocLint
Eliminate empty tag warnings
+ Changed <p/> to <p>
+ Changed <br/> to <br>
2015-04-15 14:38:35 -07:00
Simone Bordet 48dd4d8b56 440106 - Improve ProtocolHandler APIs.
Introduced ProtocolHandlers, the container for ProtocolHandler
instances, which now have also a name.
2015-03-31 19:17:02 +02:00
Simone Bordet 6263972d1e Merged branch 'jetty-9.2.x' into 'master'. 2015-03-31 13:58:41 +02:00
Simone Bordet 509d13531c 463579 - Add support for 308 status code. 2015-03-31 13:57:12 +02:00
Simone Bordet cd4ab9f369 Merged branch 'jetty-9.2.x' into 'master'. 2015-03-26 11:54:40 +01:00
Simone Bordet 07d29fb1b3 461499 - ConnectionPool may leak connections.
Avoid that the complete event is notified before or concurrently with
the response success event.
2015-03-26 11:33:17 +01:00
Greg Wilkins 1cb0449be3 Organised imports 2015-03-26 12:32:15 +11:00
Jesse McConnell da4f95f3d3 [maven-release-plugin] prepare for next development iteration 2015-03-25 09:08:27 -05:00
Jesse McConnell e92fd438fd [maven-release-plugin] prepare release jetty-9.2.11.M0 2015-03-25 09:08:21 -05:00
Simone Bordet d20c7707b7 Merged branch 'jetty-9.2.x' into 'master'. 2015-03-24 20:56:26 +01:00
Simone Bordet 1dc66b72dd 461499 - ConnectionPool may leak connections.
Made associate(), disassociate() and abort() atomic operations using
the HttpExchange state to coordinate atomicity.
In this way, it's not possible to associate a HttpChannel and a
HttpExchange if the latter has been aborted.
2015-03-24 16:19:45 +01:00
Simone Bordet 161317a5ef Merged branch 'jetty-9.2.x' into 'master'. 2015-03-23 22:32:40 +01:00
Simone Bordet 79e74c64e1 Introduced a generic Sweeper.
The Sweeper class periodically sweeps resources added to it.
Currently used to check whether the HttpClient code does not leak
connections.
2015-03-20 00:42:24 +01:00
Simone Bordet 6fa30da0eb Fixed code that compared enum values. 2015-03-20 00:25:42 +01:00
Greg Wilkins 3f795da26c 459845 - Support upgrade from http1 to http2
Generalised Upgrade Connection Factories
2015-03-13 13:59:29 +11: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
Greg Wilkins 1de53a888d Merge remote-tracking branch 'origin/jetty-9.2.x'
Conflicts:
	VERSION.txt
	aggregates/jetty-all/pom.xml
	apache-jsp/pom.xml
	apache-jstl/pom.xml
	examples/async-rest/async-rest-jar/pom.xml
	examples/async-rest/async-rest-webapp/pom.xml
	examples/async-rest/pom.xml
	examples/embedded/pom.xml
	examples/pom.xml
	jetty-alpn/jetty-alpn-client/pom.xml
	jetty-alpn/jetty-alpn-server/pom.xml
	jetty-alpn/pom.xml
	jetty-annotations/pom.xml
	jetty-ant/pom.xml
	jetty-cdi/pom.xml
	jetty-client/pom.xml
	jetty-continuation/pom.xml
	jetty-deploy/pom.xml
	jetty-distribution/pom.xml
	jetty-fcgi/fcgi-client/pom.xml
	jetty-fcgi/fcgi-server/pom.xml
	jetty-fcgi/pom.xml
	jetty-http-spi/pom.xml
	jetty-http/pom.xml
	jetty-http2/http2-alpn-tests/pom.xml
	jetty-io/pom.xml
	jetty-jaas/pom.xml
	jetty-jaspi/pom.xml
	jetty-jmx/pom.xml
	jetty-jndi/pom.xml
	jetty-jsp/pom.xml
	jetty-jspc-maven-plugin/pom.xml
	jetty-maven-plugin/pom.xml
	jetty-monitor/pom.xml
	jetty-nosql/pom.xml
	jetty-osgi/jetty-osgi-alpn/pom.xml
	jetty-osgi/jetty-osgi-boot-jsp/pom.xml
	jetty-osgi/jetty-osgi-boot-warurl/pom.xml
	jetty-osgi/jetty-osgi-boot/pom.xml
	jetty-osgi/jetty-osgi-httpservice/pom.xml
	jetty-osgi/jetty-osgi-npn/pom.xml
	jetty-osgi/pom.xml
	jetty-osgi/test-jetty-osgi-context/pom.xml
	jetty-osgi/test-jetty-osgi-webapp/pom.xml
	jetty-osgi/test-jetty-osgi/pom.xml
	jetty-plus/pom.xml
	jetty-proxy/pom.xml
	jetty-quickstart/pom.xml
	jetty-rewrite/pom.xml
	jetty-runner/pom.xml
	jetty-security/pom.xml
	jetty-server/pom.xml
	jetty-servlet/pom.xml
	jetty-servlets/pom.xml
	jetty-spdy/pom.xml
	jetty-spdy/spdy-client/pom.xml
	jetty-spdy/spdy-core/pom.xml
	jetty-spdy/spdy-example-webapp/pom.xml
	jetty-spdy/spdy-http-client-transport/pom.xml
	jetty-spdy/spdy-http-common/pom.xml
	jetty-spdy/spdy-http-server/pom.xml
	jetty-spdy/spdy-npn-tests/pom.xml
	jetty-spdy/spdy-server/pom.xml
	jetty-spring/pom.xml
	jetty-start/pom.xml
	jetty-util-ajax/pom.xml
	jetty-util/pom.xml
	jetty-webapp/pom.xml
	jetty-websocket/javax-websocket-client-impl/pom.xml
	jetty-websocket/javax-websocket-server-impl/pom.xml
	jetty-websocket/pom.xml
	jetty-websocket/websocket-api/pom.xml
	jetty-websocket/websocket-client/pom.xml
	jetty-websocket/websocket-common/pom.xml
	jetty-websocket/websocket-server/pom.xml
	jetty-websocket/websocket-servlet/pom.xml
	jetty-xml/pom.xml
	pom.xml
	tests/pom.xml
	tests/test-continuation/pom.xml
	tests/test-integration/pom.xml
	tests/test-jmx/jmx-webapp-it/pom.xml
	tests/test-jmx/jmx-webapp/pom.xml
	tests/test-jmx/pom.xml
	tests/test-loginservice/pom.xml
	tests/test-quickstart/pom.xml
	tests/test-sessions/pom.xml
	tests/test-sessions/test-hash-sessions/pom.xml
	tests/test-sessions/test-jdbc-sessions/pom.xml
	tests/test-sessions/test-mongodb-sessions/pom.xml
	tests/test-sessions/test-sessions-common/pom.xml
	tests/test-webapps/pom.xml
	tests/test-webapps/test-jaas-webapp/pom.xml
	tests/test-webapps/test-jetty-webapp/pom.xml
	tests/test-webapps/test-jndi-webapp/pom.xml
	tests/test-webapps/test-mock-resources/pom.xml
	tests/test-webapps/test-proxy-webapp/pom.xml
	tests/test-webapps/test-servlet-spec/pom.xml
	tests/test-webapps/test-servlet-spec/test-container-initializer/pom.xml
	tests/test-webapps/test-servlet-spec/test-spec-webapp/pom.xml
	tests/test-webapps/test-servlet-spec/test-web-fragment/pom.xml
	tests/test-webapps/test-webapp-rfc2616/pom.xml
2015-03-11 10:39:38 +11:00
Jesse McConnell e3fd0056cf [maven-release-plugin] prepare for next development iteration 2015-03-10 08:00:22 -05:00
Jesse McConnell 9d648f4000 [maven-release-plugin] prepare release jetty-9.2.10.v20150310 2015-03-10 08:00:14 -05:00
Simone Bordet 38250545fc Improved exception handling, aborting the exchange rather than throwing. 2015-03-10 10:36:24 +01:00
Simone Bordet bab7888c59 Fixed HttpClient Javadocs. 2015-03-10 10:15:41 +01:00
Simone Bordet b7715fb3eb Merged branch 'jetty-9.2.x' into 'master'. 2015-03-07 23:26:59 +01:00
Simone Bordet 7c915bcba2 461643 - HttpContent.advance() race.
Fixed by correctly synchronizing on ContentProvider.iterator.hasNext()
and ContentProvider.iterator.next() for those ContentProviders that
require it, such as DeferredContentProvider.
2015-03-07 23:13:21 +01:00
Simone Bordet a13a55e242 Introduced LeakDetector.id() to be consistent in logging the resource ID. 2015-03-07 22:32:59 +01:00
Joakim Erdfelt 130afb9535 Merge branch 'jetty-9.2.x'
Conflicts:
	jetty-client/src/main/java/org/eclipse/jetty/client/LeakTrackingConnectionPool.java
	jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientLoadTest.java
	jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientUploadDuringServerShutdown.java
	jetty-server/src/main/java/org/eclipse/jetty/server/HttpInput.java
	jetty-spdy/spdy-server/src/test/java/org/eclipse/jetty/spdy/server/SynDataReplyDataLoadTest.java
	jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/TooFastClientTest.java
2015-03-06 15:57:52 -07:00
Joakim Erdfelt 74ee154bb1 Cleaning up LeakTrackingByteBufferPool / LeakDetector
+ Making use of LeakTrackingByteBufferPool more consistent
+ Using MappedByteBufferPool.Tagged where appropriate in test cases
+ Adding leak count tracking to LeakDetector
+ Adding leak count tracking to LeakTrackingByteBufferPool
+ Renaming websocket LeakTrackingBufferPool to
  LeakTrackingBufferPoolRule to reflect junit @Rule usage
+ Making websocket LeakTrackingBufferPoolRule always use
  MappedByteBufferPool.Tagged
+ Fixed various grammar concerns
2015-03-06 14:27:58 -07:00
Greg Wilkins 6ed01cf15b removed ambiguous logging 2015-03-06 16:29:25 +11:00
Simone Bordet 3e0949ad2c Merged branch 'jetty-9.2.x' into 'master'. 2015-03-05 18:19:27 +01:00
Simone Bordet 3b8bf8d1e0 Made test more stable. 2015-03-05 16:55:04 +01:00
Simone Bordet a64368df5d Factored into own method code executed after creation of a new
connection.
2015-03-05 16:54:44 +01:00
Simone Bordet 1a5346ec4f 461499 - ConnectionPool may leak connections.
Now using SpinLock to guard concurrent access to the connection
queues (idle and active) so that operations on them are atomic.
2015-03-05 15:42:03 +01:00
Greg Wilkins 48b6bec64c Merge remote-tracking branch 'origin/jetty-9.2.x'
Conflicts:
	jetty-http/src/main/java/org/eclipse/jetty/http/HttpParser.java
2015-03-05 20:17:20 +11:00
Greg Wilkins 2169ea6494 further cleanups of HttpExchange 2015-03-05 19:50:30 +11:00
Greg Wilkins e8b6902b16 SpinLock cleanup of HttpExchange 2015-03-05 18:32:17 +11:00
Greg Wilkins 2619edff5a 461452 Double release of buffer by HttpReceiverOverHTTP
Clear buffer on exception to avoid release guard
2015-03-05 16:22:07 +11:00
Greg Wilkins 042de2ec9f 461452 Double release of buffer by HttpReceiverOverHTTP
Updated HttpParse to always return from parseNext when messageComplete is called.  This allows it to notice reentrant state changes
and removes the need for HttpReceiverOverHTTP.methodComplete to return true, thus avoiding the race.
2015-03-05 15:26:19 +11:00
Greg Wilkins 418a60bbd0 461452 Double release of buffer by HttpReceiverOverHTTP
Updated comments to better describe the race to double release the buffer
2015-03-05 12:15:31 +11:00
Greg Wilkins 8cbab09527 461452 Double release of buffer by HttpReceiverOverHTTP
This commit is just a tidy up of the code to reduce the size of the race causing this problem.  It is not a fix.
2015-03-05 11:05:35 +11:00
Simone Bordet 40ad8dc608 Notifying the "failure" event for request and response when the failure
is detected during the processing of another event.
2015-03-04 01:01:09 +01:00
Simone Bordet 66df49bb4c Clarified test code. 2015-03-02 09:57:42 +01:00
Simone Bordet ec2fcb6648 Made tests more stable by consuming the content on the server.
When the content was not consumed, it was possible that the response
arrived to the client before it was able to send the whole request
content.
In some cases/tests this would cause the request to fail, thereby
failing the test as well.
2015-02-27 11:06:57 +01:00
Simone Bordet b86ab56cfc Fixed test. 2015-02-27 10:26:24 +01:00
Simone Bordet 27beeff164 Merged branch 'jetty-9.2.x' into 'master'. 2015-02-27 09:56:32 +01:00
Simone Bordet da80498c56 Improved logging. 2015-02-26 23:38:27 +01:00
Simone Bordet bbc2d0c29d Simplified abort logic. 2015-02-26 23:26:24 +01:00
Simone Bordet 31a0b36f3c Improved logging and toString() implementations. 2015-02-26 23:26:24 +01:00
Simone Bordet 008b03ac78 460905 - Make sure TimeoutCompleteListener is cancelled if the request cannot be sent. 2015-02-26 12:25:42 +01:00
Simone Bordet d5a6ad2345 460905 - Make sure TimeoutCompleteListener is cancelled if the request cannot be sent. 2015-02-26 10:56:19 +01:00
Greg Wilkins 165ae8f238 Improved LocalConnector 2015-02-26 20:13:45 +11:00
Jesse McConnell 1659d83978 [maven-release-plugin] prepare for next development iteration 2015-02-24 10:38:33 -06:00
Jesse McConnell dc0c3f4c52 [maven-release-plugin] prepare release jetty-9.2.9.v20150224 2015-02-24 10:38:28 -06:00
Simone Bordet d9255d02d8 Fixed test. 2015-02-24 13:08:21 +01:00
Simone Bordet c52ba39722 Preventing NPE in case the exchange is failed in the middle of
sending content.
2015-02-24 13:01:11 +01:00
Simone Bordet 58ea526b56 Notifying client connection's promise from onOpen().
The client connection's promise was succeeded in the context of a
call to SelectorManager.newConnection().
This was wrong, since succeeding the promise may trigger the send
of a request *before* the connection is actually linked to the
endPoint and opened.

This change moves the succeeding of the client connection's promise
to the connection onOpen() method.
2015-02-20 18:23:31 +01:00
Simone Bordet a01d85f0d9 Merged branch 'jetty-9.2.x' into 'master'. 2015-02-20 16:08:18 +01:00
Simone Bordet 71f6527cae Removed extra dispatches from HTTP client code. 2015-02-20 16:02:54 +01:00
Simone Bordet b69b8dfe50 460443 - Race condition releasing the response buffer.
Fixed by making sure that the response buffer is released at the
appropriate times.
2015-02-20 16:00:42 +01:00
Simone Bordet ddde0db339 Added test to check that a 100 Continue response and a normal response,
when read in a single read by the client, are processed correctly.
2015-02-20 16:00:42 +01:00
Jesse McConnell ce5db2ca55 [maven-release-plugin] prepare for next development iteration 2015-02-17 16:02:22 -06:00
Jesse McConnell 26b7597928 [maven-release-plugin] prepare release jetty-9.2.8.v20150217 2015-02-17 16:02:16 -06:00
Simone Bordet 28b9a0927c Merged branch 'jetty-9.2.x' into 'master'. 2015-02-15 20:51:49 +01:00
Simone Bordet ffa32dfae7 459963 - Failure writing content of a committed request leaks connections.
Fixed by making the logic in HttpSender fail and complete the response
in case of request failure, without taking in consideration whether
the request was committed or aborted.
2015-02-15 20:42:55 +01:00
Simone Bordet cf022de2fd Removed unused @Slow annotations. 2015-02-15 20:41:36 +01:00
Simone Bordet 8f0a874163 Removed unnecessary hiding of stack traces. 2015-02-15 20:40:50 +01:00
Simone Bordet ed1cbc0631 Improved logging. 2015-02-15 20:39:01 +01:00
Greg Wilkins 0f7ee8d607 Merge remote-tracking branch 'origin/jetty-9.2.x'
Conflicts:
	jetty-http/src/main/java/org/eclipse/jetty/http/HttpParser.java
	jetty-http/src/main/java/org/eclipse/jetty/http/HttpVersion.java
	jetty-io/src/main/java/org/eclipse/jetty/io/EndPoint.java
	jetty-server/src/main/java/org/eclipse/jetty/server/HttpConnection.java
2015-02-13 11:45:56 +11:00
Greg Wilkins 2b2a70a93a 459845 Support upgrade
Added the concept of UpgradeFrom and UpgradeTo connections that support
transferring a buffer with content before opening new connection.
Aded EndPoint.update method as utility
2015-02-13 11:41:18 +11: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 7dffe4f082 459542 - AsyncMiddleManServlet race condition on first download content.
Fixed the race condition by submitting a zero length buffer to write
from onWritePossible() which will succeed the callback without
causing races.
2015-02-10 13:16:41 +01:00
Simone Bordet 12e2f9e6c8 459542 - AsyncMiddleManServlet race condition on first download content.
Fixed the race condition by submitting a zero length buffer to write
from onWritePossible() which will succeed the callback without
causing races.
2015-02-10 13:10:57 +01:00
Simone Bordet cb5541b58e Merged branch 'jetty-9.2.x' into 'master'. 2015-02-09 17:39:16 +01:00
Simone Bordet f974c74329 Implemented HTTP2Client connect timeout. 2015-02-09 16:22:21 +01:00
Simone Bordet 2a749dc0ea Fail the callback in case we cannot activate a newly created connection. 2015-02-09 12:11:18 +01:00
Simone Bordet 96132dbe45 Merged branch 'jetty-9.2.x' into 'master'. 2015-02-09 08:56:03 +01:00
Simone Bordet 43f14997d8 Improved toString() methods for better reporting during dump(). 2015-02-09 08:54:52 +01:00
Simone Bordet 99da9ce98e Merged branch 'jetty-9.2.x' into 'master'. 2015-02-06 21:45:22 +01:00
Simone Bordet ee16dfd066 Added test to verify the complete event is not fired until the
content is consumed.
2015-02-06 21:42:07 +01:00
Simone Bordet 12eaedd96b Refactored HttpDestination to allow customization of the request enqueuing.
Subclasses may override enqueue() and provide a different algorihtm.
2015-02-06 21:42:07 +01:00
Simone Bordet 961a90d16c Merged branch 'jetty-9.2.x' into 'master'. 2015-01-29 14:11:21 +01:00
Simone Bordet e03cd5e286 451092 - Connector will fail if HeaderListener return false.
Not a bug, but wrote one more test and clarified Javadocs.
2015-01-29 11:44:11 +01:00
Simone Bordet af312dbca0 Fixed case where a trying to send a request was causing an IllegalStateException.
It is always possible that a request is aborted by the client code
while being sent, so we should just return rather than throwing.
2015-01-29 11:13:39 +01:00
Simone Bordet b6e4852179 Improved dump() output. 2015-01-29 11:13:39 +01:00
Simone Bordet 88ed996295 Improved toString(). 2015-01-29 11:13:39 +01:00
Simone Bordet a52703cba9 458527 - Implement an async proxy servlet that can perform content transformations. 2015-01-27 15:29:47 +01:00
Jesse McConnell aa22842c20 [maven-release-plugin] prepare for next development iteration 2015-01-16 17:48:29 -06:00
Jesse McConnell 8c58a9abc4 [maven-release-plugin] prepare release jetty-9.2.7.v20150116 2015-01-16 17:48:23 -06:00
Jesse McConnell 81bb8411d1 [maven-release-plugin] prepare for next development iteration 2015-01-16 12:06:36 -06:00
Jesse McConnell 7865f88b81 [maven-release-plugin] prepare release jetty-9.2.7.v20150116 2015-01-16 12:06:30 -06:00
Jesse McConnell db991355a2 [maven-release-plugin] prepare for next development iteration 2015-01-16 10:41:45 -06:00
Jesse McConnell 6930abb8d3 [maven-release-plugin] prepare release jetty-9.2.7.v20140116 2015-01-16 10:41:39 -06:00
Jesse McConnell 9225b124a4 [maven-release-plugin] prepare for next development iteration 2015-01-16 08:21:35 -06:00
Jesse McConnell ebd563e64d [maven-release-plugin] prepare release 9.2.7.v20140116 2015-01-16 08:21:29 -06:00
Simone Bordet 6861da11b9 457130 - HTTPS request with IP host and HTTP proxy throws IllegalArgumentException.
Fixed handling of cookies in case of null URI.
2015-01-09 16:08:41 +01:00
Simone Bordet c7d9c5c951 457130 - HTTPS request with IP host and HTTP proxy throws IllegalArgumentException.
Fixed handling of cookies in case of null URI.
2015-01-09 16:07:41 +01:00
Simone Bordet 86c2d01e80 Merged branch 'jetty-9.2.x' into 'master'. 2015-01-09 12:59:17 +01:00
Simone Bordet fd13361132 Fixed test assumption. 2015-01-09 12:58:14 +01:00
Simone Bordet 8a27385bc3 Merged branch 'jetty-9.2.x' into 'master'. 2015-01-09 12:51:13 +01:00
Simone Bordet bb2872b789 Fixed test assumption. 2015-01-09 12:46:56 +01:00
Simone Bordet adae3193d8 457130 - HTTPS request with IP host and HTTP proxy throws IllegalArgumentException.
Fixed by handling the case of non-URI request target.
2015-01-09 11:49:13 +01:00
Joakim Erdfelt 7e7dd40f0a Happy New Year 2015 (merge from master) 2015-01-08 09:14:13 -07:00
Simone Bordet 0c21d7c78b Merged branch 'jetty-9.2.x' into 'master'. 2015-01-08 16:57:45 +01:00
Simone Bordet 51aafc78a4 457032 - Request sent from a failed CompleteListener due to connect timeout is failed immediately.
Fixed by copying the exchange queue and failing only the exchanges
that are present in the copy.
2015-01-08 16:56:59 +01:00
Joakim Erdfelt a3201a3c81 Happy New Year 2015 2015-01-07 17:06:59 -07:00
Joakim Erdfelt 6a0668b7a1 Happy New Year 2015 2015-01-07 17:03:30 -07:00
Simone Bordet a85a74bbdc 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:22:39 +01:00
Greg Wilkins cc216eb8ee fixed client proxy test 2015-01-02 15:38:12 +01:00
Greg Wilkins e1e57924dc fixed client test for new lazy consumeAll behaviour 2015-01-02 15:36:34 +01:00
Greg Wilkins dcd9182f87 fixed client test for new lazy consumeAll behaviour 2015-01-02 15:31:34 +01:00
Greg Wilkins a4d2895400 removed unneeded execute for SslConnection onFillable 2015-01-02 15:24:14 +01:00
Greg Wilkins 3af9b145a3 Deprecated the AbstractConnection dispatchIO mechanism 2015-01-01 16:18:13 +01:00
Greg Wilkins 5f2a7fdfce fixed http client respond before consumed test.
The server now is a bit lazier if the handler has not consumed content.  It will not block to consume and gives up and closes the connection instead.
2014-12-31 11:48:23 +01:00
Simone Bordet 9cff4a57e7 Merged branch 'master' into 'jetty-9.3-ewyk'. 2014-12-22 21:34:10 +01:00
Simone Bordet e8c88cfd9c Merged branch 'jetty-9.2.x' into 'master'. 2014-12-22 21:32:09 +01:00
Simone Bordet c944b06a61 New tests testing request retry. 2014-12-22 21:27:59 +01:00
Greg Wilkins 3b34423b17 EWYK SelectorManager 2014-12-18 17:06:32 +01:00
Greg Wilkins cdd2b0a9d2 refacted SelectorManager to have a ManagedSelector 2014-12-17 16:29:24 +01:00
Greg Wilkins 28fb3e45d0 453636 Improved spin detection on test 2014-12-10 10:16:16 +01:00
Jan Bartel bc22ba72dc [maven-release-plugin] prepare for next development iteration 2014-12-05 16:45:12 +01:00
Jan Bartel 1cc075cf98 [maven-release-plugin] prepare release jetty-9.2.6.v20141205 2014-12-05 16:45:01 +01:00
Jesse McConnell 127b48c932 [maven-release-plugin] prepare for next development iteration 2014-12-03 09:00:57 -06:00
Jesse McConnell 028f4b9610 [maven-release-plugin] prepare release jetty-9.2.6.v20141203 2014-12-03 09:00:46 -06:00
Jesse McConnell 1263d1f3c8 [maven-release-plugin] prepare for next development iteration 2014-12-03 08:26:47 -06:00
Jesse McConnell 5c7f706496 [maven-release-plugin] prepare release jetty-9.2.6.v20141203 2014-12-03 08:26:35 -06:00
Jesse McConnell 09846e324d [maven-release-plugin] prepare for next development iteration 2014-11-12 17:13:19 -06:00
Jesse McConnell 97d2bd95a6 [maven-release-plugin] prepare release jetty-9.2.5.v20141112 2014-11-12 17:13:14 -06:00
Jesse McConnell 5d0595cabd [maven-release-plugin] prepare for next development iteration 2014-11-03 13:46:58 -06:00
Jesse McConnell 772ff0bfd4 [maven-release-plugin] prepare release jetty-9.2.4.v20141103 2014-11-03 13:46:52 -06:00
Simone Bordet 64597b318c Merged branch 'jetty-9.2.x' into 'master'. 2014-11-03 17:25:37 +01:00
Simone Bordet 9c64fb73e4 449603 - OutputStreamContentProvider hangs when host is not available.
Fixed by having HttpRequest.abort() to fail the ContentProvider.
In this way, the ContentProvider knows, even before being used to
send the request content, that the request has failed, and may
forward the failure to the client code.
2014-11-03 16:50:59 +01:00
Simone Bordet cbd7b75e10 Removed unused code. 2014-11-03 10:55:13 +01:00
Jesse McConnell 1c4a08b35b [maven-release-plugin] prepare for next development iteration 2014-10-31 09:58:16 -05:00
Jesse McConnell a4ff7bf841 [maven-release-plugin] prepare release jetty-9.2.4.v20141031 2014-10-31 09:58:10 -05:00
Jesse McConnell e1b73a64eb [maven-release-plugin] prepare for next development iteration 2014-10-30 11:28:41 -05:00
Jesse McConnell 5770cc1179 [maven-release-plugin] prepare release jetty-9.2.4.v20141030 2014-10-30 11:28:35 -05:00
Jesse McConnell 58eb6740ec [maven-release-plugin] prepare for next development iteration 2014-10-28 14:20:30 -05:00
Jesse McConnell 19a44846cf [maven-release-plugin] prepare release jetty-9.2.4.v20141028 2014-10-28 14:20:24 -05: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
Simone Bordet 360fce58be Merged branch 'jetty-9.2.x' into 'master'. 2014-10-23 12:54:07 +02:00
Simone Bordet fac197f868 Clarified semantic of Request.header(). 2014-10-23 12:53:37 +02:00
Simone Bordet 9cb21d1377 Merged branch 'jetty-9.2.x' into 'master'. 2014-10-23 12:42:00 +02:00
Simone Bordet f7baf9923f Fixed issue caused by the fix to #447746: user agent header must not
be added, but overwritten.
2014-10-23 12:41:16 +02:00
Simone Bordet 65832dfae3 Merged branch 'jetty-9.2.x' into 'master'. 2014-10-23 11:47:02 +02:00
Simone Bordet 84b38aba15 447746 - HttpClient is always going to send User-Agent header even though I do not want it to. 2014-10-23 11:46:18 +02:00
Simone Bordet 0eade706a6 Removed Thread.dumpStack() calls used for debugging. 2014-10-22 18:10:25 +02:00
Simone Bordet 6268421dd0 Merged branch 'jetty-9.2.x' into 'master'. 2014-10-16 18:05:12 +02:00
Simone Bordet f2eaa963f8 Removed debugging statements. 2014-10-16 17:42:32 +02:00
Simone Bordet e7d830c26e Merged branch 'jetty-9.2.x' into 'master'. 2014-10-13 16:57:52 +02:00
Simone Bordet 2dba2ea2c2 Improved exception reporting. 2014-10-13 16:55:59 +02:00
Simone Bordet 6ed0170913 Removed call to Thread.dumpStack(). 2014-09-26 11:34:26 +02: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
Simone Bordet f1678124dc 444764 - HttpClient notifies callbacks for last chunk of content twice.
Fixed by filtering out notification of the callbacks in case the
HttpContent is already consumed.
2014-09-23 11:33:44 +02:00
Simone Bordet 1cd367ae7c 444764 - HttpClient notifies callbacks for last chunk of content twice.
Fixed by filtering out notification of the callbacks in case the
HttpContent is already consumed.
2014-09-22 18:16:49 +02:00
Simone Bordet 48510bc71a 444214 - Socks4Proxy fails when reading less than 8 bytes. 2014-09-16 21:37:51 +02:00
Simone Bordet f93c1cf593 444214 - Socks4Proxy fails when reading less than 8 bytes. 2014-09-16 21:20:45 +02:00
Simone Bordet 1878b344c7 Added SOCKS 4 tests. 2014-09-16 14:24:45 +02:00
Joakim Erdfelt 2481be42fe Adding timeouts for problematic test case 2014-09-11 10:47:43 -07:00
Joakim Erdfelt 9249ebb6ef Using 9.2.4-SNAPSHOT for branch 2014-09-11 06:10:44 -07:00
Jesse McConnell 9bfeb2221f [maven-release-plugin] prepare release jetty-9.2.3.v20140905 2014-09-05 09:19:23 -05:00
Simone Bordet ee3ab1f8ea Merged branch 'master' into 'jetty-http2'. 2014-09-01 11:57:09 +02:00
Simone Bordet 9dbd2cd9d8 442950 - Embedded Jetty client requests to localhost hangs with high cpu usage (NIO OP_CONNECT Solaris/Sparc).
Now checking the return value of SocketChannel.connect() to determine
whether to register the channel (true) or finish the connect (false).
2014-09-01 11:28:59 +02:00
Greg Wilkins 23eba39748 Merge remote-tracking branch 'origin/master' into jetty-http2 2014-08-21 16:39:45 +10:00
Greg Wilkins 7584488702 javadoc 2014-08-21 09:43:35 +10: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 3ace246cff Catching Throwable instead of Exception. 2014-08-08 18:16:56 +02:00
Greg Wilkins eaf374fa58 refactored Dispatcher for new HttpURI 2014-07-25 17:28:35 +10:00
Joakim Erdfelt cb42ef2167 [maven-release-plugin] prepare for next development iteration 2014-07-23 11:18:01 -07:00
Joakim Erdfelt dc62cb5ac7 [maven-release-plugin] prepare release jetty-9.2.2.v20140723 2014-07-23 11:17:55 -07:00
Greg Wilkins fa3d7d0f7e Merge remote-tracking branch 'origin/master' into jetty-http2
Conflicts:
	jetty-servlet/src/test/java/org/eclipse/jetty/servlet/AsyncContextDispatchWithQueryStrings.java
2014-07-23 16:53:13 +10:00
Greg Wilkins 3a6879d3e8 expanded tabs in indents 2014-07-23 16:49:05 +10:00
Simone Bordet 467773dbdf Merged branch 'master' into 'jetty-http2'. 2014-07-22 21:14:46 +02:00
Simone Bordet dd914db3cf Reorganized GZIP tests. 2014-07-22 20:55:18 +02:00
Simone Bordet 52172fb3c4 440038 - Content decoding may fail.
Properly looping around the decoding step to ensure that the encoded
content is fully consumed.
2014-07-21 19:21:44 +02:00
Simone Bordet 816b85ea4d 439895 - No event callback should be invoked after the "failure" callback.
Fixed HttpSender and HttpReceiver to use a non-blocking collaborative
mechanism to notify callbacks.
Only the "failed" callback can run concurrently with other callbacks.
No other callback can run after the "complete" callback: a failure
concurrent with another callback will notify the "failed" callback,
finish the running callback and only then invoke the "complete" callback.
2014-07-21 16:48:21 +02:00
Greg Wilkins 853e020210 Merge remote-tracking branch 'origin/master' into jetty-http2 2014-07-16 15:31:48 +10:00
Simone Bordet 745f757552 Guarded calls to LOG.debug() with if (LOG.isDebugEnabled()) to reduce allocation of varargs Object[]. 2014-07-15 18:49:14 +02:00
Greg Wilkins 4d2a580c2c 439375 preferred rfc7231 format is mime;charset=lowercase-9 2014-07-11 17:56:08 +10:00
Greg Wilkins 5e281dd449 Merge remote-tracking branch 'origin/master' into jetty-http2
Conflicts:
	jetty-util/src/main/java/org/eclipse/jetty/util/IteratingCallback.java
2014-07-10 14:43:39 +10:00
Greg Wilkins 55ca09a00e 438190 findbug improvements 2014-07-10 14:41:32 +10:00
Greg Wilkins 706fe1eba3 Merge remote-tracking branch 'origin/master' into jetty-http2 2014-07-03 16:01:37 +10:00
Greg Wilkins 7fbf521d4e 438204 correctly wrap IPv6 hostnames in URIs generated by jetty 2014-07-03 10:11:16 +10:00
Greg Wilkins 228600caf5 fixed race in HttpReceiverOverHTTPTest 2014-07-02 15:08:06 +10:00
Simone Bordet 2608af8f0d Merged branch 'origin/master' into 'jetty-http2'. 2014-06-26 11:54:50 +02:00
Simone Bordet f2f19ee3ba Improved changes introduced by a746d78. 2014-06-26 10:08:13 +02:00
Greg Wilkins a746d78951 438079 435322 Fixed Iterating Callback fail handling and removed per send instance 2014-06-25 19:20:03 +02:00
Simone Bordet e63ceabafe Merged branch 'origin/master' into 'jetty-http2'. 2014-06-25 17:29:36 +02:00
Simone Bordet 7b7c592fc8 Improved logging. 2014-06-25 17:26:04 +02:00
Simone Bordet 66f3913527 Merged branch 'origin/master' into 'jetty-http2'. 2014-06-25 12:34:19 +02:00
Simone Bordet 3ff4195dbc Guarded calls to LOG.debug() with if (LOG.isDebugEnabled()) to reduce allocation of varargs Object[]. 2014-06-25 12:26:45 +02:00
Simone Bordet aef2f42b5b FastCGI applications needs the Host header, which is missing in HTTP/2. 2014-06-18 11:18:48 +02:00
Greg Wilkins 272e1d8da5 Refactored HttpChannel to not have direct HttpParser dependency 2014-06-17 00:02:50 +02:00
Simone Bordet 334db9fe72 Updated version to 9.3.0-SNAPSHOT. 2014-06-16 21:33:03 +02:00
Greg Wilkins bbd61f8e19 Multiple mixed in changes and improvements
Simplified HttpParser as per rfc7230
implemented local/remote hpack max table sizes
2014-06-11 15:16:40 +02:00
Jesse McConnell c3ee0711ca [maven-release-plugin] prepare for next development iteration 2014-06-09 13:37:54 -05:00
Jesse McConnell 06b494eeac [maven-release-plugin] prepare release jetty-9.2.1.v20140609 2014-06-09 13:37:49 -05:00
Greg Wilkins 8f4aeeeb8d updated version to 10.0.0-SNAPSHOT 2014-06-04 15:08:54 +02:00
Jesse McConnell 2e859e4ae2 [maven-release-plugin] prepare for next development iteration 2014-05-26 12:04:15 -05:00
Jesse McConnell 71ad2114c5 [maven-release-plugin] prepare release jetty-9.2.0.v20140526 2014-05-26 12:04:08 -05:00
Jesse McConnell d59dbe936b [maven-release-plugin] prepare for next development iteration 2014-05-23 09:59:19 -05:00
Jesse McConnell edc7646a4c [maven-release-plugin] prepare release jetty-9.2.0.v20140523 2014-05-23 09:59:13 -05:00
Simone Bordet 7918a58c71 Using Callback.Adapter.INSTANCE to avoid unneeded allocations. 2014-05-19 18:49:17 +02:00
Simone Bordet d75b9177c5 432939 - Jetty Client ContentResponse should have methods such as getContentType() and getMediaType().
Introduced ContentResponse.getMediaType() and ContentResponse .getEncoding(),
as well as BufferingResponseListener.getMediaType() to make the media
type and the encoding available to applications.
2014-05-15 10:58:49 +02:00
Simone Bordet b603964bb6 433089 - Client should provide Request.accept() method, like JAX-RS 2.0 Invocation.Builder.accept(). 2014-05-15 10:23:24 +02:00
Simone Bordet fa51281546 Avoided allocation of rarely used containers. 2014-05-15 09:59:31 +02:00
Simone Bordet eb1900d10b 428966 - Per-request cookie support. 2014-05-15 09:57:20 +02:00
Simone Bordet 660c05d399 URLEncoding also parameter names. 2014-05-15 09:09:41 +02:00
Simone Bordet c322ed4b90 419972 - Support sending forms (application/x-www-form-urlencoded).
Implemented introducing HttpClient.FORM() method and
FormContentProvider, based on Fields.
2014-05-14 23:54:26 +02:00
Simone Bordet bf7ab5d326 420368 - Default content types for ContentProviders.
Introduced ContentProvider.Typed to specify a content type along with
the content.
2014-05-14 23:54:25 +02:00
Simone Bordet be3848a371 433689 - Evict old HttpDestinations from HttpClient. 2014-05-14 11:34:34 +02:00
Simone Bordet a803465551 Invalidating the content decoders in case of Iterator.remove(). 2014-05-14 10:28:45 +02:00
Simone Bordet 521aa1d566 Improved Javadocs. 2014-05-14 09:58:10 +02:00
Simone Bordet 20dbde165e 434578 - Complete listener not called if redirected to an invalid URI.
Fixed by catching the exception and failing properly the redirect.
2014-05-11 11:22:39 +02:00
Simone Bordet d92ac8062b Avoid IllegalStateException in case of abort concurrent to header
generation.
2014-05-11 11:21:11 +02:00
Simone Bordet 0e4a903764 Removed deprecated getConversationID() method. 2014-05-11 10:14:03 +02:00
Greg Wilkins 51c5a4c833 425421 ContainerLifeCycle does not start added beans in started state 2014-05-05 14:53:53 +02:00
Simone Bordet c4b5e3d3d7 Introduced CompletableCallback to handle asynchronous content on clients. 2014-05-04 23:14:45 +02:00
Simone Bordet 9b388750fa 433916 - HttpChannelOverHttp handles HTTP 1.0 connection reuse incorrectly.
Fixed by properly checking the HTTP version and whether the
Connection: keep-alive header is present.
2014-05-04 19:42:22 +02:00
Simone Bordet f628241875 433916 - HttpChannelOverHttp handles HTTP 1.0 connection reuse incorrectly.
Fixed by properly checking the HTTP version and whether the
Connection: keep-alive header is present.
2014-05-04 16:03:26 +02:00
Simone Bordet a1d18a157d Added onReadFailure() callback to allow subclasses to perform actions
in case of read failures.
2014-05-02 22:45:56 +02:00
Simone Bordet 43454ebd0a Merged branch 'master' into '431642'. 2014-04-30 15:34:54 +02:00
Simone Bordet 906dc83691 431642 - Implement ProxyServlet using Servlet 3.1 async I/O.
Implemented correctly AsyncProxyServlet, tests passing.
2014-04-30 15:34:30 +02:00
Greg Wilkins 1c97fd3c42 433692 improved buffer resizing 2014-04-30 11:57:50 +02:00
Greg Wilkins 2e261b75d6 433692 improved buffer resizing 2014-04-29 20:36:13 +02:00
Simone Bordet ca67a9e10d Merged branch 'master' into '431642'. 2014-04-29 15:59:23 +02:00
Simone Bordet b4d1060e88 Avoid to null out the cookieStore field in doStop(), to prevent random NPEs while stopping. 2014-04-29 15:15:55 +02:00
Simone Bordet aeb27cd461 431642 - Implement ProxyServlet using Servlet 3.1 async I/O.
Intermediate commit that implements asynchronous content in HttpClient,
for the HTTP protocol, passing the tests.

This work needs to be extended to FCGI and SPDY and finally implement
the asynchronous proxy servlet.
2014-04-19 12:36:15 +02:00
Simone Bordet 04f4e6fb5b Merged branch 'master' into '431642'. 2014-04-18 15:08:53 +02:00
Simone Bordet f2e2eec4d5 Merged branch 'jetty-9.1.x' into 'master'. 2014-04-15 09:04:20 +02:00
Simone Bordet 361d8e5bd2 432528 - IllegalStateException when using DeferredContentProvider.
Fixed by using the correct idiom for calling the IteratingCallback.
2014-04-15 09:03:30 +02:00
Simone Bordet d6e538a9d2 Avoid duplicating existing headers when copying requests. 2014-04-15 09:03:30 +02:00
Simone Bordet 3717115059 Merged branch 'jetty-9.1.x' into 'master'. 2014-04-11 17:02:26 +02:00
Simone Bordet 5eeda38f0a 432270 - Slow requests with response content delimited by EOF fail.
Fixed also in the FastCGI module.
2014-04-11 16:18:38 +02:00
Simone Bordet 4975cae881 Further progress on 431642 (async proxy servlet). 2014-04-11 09:45:21 +02:00
Simone Bordet aebab6919c Improved IllegalStateException reporting. 2014-04-10 09:04:40 +02:00
Simone Bordet dfa2d05bcc 432270 - Slow requests with response content delimited by EOF fail.
Better handling of the idle case, and closing the connection only
if the response can be failed.
2014-04-10 09:04:11 +02:00
Simone Bordet 74d66a87f6 Made the test more reliable. 2014-04-10 09:03:19 +02:00
Simone Bordet 3cd7dfd445 432270 - Slow requests with response content delimited by EOF fail.
Fixed by using a flag to determine the need to close the connection,
and by closing the connection only at exchange termination.
2014-04-10 09:00:17 +02:00
Simone Bordet e3662a9b23 432145 - Pending request is not failed when HttpClient is stopped.
Fixed by fixing the code in close() to also abort pending exchanges.
Reviewed for HTTP, FastCGI and SPDY transports.
2014-04-10 08:59:30 +02:00
Greg Wilkins 0e458c80f4 reverted version to SNAPSHOT 2014-04-10 16:37:25 +10:00
Simone Bordet 44fe5daa69 Restored proper logging level. 2014-04-09 18:33:23 +02:00
Simone Bordet 7e3c7f3588 Temporary commit to understand why HttpReceiverOverHTTPTest.test_Receive_GZIPResponseContent_Fragmented() fails.
To be reverted.
2014-04-09 01:33:20 +02:00
Simone Bordet a8de18379c Improved IllegalStateException reporting. 2014-04-09 00:08:30 +02:00
Simone Bordet 5f8513e67e 432270 - Slow requests with response content delimited by EOF fail.
Better handling of the idle case, and closing the connection only
if the response can be failed.
2014-04-08 17:38:04 +02:00
Simone Bordet dd8120294d Made the test more reliable. 2014-04-08 13:57:55 +02:00
Simone Bordet 2e7df0e16a 432270 - Slow requests with response content delimited by EOF fail.
Fixed by using a flag to determine the need to close the connection,
and by closing the connection only at exchange termination.
2014-04-08 13:57:27 +02:00
Simone Bordet 2897027f53 Merged branch 'master' into 'jetty-9.2.x'. 2014-04-07 17:51:23 +02:00
Simone Bordet cc0775133e 432145 - Pending request is not failed when HttpClient is stopped.
Fixed by fixing the code in close() to also abort pending exchanges.
Reviewed for HTTP, FastCGI and SPDY transports.
2014-04-07 17:39:29 +02:00
Simone Bordet b135920bfc Restored HttpSender tests. 2014-04-07 17:39:29 +02:00
Simone Bordet e56a76ef50 Restored HttpReceiver tests. 2014-04-07 17:39:28 +02:00
Greg Wilkins 0a748205f0 432122 ignore frequently failing test 2014-04-07 18:00:50 +10:00
Greg Wilkins 64e11bc8e8 reverted version to 9.1.x pending merge of 9.2 branch 2014-04-07 12:52:43 +10:00
Jesse McConnell dbb938ac71 [maven-release-plugin] prepare for next development iteration 2014-04-02 10:55:29 -05:00
Jesse McConnell c616ece6c7 [maven-release-plugin] prepare release jetty-9.1.4.v20140401 2014-04-02 10:55:21 -05:00
Simone Bordet a96d7c388c Initial implementation of 431642 (async proxy servlet). 2014-04-01 15:45:52 +02:00
Greg Wilkins 81e14cf59d tests fail with new ISP? 2014-03-31 13:42:22 +11:00
Greg Wilkins c5e1e249e7 set version for 9.2.x 2014-03-31 11:35:06 +11:00
Greg Wilkins 28445fc629 Merge remote-tracking branch 'origin/master' into jetty-9-alpn 2014-03-31 09:59:52 +11:00
Simone Bordet 1089a33578 Fixed imports referencing JUnit 3 and old matcher libraries. 2014-03-27 15:34:48 +01:00
Joakim Erdfelt 6cba8ee375 Sprinkling in some test timeouts for the Java 8 build 2014-03-25 10:43:38 -07:00
Simone Bordet cda4af3ec9 431103 - Complete listener not called if request times out before processing exchange.
Fixed by forcing the abort of the exchange in [Pooling|Multiplex]HttpDestination.
2014-03-25 18:18:14 +01:00
Simone Bordet 382bfebcae Removed code that should never run, and replaced it wil IllegalStateException. 2014-03-22 14:49:00 +01:00
Simone Bordet 565d17dc8c 430808 - OutputStreamContentProvider violates OutputStream contract.
Fixed OutputStreamContentProvider to perform blocking write() calls and
implemented OutputStream.flush().
HttpSender now notifies the ContentProvider iterator of write completion
and if it implements Callback.
This is used in DeferredContentProvider to provide a blocking flush()
functionality.
2014-03-21 21:15:31 +01:00
Simone Bordet 5c0aae2f12 Removed unused field in ResponseNotifier.
Catching Throwable in RequestNotifier and ResponseNotifier when
notifying listeners.
2014-03-21 21:15:31 +01:00
Jesse McConnell 0ec0d452e9 [maven-release-plugin] prepare for next development iteration 2014-03-07 09:10:08 -06:00
Jesse McConnell 1e555567a9 [maven-release-plugin] prepare release jetty-9.1.3.v20140225 2014-03-07 09:10:08 -06:00
Simone Bordet 3e52b60452 428266 - HttpRequest mangles URI query string.
Now raw query string is preserved.
2014-02-21 16:24:52 +01:00
Simone Bordet 7db67ff58f Removed @SuppressWarnings("ForLoopReplaceableByForEach") because
it is a non standard warning not treated by the compiler but only
by IDEs. Relevant lines have comments in any case.
2014-02-21 14:50:45 +01:00
Jesse McConnell eb0aea46ce set versions.txt file to new version and fix mistaken developmentVersion 2014-02-10 13:48:29 -06:00
Jesse McConnell f3d38dfb15 [maven-release-plugin] prepare for next development iteration 2014-02-10 11:17:14 -06:00
Jesse McConnell 8f6cbc9111 [maven-release-plugin] prepare release jetty-9.1.2.v20140210 2014-02-10 11:17:07 -06:00
Simone Bordet 9356ab46da Made test more robust.
The check for the connection being closed may fail spuriously because
the notification of CompleteListener happens before the connection is
closed.
2014-02-06 11:56:25 +01:00
Simone Bordet f147362915 427512 - ReadPendingException in case of HTTP Proxy tunnelling.
Fixed by marking the old HttpConnection as "soft closed", that is
make it so that isClosed() returns true but the underlying EndPoint
is not closed.
This allows the HttpReceiver to skip the registration for fill
interest, so that the ReadPendingException is not thrown.
2014-02-05 21:30:06 +01:00
Simone Bordet cbdfd87d78 426870 - HTTP 1.0 Request with Connection: keep-alive and response
content hangs.

Fixed HttpGenerator to stay in the EOF_CONTENT mode if such case is
detected (while before it was moving to NO_CONTENT mode).
By staying in EOF_CONTENT mode the generator is made non-persistent
and eventually the connection is closed, signaling the end-of-content
to the client.
2014-01-29 11:20:00 +01:00
Simone Bordet 99b5b61b0b Simplified handling of "Connection: close" response header. 2014-01-14 22:51:18 +01:00
Jesse McConnell b82ec6e668 [maven-release-plugin] prepare for next development iteration 2014-01-08 16:47:09 -06:00
Jesse McConnell b99623a21d [maven-release-plugin] prepare release jetty-9.1.1.v20140108 2014-01-08 16:47:01 -06:00
Simone Bordet 8720fb213c 425043 - Track whether pools are used correctly.
Introduced LeakDetector and utility classes LeakTrackingConnectionPool
and LeakTrackingByteBufferPool to track resource pool leakages.

Fixed ConnectionPool to be more precise in closing connections when
release() cannot recycle the connection.

Fixed a leak in server's HttpConnection in case a request arrives with
the Connection: close header: a ByteBuffer was allocated but never
released.
2014-01-07 19:44:29 +01:00
Simone Bordet 6cb93e026f Cosmetics. 2014-01-07 19:44:29 +01:00
Simone Bordet 69187e117d Added missing call to super.close(). 2014-01-07 19:44:29 +01:00
Simone Bordet 4722ac1720 Improved semantic of close() method, now executed only once. 2014-01-07 19:44:29 +01:00
Simone Bordet e94ff7db9c 424743 - Verify abort behavior in case the total timeout expires
before the connect timeout.

The changes to fix this issue uncovered problems in the HttpSender
state machine.
In particular, the SenderState is now defining more states that
depend on deferred content, and on handling of 100 Continue responses.

The refactoring also highlighted the fact that there was no need to
keep HttpConversation objects in a Map in HttpClient: they are now
only referenced by the HttpRequest.
With this change, Request.getConversationID() has been deprecated.

Also fixed a number of tests to make them more reliable.
2014-01-05 15:29:43 +01:00
Joakim Erdfelt a12fd9ea03 Happy New Year - 2014! 2014-01-02 14:50:14 -07:00
Simone Bordet 330e7f87d7 Removed check on the HttpSender.content field, that could lead to
NullPointerExceptions.

Checking whether the content was last and then acting was not atomic,
and the action being executed is designed to be run concurrently,
so the check was not needed.
2013-12-20 13:08:26 +01:00
Simone Bordet 8d621a9331 424043 - IteratingCallback Idle race.
A few renamings and fixes to avoid IllegalStateExceptions.
2013-12-15 23:51:04 +01:00
Simone Bordet 41fc2b8f87 424043 - IteratingCallback Idle race.
Renamed Next enum to Action, and renamed some constant of the State
enum to avoid confusion with the Action enum.

Simplified succeeded() and failed(Throwable) code,
covering also cases not covered before.

Fixed case SCHEDULED in succeeded() that was returning in case the
compareAndSet failed.

Fixed race in perform(), where 2 threads may execute concurrently
after having returned from process().

Vastly improved javadocs and comments.
2013-12-15 00:47:55 +01:00