diff --git a/proto/health.proto b/proto/health.proto new file mode 100644 index 0000000000000000000000000000000000000000..378db950b3b49332ad990aa4aea499179bbe5035 --- /dev/null +++ b/proto/health.proto @@ -0,0 +1,24 @@ +syntax = "proto3"; + +package grpc.health.v1; + +message HealthCheckRequest { + string service = 1; +} + +message HealthCheckResponse { + enum ServingStatus { + UNKNOWN = 0; + SERVING = 1; + NOT_SERVING = 2; + SERVICE_UNKNOWN = 3; // Used only by the Watch method. + } + ServingStatus status = 1; +} + +service Health { + rpc Check(HealthCheckRequest) returns (HealthCheckResponse); + + rpc Watch(HealthCheckRequest) returns (stream HealthCheckResponse); +} + diff --git a/proto/src/health_pb2.py b/proto/src/health_pb2.py new file mode 100644 index 0000000000000000000000000000000000000000..3cd84818dd84509d2c580ffa5d5aaf2df0ea9ee9 --- /dev/null +++ b/proto/src/health_pb2.py @@ -0,0 +1,175 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: health.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='health.proto', + package='grpc.health.v1', + syntax='proto3', + serialized_options=None, + serialized_pb=_b('\n\x0chealth.proto\x12\x0egrpc.health.v1\"%\n\x12HealthCheckRequest\x12\x0f\n\x07service\x18\x01 \x01(\t\"\xa9\x01\n\x13HealthCheckResponse\x12\x41\n\x06status\x18\x01 \x01(\x0e\x32\x31.grpc.health.v1.HealthCheckResponse.ServingStatus\"O\n\rServingStatus\x12\x0b\n\x07UNKNOWN\x10\x00\x12\x0b\n\x07SERVING\x10\x01\x12\x0f\n\x0bNOT_SERVING\x10\x02\x12\x13\n\x0fSERVICE_UNKNOWN\x10\x03\x32\xae\x01\n\x06Health\x12P\n\x05\x43heck\x12\".grpc.health.v1.HealthCheckRequest\x1a#.grpc.health.v1.HealthCheckResponse\x12R\n\x05Watch\x12\".grpc.health.v1.HealthCheckRequest\x1a#.grpc.health.v1.HealthCheckResponse0\x01\x62\x06proto3') +) + + + +_HEALTHCHECKRESPONSE_SERVINGSTATUS = _descriptor.EnumDescriptor( + name='ServingStatus', + full_name='grpc.health.v1.HealthCheckResponse.ServingStatus', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='UNKNOWN', index=0, number=0, + serialized_options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='SERVING', index=1, number=1, + serialized_options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='NOT_SERVING', index=2, number=2, + serialized_options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='SERVICE_UNKNOWN', index=3, number=3, + serialized_options=None, + type=None), + ], + containing_type=None, + serialized_options=None, + serialized_start=162, + serialized_end=241, +) +_sym_db.RegisterEnumDescriptor(_HEALTHCHECKRESPONSE_SERVINGSTATUS) + + +_HEALTHCHECKREQUEST = _descriptor.Descriptor( + name='HealthCheckRequest', + full_name='grpc.health.v1.HealthCheckRequest', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='service', full_name='grpc.health.v1.HealthCheckRequest.service', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=32, + serialized_end=69, +) + + +_HEALTHCHECKRESPONSE = _descriptor.Descriptor( + name='HealthCheckResponse', + full_name='grpc.health.v1.HealthCheckResponse', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='status', full_name='grpc.health.v1.HealthCheckResponse.status', index=0, + number=1, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + _HEALTHCHECKRESPONSE_SERVINGSTATUS, + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=72, + serialized_end=241, +) + +_HEALTHCHECKRESPONSE.fields_by_name['status'].enum_type = _HEALTHCHECKRESPONSE_SERVINGSTATUS +_HEALTHCHECKRESPONSE_SERVINGSTATUS.containing_type = _HEALTHCHECKRESPONSE +DESCRIPTOR.message_types_by_name['HealthCheckRequest'] = _HEALTHCHECKREQUEST +DESCRIPTOR.message_types_by_name['HealthCheckResponse'] = _HEALTHCHECKRESPONSE +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +HealthCheckRequest = _reflection.GeneratedProtocolMessageType('HealthCheckRequest', (_message.Message,), { + 'DESCRIPTOR' : _HEALTHCHECKREQUEST, + '__module__' : 'health_pb2' + # @@protoc_insertion_point(class_scope:grpc.health.v1.HealthCheckRequest) + }) +_sym_db.RegisterMessage(HealthCheckRequest) + +HealthCheckResponse = _reflection.GeneratedProtocolMessageType('HealthCheckResponse', (_message.Message,), { + 'DESCRIPTOR' : _HEALTHCHECKRESPONSE, + '__module__' : 'health_pb2' + # @@protoc_insertion_point(class_scope:grpc.health.v1.HealthCheckResponse) + }) +_sym_db.RegisterMessage(HealthCheckResponse) + + + +_HEALTH = _descriptor.ServiceDescriptor( + name='Health', + full_name='grpc.health.v1.Health', + file=DESCRIPTOR, + index=0, + serialized_options=None, + serialized_start=244, + serialized_end=418, + methods=[ + _descriptor.MethodDescriptor( + name='Check', + full_name='grpc.health.v1.Health.Check', + index=0, + containing_service=None, + input_type=_HEALTHCHECKREQUEST, + output_type=_HEALTHCHECKRESPONSE, + serialized_options=None, + ), + _descriptor.MethodDescriptor( + name='Watch', + full_name='grpc.health.v1.Health.Watch', + index=1, + containing_service=None, + input_type=_HEALTHCHECKREQUEST, + output_type=_HEALTHCHECKRESPONSE, + serialized_options=None, + ), +]) +_sym_db.RegisterServiceDescriptor(_HEALTH) + +DESCRIPTOR.services_by_name['Health'] = _HEALTH + +# @@protoc_insertion_point(module_scope) diff --git a/proto/src/health_pb2_grpc.py b/proto/src/health_pb2_grpc.py new file mode 100644 index 0000000000000000000000000000000000000000..7f299d050c20dacb45b33b7ccd6396cb93e5a352 --- /dev/null +++ b/proto/src/health_pb2_grpc.py @@ -0,0 +1,63 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + +import health_pb2 as health__pb2 + + +class HealthStub(object): + # missing associated documentation comment in .proto file + pass + + def __init__(self, channel): + """Constructor. + + Args: + channel: A grpc.Channel. + """ + self.Check = channel.unary_unary( + '/grpc.health.v1.Health/Check', + request_serializer=health__pb2.HealthCheckRequest.SerializeToString, + response_deserializer=health__pb2.HealthCheckResponse.FromString, + ) + self.Watch = channel.unary_stream( + '/grpc.health.v1.Health/Watch', + request_serializer=health__pb2.HealthCheckRequest.SerializeToString, + response_deserializer=health__pb2.HealthCheckResponse.FromString, + ) + + +class HealthServicer(object): + # missing associated documentation comment in .proto file + pass + + def Check(self, request, context): + # missing associated documentation comment in .proto file + pass + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def Watch(self, request, context): + # missing associated documentation comment in .proto file + pass + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + +def add_HealthServicer_to_server(servicer, server): + rpc_method_handlers = { + 'Check': grpc.unary_unary_rpc_method_handler( + servicer.Check, + request_deserializer=health__pb2.HealthCheckRequest.FromString, + response_serializer=health__pb2.HealthCheckResponse.SerializeToString, + ), + 'Watch': grpc.unary_stream_rpc_method_handler( + servicer.Watch, + request_deserializer=health__pb2.HealthCheckRequest.FromString, + response_serializer=health__pb2.HealthCheckResponse.SerializeToString, + ), + } + generic_handler = grpc.method_handlers_generic_handler( + 'grpc.health.v1.Health', rpc_method_handlers) + server.add_generic_rpc_handlers((generic_handler,)) diff --git a/proto/uml/grpc.health.v1.png b/proto/uml/grpc.health.v1.png new file mode 100644 index 0000000000000000000000000000000000000000..8172e76574a5500a0236f6fce3ef8095279bac79 Binary files /dev/null and b/proto/uml/grpc.health.v1.png differ