Commit Graph

48 Commits

Author SHA1 Message Date
Katherine b57bdcaaea
Dependency updates for Q2 2025 2025-04-03 12:05:51 -04:00
Ravi Khadiwala c2e3ab832c enforce provisioning websocket timeouts 2025-03-26 16:28:51 -05:00
Jon Chambers 552079d3c2 Add an interceptor interface for WebSocket authentication 2025-03-04 08:35:01 -05:00
ravi-signal 68f27be7cd
Add opt-in timeouts to provisioning websocket 2024-12-18 18:45:53 -06:00
Chris Eager dd4bc23e4f
Update to Dropwizard 4 2024-11-11 16:32:24 -06:00
Jon Chambers e53a9f3f1a Close WebSockets "harshly" if a close frame write fails 2024-11-11 11:42:01 -05:00
Chris Eager 584fd06b88 Add metric for closed connection age to KeepAliveController 2024-10-21 13:17:21 -05:00
Chris Eager 3d32b68bb2 Move WebSocketClient SecureRandom to a static field 2024-03-12 16:54:38 -05:00
Ravi Khadiwala 9e510a678c disable response buffering on the websocket
Jersey buffers responses (by default up to 8192 bytes) just so it can
add a content length to responses. We already buffer our responses to
serialize them as protos, so we can compute the content length
ourselves. Setting the buffer to zero disables buffering.
2024-03-08 13:46:00 -06:00
Chris Eager 2dc0ea2b89 Address potential NullPointerException when calling Collection#contains 2024-03-08 13:43:31 -06:00
Ravi Khadiwala 26ffa19f36 Lifecycle management for Account objects reused accross websocket requests 2024-02-22 12:05:32 -06:00
Chris Eager 2ab14ca59e Refactor remote address/X-Forwarded-For handling 2024-02-05 13:37:06 -06:00
ravi-signal cf8f2a3463
remove synchronized locks that may be held while blocking 2024-01-31 14:29:15 -06:00
Chris Eager 84b56ae1b2
Upgrade to dropwizard 3.0 2023-11-16 17:57:48 -06:00
Jon Chambers e078161e2f Consistently use `HttpHeaders.X_FORWARDED_FOR` 2023-11-15 17:09:36 -05:00
Sergey Skrobotov d0fdae3df7 Enable header-based auth for WebSocket connections 2023-09-25 12:14:40 -07:00
Chris Eager 92bb783cbb Use static exception instance when a connection is closed 2023-09-07 16:06:16 -05:00
Chris Eager 128d709c99
Additional counters and timers for WebSocket connections 2023-06-13 11:46:15 -05:00
Chris Eager f06eaf13d1 Send `1009` for too-large message frames 2023-05-18 11:42:22 -05:00
Chris Eager 4fd2422e4d Catch and `close()` after `UninitializedMessageException` in websocket messages 2023-05-03 13:36:29 -05:00
Jon Chambers d1eb247d8c Clarify the purpose of an `addListener` method 2023-04-18 12:04:54 -04:00
Sergey Skrobotov c32067759c refactoring: use constants for header names 2022-11-15 11:16:49 -08:00
erik-signal 966c3a8f47 Add routing for stories. 2022-10-05 10:44:50 -04:00
Ehren Kret cc9a825279 Remove checked in generated code 2021-09-29 13:10:27 -05:00
Jon Chambers 09519ae942 Only retry websocket sending if the client is still connected 2021-09-20 14:24:07 -04:00
Chris Eager 83e0a19561 Migrate `MessagesDynamoDbRule` to `MessagesDynamoDbExtension` 2021-09-16 10:46:37 -04:00
Chris Eager bd820e6d2e Migrate websocket-resources test to JUnit 5 and .editorconfig 2021-08-19 14:09:57 -05:00
Chris Eager 19f7b207b7 Extract configuration for WebSocket max message sizes 2021-08-19 14:09:57 -05:00
Chris Eager 095fc8140e Increase from default binary message size 2021-08-06 12:56:34 -05:00
Sophiah Ho 1fd1207bf6
Prevent unit tests from failing for machines with a non-US default Locale 2021-07-27 13:01:48 -04:00
Chris Eager f98dd80941 Reorganize and expand dependency declarations to fix `mvn verify` failures 2021-05-20 14:12:37 -05:00
Chris Eager 224e6dac31 Fix NullPointerException in WebSocketResourceProviderTest 2021-05-13 17:19:55 -05:00
Jon Chambers 6196856a7c Use the JDK-provided Base64 encoder/decoder. 2021-04-26 18:17:03 -04:00
Jon Chambers a6fd1aa06c Fix a minor style warning. 2021-03-10 14:54:11 -05:00
Jon Chambers 3cdc58200a Copy headers from the initial websocket upgrade request into subsequent resource requests. 2021-03-10 14:54:11 -05:00
Ehren Kret d09b36b1d5 Fix deprecated imports for Java6Assertions and Matchers 2021-02-08 09:45:33 -06:00
Jon Chambers 7cf50a15d0 Include client age/UA string when closing due to a spurious keepalive request. 2020-11-10 11:45:12 -05:00
Jon Chambers 1732cf9243 Add filters/tasks to enable/disable request logging. 2020-10-23 11:35:06 -04:00
Ehren Kret 2f7bb3499d Make copyright notices consistent
Use SPDX-License-Identifier copyright notices and apply consistently
to source throughout the repo. This covers all modules except
service. That one will be updated in a subsequent commit.
2020-10-23 10:16:02 -05:00
Jon Chambers e9e18afb4a Add a (failing) integration test demonstrating an infinite loop. 2020-09-22 10:21:33 -04:00
Jon Chambers 901ba6e87f Added a push latency manager. 2020-08-03 15:36:02 -04:00
Jeff Hodges e3af0a13da allow "+" before a timezone in request log tests
GitHub Actions runs in UTC where the timezone starts with a "+" instead
of our local dev machines (in PT or ET) which start with a "-" in
numeric form. So, we expand the regex to allow for those in
WebSocketRequestLogTest.

Along the way, we change from calling `matches` directly on the strings
to calling it on the `assertThat` to get better test output.
2020-06-25 17:14:53 -04:00
Jon Chambers 0ca123f4bc Fix a missing mock. 2020-06-17 15:43:28 -04:00
Jon Chambers bbf5e1fa78 Use the UA string from websocket upgrade requests if available. 2020-06-17 15:40:18 -04:00
Jon Chambers eb8b5e5c01 Always copy HTTP response headers to websocket responses. 2020-05-22 15:13:39 -04:00
Moxie Marlinspike 009f81a9a6 Update to dropwizard 2.x 2020-03-14 16:30:13 -07:00
Moxie Marlinspike 0c81556b90 Switch websocket-resources from ListenableFuture to CompletableFuture 2019-05-02 15:05:44 -07:00
Moxie Marlinspike 9220f4d829 Add websocket-resources as a module 2019-05-01 13:19:15 -07:00