Commit Graph

11498 Commits

Author SHA1 Message Date
Greg Wilkins 19d6e36ab9 484657 - Support HSTS rfc6797 2015-12-23 17:15:24 +11:00
Greg Wilkins f65a7db8c5 458745 Async ISE in async Echo
The HttpOutput class was throwing an ISE if it was dispatched when PENDING
or UNREADY.  However this can occur when it has been dispatched, but a prior call
to onDataAvailable() does output after calling isReady().

The HttpOutput now does not enforce that part of the state machine and defers to
the application correctly calling isReady()
2015-12-23 15:09:56 +11:00
Jan Bartel 9fd3a9342f Fix duplicate declaration of felix plugin execution for jetty-runner 2015-12-23 14:22:19 +11:00
Jan Bartel 2dc78a5cd9 484822 Jetty ThreadMonitor memory leak 2015-12-23 14:14:08 +11:00
Simone Bordet 8f4cc73613 484585 - Avoid sending request using a connection that is idle timing out.
Rewritten handling of idle timeouts in light of issue #484718.
2015-12-21 11:47:05 +01:00
Simone Bordet 35c4c24099 484718 - Review idle timeout handling.
Introduced Connection.onIdleExpired().
2015-12-21 11:47:05 +01:00
Simone Bordet bcd282a8dd Updated javadocs and added missing removeListener() method. 2015-12-21 11:47:05 +01:00
Joakim Erdfelt 22f9c9826d Javadoc fixes 2015-12-19 12:46:52 -07:00
Joakim Erdfelt 71150a939c javadoc fixes 2015-12-18 14:21:10 -07:00
Joakim Erdfelt 4a07503a09 Javadoc updates
Conflicts:
	jetty-util/src/main/java/org/eclipse/jetty/util/Loader.java
	jetty-util/src/main/java/org/eclipse/jetty/util/Promise.java
2015-12-18 11:06:15 -07:00
Simone Bordet 988e596c71 484585 - Avoid sending request using a connection that is idle timing out.
Added guard to avoid that the idle timeout expires just before
sending the request.

Reworked the way idle timeouts are handled, to support the case where
the idle timeout just expired and the request can be tried on a
different connection/channel.
2015-12-18 15:56:31 +01:00
Simone Bordet 0713c17cfa 484683 - FastCGI request idle timeout is handled incorrectly.
Added required calls to notIdle() in request/response events, and
fixed the semantic of isOpen().
2015-12-18 15:56:31 +01:00
Simone Bordet 4eef2a347f Added factory method to create the HttpChannel. 2015-12-18 15:56:31 +01:00
Greg Wilkins cdfa515ca3 484624 Disable CachingWebAppClassLoader 2015-12-18 14:41:19 +11:00
Greg Wilkins 5cd676581c 484622 - Improve handling of Direct and Mapped buffers for static content
ResourceHttpContent now applies a maxBufferSize that is passed through the call to getContent
ResourceCache now accounts for the exact memory usage of content, which may have an indirect
buffer plus either a direct or mapped buffer.  Thus content size may be 0, 1 or 2 times the
file size.

Some more limited unit tests
2015-12-18 12:36:27 +11:00
Jan Bartel ecbfe7c1d0 484603 HashLoginService does not stop its PropertyUserStore 2015-12-18 11:52:56 +11:00
Joakim Erdfelt 88945478f7 Merge branch 'jetty-9.2.x' into jetty-9.3.x 2015-12-17 16:15:49 -07:00
Joakim Erdfelt 1543601968 484612 - Restore WebSocket Session.close() sending 1000/Normal status code 2015-12-17 16:15:06 -07:00
Joakim Erdfelt 9908910c3b Merge branch 'jetty-9.2.x' into jetty-9.3.x 2015-12-17 15:32:43 -07:00
Joakim Erdfelt 5f27a62aae 484397 - Unavoidable NullPointerException in onMessage-Handler for PongMessages 2015-12-17 15:31:50 -07:00
Joakim Erdfelt 3bec195d08 484440 - Swap WebSocket PathMappings for new jetty-http PathMappings
+ Deprecated jetty-server ServletPathSpec and RegexPathSpec
+ Moved all other code to using new jetty-http versions
2015-12-17 11:42:27 -07:00
Joakim Erdfelt 7c5bec1b48 Using Java 8 Predicate Function
+ Removing jetty-util (java 7) holdover Predicate.java
+ Converting use to (java 8) java.util.function.Predicate
2015-12-17 10:15:57 -07:00
Joakim Erdfelt 343aa066ae Merge branch 'jetty-9.2.x' into jetty-9.3.x
Conflicts:
	jetty-http/src/main/java/org/eclipse/jetty/http/HttpGenerator.java
	jetty-http/src/main/java/org/eclipse/jetty/http/PathMap.java
	jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/AbstractJettyMojo.java
	jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/WarPluginInfo.java
	jetty-rhttp/jetty-rhttp-gateway/src/main/java/org/eclipse/jetty/rhttp/gateway/Main.java
	jetty-security/src/main/java/org/eclipse/jetty/security/PropertyUserStore.java
	jetty-servlets/src/main/java/org/eclipse/jetty/servlets/CrossOriginFilter.java
	jetty-servlets/src/main/java/org/eclipse/jetty/servlets/GzipFilter.java
	jetty-servlets/src/main/java/org/eclipse/jetty/servlets/gzip/CompressedResponseWrapper.java
	jetty-servlets/src/main/java/org/eclipse/jetty/servlets/gzip/GzipHandler.java
	jetty-util/src/main/java/org/eclipse/jetty/util/IncludeExclude.java
	jetty-util/src/main/java/org/eclipse/jetty/util/RegexSet.java
	jetty-util/src/test/java/org/eclipse/jetty/util/IncludeExcludeTest.java
	jetty-util/src/test/java/org/eclipse/jetty/util/ssl/SslContextFactoryTest.java
2015-12-16 12:56:13 -07:00
Joakim Erdfelt e6901b2646 484349 - Promote WebSocket PathMappings / PathSpec to Jetty Http
+ More testing, more improvements
2015-12-16 11:06:17 -07:00
Joakim Erdfelt 4f9d785b46 Revert "482042 - New API, Allow customization of ServletHandler path mapping"
This reverts commit 77d4b54082.
2015-12-16 10:08:02 -07:00
Matt Gilman abe5d090bb [447816] - ServletHolder#compareTo not transitive
Updating compareTo to properly order when one _className is null and the other is not.

Signed-off-by: Matt Gilman <matt.c.gilman@gmail.com>
2015-12-16 09:24:40 +11:00
Joakim Erdfelt 6e0ad429d9 484350 - Allow GzipHandler path include/exclude to use regex
+ Overhauled IncludeExclude to use java 8 predicate
+ Introduced PathSpecSet to standardize path IncludeExclude
+ GzipHandler now uses PathSpecSet for paths

Conflicts:
	jetty-http/src/main/java/org/eclipse/jetty/http/PathMap.java
	jetty-servlets/src/main/java/org/eclipse/jetty/servlets/gzip/GzipHandler.java
	jetty-util/src/main/java/org/eclipse/jetty/util/IncludeExclude.java
	jetty-util/src/main/java/org/eclipse/jetty/util/RegexSet.java
2015-12-15 15:23:29 -07:00
Joakim Erdfelt 77d4b54082 482042 - New API, Allow customization of ServletHandler path mapping
+ Swapping out PathMap for PathMappings in ServletHandler

Conflicts:
	jetty-servlet/src/main/java/org/eclipse/jetty/servlet/DefaultServlet.java
	jetty-servlet/src/main/java/org/eclipse/jetty/servlet/ServletHandler.java
2015-12-15 14:41:37 -07:00
Joakim Erdfelt a52a182369 484349 - Promote WebSocket PathMappings / PathSpec to Jetty Http
+ Moving PathMappings from jetty-websocket to jetty-http
 + Renaming WebSocketPathSpec to UriTemplatePathSpec
 + Improving implementation with knowledge gained from PathMap
   and PathMapTest cases.
2015-12-15 13:57:01 -07:00
Simone Bordet 717fc7819d 484262 - Race condition between GOAWAY disconnect and ability to make new request.
Fixed by making sure that when a peer received a GOAWAY frame, it
does not also notify the onFailure() callback.
2015-12-15 15:35:04 +01:00
Simone Bordet d4d9ceea86 Improved toString(). 2015-12-15 14:11:56 +01:00
Simone Bordet bf9f39dc17 Improved exception reporting. 2015-12-14 15:00:19 +01:00
Simone Bordet 8d28be5786 484210 - HttpClient over HTTP/2 should honor maxConcurrentStreams.
Fixed by sending queued requests in a loop up to maxConcurrentStreams.
Also updating the maxConcurrentStreams value when received from the
server.
2015-12-11 18:00:48 +01:00
Simone Bordet e674d3ec5e 483878 - Parallel requests stuck via the http client transport over HTTP/2. 2015-12-11 17:58:31 +01:00
Simone Bordet 77e0df1193 484167 - GOAWAY frames aren't handling disconnects appropriately on Client.
Improved handling of the failure case.
2015-12-11 12:34:48 +01:00
Simone Bordet c3889873f6 484167 - GOAWAY frames aren't handling disconnects appropriately on Client.
Fixed by overriding onClose() to listen for GOAWAY frames, and acting
appropriately.
2015-12-11 12:25:54 +01:00
Simone Bordet e7d8980952 Improved generate/parse tests. 2015-12-09 11:56:49 +01:00
Simone Bordet 35da4a3c54 483878 - Parallel requests stuck via the http client transport over HTTP/2.
Fixed by recycling correctly the blockBuffer.
2015-12-09 11:56:26 +01:00
Simone Bordet c5e56e72e6 Added concurrent load tests. 2015-12-09 10:51:24 +01:00
Joakim Erdfelt bf104f71ab GzipHandler Deprecations and User-Agent
+ Adding javadoc @deprecated for deprecated methods
+ Adding exclude support for user-agent
2015-12-08 18:40:48 -07:00
Joakim Erdfelt 5e3fbbccd0 Backporting GzipHandler's IncludeExclude configs 2015-12-08 15:51:25 -07:00
Joakim Erdfelt 7cdc58e6b9 Merge branch 'jetty-9.2.x' into feature/gziphandler-config 2015-12-08 14:56:26 -07:00
Joakim Erdfelt e2a20e0465 Using Map interface to get around ConcurrentHashMap.keySet() bug with Java 8
See https://gist.github.com/AlainODea/1375759b8720a3f9f094
for details

Conflicts:
	jetty-servlet/src/main/java/org/eclipse/jetty/servlet/listener/ELContextCleaner.java
2015-12-08 14:55:45 -07:00
Greg Wilkins 3527c6a71b StringUtil.csvSplit(String)
Conflicts:
	jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/AbstractJettyMojo.java
	jetty-security/src/main/java/org/eclipse/jetty/security/PropertyUserStore.java
	jetty-server/src/main/java/org/eclipse/jetty/server/handler/ContextHandler.java
	jetty-servlets/src/main/java/org/eclipse/jetty/servlets/PushCacheFilter.java
	jetty-util/src/main/java/org/eclipse/jetty/util/StringUtil.java
	jetty-xml/src/main/java/org/eclipse/jetty/xml/XmlConfiguration.java
2015-12-08 14:54:33 -07:00
Simone Bordet 8d6206b8c7 Merged branch 'jetty-9.2.x' into 'jetty-9.3.x'. 2015-12-08 22:20:05 +01:00
Simone Bordet 1693dd135d 483857 - jetty-client onComplete isn't called in case of exception in GZIPContentDecoder.
Fixed by catching the exceptions and failing the callbacks.

Also using return values from HttpReceiver to compute what to
return to the parser.
2015-12-08 22:10:27 +01:00
Simone Bordet e4a5820f15 Merged branch 'jetty-9.2.x' into 'jetty-9.3.x'. 2015-12-08 22:05:20 +01:00
Simone Bordet 657b570716 482243 Fixed GzipHandler for Include.
Because AbstractCompressedStream is a jetty-servlets class that can
be included in web applications, it cannot reference server classes
such as Response.
The check for inclusion is now done by looking at the dispatcher type.
2015-12-08 21:57:04 +01:00
Simone Bordet 9c673e542d Merged branch 'jetty-9.2.x' into 'jetty-9.3.x'. 2015-12-08 13:02:20 +01:00
Simone Bordet e6f23a692e 482270 - Expose upgrade request locales.
Exposed as a user property.
2015-12-08 12:04:22 +01:00