[VOL-4442] grpc streaming connection monitoring
Change-Id: Id787e94cf28745d36e72f8ed2f5c316312714db4
diff --git a/protos/voltha_protos/adapter_service.proto b/protos/voltha_protos/adapter_service.proto
index cfd5f29..08578a4 100755
--- a/protos/voltha_protos/adapter_service.proto
+++ b/protos/voltha_protos/adapter_service.proto
@@ -20,7 +20,7 @@
service AdapterService {
// GetHealthStatus is used by an AdapterService client to verify connectivity
// to the gRPC server hosting the AdapterService service
- rpc GetHealthStatus(common.Connection) returns (health.HealthStatus);
+ rpc GetHealthStatus(stream common.Connection) returns (stream health.HealthStatus);
// Device
rpc AdoptDevice(device.Device) returns(google.protobuf.Empty);
diff --git a/protos/voltha_protos/core_services.proto b/protos/voltha_protos/core_services.proto
index f0929f4..738bd3e 100755
--- a/protos/voltha_protos/core_services.proto
+++ b/protos/voltha_protos/core_services.proto
@@ -15,8 +15,10 @@
// The CoreService is a gRPC service implemented by the Voltha RW-Core for the
// sole purpose of serving requests/updates from the Voltha adapters.
service CoreService {
- // in coreProxy interface
- rpc GetHealthStatus(common.Connection) returns (health.HealthStatus);
+ // GetHealthStatus is used by a CoreService client to verify connectivity
+ // to the gRPC server hosting the CoreService service
+ rpc GetHealthStatus(stream common.Connection) returns (stream health.HealthStatus);
+
rpc RegisterAdapter (core_adapter.AdapterRegistration) returns (google.protobuf.Empty);
rpc DeviceUpdate (device.Device) returns (google.protobuf.Empty);
rpc PortCreated (device.Port) returns (google.protobuf.Empty);
diff --git a/protos/voltha_protos/olt_inter_adapter_service.proto b/protos/voltha_protos/olt_inter_adapter_service.proto
index 68dbb6f..6ebad57 100755
--- a/protos/voltha_protos/olt_inter_adapter_service.proto
+++ b/protos/voltha_protos/olt_inter_adapter_service.proto
@@ -12,9 +12,10 @@
import "voltha_protos/health.proto";
service OltInterAdapterService {
- // GetHealthStatus is used by an OltInterAdapterService client to verify connectivity
- // to the gRPC server hosting the OltInterAdapterService service
- rpc GetHealthStatus(common.Connection) returns (health.HealthStatus);
+ // GetHealthStatus is used by a OltInterAdapterService client to detect a connection
+ // lost with the gRPC server hosting the OltInterAdapterService service
+ rpc GetHealthStatus(stream common.Connection) returns (stream health.HealthStatus);
+
rpc ProxyOmciRequest(inter_adapter.OmciMessage) returns (google.protobuf.Empty);
rpc ProxyOmciRequests(inter_adapter.OmciMessages) returns (google.protobuf.Empty);
diff --git a/protos/voltha_protos/onu_inter_adapter_service.proto b/protos/voltha_protos/onu_inter_adapter_service.proto
index 1b9243a..3b3d25d 100755
--- a/protos/voltha_protos/onu_inter_adapter_service.proto
+++ b/protos/voltha_protos/onu_inter_adapter_service.proto
@@ -12,9 +12,9 @@
import "voltha_protos/health.proto";
service OnuInterAdapterService {
- // GetHealthStatus is used by an OnuInterAdapterService client to verify connectivity
- // to the gRPC server hosting the OnuInterAdapterService service
- rpc GetHealthStatus(common.Connection) returns (health.HealthStatus);
+ // GetHealthStatus is used by a OnuInterAdapterService client to detect a connection
+ // lost with the gRPC server hosting the OnuInterAdapterService service
+ rpc GetHealthStatus(stream common.Connection) returns (stream health.HealthStatus);
rpc OnuIndication(inter_adapter.OnuIndicationMessage) returns (google.protobuf.Empty);
rpc OmciIndication(inter_adapter.OmciMessage) returns (google.protobuf.Empty);