Skip to content

improves transport api and lifecycle #178

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

Merged
merged 1 commit into from Aug 19, 2021
Merged

improves transport api and lifecycle #178

merged 1 commit into from Aug 19, 2021

Conversation

ghost
Copy link

@ghost ghost 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

@ghost ghost marked this pull request as ready for review August 19, 2021 12:38
@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
@ghost ghost deleted the improved-transport-api branch August 19, 2021 14:38
@ghost ghost 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
1 participant