Commit Graph

2210 Commits

Author SHA1 Message Date
Jan Bartel a8193c0eb8 485063 After stopping JettyWebAppContext, it still contains reference to old WebAppClassLoader via ServerContainer bean 2016-01-07 11:12:11 +11:00
Jan Bartel a934db118d 485063 After stopping JettyWebAppContext, it still contains reference to old WebAppClassLoader via ServerContainer bean 2016-01-07 11:11:10 +11:00
Joakim Erdfelt ac24196b0d Happy New Year 2016 2016-01-04 14:34:20 -07:00
Joakim Erdfelt cd39fd84fe Happy New Year 2016 2016-01-04 14:31:22 -07:00
Joakim Erdfelt b5db18378d Happy New Year 2016 2016-01-04 14:21:26 -07:00
Joakim Erdfelt e0ea078db2 Merge branch 'jetty-9.3.x' 2015-12-17 16:16:04 -07: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 60d09bc958 Merge branch 'jetty-9.3.x' 2015-12-17 15:32:59 -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 31cd3fee84 Merge branch 'jetty-9.3.x'
Conflicts:
	jetty-http/src/main/java/org/eclipse/jetty/http/PathMap.java
	jetty-http/src/main/java/org/eclipse/jetty/http/pathmap/PathSpecSet.java
	jetty-server/src/main/java/org/eclipse/jetty/server/handler/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-17 12:51:57 -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
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 9aa6dc1e7d Merged branch 'jetty-9.3.x' into 'master'. 2015-12-08 13:02:55 +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
Joakim Erdfelt b9c1535552 481567 - permessage-deflate causing data-dependent ju.zip.DataFormatException: invalid stored block lengths
+ Reworked PerMessageDeflateExtensionTest to test with different
  modes (http/ws vs https/wss), different messages sizes, and
  input buffer sizes (these various configurations do trigger
  the reported bug)
+ Made CompressExtension loop over the input buffer if the buffer
  happens to not be entirely consumed.
2015-12-07 13:15:29 -07:00
Joakim Erdfelt 97722aeea8 Merge branch 'jetty-9.3.x' 2015-12-02 12:20:06 -07:00
Joakim Erdfelt bae1138211 Fixing test expectations on Decorator counts 2015-12-02 12:19:52 -07:00
Greg Wilkins a311c8bde1 480904 - jetty-util Loader simplification
The Loader has been simplified to now just be a switch between loading from the context loader,
the same loader as another class or the system loader.    Multiple loaders will never be tried.

A new runWithServerClassAccess(PriviledgedAction) method has been added to WebAppClassLoader, that
is now used during configuration for actions that need access to both the WEB-INF/lib classes and
the server classes (eg jetty-web.xml and env.xml).

The JMX MBean mechanism has also been modified to look for an MBean class in the same loader that
object came from before attempting the context loader (only if different).
2015-11-19 12:14:05 +11:00
Greg Wilkins ff0d1b4c14 481903 Module Descriptions 2015-11-12 10:48:04 +11:00
Joakim Erdfelt edf686fe0a Updating to version 9.3.7-SNAPSHOT 2015-11-06 12:13:00 -07:00
Joakim Erdfelt d737e1c638 Updating to version 9.3.6.v20151106 2015-11-06 11:09:32 -07:00
Joakim Erdfelt ec8f8d3e4f Updating to version 9.2.15-SNAPSHOT 2015-11-06 11:06:48 -07:00
Joakim Erdfelt ecba378f5c Updating to version 9.2.14.v20151106 2015-11-06 10:32:14 -07:00
Greg Wilkins 7843b7348e 480827 Implemented Unix Domain Socket Connector
Squashed commit of the following:

commit fbb680ba7cdb73495524ea9e5b0f49caee7f68d8
Merge: ed2550b 64ea0db
Author: Greg Wilkins <gregw@webtide.com>
Date:   Fri Nov 6 10:44:00 2015 +1100

    Merge branch 'master' into unix-socket

commit ed2550b50f978e1984e19fbda642baf450dbe6a1
Merge: 88d7b35 de137ab
Author: Greg Wilkins <gregw@webtide.com>
Date:   Thu Nov 5 18:41:25 2015 +1100

    Merge branch 'master' into unix-socket

commit 88d7b35f885de2da7dec836e6e4ae2b522d517f0
Merge: 7d4155f 3e2658a
Author: Greg Wilkins <gregw@webtide.com>
Date:   Thu Nov 5 17:38:27 2015 +1100

    Merge branch 'master' into unix-socket

commit 7d4155fe4a407d493683b66709bc638879b0b422
Author: Greg Wilkins <gregw@webtide.com>
Date:   Thu Nov 5 17:24:48 2015 +1100

    Unix socket configuration

commit 2737b19f73ad153c20e1762874558a5d62849f90
Merge: cd0cc2e 92cc44c
Author: Greg Wilkins <gregw@webtide.com>
Date:   Wed Nov 4 15:13:40 2015 +1100

    Merge branch 'master' into unix-socket

    Conflicts:
    	jetty-server/src/main/java/org/eclipse/jetty/server/SecureRequestCustomizer.java

commit cd0cc2ef36a558d948bf26aff4f9e3519da2f823
Merge: 639753b 303f98e
Author: Greg Wilkins <gregw@webtide.com>
Date:   Mon Nov 2 12:21:19 2015 +1100

    Merge branch 'master' into unix-socket

commit 639753b5ed37778d7231acfe9d52039aed66351e
Author: Greg Wilkins <gregw@webtide.com>
Date:   Fri Oct 30 15:42:58 2015 +1100

    local connectors report NOIP address

commit 6d38c4195f145b99f775a06d546960b119094b0c
Author: Greg Wilkins <gregw@webtide.com>
Date:   Fri Oct 30 12:11:13 2015 +1100

    Gentler ssl close test

commit 40b46b66a738c9187f859d522a0165bb09b113c8
Merge: b7eb082 fa53b11
Author: Greg Wilkins <gregw@webtide.com>
Date:   Fri Oct 30 11:09:42 2015 +1100

    Merge branch 'master' into unix-socket

commit b7eb082be44864c058b6f01b10364013596d3650
Author: Greg Wilkins <gregw@webtide.com>
Date:   Fri Oct 30 08:34:30 2015 +1100

    SecureRequestCustomizer for UnixSockets

commit edbb3c080200b4c6aa2836eff6c81bf31a73a8c1
Merge: 90e8cc0 de7ac72
Author: Greg Wilkins <gregw@webtide.com>
Date:   Thu Oct 29 19:47:05 2015 +1100

    Merge branch 'master' into unix-socket

commit 90e8cc060ff6dc4b249818db38334ffa543f002f
Author: Greg Wilkins <gregw@webtide.com>
Date:   Thu Oct 29 19:31:50 2015 +1100

    use proxy connection

commit b1772ef5dcac9ddf9bb5ecda1cda6d038ca21755
Merge: e95a932 9fe7332
Author: Greg Wilkins <gregw@webtide.com>
Date:   Thu Oct 29 16:46:29 2015 +1100

    Merge branch 'master' into unix-socket

commit e95a932bda5a96bf98ada4fb47664790af2aa0a2
Author: Greg Wilkins <gregw@webtide.com>
Date:   Wed Oct 28 15:58:25 2015 +1100

    fixed config

commit f8963b2ed6b6b4b96f1d9403194c9d50ab1f12fd
Merge: 9c56b53 8b27484
Author: Greg Wilkins <gregw@webtide.com>
Date:   Wed Oct 28 15:34:28 2015 +1100

    Merge branch 'master' into unix-socket

commit 9c56b53cbec20d98e5cb05cf8d1f668fe84b95e0
Merge: 298a311 39768f8
Author: Greg Wilkins <gregw@webtide.com>
Date:   Mon Oct 26 13:04:34 2015 +1100

    Merge branch 'master' into unix-socket

commit 298a311af952ad3ef5d1c7635deabf47bddaa1c6
Author: Greg Wilkins <gregw@webtide.com>
Date:   Fri Oct 23 15:24:19 2015 +1100

    Async accepting

commit 8266753d124c04ec8bca8aa02be1ef3d826d6769
Author: Greg Wilkins <gregw@webtide.com>
Date:   Fri Oct 23 14:45:35 2015 +1100

    set acceptors

commit 6a56c5b9e19063fcb95cdc1228adf723c0d41362
Author: Greg Wilkins <gregw@webtide.com>
Date:   Fri Oct 23 11:44:54 2015 +1100

    licence

commit d80e5748e6c4327bae57de2af01983990dd2afe0
Author: Greg Wilkins <gregw@webtide.com>
Date:   Fri Oct 23 11:24:14 2015 +1100

    unixsocket work in progress adding modules

commit cf0c1153d9966cc7182ba29411527b4341c34da6
Merge: 645b671 c39bfa2
Author: Greg Wilkins <gregw@webtide.com>
Date:   Fri Oct 23 08:52:01 2015 +1100

    Merge branch 'master' into unix-socket

commit 645b6712d37282c26011a95c8c98e45c249b2e5f
Author: Greg Wilkins <gregw@webtide.com>
Date:   Fri Oct 23 08:49:52 2015 +1100

    IP headers

commit 67b210b9ea81af68ce3848a114bbbd1b80a8ca52
Author: Greg Wilkins <gregw@webtide.com>
Date:   Thu Oct 22 23:48:57 2015 +1100

    working with haproxy

commit e4fce9cf5d896a9a29a7c6280fcaa0336dfcc0f2
Author: Greg Wilkins <gregw@webtide.com>
Date:   Thu Oct 22 18:25:09 2015 +1100

    unixsocket working

commit 6f013788cad44e6641cd89720c5e7f3652cdc257
Author: Greg Wilkins <gregw@webtide.com>
Date:   Thu Oct 22 15:39:55 2015 +1100

    work in progress
2015-11-06 11:17:46 +11:00
Joakim Erdfelt 4dfd68b315 Merge branch 'jetty-9.3.x'
Conflicts:
	aggregates/jetty-all-compact3/pom.xml
	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/cdi-core/pom.xml
	jetty-cdi/cdi-full-servlet/pom.xml
	jetty-cdi/cdi-servlet/pom.xml
	jetty-cdi/cdi-websocket/pom.xml
	jetty-cdi/pom.xml
	jetty-cdi/test-cdi-webapp/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-http2/http2-client/pom.xml
	jetty-http2/http2-common/pom.xml
	jetty-http2/http2-hpack/pom.xml
	jetty-http2/http2-http-client-transport/pom.xml
	jetty-http2/http2-server/pom.xml
	jetty-http2/pom.xml
	jetty-infinispan/pom.xml
	jetty-io/pom.xml
	jetty-jaas/pom.xml
	jetty-jaspi/pom.xml
	jetty-jmx/pom.xml
	jetty-jndi/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/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-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-http-client-transport/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-infinispan-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-10-13 08:53:35 -07:00
Joakim Erdfelt dde32787c4 Updating to version 9.3.6-SNAPSHOT 2015-10-12 15:47:37 -07:00
Joakim Erdfelt 29722bd880 Updating to version 9.3.5.v20151012 2015-10-12 15:10:39 -07:00
Joakim Erdfelt e6ffa35b2c 479584 - WS Session does not contain UpgradeRequest information in WebSocketAdapter.onWebSocketConnect callback
+ Adding missing testcase
+ Adding missing request information
2015-10-12 11:19:50 -07:00
Joakim Erdfelt b4456d96dd Disabling flappy test 2015-10-09 10:14:35 -07:00
Joakim Erdfelt 2cce7510e1 Updating to 9.3.5-SNAPSHOT 2015-10-08 17:49:09 -07:00
Joakim Erdfelt 9cf0e34a1d Updating to version 9.4.0-SNAPSHOT 2015-10-07 15:41:32 -07:00
Joakim Erdfelt 37296bec3c Updating to version 9.3.4.v20151007 2015-10-07 14:58:38 -07:00
Joakim Erdfelt 6aae1265bd Removing redudant close reason trim (handled elsewhere now) 2015-10-02 10:47:10 -07:00
Joakim Erdfelt 64d5718e9e Removing System.out 2015-10-02 10:43:47 -07:00
Joakim Erdfelt cd17ff932a 478829 - WebsocketSession not cleaned up / memory leak
+ WebSocket Connection objects no longer need to
  hold a reference to the WebSocketSession object
  eliminating another reference to the WebSocketSession
  that could hold GC efforts to clean it up
2015-10-02 10:33:32 -07:00
Joakim Erdfelt 1e8d0db743 478829 - WebsocketSession not cleaned up / memory leak
+ Reducing looping references Session -> otherObj -> Session
 + Using Container LifeCycle bean management more consistently
 + All sessions are now child beans
 + A stopped session that hasn't been closed, will auto-close now
 + Using SessionListener more consistently
 + Client ConnectionManager no longer tracks Sessions
 + EventDriver stop cleans up its Session references
 + Moving all DummyConnection test classes to websocket-common:tests
2015-10-01 18:18:20 -07:00
Joakim Erdfelt 8946badbed Extracting IBlockheadServerConnection for refactoring prep 2015-09-30 12:47:31 -07:00
Joakim Erdfelt b865b50cb6 Extracting IBlockheadClient for refactoring prep 2015-09-30 12:47:31 -07:00
Joakim Erdfelt f22fcde971 474936 - WebSocketSessions are not always cleaned out from openSessions
+ Calling onSessionOpen() before App.onOpen()
  This helps, as there is a race for the onSessionOpen()
  in the original behavior with short lived sockets.
  The short lived socket could handle onSessionClosed()
  before onSessionOpen() had a chance, making the close
  fail to remove the session from openSessions, and then
  the slower add occurs later, adding it into the openSession
+ Minor cleanup in IOState
2015-09-25 09:49:29 -07:00
Joakim Erdfelt 1bca608b48 Breaking out close logging into child logger of AbstractWebSocketConnection 2015-09-25 09:49:29 -07:00
Joakim Erdfelt 3901fcbb60 474936 - WebSocketSessions are not always cleaned out from openSessions
+ Adding additional testcase to verify behavior
2015-09-22 14:54:18 -07:00
Jan Bartel 03a601f2b2 477385 Make jetty osgi manifests only resolve jetty packages against a single distro version 2015-09-16 19:13:47 +10:00
Joakim Erdfelt f2cf574035 Removing JsrBasicRemote.sendText() info message 2015-09-09 16:01:57 -07:00
Jesse McConnell 20ffd0dd0b Merge branch 'release-9.3.3' 2015-08-31 13:41:21 -05:00
Joakim Erdfelt 6fad345161 475209 - WebSocketServerFactory should not hand null object to DecoratedObjectFactory 2015-08-27 15:36:57 -07:00
Joakim Erdfelt 5312f2c0d7 Merge branch 'jetty-9.2.x'
Conflicts:
	jetty-util/src/main/java/org/eclipse/jetty/util/BufferUtil.java
	jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/WebSocketSession.java
2015-08-27 15:34:45 -07:00
Joakim Erdfelt 25cfffbe1e 428474 - Expose batch mode in the Jetty WebSocket API 2015-08-27 14:53:21 -07:00
Joakim Erdfelt 11b5d320f8 472082 - isOpen returns true on CLOSING Connection
+ Minor tweak to test for isOutputAvailable() instead of connection
  state.
2015-08-27 12:52:52 -07:00
Joakim Erdfelt ef067b2624 476023 - Incorrect trimming of WebSocket close reason
+ Fixed CloseStatus.trimMaxReasonLength() to perform trim correctly
+ Deprecated CloseStatus.trimMaxReasonLength() because it creates
  to many objects
+ Removed use of CloseStatus.trimMaxReasonLength() in implementation
  code
+ Improved CloseInfo ...
  + tracks reason via utf8 byte array (not String object)
  + trims utf8 byte array as-needed
+ All non-jsr implementations use CloseInfo logic
2015-08-27 11:12:51 -07:00
Joakim Erdfelt 54e3d0a2e8 476049 - When using WebSocket Session.close() there should be no status code or reason sent 2015-08-27 09:33:44 -07:00
Joakim Erdfelt 9c855bee76 474936 - WebSocketSessions are not always cleaned out from openSessions
+ Adding testcase
+ Enabling Connection.onClose() -> ioState.onDisconnected()

Conflicts:
	jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/WebSocketCloseTest.java
2015-08-27 09:33:28 -07:00
Joakim Erdfelt cb0852c53c 476049 - When using WebSocket Session.close() there should be no status code or reason sent 2015-08-27 09:27:28 -07:00
Jesse McConnell 6409366499 [maven-release-plugin] prepare for next development iteration 2015-08-27 10:11:29 -05:00
Jesse McConnell 3086adc965 [maven-release-plugin] prepare release jetty-9.3.3.v20150827 2015-08-27 10:11:21 -05:00
Jesse McConnell be35fd72cd ignore 2015-08-27 09:40:45 -05:00
Jesse McConnell 3a975426bf @Ignore for release 2015-08-27 09:17:45 -05:00
Jesse McConnell f5d1fb1058 Merge branch 'master' into release-9.3.3 2015-08-27 08:31:22 -05:00
Joakim Erdfelt c07f11a1fd 474936 - WebSocketSessions are not always cleaned out from openSessions
+ Adding testcase
+ Enabling Connection.onClose() -> ioState.onDisconnected()
2015-08-26 17:08:14 -07:00
Jesse McConnell f8734f23ce [maven-release-plugin] prepare for next development iteration 2015-08-25 14:10:01 -05:00
Jesse McConnell e9edf4c24b [maven-release-plugin] prepare release jetty-9.3.3.v20150825 2015-08-25 14:09:54 -05:00
Joakim Erdfelt 2f4f4a2247 Minor improvements in WebSocketConnection.toString() 2015-08-14 14:48:51 -07:00
Joakim Erdfelt 25b692046f Merge branch 'jetty-9.2.x' 2015-08-07 09:40:11 -07:00
Joakim Erdfelt 55862e229e 471055 - Restore legacy/experimental WebSocket extensions (deflate-frame) 2015-08-07 09:39:12 -07:00
Joakim Erdfelt a71c543a7e Revert "Removing old websocket extensions x-webkit-deflate-frame and deflate-frame"
This reverts commit ec9504aab8.
2015-08-07 07:37:06 -07:00
Joakim Erdfelt 5c0906ed6c 474454 - Backport permessage-deflate from Jetty 9.3.x to 9.2.x
+ post cherry-pick merge cleanup
2015-08-06 15:55:24 -07:00
Joakim Erdfelt c424b58153 474453 - Tiny buffers (under 7 bytes) fail to compress in permessage-deflate
+ Ensure compress() is sanely using Deflater.deflate()
+ Ensure output buffer in .deflate() is always a minimum
  of 256 bytes
2015-08-06 15:16:32 -07:00
Joakim Erdfelt ffcedde60a 474068 - Update WebSocket Extension for permessage-deflate draft-22
+ Copying inflated byte buffers
+ Simplifying Accumulator of buffer/chunks
+ Removing references to frame compression extensions
2015-08-06 15:16:32 -07:00
Joakim Erdfelt aac9568a30 Work on permessage-deflate continues
Conflicts:
	jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/FrameCompressionExtensionTest.java
2015-08-06 15:16:30 -07:00
Joakim Erdfelt 39f9f3ad44 Removing old websocket extensions x-webkit-deflate-frame and deflate-frame
Conflicts:
	jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/extensions/compress/DeflateFrameExtensionTest.java
2015-08-06 15:16:11 -07:00
Joakim Erdfelt 2a1e0659d1 474453 - Tiny buffers (under 7 bytes) fail to compress in permessage-deflate
+ Ensure compress() is sanely using Deflater.deflate()
+ Ensure output buffer in .deflate() is always a minimum
  of 256 bytes
2015-08-06 15:10:55 -07:00
Joakim Erdfelt 47d81db015 474455 - Enable permessage-deflate WebSocket extension 2015-08-06 15:10:55 -07:00
Simone Bordet 5324d367c5 Merged branch 'jetty-9.2.x' into 'master'. 2015-08-06 17:33:30 +02:00
Simone Bordet 020cbe1172 Removed redundant logging statement. 2015-08-06 17:31:23 +02:00
Joakim Erdfelt 3c99c9c9b9 Merge branch 'release-9.3.2' 2015-08-03 10:27:52 -07:00
Joakim Erdfelt bf81ac9d50 474068 - Update WebSocket Extension for permessage-deflate draft-22
+ Copying inflated byte buffers
+ Simplifying Accumulator of buffer/chunks
+ Removing references to frame compression extensions
2015-07-31 14:05:50 -07:00
Joakim Erdfelt a3684f7fb8 [maven-release-plugin] prepare for next development iteration 2015-07-30 09:47:57 -07:00
Joakim Erdfelt 798fc8118b [maven-release-plugin] prepare release jetty-9.2.13.v20150730 2015-07-30 09:47:48 -07:00
Joakim Erdfelt 4b3879845d [maven-release-plugin] prepare for next development iteration 2015-07-30 07:02:10 -07:00
Joakim Erdfelt 6b7e9ac4b0 [maven-release-plugin] prepare release jetty-9.3.2.v20150730 2015-07-30 07:02:02 -07:00
Greg Wilkins 607239028c 470727 - Thread Starvation of selector wakeups.
Changed the CallBack.NonBlocking to a default Callback.isNonBlocking, so that wrapping callbacks can determine if they are NonBlocking or not.
2015-07-22 17:31:54 +10:00
Jesse McConnell 9b790c38ce [maven-release-plugin] prepare for next development iteration 2015-07-14 11:42:34 -05:00
Jesse McConnell b35d32f2b8 [maven-release-plugin] prepare release jetty-9.3.1.v20150714 2015-07-14 11:42:28 -05:00
Jesse McConnell 7204707902 [maven-release-plugin] prepare for next development iteration 2015-07-09 12:14:38 -05:00
Jesse McConnell 3b1533673e [maven-release-plugin] prepare release jetty-9.2.12.v20150709 2015-07-09 12:14:30 -05:00
Greg Wilkins 3e401a62e9 StringUtil.csvSplit(String) 2015-06-19 16:48:53 +10:00
Jesse McConnell 60e45a940e [maven-release-plugin] prepare for next development iteration 2015-06-15 15:34:11 -05:00
Jesse McConnell d3dec8d513 [maven-release-plugin] prepare release jetty-9.2.12.M0 2015-06-15 15:34:03 -05:00
Joakim Erdfelt cf6c4a914e Updating version to 9.3.1-SNAPSHOT 2015-06-15 10:25:49 -07:00
Joakim Erdfelt 1a9da9f9e4 Updating versions to 9.3.0.v20150612 2015-06-12 09:34:24 -07:00
Joakim Erdfelt c6ac82f50b Merge branch 'master' into release-9.3 2015-06-12 09:30:46 -07:00
Joakim Erdfelt 7c737a587b Removing [version] sections in modules 2015-06-12 09:14:34 -07:00
Joakim Erdfelt 496b4dfc83 [maven-release-plugin] prepare for next development iteration 2015-06-11 15:08:36 -07:00
Joakim Erdfelt f53c5d8fac [maven-release-plugin] prepare release jetty-9.3.0.v20150611 2015-06-11 15:08:29 -07:00
Joakim Erdfelt 665fd20995 469991 - Fix logging levels in websocket client UpgradeConnection
+ Cleanup of logging levels
2015-06-11 12:12:09 -07: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
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
Greg Wilkins 69bf5ab46c Merge remote-tracking branch 'origin/jetty-9.2.x'
Conflicts:
	jetty-http-spi/src/main/java/org/eclipse/jetty/http/spi/HttpSpiContextHandler.java
	jetty-server/src/main/java/org/eclipse/jetty/server/handler/ErrorHandler.java
	jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/WebSocketServerFactory.java
2015-05-29 21:05:26 +10:00
Greg Wilkins 4472b614b9 468747 - XSS vulnerability in HttpSpiContextHandler 2015-05-29 20:12:57 +10: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
Joakim Erdfelt f4f5157ab6 Work on permessage-deflate continues 2015-05-14 07:45:25 -07:00
Joakim Erdfelt eb638777d0 Adding IO.close(Closeable) and using it. 2015-05-14 07:45:25 -07:00
Joakim Erdfelt aba2e083d8 Updating BrowserDebugTool for new extension reality 2015-05-14 07:45:25 -07:00
Joakim Erdfelt 055fb5c695 Removing x-webkit-deflate-frame from example 2015-05-14 07:45:25 -07:00
Joakim Erdfelt a1bd9f7f50 Updating tests for draft 21 spec of permessage-deflate 2015-05-14 07:45:25 -07:00
Joakim Erdfelt ec9504aab8 Removing old websocket extensions x-webkit-deflate-frame and deflate-frame 2015-05-14 07:45:25 -07:00
Joakim Erdfelt 1f7f4dfa82 Reworking FrameCaptureExtension for timestamped in/out files of frames 2015-05-14 07:45:25 -07:00
Joakim Erdfelt b6afd2db4a Renaming FrameDebugExtension to FrameCaptureExtension to better reflect usage 2015-05-14 07:45:25 -07:00
Greg Wilkins 435bed0c37 fixed import into eclipse IDE 2015-05-13 23:13:16 +10:00
Joakim Erdfelt 72593955c9 467043 - WebSocketClient close codes on protocol violation reported as policy violation
+ Correcting onOpen and onMessage handling of throwables
  to account for information from CloseException conditions.
2015-05-11 13:49:17 -07:00
Joakim Erdfelt 9261274699 Cleanup of toString() output 2015-05-11 13:29:54 -07:00
Joakim Erdfelt d0251349c5 467036 - WebSocketClient fails to process immediate frames from server
+ Using Connection.UpgradeFrom and Connection.UpgradeTo with
  client connections and endpoints too.
2015-05-11 13:28:58 -07:00
Joakim Erdfelt 77e42fb05a Updating WebSocket JettyListenerEventDriver for new Listeners
+ Basing implementation on instances of WebSocketConnectionListener
+ Adding support for:
  * WebSocketListener
  * WebSocketPartialListener
  * WebSocketPingPongListener
  * WebSocketFrameListener
2015-05-06 15:49:25 -07:00
Joakim Erdfelt 8e7f05190d 466618 - Partial WebSocket Text delivery does not like incomplete UTF8 sequences
+ Adding implementation of Utf8PartialBuilder to JSR356 Endpoints
2015-05-06 15:49:25 -07:00
Joakim Erdfelt 744b9e4c62 466619 - Add WebSocketFrameListener for receiving WebSocket Frame information
+ Adding WebSocketFrameListener and example use case
2015-05-06 15:49:25 -07:00
Joakim Erdfelt ecac4b4912 414479 - Add WebSocketPingPongListener for those that want PING/PONG payload data
+ Adding WebSocketPingPongListener and example case
2015-05-06 15:49:25 -07:00
Joakim Erdfelt 7e7b2e2950 420678 - Add WebSocketPartialListener to support receiving partial WebSocket TEXT/BINARY messages
+ Reworking WebSocketListener to be based on new
  WebSocketConnectionListener
+ Adding new WebSocketPartialListener and example
2015-05-06 15:49:25 -07:00
Joakim Erdfelt e801cf3374 466618 - Partial WebSocket Text delivery does not like incomplete UTF8 sequences
+ Adding alternative to Utf8StringBuilder that doesn't throw exception
  on incomplete UTF8 sequences, specifically for partial message
  handling
2015-05-06 15:49:25 -07:00
Joakim Erdfelt ed22d7e0de 464727 - Update Javadoc for Java 8 DocLint 2015-04-22 16:11:01 -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
Joakim Erdfelt 10099dcb01 Marking Frame.isLast() as deprecated in favor of .isFin() 2015-04-15 14:38:35 -07:00
Simone Bordet 6263972d1e Merged branch 'jetty-9.2.x' into 'master'. 2015-03-31 13:58:41 +02:00
Joakim Erdfelt f06e846812 Adding some websocket client upgrade logging 2015-03-27 15:32:50 -07: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
Joakim Erdfelt e21d24b035 454934 - WebSocketClient / connectToServer can block indefinitely during upgrade failure
+ Handling EOF and Timeout in a clearer way inside UpgradeConnection
2015-03-18 16:23:39 -07:00
Joakim Erdfelt 57b6debb87 454934 - WebSocketClient / connectToServer can block indefinitely during upgrade failure
+ Handling EOF and Timeout in a clearer way inside UpgradeConnection
2015-03-18 16:20:50 -07:00
Joakim Erdfelt 1e3fe991e3 Increasing logging level for when websocket fails to open due to exception 2015-03-17 10:22:05 -07:00
Joakim Erdfelt 6e952d4618 Merge branch 'jetty-9.2.x'
Conflicts:
	jetty-start/src/main/java/org/eclipse/jetty/start/Main.java
	jetty-start/src/test/java/org/eclipse/jetty/start/LicensingTest.java
2015-03-16 10:25:15 -07:00
Joakim Erdfelt 79fb2a4083 Fixing build 2015-03-12 10:42:09 -07:00
Joakim Erdfelt b75f8dcda4 Cleaning up cdi-websocket in prep for merge 2015-03-12 10:09:53 -07:00
Joakim Erdfelt 0301de099d Delaying decoration of websocket endpoints 2015-03-12 10:09:52 -07:00
Joakim Erdfelt dc81cda742 Using Jetty component listeners for CDI 2015-03-12 10:09:52 -07:00
Joakim Erdfelt 31ee46d482 453834 - CDI Support for WebSocket
+ Breaking down jetty-cdi into 3 modules
  * cdi-core
  * cdi-servlet
  * cdi-websocket
+ Creating WebSocketScope for cdi-websocket
+ Creating @Produces for jetty websocket api session
  and javax.websocket.Session
+ Unit tests for new functionality
2015-03-12 10:09:52 -07:00
Joakim Erdfelt 3008ab85e5 This developer is a dummy 2015-03-12 10:09:52 -07:00
Joakim Erdfelt 87246263b8 453834 - CDI Support for WebSocket
+ Verifying ServletContextHandler behavior of Decorators
+ Marking old ServletContextHandler methods as deprecated
+ Updates to DecoratedObjectFactory
+ Removing customized weld scopes/context (for now)
+ Deferring JSR356 ServerContainer endpoint init
  till Container.doStart() to allow weld to init properly first
+ Removing JSR356 BasicServerEndpointConfigurator in favor
  of ContainerDefaultEndpointConfigurator
+ Only decorating server endpoints if they were created by
  ContainerDefaultEndpointConfigurator, all others are trusted
  to be complete and injected already.
2015-03-12 10:09:52 -07:00
Joakim Erdfelt 8b6a2629f8 453834 - CDI Support for WebSocket 2015-03-12 10:09:30 -07:00
Joakim Erdfelt 5b5c2369d5 Stragglers to the new year. tsk. tsk. 2015-03-12 10:09:30 -07:00
Joakim Erdfelt 4435ba3c2b cleaning up build warnings 2015-03-12 10:09:30 -07:00
Joakim Erdfelt 1f3097ff16 453834 - CDI Support for WebSocket
+ Adding scopes to websocket to help with CDI integration
2015-03-12 10:09:30 -07:00
Joakim Erdfelt 0c930c8640 Rename EnhancedInstantiator to DecoratedObjectFactory 2015-03-12 10:06:03 -07:00
Joakim Erdfelt d6911b431f 453834 - CDI Support for WebSocket
+ Attempting to get new socket @Inject working
2015-03-12 10:04:50 -07:00
Joakim Erdfelt 5c3e30d136 453834 - CDI Support for WebSocket
+ Changing util.Decorators to util.EnhancedInstantiator to reflect true
  usage
+ Adding EnhancedInstantiator to JSR-356
2015-03-12 10:04:50 -07:00
Joakim Erdfelt 2b7b5ef495 Rethinking Decorators 2015-03-12 10:04:13 -07:00
Jan Bartel afa926d45d 461919 - Use osgi-friendly serviceloader mechanism for WebSocketServletFactory 2015-03-12 18:51:05 +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 b7715fb3eb Merged branch 'jetty-9.2.x' into 'master'. 2015-03-07 23:26:59 +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 2ceaf6e65c 460769 - ClientUpgradeRequest sends cookies in the wrong format
+ Simplifying HTTP Client "Cookie:" header based on rfcs
2015-03-06 15:19:41 -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
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
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
Joakim Erdfelt c52f100ec3 Making WebSocket use new Upgrade mechanism
+ Also fixes websocket server prefill bytes issue
+ Adjusting client side to also use/benefit from new Upgrade mechanism
2015-02-13 15:16:48 -07: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
Joakim Erdfelt 30dda86b20 Merge branch 'jetty-9.2.x' 2015-02-12 09:59:52 -07:00
Joakim Erdfelt 23e9246115 Adding TooFastClientTest for websocket server
+ test performs a client upgrade + 2 websocket frames all at once.
  not waiting for the upgrade response before sending those frames.
+ currently set to @Ignore until we can address how to copy this extra
  buffer information from the Http side to the WebSocket side.
2015-02-12 09:30:31 -07:00
Joakim Erdfelt 96ebeed9d9 Merge branch 'jetty-9.2.x' 2015-02-04 12:47:42 -07:00
Joakim Erdfelt 741d7891f3 459006 - master branch does not build on norwegian locale
+ Adding appropriate locale settings to testcases to prevent
  machine specific locale from changing the expectations.

Bug: 496006
Also-by: Kristian Rosenvold <kristian@zenior.no>
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2015-02-04 10:41:04 -07: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 8a27385bc3 Merged branch 'jetty-9.2.x' into 'master'. 2015-01-09 12:51:13 +01:00
Joakim Erdfelt 3456c78d54 457017 - Reflective call to websocket methods that fail have ambiguous exceptions
+ Ensuring that the Jetty WebSocket API behaves in the same way
2015-01-08 14:38:12 -07:00
Joakim Erdfelt f7b382064f 457017 - Reflective call to websocket methods that fail have ambiguous
exceptions 

+ Making JSR onOpen close and use onError properly, as well we
unwrapping the InvocationTargetException cause as to WHY the call to
onOpen failed.
2015-01-08 12:06:53 -07:00
Greg Wilkins e1cc5fb487 Merge remote-tracking branch 'origin/master' into jetty-9.3-ewyk
Conflicts:
	jetty-server/src/main/java/org/eclipse/jetty/server/HttpChannel.java
	jetty-server/src/main/java/org/eclipse/jetty/server/QueuedHttpInput.java
	jetty-util/src/main/java/org/eclipse/jetty/util/thread/NonBlockingThread.java
2015-01-08 15:21:01 +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
Greg Wilkins 3af9b145a3 Deprecated the AbstractConnection dispatchIO mechanism 2015-01-01 16:18:13 +01:00
Greg Wilkins 20fc880c3e Merge branch 'master' into jetty-9.3-ewyk 2014-12-31 16:29:40 +01:00
Joakim Erdfelt a79b154d1b 456209 - Bad ContextClassLoader in WebSocket onMessage
+ Sets the class loader on an incoming frame to the
  class loader that loaded the web socket session

Also-by: Michael MacFadden <michael@macfadden.org>
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2014-12-29 12:10:55 -07:00
Greg Wilkins cdd2b0a9d2 refacted SelectorManager to have a ManagedSelector 2014-12-17 16:29:24 +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
Joakim Erdfelt 35b86eed16 454152 - Remove mux remnants from WebSocketClient 2014-12-04 10:40:22 -07: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
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
Simone Bordet 8d2acb6817 Merged branch 'jetty-9.2.x' into 'master'. 2014-10-28 11:55:44 +01:00
Simone Bordet e32f26354d 449038 - WebSocketUpgradeFilter must support async.
Now calling setAsyncSupported(true) for the WebSocketUpgradeFilter.
2014-10-28 11:52:00 +01:00
Simone Bordet 7cdcd69f44 Reverted version to 9.2.4-SNAPSHOT. 2014-10-28 11:52:00 +01:00
Jesse McConnell 3b745f06df [maven-release-plugin] prepare for next development iteration 2014-10-27 16:16:24 -05:00
Jesse McConnell 4f0d78c91b [maven-release-plugin] prepare release jetty-9.2.4.v20141027 2014-10-27 16:16:18 -05:00
Greg Wilkins 758ce66c8d Merge remote-tracking branch 'origin/jetty-9.2.x'
Conflicts:
	jetty-websocket/pom.xml
	tests/test-sessions/test-mongodb-sessions/pom.xml
2014-10-10 08:53:43 +11:00
Joakim Erdfelt ab930aae9f 446033 - org.eclipse.jetty.websocket.server.WebSocketServerFactory not available in OSGi
+ Tweaking version identifiers in websocket
+ Adding oej.websocket.server.pathmap to Dynamic-Import of
  websocket-servlet manifest
2014-10-08 14:46:57 -07:00
Joakim Erdfelt 93520df3f9 445374 - Reevaluate org.eclipse.jetty.websocket.jsr356 enablement concepts
+ Since SCI adds filters, but init() isn't run till later, that means
  the context attribute for the WebSocketUpgradeFilter isn't present
  during jsr356 runs.  Added ability for manual filter creation to call
  setToAttribute() as a pre-init step, allowing the init() itself to
  bypass the set to attribute for that specific filter instance.
+ This also means ServletException is now thrown out from the
  various configureContext() static methods.
2014-09-30 10:56:48 -07:00
Joakim Erdfelt 7e54472801 445374 - Reevaluate org.eclipse.jetty.websocket.jsr356 enablement concepts
+ After talking it through with Simone, swapping out 'global' init-param
  with a bit more robust 'contextAttributeKey' to handle the automatic
  context.setAttribute() of the filter itself.
  As simply having a filter in the web.xml makes it alive, but nothing
  is wired up into it, and accessing the filter instance via the
  context metadata seems impossible.  So we made the init-param for
  'contextAttributeKey' important and required, but with defaulting
  and validation checks.
2014-09-30 10:08:44 -07:00
Joakim Erdfelt 6500931f8c 445374 - Reevaluate org.eclipse.jetty.websocket.jsr356 enablement concepts
+ Making key also work inside of WEB-INF/web.xml via context params
+ Making WebSocketUpgradeFilter generic enough to be used in a
  web.xml descriptor
+ Adding global={bool} init-param on WebSocketUpgradeFilter to aid
  library developers and end users more ways to tweak the filter
  order
2014-09-30 07:40:07 -07: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 1e33c32513 Merged branch 'jetty-9.2.x' into 'master'. 2014-09-23 18:48:16 +02:00
Joakim Erdfelt d4d62c5690 438387 - NullPointerException after ServletUpgradeResponse.sendForbidden
is called during WebSocketCreator.createWebSocket 

+ Adding NPE guard for error/forbidden/complete flows
2014-09-23 09:46:06 -07:00
Joakim Erdfelt 0bf68a07ae 442495 - Bad Context ClassLoader in JSR356 WebSocket onOpen
+ Fixing onOpen context classloader to be that of the context
  that started the WebSocketUpgradeFilter (which will be the
  same as the WebAppContext in most cases)
2014-09-23 11:33:44 +02:00
Joakim Erdfelt 901707b894 444617 - Expose local and remote socket address to applications
+ Exposing 2 new automatically added userProperties
  * "javax.websocket.endpoint.localAddress" 
  * "javax.websocket.endpoint.remoteAddress"
  these are both java.net.InetSocketAddress objects
2014-09-23 11:33:44 +02:00
Joakim Erdfelt e93247de42 444771 - JSR356 / EndPointConfig.userProperties are not unique per
endpoint upgrade 

+ Adding testcase & implementation which honors the
ServerEndpointConfig.userProperties copy at an earlier point.
2014-09-23 11:33:44 +02:00
Joakim Erdfelt 65cae13b1e 444748 - WebSocketClient.stop() does not unregister from ShutdownThread
+ Making (de)register smart about if wsclient is registered or not
2014-09-23 11:33:44 +02:00
Joakim Erdfelt f3693219f8 444517 - Ensure WebSocketUpgradeFilter is always first in filter chain
* Using Servlet 3.1's ServletContext.addFilter() mechanisms with its
    FilterRegistration to encourage the WebSocketUpgradeFilter to be
    first in the filter chain.
    Note: this is possible, but can be overridden by another call
    to the same ServletContext.addFilter() using the same techniques
    to put something in front of the WebSocketUpgradeFilter.
2014-09-23 11:33:43 +02:00
Joakim Erdfelt 0dca1b0794 442495 - Bad Context ClassLoader in JSR356 WebSocket onOpen
+ Fixing onOpen context classloader to be that of the context
  that started the WebSocketUpgradeFilter (which will be the
  same as the WebAppContext in most cases)
2014-09-22 14:37:00 -07:00
Joakim Erdfelt d6082b2d65 444617 - Expose local and remote socket address to applications
+ Exposing 2 new automatically added userProperties
  * "javax.websocket.endpoint.localAddress" 
  * "javax.websocket.endpoint.remoteAddress"
  these are both java.net.InetSocketAddress objects
2014-09-22 12:43:37 -07:00
Joakim Erdfelt 1ce66f38a0 444771 - JSR356 / EndPointConfig.userProperties are not unique per
endpoint upgrade 

+ Adding testcase & implementation which honors the
ServerEndpointConfig.userProperties copy at an earlier point.
2014-09-22 11:59:43 -07:00
Joakim Erdfelt b633778b33 444748 - WebSocketClient.stop() does not unregister from ShutdownThread
+ Making (de)register smart about if wsclient is registered or not
2014-09-22 11:18:30 -07:00
Joakim Erdfelt 9b7b54ea0b 444517 - Ensure WebSocketUpgradeFilter is always first in filter chain
* Using Servlet 3.1's ServletContext.addFilter() mechanisms with its
    FilterRegistration to encourage the WebSocketUpgradeFilter to be
    first in the filter chain.
    Note: this is possible, but can be overridden by another call
    to the same ServletContext.addFilter() using the same techniques
    to put something in front of the WebSocketUpgradeFilter.
2014-09-18 11:11:31 -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 edcb56ae6b Merge remote-tracking branch 'origin/master' into jetty-http2
Conflicts:
	jetty-server/src/main/java/org/eclipse/jetty/server/HttpOutput.java
2014-08-29 12:41:52 +10:00
Greg Wilkins eee2ba206e 435322 Added a idleTimeout to the SharedBlockerCallback 2014-08-29 11:55:06 +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
Greg Wilkins a14d843382 ignored osgi-spdy tests 2014-08-14 15:18:28 +10:00
Greg Wilkins 6dfa452e29 case insensitive protocols 2014-08-07 19:00:31 +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 2f41275b0f fixed merge syntax errors 2014-07-23 16:57:36 +10: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
Greg Wilkins ecb3ab7e5b Merge remote-tracking branch 'origin/master' into jetty-http2
Conflicts:
	jetty-server/src/main/java/org/eclipse/jetty/server/HttpConnection.java
2014-07-23 16:38:15 +10:00
Greg Wilkins 31359b1775 ignore failing tests 2014-07-23 15:23:35 +10:00
Greg Wilkins 7f62f2600b refactored URI handling 2014-07-20 10:23:47 +10: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 fff2dd2f2d misc test fixes for rfc7230 issues 2014-07-11 16:10:06 +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
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 334db9fe72 Updated version to 9.3.0-SNAPSHOT. 2014-06-16 21:33:03 +02:00
Simone Bordet adaeeefe32 Merged branch 'master' into 'jetty-http2'. 2014-06-16 16:08:40 +02:00
Joakim Erdfelt a41dd1caf5 436874 - WebSocket client throwing a NullPointer when handling a pong
+ Adding NPE guard for PONG with no payload.
2014-06-11 08:30:52 -07: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
Jesse McConnell 10b6c574ae Merge branch 'master' into release-9 2014-06-09 13:07:22 -05:00
Greg Wilkins bb4d42f139 Merge remote-tracking branch 'origin' into jetty-http2 2014-06-04 15:09:19 +02:00
Greg Wilkins 8f4aeeeb8d updated version to 10.0.0-SNAPSHOT 2014-06-04 15:08:54 +02:00
Joakim Erdfelt ce8920dd76 Removing test noise 2014-05-29 11:52:36 -07:00
Joakim Erdfelt 54051baa2f Enabling testcases 2014-05-29 11:48:53 -07:00
Joakim Erdfelt 7412951373 Removing experimental testcase that is no longer relevant 2014-05-29 11:46:36 -07:00
Joakim Erdfelt 7b3fc2cecf Enabling testcase, reducing logging level 2014-05-29 11:42:50 -07:00
Joakim Erdfelt f00cd9f6ec Enabling and fixing testcase 2014-05-29 11:41:44 -07:00
Joakim Erdfelt 353b0f80c8 Enabling and fixing testcase 2014-05-29 11:39:36 -07: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
Joakim Erdfelt f2ea8351b6 429390 - Decoders and Encoders are not registered for non-annotated ClientEndpoint
+ Adding EncoderTest to verify reported bug
+ Fixing SimpleEndpointMetadata to propagate the encoder/decoder list
  when present.
2014-05-22 13:12:39 -07:00
Joakim Erdfelt bcf52e14f0 435206 - Can't add Cookie header on websocket ClientUpgradeRequest
+ Fixed competing cookie setters between WebSocketClient's use of
  CookieStore and UpgradeRequest.setCookies()
+ Added some utility methods to LazyList (for lack of existence of
  ListUtil or CollectionUtil in jetty-util)
2014-05-20 11:57:35 -07:00
Joakim Erdfelt 5b009dbe15 Adding FrameDebugExtension ability 2014-05-16 08:32:30 -07:00
Joakim Erdfelt ab67143c29 Fixing felix/bundle plugin configuration to make tycho happy 2014-05-14 16:36:17 -07:00
Joakim Erdfelt e0e00b0aed 430418 - Jetty 9.1.3 and Chrome 33 permessage-deflate do not work together
+ Updating Compress/PerMessageDeflate extensions for latest spec
  document, http://tools.ietf.org/html/draft-ietf-hybi-permessage-compression-18
  Intra-frame tail 0000FFFF is now being preserved for
  permessage-deflate
2014-05-14 13:02:12 -07:00
Simone Bordet a2b6c69525 Fixed field initialization problem. 2014-05-14 21:25:04 +02:00
Joakim Erdfelt cd003dcea0 Adjusting test timeouts for slow systems 2014-05-13 09:23:54 -07:00
Joakim Erdfelt 9fb6e96a40 Discard windows specific logger, no longer needed 2014-05-12 16:37:46 -07:00
Joakim Erdfelt 832332aaad 434685 - WebSocket read/parse does not discard remaining network buffer after unrecoverable error case
+ Make all future onFillable events after a fundamental read/parse
  exception discard the network buffer.
2014-05-12 16:36:47 -07:00
Joakim Erdfelt 8e3921b615 Setting up windows-7 specific logging for AnnotatedMaxMessageSize test failure 2014-05-12 10:38:20 -07:00
Joakim Erdfelt 8521a7875a 433405 - Websocket Session.setMaxIdleTimeout fails with zero
+ Make idle timeout check not fail on 0 (which is valid)
2014-05-09 11:23:57 -07:00
Joakim Erdfelt 88a1512d44 431333 - NPE In logging of WebSocket ExtensionConfig
+ Fixed NPE
2014-05-09 10:36:25 -07:00
Joakim Erdfelt f9fad8f49f 434395 - WebSocket / memory leak, WebSocketSession not cleaned up in abnormal closure cases
+ Cleanup for read, bug fix for this occurred in prior commits
  surrounding CLOSE handling
2014-05-08 14:08:20 -07:00
Joakim Erdfelt 8b118ba66d Allowing alternate timeout check in testcase 2014-05-08 13:10:23 -07:00
Joakim Erdfelt 74e7195356 433262 - WebSocket / Advanced close use cases
+ because of the race condition in close on testNetworkCongestion(), the
  test has been modified to allow for either close condition as valid.
2014-05-07 16:14:50 -07:00
Joakim Erdfelt 8ff1cec570 433262 - WebSocket / Advanced close use cases
+ AWSC.Flusher.onFailure() now uses IOState properly.
+ IOState now tracks the final CLOSED CloseInfo atomically
+ Renamed IOState.onReadEOF() to .onReadFailure(Throwable)
+ Added IOState.onWriteFailure(Throwable)
2014-05-07 13:12:09 -07:00
Joakim Erdfelt fa5a5f3507 Adding javadoc 2014-05-07 13:12:09 -07:00
Joakim Erdfelt 7d662360f1 434077 - AnnotatedServerEndpointTest emits strange exception
Adding lock around use of remote, eliminating artificial EofException.
2014-05-06 12:14:00 -07:00
Joakim Erdfelt f5648a2096 Removing yet another noisy dump 2014-05-06 12:14:00 -07:00
Joakim Erdfelt 5635f02235 433793 - WebSocket / empty protocol list in ServerEndpointConfig.Configurator when using non-exact header name
+ Marking header (and parameter) maps as case-insensitive.
2014-05-05 13:46:58 -07:00
Joakim Erdfelt 8e957b5a23 Reducing the noise on websocket testing 2014-05-05 12:09:58 -07:00
Joakim Erdfelt c0e0f9bb83 431459 - Jetty WebSocket compression extensions fails to handle big messages properly
+ Setting up Assume for deregistered compression extension tests
2014-05-05 12:09:58 -07:00
Joakim Erdfelt c03388b640 431459 - Jetty WebSocket compression extensions fails to handle big messages properly
+ Setting compression extensions to default unregistered state until
  they can be stablized.
2014-05-05 12:09:58 -07:00
Greg Wilkins dea8d684a6 434077 Avoid close race in websocket echo test 2014-05-05 15:12:45 +02:00
Greg Wilkins 51c5a4c833 425421 ContainerLifeCycle does not start added beans in started state 2014-05-05 14:53:53 +02:00
Jan Bartel 800a6639a3 Ensure annotation-related code is optional for tests with jdk8 2014-04-29 20:55:49 +02:00
Greg Wilkins 2e261b75d6 433692 improved buffer resizing 2014-04-29 20:36:13 +02:00
Joakim Erdfelt 703deea1df Tidying up ws-test-client read operations (in hope that it will address test failures on jenkins) 2014-04-25 12:48:04 -07:00
Joakim Erdfelt c7dd3481c6 Turning on websocket-common/io debug for jenkins testing 2014-04-25 12:37:00 -07:00
Joakim Erdfelt 1fb578165f 433262 - WebSocket / Advanced close use cases
+ Improved test case handling of frame reading (to prevent future
  false failures)
+ Improved AbstractWebSocketConnection handling of close -> disconnect
  to only trigger on successful write (or failure) of close frame flush
  attempt.
+ Flusher close on all forms of disconnect, even half-closed.
2014-04-25 07:33:29 -07:00
Joakim Erdfelt 2bc9accd98 433262 - WebSocket / Advanced close use cases
+ Fixing bad assumptions in unit tests where the client would send a few
  frames to test the protocol behavior followed by the close frame.
  But the test expected the server to initiate the close, but this setup
  of the tests would mean that the client initiated the close.
2014-04-23 12:56:00 -07:00
Joakim Erdfelt 900dea3719 433262 - WebSocket / Advanced close use cases
+ ClientCloseTest implementation of various outlined use cases.
2014-04-22 16:07:45 -07:00
Joakim Erdfelt db2c6c20b9 Test failure fix 2014-04-15 10:16:52 -07:00
Joakim Erdfelt cad7d3f5ed Attempt to work out websocket close notification issue that simone raised 2014-04-15 10:14:03 -07:00
Greg Wilkins c5e1e249e7 set version for 9.2.x 2014-03-31 11:35:06 +11:00
Greg Wilkins 710ea48244 430654 430242 - Closeable SharedBlockingCallback 2014-03-22 09:36:09 +11:00
Greg Wilkins 5d83a43cce 430242 - added SharedBlockingCallback to support threadsafe blocking 2014-03-22 08:42:03 +11:00
Greg Wilkins 138dfba560 Revert "430242 - added SharedBlockingCallback to support threadsafe blocking"
This reverts commit 9c30e7a303.
2014-03-21 17:55:48 +11:00
Greg Wilkins a85b855921 Revert ALPN and java 8 changes to move to another branch
Reverts e9ecd8c,2f22a10,addc49f,f4e4b09,cf1c245
Disabled unit test from commit 47e7583
2014-03-19 12:54:04 +11:00
Joakim Erdfelt 47e7583ada 430088 - OnMessage*Callable decoding of streaming binary or text is not thread safe
+ Adding testcase for Decoder.TextStream and lots of short messages with
  order indicator (for the order in which they were sent)
  Test case validates that all of the messages were received, not that
  they were in any particular order (as the use of Streaming prevents
  reliable ordering)
+ Adding defensive copy of callable array in order to prevent any
  possibility of concurrency issues with streams and dispatched
  calls.
2014-03-17 15:05:55 -07:00
Joakim Erdfelt e1417861b9 430088 - OnMessageTextStreamCallable is not thread safe
+ Adding client side testcase for Decoder.TextStream use with a Reader
  and multiple frames being received.
2014-03-14 13:46:47 -07:00
Greg Wilkins 9c30e7a303 430242 - added SharedBlockingCallback to support threadsafe blocking 2014-03-13 21:12:55 +11:00
Greg Wilkins 4de73d508b 430242 - added SharedBlockingCallback to support threadsafe blocking 2014-03-13 14:46:00 +11:00
Joakim Erdfelt b95e454f7d 417022 - Access current HttpConnection from Request not ThreadLocal
+ Adjusting WebSocketServerFactory.upgrade() to receive HttpConnection
  from Request object instead of ThreadLocal.
2014-03-11 12:12:44 -07:00
Joakim Erdfelt 6802dbd75c Cleaning up imports 2014-03-11 10:45:37 -07:00
Jan Bartel b6f36dadb2 Add appropriate headers to allow ServiceLoader mechanism to work with OSGi. 2014-03-10 13:42:05 +11: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
Joakim Erdfelt a3e5e0858c 428595 - JSR-356 / ClientContainer does not support SSL
+ Default SslContextFactory initialized
+ Setting for trustAll configurable via System property
    "org.eclipse.jetty.websocket.jsr356.ssl-trust-all"={bool}
2014-03-06 13:28:56 -07:00
Joakim Erdfelt 5d36a4cb73 428594 - File upload with onMessage and InputStream fails
+ Adding unit test to verify reported behavior
2014-03-06 13:19:30 -07:00
Joakim Erdfelt f282ffe897 429779 - masked zero length websocket frame gives NullPointerException during streaming read
+ Corrected payload buffer copying to ignore null and empty payloads
2014-03-06 11:29:42 -07:00
Jan Bartel 6959d911d5 428597 javax-websocket-client-impl and javax-websocket-server-impl jars Manifests do not export packages for OSGI 2014-03-06 16:47:10 +11:00
Jan Bartel af3f2f4894 429409 [osgi] jetty.websocket.servlet must import jetty.websocket.server 2014-03-03 12:54:11 +11:00
Simone Bordet 4031bc7f3b Reduced websocket memory footprint by releasing the HTTP machinery
(request and response) after the upgrade.
2014-02-24 23:44:21 +01:00
Simone Bordet 4123001158 Removed UpgradeContext since it was not used. 2014-02-24 23:44:21 +01:00
Joakim Erdfelt b3bfe2783f Fixing WebSocketSession.suspend() 2014-02-24 08:08:11 -07:00
Simone Bordet f465a13d6d 428435 - Large streaming message fails in MessageWriter.
Fixed buffering, synchronization and callback notification in the
websocket stream implementation classes.
2014-02-24 14:28:10 +01:00
Greg Wilkins d349d640c0 428859 Do not auto initialise jsr356 websocket if no annotations or EndPoints discovered 2014-02-24 16:31:56 +11: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
Simone Bordet 7d6c1548b1 428232 - Rework batch mode / buffering in websocket.
Fixed missing notification of the FLUSH_FRAME.
2014-02-20 22:17:16 +01:00
Simone Bordet c3c4d059a6 Removed unnecessary synchronization. 2014-02-20 15:44:22 +01:00
Greg Wilkins 15952aeee4 428232 - Rework batch mode / buffering in websocket. 2014-02-21 00:54:32 +11:00
Simone Bordet 75cc42a647 Improved dump() output. 2014-02-19 23:18:14 +01:00
Joakim Erdfelt 395e8f1c8b Adding examples of managing the websocket extensions 2014-02-19 11:32:18 -07:00
Joakim Erdfelt 6b1f17b503 Demonstration of BFINAL 2014-02-19 11:32:18 -07:00
Joakim Erdfelt c1f547e2b3 Adding javadoc 2014-02-19 11:32:18 -07:00
Simone Bordet b8df85ec48 Session open and close are now logged at debug level. 2014-02-18 18:51:05 +01:00
Simone Bordet 1ac6b82912 428232 - Rework batch mode / buffering in websocket.
Introduced the automatic batch mode, akin to Jetty 8's WebSocket
implementation.
Now, if there are no more frames to process, and the previous frames
have been aggregated, FrameFlusher auto-flushes the aggregated frames.
This simplifies applications because they don't need to call flush()
explicitly.
2014-02-18 18:31:49 +01:00
Simone Bordet 3240e7383b 428232 - Rework batch mode / buffering in websocket.
Improved logging by wrapping LOG.debug() calls in a
if (LOG.isDebugEnabled()) statement to avoid boxing of primitive
values.
2014-02-18 18:31:49 +01:00
Simone Bordet 0786da6cd0 428232 - Rework batch mode / buffering in websocket.
Avoid to create a new ByteBuffer just to create the mask integer,
saves allocation cost.
2014-02-18 18:31:49 +01:00
Simone Bordet 61b4b0f029 428232 - Rework batch mode / buffering in websocket.
Better default size for SimpleTextMessage Utf8StringBuilder,
to avoid multiple expansions and data copy of the underlying array.
2014-02-18 18:31:48 +01:00
Simone Bordet 996cc8bd92 428232 - Rework batch mode / buffering in websocket.
Optimized FrameFlusher to not create iterators when iterating over a
list, saving allocation costs.
2014-02-18 18:31:48 +01:00
Simone Bordet 4bdca367dd 428232 - Rework batch mode / buffering in websocket.
Refactored FrameFlusher to handle aggregation of frames to support
JSR 356's batch mode.

Now FrameFlusher can aggregate frames as long as the FlushMode they
were sent is AUTO. When a frame that has FlushMode SEND arrives,
it will trigger the flush of the aggregate buffer (and eventually
also other queued frames).
A special BINARY frame is used to implement explicit flush()
invocations.
2014-02-18 18:31:48 +01:00
Simone Bordet 8e5c06b95c 428232 - Rework batch mode / buffering in websocket.
Refactored OutgoingFrames.outgoingFrame() to take an additional
parameter, FlushMode. This is in preparation for handling this new
parameter in FrameFlusher.
2014-02-18 18:31:48 +01:00
Simone Bordet d2f1954fa0 427700 - Outgoing extensions that create multiple frames should flush
them in order and atomically.

Optimized CompressExtension to reduce data copying at minimum on the
write path.
2014-02-15 17:53:37 +01:00
Simone Bordet a8e4caca90 427700 - Outgoing extensions that create multiple frames should flush
them in order and atomically.

Removed unused code.
2014-02-15 17:53:23 +01:00
Simone Bordet a2a90c5c87 427700 - Outgoing extensions that create multiple frames should flush
them in order and atomically.

Modified FragmentExtension to use a Queue and IteratingCallback to
make sure that frames are iteratively fragmented.
The creation of the next fragment only happens when there is a callback
from the next outgoing layer.
2014-02-14 22:21:59 +01:00
Simone Bordet ad15b27a01 427700 - Outgoing extensions that create multiple frames should flush
them in order and atomically.

Refactored PerMessageDeflateExtension and DeflateFrameExtension
introducing superclass CompressExtension that factors in common
functionalities.
2014-02-14 22:21:59 +01:00
Simone Bordet 81b8990dec 427700 - Outgoing extensions that create multiple frames should flush
them in order and atomically.

Modified DeflateFrameExtension to use a Queue and IteratingCallback to
make sure that frames are iteratively compressed in chunks.
The compression of the next chunk only happen when there is a callback
from the next outgoing layer.
2014-02-14 22:21:59 +01:00
Simone Bordet 53b1ee9e47 427700 - Outgoing extensions that create multiple frames should flush
them in order and atomically.

Modified ExtensionStack to use a Queue and IteratingCallback to make
sure that messages are processed sequentially.
2014-02-14 22:21:59 +01:00
Joakim Erdfelt cff7c9dbcb Cleaning up websocket connection open/close in favor of session open/close 2014-02-13 16:22:55 -07: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 51e8b83954 427699 - WebSocket upgrade response sends Sec-WebSocket-Protocol twice.
The problem was that UpgradeResponse was setting the subProtocol as a
header, and HandshakeRFC6455 was extracting it and *adding* it again.

Fixed by removing the code in HandshakeRFC6455.
2014-02-10 14:43:22 +01:00
Simone Bordet b37c68db3b 427690 - Remove Mux Extension and related support. 2014-02-10 13:10:58 +01:00
Simone Bordet 66a19bd646 Avoided to copy the frame payload if we happen to have it all
available.
2014-02-10 12:56:54 +01:00
Simone Bordet 18d2180cdc 427588 - WebSocket Parser leaks ByteBuffers.
Fixed by having the Parser release the payload ByteBuffer.
Also reworked WebSocketFrame.reset() method, and made sure
that outgoing frames also don't leak ByteBuffers.
2014-02-10 12:21:50 +01:00
Simone Bordet 21d938f12d 427587 - MessageInputStream must copy the payload.
Forgot to flip the buffer.
2014-02-06 22:39:02 +01:00
Simone Bordet cf37533d87 427587 - MessageInputStream must copy the payload. 2014-02-06 21:18:21 +01:00
Simone Bordet 5d9360e343 427254 - Cookies are not sent to the client.
Introduced ServletUpgradeResponse.complete(), called when the response
is about to be sent to the client, to transfer the headers stored in
the superclass (UpgradeResponse.headers) into the HttpServletResponse.
2014-02-03 15:31:51 +01:00
Simone Bordet cfe248c67b 427128 - Cookies are not sent to the server.
Implemented/fixed handling of cookies sent by client to server.
2014-02-03 12:49:58 +01:00
Simone Bordet 5e3c8821bb If ClientContainer is being stopped, then we can unregister it from
the ShutdownThread.

This happens when ClientContainer is added as a managed bean to a
ContainerLifeCycle and the container is stopped.
2014-02-03 12:09:27 +01:00
Joakim Erdfelt 1ff01f36eb Fixing SessionTest failures on windows due to file locking 2014-01-14 15:09:57 -07:00
Jesse McConnell 91429ea123 Merge branch 'release-9' 2014-01-10 09:11:25 -06: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
Joakim Erdfelt 29dec203ba Turning on some leak detection in websocket testing 2014-01-08 14:54:57 -07:00
Joakim Erdfelt 9df519c40f 423948 - Cleanup and consolidate testing utilities in WebSocket
+ Created websocket-common-tests.jar artifact
+ Consolidated duplicate code from other websocket-* modules
  into the websocket-common test artifact
2014-01-08 10:47:45 -07:00
Joakim Erdfelt fb8d55e46e 424735 - WebSocket / Make ServletUpgradeRequest expose its HttpServletRequest
+ Added ServletUpgradeRequest.getHttpServletRequest() to access the
  underlying HttpServletRequest.
+ Wrapping underlying post-upgraded HttpServletRequest object with
  many disabled methods that are no longer relevant at this
  post-upgraded state of the connection.
2014-01-07 14:50:59 -07:00
Joakim Erdfelt 259c624558 425038 - WebSocketClient leaks file handles when exceptions are thrown from open()
+ Close connection on open() exception
2014-01-07 13:19:01 -07:00
Joakim Erdfelt 44a7d23516 423646 - WebSocket / JSR / WebSocketContainer (Client) should have its LifeCycle stop on standalone use
+ Set Daemon on Executor and Scheduler threads to allow them to shutdown
  with the JVM
2014-01-07 13:08:10 -07:00
Joakim Erdfelt f0eeb27921 424847 - Deadlock in deflate-frame (webkit binary)
+ Moving notification flows to outside of the synchronization blocks
2014-01-07 11:47:19 -07:00
Joakim Erdfelt b59057c184 424863 - IllegalStateException "Unable to find decoder for type <javax.websocket.PongMessage>"
+ Expanding testing of PongMessage
+ Ensuring that .addMessage(MessageHandler.Whole<PongMessage>) works
+ Ensuring that ping or pong messages all goto assigned message
  handler for PongMessage, for both extends Endpoint and
  annotated @OnMessage
2014-01-06 17:54:57 -07:00
Joakim Erdfelt 8016065823 424706 - The setMaxIdleTimeout of javax.websocket.Session does not take any affect
+ Making sure that JsrSession updates Connection on use of
  setMaxIdleTimeout after a connection has been opened.
2014-01-06 15:07:02 -07:00
Joakim Erdfelt a12fd9ea03 Happy New Year - 2014! 2014-01-02 14:50:14 -07:00
Joakim Erdfelt 118fc97fe1 424734 - WebSocket / Expose Locale information from ServletUpgradeRequest 2013-12-29 17:05:41 -07:00
Joakim Erdfelt 5380430b75 Tweaking idle timeout 2013-12-20 13:22:01 -07:00
Joakim Erdfelt 5cf9640cfa 423724 - WebSocket / Rename MessageAppender.appendMessage to .appendFrame 2013-12-20 13:22:01 -07:00
Greg Wilkins ab9040bb63 424497 - Allow concurrent async sends 2013-12-20 11:49:33 +11:00
Joakim Erdfelt 9a20a534b5 423646 - WebSocket / JSR / WebSocketContainer (Client) should have its LifeCycle stop on standalone use
+ Not working (yet), but narrowed down the problem.
2013-12-18 05:51:24 -07: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
Greg Wilkins 7141483356 424043 - IteratingCallback Idle race 2013-12-14 09:14:12 +11:00
Joakim Erdfelt 46ef022cf4 421314 - Websocket / Connect attempt with Chrome 32+ fails with "Some extension already uses the compress bit"
+ Reworked extension negotiation to be more consistent with the changes
  to the spec that Chrome 32 are introducing.  Namely that first
  extension to claim RSV bit wins, all other conflicting extensions are
  ignored.
2013-12-13 12:30:26 -07:00
Joakim Erdfelt 5c296c99d8 Cleaning up tests 2013-12-13 12:30:25 -07:00
Greg Wilkins 0104374adb 423048 - Receiving a PING while sending a message kills the connection
Optimised to remove msgLock and just have a concurrent state machine on msgType
2013-12-13 11:51:05 +11:00
Joakim Erdfelt 0a30b4934b 423915 - WebSocket / Active connection from IOS that goes into airplane mode not disconnected on server side
+ Adding testcase verifying Native WebSocket API behavior
2013-12-12 17:04:35 -07:00
Joakim Erdfelt 6d70aab61d 423915 - WebSocket / Active connection from IOS that goes into airplane mode not disconnected on server side
+ Working testcase for JSR-356
2013-12-12 16:58:42 -07:00
Joakim Erdfelt 7af074bafb 423048 - Receiving a PING while sending a message kills the connection
+ Removed msgLock on control frames.
+ Moved sendPing() and sendPong() to async frame handling
+ Squelched a mess of stacktraces in the testing output
2013-12-12 16:08:53 -07:00
Joakim Erdfelt 5941e9db83 Fixing various warnings / imports 2013-12-12 14:46:40 -07:00
Joakim Erdfelt ecf3b8a68f 421189 - WebSocket / AbstractExtension's WebSocketPolicy is not Session-specific
+ Ensuring that the EventDriver managed policy is used by the
  ExtensionStack
2013-12-12 13:51:01 -07:00
Joakim Erdfelt bc7afdc172 423476 - WebSocket / JSR / @OnMessage(maxMessageSize=20000000) not properly supported
+ Correcting @OnMessage handling of max message size for TEXT/BINARY
  from both @ClientEndpoint and @ServerEndpoint usage
+ Testcases to prevent regression.
2013-12-12 13:20:49 -07:00
Joakim Erdfelt 120e0e59ca Cleanup (Imports / StandardCharset / Dead APIs) 2013-12-11 17:27:58 -07:00
Joakim Erdfelt eb2f3acfbd 423804 - WebSocket / JSR improper use of ServerEndpointConfig.Configurator.getNegotiatedSubprotocol()
+ Correcting BasicServerEndpointConfigurator response for no subprotocol
+ Correcting JsrCreator assumption for no subprotocol
2013-12-11 17:00:28 -07:00
Joakim Erdfelt 5bb1631c68 Removing conflicting javax.websocket:javax.websocket-client-api artifact 2013-12-11 17:00:28 -07:00
Joakim Erdfelt 85f2bebab3 formatting cleanup 2013-12-11 17:00:28 -07:00
Joakim Erdfelt 8f132a2e0c Updating clirr comparison to first released 9.1 2013-12-11 17:00:28 -07:00
Joakim Erdfelt 5b77679ecf Attempted fix for intermittent test failures around MessageInputStream 2013-12-10 13:01:12 -07:00