Commit Graph

424 Commits

Author SHA1 Message Date
Joakim Erdfelt b3d25183b5 Fixes #780 - The moved websocket PathSpec is incompatible with cometd 3.0.x 2016-07-27 09:31:11 -07:00
Greg Wilkins 0e5de87d49 Issue #663 Cleanup
Increased websocket tests timeouts
2016-06-15 18:04:33 +10:00
Simone Bordet dc7bd636d0 Increased timeouts to avoid failures on slower machines. 2016-06-14 11:04:18 +02:00
Simone Bordet fb76491ea0 Code cleanups. 2016-06-14 11:04:01 +02:00
Simone Bordet ebee9f12f9 Fixed SessionTrackingTest.
Introduced WebSocketSession.Listener that can be used to be notified
of session opening and close, so that tests can be written more reliably.
2016-06-13 23:23:15 +02:00
Simone Bordet e578c79b41 Code cleanups. 2016-06-13 23:23:14 +02:00
Joakim Erdfelt dd8afc34b9 Merge branch 'jetty-9.3.x' into bugs/388 2016-06-06 08:37:36 -07:00
Joakim Erdfelt 8758cbb607 Fixes #388 - Provide pluggable RemoteEndpoint service 2016-06-06 07:44:46 -07:00
Greg Wilkins 1c5a1fc6a2 Issue #431
Suppress stack traces from unit tests
2016-03-16 18:19:40 +11:00
Joakim Erdfelt 464c46a757 Issue #427 - Squelch intentional exceptions seen during websocket testing 2016-03-15 09:20:34 -07:00
Joakim Erdfelt 9f8df9a1a8 485969 - WebSocket upgrade response should honor HttpConfiguration server version settings 2016-01-15 13:23:43 -07:00
Joakim Erdfelt 57224ec3ca 481986 - Dead JSR 356 Server Session still being tracked after Session/Connection closure
+ Removing SessionListener
+ Work in CDI layer for WebSocketContainerScope is reused for
  session tracking on the parent scope of the WebSocketSession only.
  no more multi-listener behavior
+ Reworked JsrSession ID behavior to not be based on AtomicLong
+ AbstractWebSocketConnection now has .hashCode and .equals
2016-01-12 16:15:51 -07:00
Joakim Erdfelt cd39fd84fe Happy New Year 2016 2016-01-04 14:31:22 -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 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 bae1138211 Fixing test expectations on Decorator counts 2015-12-02 12:19:52 -07:00
Joakim Erdfelt b4456d96dd Disabling flappy test 2015-10-09 10:14:35 -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 b865b50cb6 Extracting IBlockheadClient for refactoring prep 2015-09-30 12:47:31 -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
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
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
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
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
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
Joakim Erdfelt f4f5157ab6 Work on permessage-deflate continues 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 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 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
Greg Wilkins 1cb0449be3 Organised imports 2015-03-26 12:32:15 +11: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 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 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
Joakim Erdfelt 130afb9535 Merge branch 'jetty-9.2.x'
Conflicts:
	jetty-client/src/main/java/org/eclipse/jetty/client/LeakTrackingConnectionPool.java
	jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientLoadTest.java
	jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientUploadDuringServerShutdown.java
	jetty-server/src/main/java/org/eclipse/jetty/server/HttpInput.java
	jetty-spdy/spdy-server/src/test/java/org/eclipse/jetty/spdy/server/SynDataReplyDataLoadTest.java
	jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/TooFastClientTest.java
2015-03-06 15:57:52 -07:00
Joakim Erdfelt 74ee154bb1 Cleaning up LeakTrackingByteBufferPool / LeakDetector
+ Making use of LeakTrackingByteBufferPool more consistent
+ Using MappedByteBufferPool.Tagged where appropriate in test cases
+ Adding leak count tracking to LeakDetector
+ Adding leak count tracking to LeakTrackingByteBufferPool
+ Renaming websocket LeakTrackingBufferPool to
  LeakTrackingBufferPoolRule to reflect junit @Rule usage
+ Making websocket LeakTrackingBufferPoolRule always use
  MappedByteBufferPool.Tagged
+ Fixed various grammar concerns
2015-03-06 14:27:58 -07:00
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