Class: Async::GRPC::XDS::Server
- Inherits:
-
Object
- Object
- Async::GRPC::XDS::Server
- Defined in:
- lib/async/grpc/xds/server.rb
Overview
Convenience wrapper for serving an xDS control plane over gRPC.
Instance Attribute Summary collapse
-
#control_plane ⇒ Object
readonly
Returns the value of attribute control_plane.
-
#dispatcher ⇒ Object
readonly
Returns the value of attribute dispatcher.
Instance Method Summary collapse
-
#initialize(control_plane = ControlPlane.new, **options) ⇒ Server
constructor
Initialize an xDS server.
-
#run(endpoint, **options) ⇒ Object
Run the xDS server on an endpoint.
Constructor Details
#initialize(control_plane = ControlPlane.new, **options) ⇒ Server
Initialize an xDS server.
20 21 22 23 24 25 |
# File 'lib/async/grpc/xds/server.rb', line 20 def initialize(control_plane = ControlPlane.new, **) @control_plane = control_plane @dispatcher = Async::GRPC::Dispatcher.new @dispatcher.register(Service.new(@control_plane)) @options = end |
Instance Attribute Details
#control_plane ⇒ Object (readonly)
Returns the value of attribute control_plane.
27 28 29 |
# File 'lib/async/grpc/xds/server.rb', line 27 def control_plane @control_plane end |
#dispatcher ⇒ Object (readonly)
Returns the value of attribute dispatcher.
28 29 30 |
# File 'lib/async/grpc/xds/server.rb', line 28 def dispatcher @dispatcher end |
Instance Method Details
#run(endpoint, **options) ⇒ Object
Run the xDS server on an endpoint.
34 35 36 37 |
# File 'lib/async/grpc/xds/server.rb', line 34 def run(endpoint, **) server = Async::HTTP::Server.new(@dispatcher, endpoint, **@options, **) server.run end |