# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT!
"""Client and server classes corresponding to protobuf-defined services."""
import grpc

from google.protobuf import empty_pb2 as google_dot_protobuf_dot_empty__pb2
from scalekit.v1.members import members_pb2 as scalekit_dot_v1_dot_members_dot_members__pb2


class MembersServiceStub(object):
    """For the first closed beta build, we are not exposing the ability to create members. So, most of the APIs will have
    WORKSPACE auth scope. when we release the members UI, we need to update those APIs to WORKSPACE_SESSION scope.
    """

    def __init__(self, channel):
        """Constructor.

        Args:
            channel: A grpc.Channel.
        """
        self.CreateMember = channel.unary_unary(
                '/scalekit.v1.members.MembersService/CreateMember',
                request_serializer=scalekit_dot_v1_dot_members_dot_members__pb2.CreateMemberRequest.SerializeToString,
                response_deserializer=scalekit_dot_v1_dot_members_dot_members__pb2.CreateMemberResponse.FromString,
                )
        self.UpdateCurrentMember = channel.unary_unary(
                '/scalekit.v1.members.MembersService/UpdateCurrentMember',
                request_serializer=scalekit_dot_v1_dot_members_dot_members__pb2.UpdateCurrentMemberRequest.SerializeToString,
                response_deserializer=scalekit_dot_v1_dot_members_dot_members__pb2.UpdateMemberResponse.FromString,
                )
        self.UpdateMember = channel.unary_unary(
                '/scalekit.v1.members.MembersService/UpdateMember',
                request_serializer=scalekit_dot_v1_dot_members_dot_members__pb2.UpdateMemberRequest.SerializeToString,
                response_deserializer=scalekit_dot_v1_dot_members_dot_members__pb2.UpdateMemberResponse.FromString,
                )
        self.GetCurrentMember = channel.unary_unary(
                '/scalekit.v1.members.MembersService/GetCurrentMember',
                request_serializer=scalekit_dot_v1_dot_members_dot_members__pb2.GetCurrentMemberRequest.SerializeToString,
                response_deserializer=scalekit_dot_v1_dot_members_dot_members__pb2.GetMemberResponse.FromString,
                )
        self.GetMember = channel.unary_unary(
                '/scalekit.v1.members.MembersService/GetMember',
                request_serializer=scalekit_dot_v1_dot_members_dot_members__pb2.GetMemberRequest.SerializeToString,
                response_deserializer=scalekit_dot_v1_dot_members_dot_members__pb2.GetMemberResponse.FromString,
                )
        self.ListMembers = channel.unary_unary(
                '/scalekit.v1.members.MembersService/ListMembers',
                request_serializer=scalekit_dot_v1_dot_members_dot_members__pb2.ListMemberRequest.SerializeToString,
                response_deserializer=scalekit_dot_v1_dot_members_dot_members__pb2.ListMemberResponse.FromString,
                )
        self.DeleteMember = channel.unary_unary(
                '/scalekit.v1.members.MembersService/DeleteMember',
                request_serializer=scalekit_dot_v1_dot_members_dot_members__pb2.DeleteMemberRequest.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                )


class MembersServiceServicer(object):
    """For the first closed beta build, we are not exposing the ability to create members. So, most of the APIs will have
    WORKSPACE auth scope. when we release the members UI, we need to update those APIs to WORKSPACE_SESSION scope.
    """

    def CreateMember(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def UpdateCurrentMember(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def UpdateMember(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def GetCurrentMember(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def GetMember(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def ListMembers(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def DeleteMember(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')


def add_MembersServiceServicer_to_server(servicer, server):
    rpc_method_handlers = {
            'CreateMember': grpc.unary_unary_rpc_method_handler(
                    servicer.CreateMember,
                    request_deserializer=scalekit_dot_v1_dot_members_dot_members__pb2.CreateMemberRequest.FromString,
                    response_serializer=scalekit_dot_v1_dot_members_dot_members__pb2.CreateMemberResponse.SerializeToString,
            ),
            'UpdateCurrentMember': grpc.unary_unary_rpc_method_handler(
                    servicer.UpdateCurrentMember,
                    request_deserializer=scalekit_dot_v1_dot_members_dot_members__pb2.UpdateCurrentMemberRequest.FromString,
                    response_serializer=scalekit_dot_v1_dot_members_dot_members__pb2.UpdateMemberResponse.SerializeToString,
            ),
            'UpdateMember': grpc.unary_unary_rpc_method_handler(
                    servicer.UpdateMember,
                    request_deserializer=scalekit_dot_v1_dot_members_dot_members__pb2.UpdateMemberRequest.FromString,
                    response_serializer=scalekit_dot_v1_dot_members_dot_members__pb2.UpdateMemberResponse.SerializeToString,
            ),
            'GetCurrentMember': grpc.unary_unary_rpc_method_handler(
                    servicer.GetCurrentMember,
                    request_deserializer=scalekit_dot_v1_dot_members_dot_members__pb2.GetCurrentMemberRequest.FromString,
                    response_serializer=scalekit_dot_v1_dot_members_dot_members__pb2.GetMemberResponse.SerializeToString,
            ),
            'GetMember': grpc.unary_unary_rpc_method_handler(
                    servicer.GetMember,
                    request_deserializer=scalekit_dot_v1_dot_members_dot_members__pb2.GetMemberRequest.FromString,
                    response_serializer=scalekit_dot_v1_dot_members_dot_members__pb2.GetMemberResponse.SerializeToString,
            ),
            'ListMembers': grpc.unary_unary_rpc_method_handler(
                    servicer.ListMembers,
                    request_deserializer=scalekit_dot_v1_dot_members_dot_members__pb2.ListMemberRequest.FromString,
                    response_serializer=scalekit_dot_v1_dot_members_dot_members__pb2.ListMemberResponse.SerializeToString,
            ),
            'DeleteMember': grpc.unary_unary_rpc_method_handler(
                    servicer.DeleteMember,
                    request_deserializer=scalekit_dot_v1_dot_members_dot_members__pb2.DeleteMemberRequest.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
    }
    generic_handler = grpc.method_handlers_generic_handler(
            'scalekit.v1.members.MembersService', rpc_method_handlers)
    server.add_generic_rpc_handlers((generic_handler,))


 # This class is part of an EXPERIMENTAL API.
class MembersService(object):
    """For the first closed beta build, we are not exposing the ability to create members. So, most of the APIs will have
    WORKSPACE auth scope. when we release the members UI, we need to update those APIs to WORKSPACE_SESSION scope.
    """

    @staticmethod
    def CreateMember(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/scalekit.v1.members.MembersService/CreateMember',
            scalekit_dot_v1_dot_members_dot_members__pb2.CreateMemberRequest.SerializeToString,
            scalekit_dot_v1_dot_members_dot_members__pb2.CreateMemberResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def UpdateCurrentMember(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/scalekit.v1.members.MembersService/UpdateCurrentMember',
            scalekit_dot_v1_dot_members_dot_members__pb2.UpdateCurrentMemberRequest.SerializeToString,
            scalekit_dot_v1_dot_members_dot_members__pb2.UpdateMemberResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def UpdateMember(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/scalekit.v1.members.MembersService/UpdateMember',
            scalekit_dot_v1_dot_members_dot_members__pb2.UpdateMemberRequest.SerializeToString,
            scalekit_dot_v1_dot_members_dot_members__pb2.UpdateMemberResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetCurrentMember(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/scalekit.v1.members.MembersService/GetCurrentMember',
            scalekit_dot_v1_dot_members_dot_members__pb2.GetCurrentMemberRequest.SerializeToString,
            scalekit_dot_v1_dot_members_dot_members__pb2.GetMemberResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetMember(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/scalekit.v1.members.MembersService/GetMember',
            scalekit_dot_v1_dot_members_dot_members__pb2.GetMemberRequest.SerializeToString,
            scalekit_dot_v1_dot_members_dot_members__pb2.GetMemberResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ListMembers(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/scalekit.v1.members.MembersService/ListMembers',
            scalekit_dot_v1_dot_members_dot_members__pb2.ListMemberRequest.SerializeToString,
            scalekit_dot_v1_dot_members_dot_members__pb2.ListMemberResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def DeleteMember(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/scalekit.v1.members.MembersService/DeleteMember',
            scalekit_dot_v1_dot_members_dot_members__pb2.DeleteMemberRequest.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
