Commit Graph

845 Commits

Author SHA1 Message Date
Simone Bordet ec254cd165 399324 - HttpClient does not handle correctly UnresolvedAddressException. 2013-01-28 23:45:44 +01:00
Simone Bordet 40621f0300 Added test that connects to an external website that exposes a non-HTTP protocol such as SSH. 2013-01-28 23:45:44 +01:00
Simone Bordet 9ba1069383 399319 - Request.getURI() may return negative ports. 2013-01-28 23:45:44 +01:00
Simone Bordet 7c53c317ae Fixed DeferredContentProvider race condition.
HttpSender was setting the listener for asynchronous content before its own state was properly setup.
This was causing race conditions, where a thread could notify HttpSender and find null data members causing later NPEs.

Now the listener is set after the state is setup, removing the race condition.
2013-01-28 17:32:22 +01:00
Jan Bartel ae644581dd Port jetty-client IdleTimeoutTest to jetty-9 2013-01-25 14:33:09 +11:00
Greg Wilkins 7fd04a186f cleanup after merge 2013-01-25 11:47:47 +11:00
Greg Wilkins ff350c3740 Merge remote-tracking branch 'origin/jetty-8'
Conflicts:
	jetty-client/src/main/java/org/eclipse/jetty/client/BlockingHttpConnection.java
	jetty-servlets/src/main/java/org/eclipse/jetty/servlets/GzipFilter.java
	jetty-servlets/src/main/java/org/eclipse/jetty/servlets/gzip/AbstractCompressedStream.java
	jetty-servlets/src/test/java/org/eclipse/jetty/servlets/gzip/GzipTester.java
2013-01-25 11:46:03 +11:00
Simone Bordet b2f3852fb3 398872 - SslConnection should not be notified of idle timeouts. First solution. 2013-01-24 10:29:27 +01:00
Joakim Erdfelt b6d551675b Merge branch 'jetty-7' into jetty-8 2013-01-23 13:58:34 -07:00
Jan Bartel 92af54c3fc Make IdleTimeoutTest jdk1.5 compliant 2013-01-22 08:58:35 +11:00
Jan Bartel fe48239b34 Merge remote-tracking branch 'origin/jetty-7' into jetty-8 2013-01-21 16:54:06 +11:00
Jan Bartel 91a94f8213 362226 HttpConnection "wait" call causes thread resource exhaustion 2013-01-21 16:43:57 +11:00
Simone Bordet 44e64aa309 Removed TimedResponseListener, since the timeout mechanism is now
provided by Request.timeout(...) for both blocking and asynchronous send().
2013-01-17 16:15:34 +01:00
Simone Bordet b3f6739d51 Completed the implementation of DeferredContentProvider.
DeferredContentProvider is used to provide content after
Request.send(...) is called, a use case that is useful
in SPDY-to-HTTP proxies, where content arrives in SPDY
data frames at later times than the headers.
2013-01-17 12:53:39 +01:00
Simone Bordet 386fafe790 Avoid copying sensitive headers when copying a Request. 2013-01-17 12:53:39 +01:00
Thomas Becker 8c3edce565 use existing keystore 2013-01-17 12:51:07 +01:00
Thomas Becker c8f4332c34 add missing keystore 2013-01-17 12:39:46 +01:00
Thomas Becker 9ebea3938d 393385: Make hostname verification configurable in SslContextFactory and enable it by default (See http://www.ietf.org/rfc/rfc2818.txt section 3.1) 2013-01-17 10:28:15 +01:00
Jesse McConnell e1c516c7d1 merge from jetty-8 and update license blocks. 2013-01-11 17:04:53 -06:00
Jesse McConnell 863944873d merge from 7 and update license blocks for 2013 2013-01-11 15:01:16 -06:00
Jesse McConnell a4dbb5823c update license blocks for 2013 2013-01-11 14:57:51 -06:00
Greg Wilkins 27c31fb403 jetty-9 organised imports. Cleaned up some TODOs 2013-01-11 16:37:32 +11:00
Simone Bordet b1882a3258 Fixed logging level: from into to debug. 2013-01-10 10:47:25 +01:00
Simone Bordet 57c5803cd8 Changed the default scheduler to ScheduledExecutorScheduler to reduce GC pressure. 2013-01-10 10:26:40 +01:00
Simone Bordet a374ac0cc8 Improved logging of removed connections. 2013-01-10 09:40:21 +01:00
Simone Bordet 55d8088f05 Made HttpDestination to use BlockingArrayQueue (that can grow) instead of
ArrayBlockingQueue, which allocates upfront memory even if it does not use it.
2012-12-21 17:13:07 +01:00
Simone Bordet b6e4f98cf7 Performance improvements to HTTP client after profiling session.
The profiling suggested to reduce the number of unneeded allocations
and this required a couple of API changes.
2012-12-19 16:27:20 +01:00
Simone Bordet c9f4513a89 Reworked HTTP client API, removing usage of Future. 2012-12-19 16:27:20 +01:00
Simone Bordet 58dff061e1 394552 - HEAD requests don't work for jetty-client.
Added a missing call to HttpParser.setHeadResponse()
to inform the parser that it is a response to a HEAD request.
2012-12-17 11:37:40 +01:00
Jan Bartel 43c9bba86d 393158 java.lang.IllegalStateException when sending an empty InputStream 2012-12-17 18:40:50 +11:00
Simone Bordet 2c583ccda4 Introduced Request.CommitListener to separate the pre-commit request event from the commit request event. 2012-12-13 21:01:58 +01:00
Simone Bordet 0682af3502 Introduced Response.HeaderListener to allow applications to control processing of headers. 2012-12-13 17:15:34 +01:00
Simone Bordet 5f17509a18 Fixed handling of IPv6 destinations. 2012-12-12 14:54:58 +01:00
Simone Bordet 8d0c90eef9 Recreating the CookieManager if the CookieStore is changed. 2012-12-12 14:54:22 +01:00
Simone Bordet b9b16529d5 Removed jetty-client's CookieStore to use java.net.CookieStore instead.
This unifies the usage of CookieStores between jetty-client and jetty-websocket, and hopefully other modules as well.
2012-12-12 10:18:18 +01:00
Simone Bordet fb233dbecb Exposed the Request passed to the constructor via a getter.
Subclasses can therefore pass a request built on-the-fly to the super constructor
and are able to get a reference to it.
2012-12-12 10:18:18 +01:00
Simone Bordet d6bd9df93a Aborting the response if the content length limit is reached. 2012-12-07 16:42:25 +01:00
Simone Bordet 97a2f3328f Added CookieStore.removeCookie() method and implementation. 2012-12-07 16:42:25 +01:00
Greg Wilkins 3e151901bf jetty-9 Use public HttpField 2012-12-08 01:41:01 +11:00
Greg Wilkins a20d984d30 jetty-9 Added Trie for cached string lookup. HttpFields does not use StringMap 2012-12-08 01:41:00 +11:00
Simone Bordet b2e878a7e8 + Introduced Request.content(ContentProvider content, String contentType)
+ Introduced a new renamings to clarify concepts
+ Vastly improved Javadocs.
2012-12-04 16:18:09 +01:00
Simone Bordet 6756cc7e75 Fixed compilation problem. 2012-11-23 14:13:07 +01:00
Simone Bordet b7cdb29a14 Simplified connection establishment code. 2012-11-23 13:16:32 +01:00
Greg Wilkins f89909e301 jetty-9 cleaning up dependencies 2012-11-23 16:25:57 +11:00
Simone Bordet 9f86d36d6c Fixed infinite recursion due to method renaming. 2012-11-23 12:18:52 +11:00
Simone Bordet b2c03b04f1 Made jetty-client module compile. 2012-11-23 12:18:51 +11:00
Greg Wilkins 7737dc8c76 394854 Implemented Promise 2012-11-23 12:18:51 +11:00
Simone Bordet 7771b6e27b Added constructor to specify the max length. 2012-11-20 15:44:46 +01:00
Simone Bordet 2079938120 Improved Usage class to show usages. 2012-11-14 12:52:11 +01:00
Simone Bordet e4cbb94ed6 Changed the read logic.
Before, if the stream had no content, InputStreamContentProvider's iterator
hasNext() was returning true, and next() was returning an empty buffer,
because the read was performed in next() and it was not possible to know
before reading whether the stream had content or was already at EOF.

Now the reads are performed in hasNext(), so that it is possible to return
immediately whether the stream is at EOF or not.
This solves a problem with ProxyServlet, where GET requests with no
content indication were proxied to the upstream server as GET requests
with chunked content, which in most cases were not understood by servers.
2012-11-14 12:12:29 +01:00