Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: Websocket connection uptake #2178

Merged
merged 35 commits into from
Dec 18, 2024
Merged

feat: Websocket connection uptake #2178

merged 35 commits into from
Dec 18, 2024

Conversation

purnimavenkatasubbu
Copy link
Member

@purnimavenkatasubbu purnimavenkatasubbu commented Dec 11, 2024

- What I did
Implemented WebSocket support for inbound connections in the secondary server. Added InboundWebSocketConnection to handle WebSocket-based client connections.

- How I did it

  • Created the InboundWebSocketConnection class, implementing the InboundConnection interface to handle WebSocket operations like writing, closing, and managing metadata.
  • Updated AtConnectionFactory to support creating WebSocket connections via createWebSocketConnection.
  • Modified InboundConnectionManager to manage WebSocket connections, ensuring proper pooling and handling of capacity limits.
  • Added webSocketListener in AtSecondaryImpl to accept and handle WebSocket requests.
  • Modified end-to-end test utilities and made the end2end12 job use websocket connections

- How to verify it
All tests pass

gkc and others added 22 commits March 8, 2024 12:29
…ections

# Conflicts:
#	packages/at_secondary_server/lib/src/server/at_secondary_impl.dart
#	packages/at_secondary_server/lib/src/server/bootstrapper.dart
…um version to 3.0.0, update lots of various constructor signatures to use `super.`
…hod, createWebSocketConnection, to InboundConnectionManager; modify global exception handler so it can deal with WebSockets as well as Sockets for the InboundConnectionLimitException handling
…ections

# Conflicts:
#	packages/at_secondary_server/lib/src/verb/handler/abstract_update_verb_handler.dart
packages/at_secondary_server/CHANGELOG.md Outdated Show resolved Hide resolved
packages/at_secondary_server/pubspec.yaml Outdated Show resolved Hide resolved
@gkc
Copy link
Contributor

gkc commented Dec 12, 2024

@purnimavenkatasubbu @VJag I've pushed some changes with some TODOs for you to get all of these changes covered by end to end tests. Once that's all done you could consider doing the same type of thing for the functional tests and running functional tests four times (dart stable socket, dart stable websocket, dart latest socket, dart latest websocket) instead of the current two (dart stable, dart latest)

@gkc gkc merged commit 9e3578e into trunk Dec 18, 2024
26 checks passed
@gkc gkc deleted the feat/web-socket-connections branch December 18, 2024 14:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants