Skip to content

refactor(client): migrates CompletableFuture to reactive patterns for HttpClientSseClientTransport#128

Closed
Aliaksie wants to merge 5 commits intomodelcontextprotocol:mainfrom
Aliaksie:issue115/httpClientSseClientTransport_internal
Closed

refactor(client): migrates CompletableFuture to reactive patterns for HttpClientSseClientTransport#128
Aliaksie wants to merge 5 commits intomodelcontextprotocol:mainfrom
Aliaksie:issue115/httpClientSseClientTransport_internal

Conversation

@Aliaksie
Copy link
Copy Markdown
Contributor

@Aliaksie Aliaksie commented Apr 8, 2025

Replaced CompletableFuture with Mono from the reactive programming paradigm for the HttpClientSseClientTransport class internally, ensuring a consistent concurrency model using reactive patterns.

Motivation and Context

This change was made to align with a more consistent and modern concurrency implementation, avoiding the mixing of different paradigms. By switching from CompletableFuture to Mono, we improving maintainability and consistency, while also simplifying the concurrency handling for SSE event processing. This PR is related to issue

How Has This Been Tested?

Breaking Changes

No breaking changes should be introduced. The internal concurrency implementation has changed, but it does not affect the end users. No code or configuration updates are needed for consumers of the HttpClientSseClientTransport class.

Types of changes

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to change)
  • Documentation update

Checklist

  • I have read the MCP Documentation
  • My code follows the repository's style guidelines
  • New and existing tests pass locally
  • I have added appropriate error handling
  • I have added or updated documentation as needed

Additional context

let me know if i missed something and need to add or if these changes don't make sense no problem just close this pr :-)

Loading
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.

4 participants