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

improves transport api and lifecycle #178

Merged
merged 1 commit into from
Aug 19, 2021

Conversation

olme04
Copy link
Contributor

@olme04 olme04 commented Jul 15, 2021

NOTE: Depends on #177

  • fixes Provide a way to pass parent CoroutineScope to socket builders #169
  • Reworked how Client/Server transports are implemented
    • let users provide CoroutineScope where to launch Server in general way for all transports: in that way, users and transports can control both life-cycle and dispatchers for server running code
    • add CoroutineContext to ClientTransport to specify in which context handling will happen
    • allow users to launch server in specific scope and attach ClientTransport to some Job
  • Connection and RSocket now implements CoroutineScope
  • hacked Limiter to work all time even if not efficient (@OlegDokuka will improve this)
  • Improve TcpClient and TcpServer transport
    • automatic handling of SelectorManager based on provided context: default dispatcher for JVM is IO, if you override it, make sure, that this dispatcher is suitable for blocking tasks, don't use Default dispatcher, for TCP

@OlegDokuka OlegDokuka changed the title Improved transport api and lifecycle improves transport api and lifecycle Aug 19, 2021
@OlegDokuka OlegDokuka merged commit 3ed0674 into rsocket:master Aug 19, 2021
@olme04 olme04 deleted the improved-transport-api branch August 19, 2021 14:38
@olme04 olme04 mentioned this pull request Aug 23, 2021
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.

Provide a way to pass parent CoroutineScope to socket builders
2 participants