Skip to content

Conversation

@s1monw
Copy link
Contributor

@s1monw s1monw commented Jul 4, 2018

Today TransportService is tightly coupled with Transport since it
requires an instance of TransportService in order to receive responses
and send requests. This is mainly due to the Request and Response handlers
being maintained in TransportService but also because of the lack of a proper
callback interface.

This change moves request handler registry and response handler registration into
Transport and adds all necessary methods to TransportConnectionListener in order
to remove the TransportService dependency from Transport
Transport now accepts one or more TransportConnectionListener instances that are
executed sequentially in a blocking fashion.

@s1monw
Copy link
Contributor Author

s1monw commented Jul 4, 2018

this is a backport of #31727

s1monw added 5 commits July 5, 2018 08:29
Today TransportService is tightly coupled with Transport since it
requires an instance of TransportService in order to receive responses
and send requests. This is mainly due to the Request and Response handlers
being maintained in TransportService but also because of the lack of a proper
callback interface.

This change moves request handler registry and response handler registration into
Transport and adds all necessary methods to `TransportConnectionListener` in order
to remove the `TransportService` dependency from `Transport`
Transport now accepts one or more `TransportConnectionListener` instances that are
executed sequentially in a blocking fashion.
@s1monw s1monw merged commit c3fde6c into elastic:6.x Jul 5, 2018
@s1monw s1monw deleted the backport_31727 branch July 5, 2018 15:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant