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

from . import native_user_pb2 as admin_dot_v1_dot_native__user__pb2


class NativeUserServiceStub(object):
    """Missing associated documentation comment in .proto file."""

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

        Args:
            channel: A grpc.Channel.
        """
        self.CreateNativeUser = channel.unary_unary(
                '/admin.v1.NativeUserService/CreateNativeUser',
                request_serializer=admin_dot_v1_dot_native__user__pb2.CreateNativeUserRequest.SerializeToString,
                response_deserializer=admin_dot_v1_dot_native__user__pb2.CreateNativeUserResponse.FromString,
                _registered_method=True)
        self.GetNativeUser = channel.unary_unary(
                '/admin.v1.NativeUserService/GetNativeUser',
                request_serializer=admin_dot_v1_dot_native__user__pb2.GetNativeUserRequest.SerializeToString,
                response_deserializer=admin_dot_v1_dot_native__user__pb2.GetNativeUserResponse.FromString,
                _registered_method=True)
        self.GetNativeUsers = channel.unary_unary(
                '/admin.v1.NativeUserService/GetNativeUsers',
                request_serializer=admin_dot_v1_dot_native__user__pb2.GetNativeUsersRequest.SerializeToString,
                response_deserializer=admin_dot_v1_dot_native__user__pb2.GetNativeUsersResponse.FromString,
                _registered_method=True)
        self.DeleteNativeUser = channel.unary_unary(
                '/admin.v1.NativeUserService/DeleteNativeUser',
                request_serializer=admin_dot_v1_dot_native__user__pb2.DeleteNativeUserRequest.SerializeToString,
                response_deserializer=admin_dot_v1_dot_native__user__pb2.DeleteNativeUserResponse.FromString,
                _registered_method=True)
        self.UpdateNativeUserSecret = channel.unary_unary(
                '/admin.v1.NativeUserService/UpdateNativeUserSecret',
                request_serializer=admin_dot_v1_dot_native__user__pb2.UpdateNativeUserSecretRequest.SerializeToString,
                response_deserializer=admin_dot_v1_dot_native__user__pb2.UpdateNativeUserSecretResponse.FromString,
                _registered_method=True)
        self.SetNativeUserAsDefault = channel.unary_unary(
                '/admin.v1.NativeUserService/SetNativeUserAsDefault',
                request_serializer=admin_dot_v1_dot_native__user__pb2.SetNativeUserAsDefaultRequest.SerializeToString,
                response_deserializer=admin_dot_v1_dot_native__user__pb2.SetNativeUserAsDefaultResponse.FromString,
                _registered_method=True)
        self.SetNativeUserTerminationProtection = channel.unary_unary(
                '/admin.v1.NativeUserService/SetNativeUserTerminationProtection',
                request_serializer=admin_dot_v1_dot_native__user__pb2.SetNativeUserTerminationProtectionRequest.SerializeToString,
                response_deserializer=admin_dot_v1_dot_native__user__pb2.SetNativeUserTerminationProtectionResponse.FromString,
                _registered_method=True)
        self.CreateNativeUserIdentityLink = channel.unary_unary(
                '/admin.v1.NativeUserService/CreateNativeUserIdentityLink',
                request_serializer=admin_dot_v1_dot_native__user__pb2.CreateNativeUserIdentityLinkRequest.SerializeToString,
                response_deserializer=admin_dot_v1_dot_native__user__pb2.CreateNativeUserIdentityLinkResponse.FromString,
                _registered_method=True)
        self.CreateNativeUserIdentityLinkV2 = channel.unary_unary(
                '/admin.v1.NativeUserService/CreateNativeUserIdentityLinkV2',
                request_serializer=admin_dot_v1_dot_native__user__pb2.CreateNativeUserIdentityLinkV2Request.SerializeToString,
                response_deserializer=admin_dot_v1_dot_native__user__pb2.CreateNativeUserIdentityLinkV2Response.FromString,
                _registered_method=True)
        self.GetNativeUserIdentityLink = channel.unary_unary(
                '/admin.v1.NativeUserService/GetNativeUserIdentityLink',
                request_serializer=admin_dot_v1_dot_native__user__pb2.GetNativeUserIdentityLinkRequest.SerializeToString,
                response_deserializer=admin_dot_v1_dot_native__user__pb2.GetNativeUserIdentityLinkResponse.FromString,
                _registered_method=True)
        self.UpdateNativeUserIdentityLink = channel.unary_unary(
                '/admin.v1.NativeUserService/UpdateNativeUserIdentityLink',
                request_serializer=admin_dot_v1_dot_native__user__pb2.UpdateNativeUserIdentityLinkRequest.SerializeToString,
                response_deserializer=admin_dot_v1_dot_native__user__pb2.UpdateNativeUserIdentityLinkResponse.FromString,
                _registered_method=True)
        self.DeleteNativeUserIdentityLink = channel.unary_unary(
                '/admin.v1.NativeUserService/DeleteNativeUserIdentityLink',
                request_serializer=admin_dot_v1_dot_native__user__pb2.DeleteNativeUserIdentityLinkRequest.SerializeToString,
                response_deserializer=admin_dot_v1_dot_native__user__pb2.DeleteNativeUserIdentityLinkResponse.FromString,
                _registered_method=True)


class NativeUserServiceServicer(object):
    """Missing associated documentation comment in .proto file."""

    def CreateNativeUser(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 GetNativeUser(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 GetNativeUsers(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 DeleteNativeUser(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 UpdateNativeUserSecret(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 SetNativeUserAsDefault(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 SetNativeUserTerminationProtection(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 CreateNativeUserIdentityLink(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 CreateNativeUserIdentityLinkV2(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 GetNativeUserIdentityLink(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 UpdateNativeUserIdentityLink(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 DeleteNativeUserIdentityLink(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_NativeUserServiceServicer_to_server(servicer, server):
    rpc_method_handlers = {
            'CreateNativeUser': grpc.unary_unary_rpc_method_handler(
                    servicer.CreateNativeUser,
                    request_deserializer=admin_dot_v1_dot_native__user__pb2.CreateNativeUserRequest.FromString,
                    response_serializer=admin_dot_v1_dot_native__user__pb2.CreateNativeUserResponse.SerializeToString,
            ),
            'GetNativeUser': grpc.unary_unary_rpc_method_handler(
                    servicer.GetNativeUser,
                    request_deserializer=admin_dot_v1_dot_native__user__pb2.GetNativeUserRequest.FromString,
                    response_serializer=admin_dot_v1_dot_native__user__pb2.GetNativeUserResponse.SerializeToString,
            ),
            'GetNativeUsers': grpc.unary_unary_rpc_method_handler(
                    servicer.GetNativeUsers,
                    request_deserializer=admin_dot_v1_dot_native__user__pb2.GetNativeUsersRequest.FromString,
                    response_serializer=admin_dot_v1_dot_native__user__pb2.GetNativeUsersResponse.SerializeToString,
            ),
            'DeleteNativeUser': grpc.unary_unary_rpc_method_handler(
                    servicer.DeleteNativeUser,
                    request_deserializer=admin_dot_v1_dot_native__user__pb2.DeleteNativeUserRequest.FromString,
                    response_serializer=admin_dot_v1_dot_native__user__pb2.DeleteNativeUserResponse.SerializeToString,
            ),
            'UpdateNativeUserSecret': grpc.unary_unary_rpc_method_handler(
                    servicer.UpdateNativeUserSecret,
                    request_deserializer=admin_dot_v1_dot_native__user__pb2.UpdateNativeUserSecretRequest.FromString,
                    response_serializer=admin_dot_v1_dot_native__user__pb2.UpdateNativeUserSecretResponse.SerializeToString,
            ),
            'SetNativeUserAsDefault': grpc.unary_unary_rpc_method_handler(
                    servicer.SetNativeUserAsDefault,
                    request_deserializer=admin_dot_v1_dot_native__user__pb2.SetNativeUserAsDefaultRequest.FromString,
                    response_serializer=admin_dot_v1_dot_native__user__pb2.SetNativeUserAsDefaultResponse.SerializeToString,
            ),
            'SetNativeUserTerminationProtection': grpc.unary_unary_rpc_method_handler(
                    servicer.SetNativeUserTerminationProtection,
                    request_deserializer=admin_dot_v1_dot_native__user__pb2.SetNativeUserTerminationProtectionRequest.FromString,
                    response_serializer=admin_dot_v1_dot_native__user__pb2.SetNativeUserTerminationProtectionResponse.SerializeToString,
            ),
            'CreateNativeUserIdentityLink': grpc.unary_unary_rpc_method_handler(
                    servicer.CreateNativeUserIdentityLink,
                    request_deserializer=admin_dot_v1_dot_native__user__pb2.CreateNativeUserIdentityLinkRequest.FromString,
                    response_serializer=admin_dot_v1_dot_native__user__pb2.CreateNativeUserIdentityLinkResponse.SerializeToString,
            ),
            'CreateNativeUserIdentityLinkV2': grpc.unary_unary_rpc_method_handler(
                    servicer.CreateNativeUserIdentityLinkV2,
                    request_deserializer=admin_dot_v1_dot_native__user__pb2.CreateNativeUserIdentityLinkV2Request.FromString,
                    response_serializer=admin_dot_v1_dot_native__user__pb2.CreateNativeUserIdentityLinkV2Response.SerializeToString,
            ),
            'GetNativeUserIdentityLink': grpc.unary_unary_rpc_method_handler(
                    servicer.GetNativeUserIdentityLink,
                    request_deserializer=admin_dot_v1_dot_native__user__pb2.GetNativeUserIdentityLinkRequest.FromString,
                    response_serializer=admin_dot_v1_dot_native__user__pb2.GetNativeUserIdentityLinkResponse.SerializeToString,
            ),
            'UpdateNativeUserIdentityLink': grpc.unary_unary_rpc_method_handler(
                    servicer.UpdateNativeUserIdentityLink,
                    request_deserializer=admin_dot_v1_dot_native__user__pb2.UpdateNativeUserIdentityLinkRequest.FromString,
                    response_serializer=admin_dot_v1_dot_native__user__pb2.UpdateNativeUserIdentityLinkResponse.SerializeToString,
            ),
            'DeleteNativeUserIdentityLink': grpc.unary_unary_rpc_method_handler(
                    servicer.DeleteNativeUserIdentityLink,
                    request_deserializer=admin_dot_v1_dot_native__user__pb2.DeleteNativeUserIdentityLinkRequest.FromString,
                    response_serializer=admin_dot_v1_dot_native__user__pb2.DeleteNativeUserIdentityLinkResponse.SerializeToString,
            ),
    }
    generic_handler = grpc.method_handlers_generic_handler(
            'admin.v1.NativeUserService', rpc_method_handlers)
    server.add_generic_rpc_handlers((generic_handler,))
    server.add_registered_method_handlers('admin.v1.NativeUserService', rpc_method_handlers)


 # This class is part of an EXPERIMENTAL API.
class NativeUserService(object):
    """Missing associated documentation comment in .proto file."""

    @staticmethod
    def CreateNativeUser(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,
            '/admin.v1.NativeUserService/CreateNativeUser',
            admin_dot_v1_dot_native__user__pb2.CreateNativeUserRequest.SerializeToString,
            admin_dot_v1_dot_native__user__pb2.CreateNativeUserResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def GetNativeUser(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,
            '/admin.v1.NativeUserService/GetNativeUser',
            admin_dot_v1_dot_native__user__pb2.GetNativeUserRequest.SerializeToString,
            admin_dot_v1_dot_native__user__pb2.GetNativeUserResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def GetNativeUsers(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,
            '/admin.v1.NativeUserService/GetNativeUsers',
            admin_dot_v1_dot_native__user__pb2.GetNativeUsersRequest.SerializeToString,
            admin_dot_v1_dot_native__user__pb2.GetNativeUsersResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def DeleteNativeUser(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,
            '/admin.v1.NativeUserService/DeleteNativeUser',
            admin_dot_v1_dot_native__user__pb2.DeleteNativeUserRequest.SerializeToString,
            admin_dot_v1_dot_native__user__pb2.DeleteNativeUserResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def UpdateNativeUserSecret(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,
            '/admin.v1.NativeUserService/UpdateNativeUserSecret',
            admin_dot_v1_dot_native__user__pb2.UpdateNativeUserSecretRequest.SerializeToString,
            admin_dot_v1_dot_native__user__pb2.UpdateNativeUserSecretResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def SetNativeUserAsDefault(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,
            '/admin.v1.NativeUserService/SetNativeUserAsDefault',
            admin_dot_v1_dot_native__user__pb2.SetNativeUserAsDefaultRequest.SerializeToString,
            admin_dot_v1_dot_native__user__pb2.SetNativeUserAsDefaultResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def SetNativeUserTerminationProtection(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,
            '/admin.v1.NativeUserService/SetNativeUserTerminationProtection',
            admin_dot_v1_dot_native__user__pb2.SetNativeUserTerminationProtectionRequest.SerializeToString,
            admin_dot_v1_dot_native__user__pb2.SetNativeUserTerminationProtectionResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def CreateNativeUserIdentityLink(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,
            '/admin.v1.NativeUserService/CreateNativeUserIdentityLink',
            admin_dot_v1_dot_native__user__pb2.CreateNativeUserIdentityLinkRequest.SerializeToString,
            admin_dot_v1_dot_native__user__pb2.CreateNativeUserIdentityLinkResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def CreateNativeUserIdentityLinkV2(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,
            '/admin.v1.NativeUserService/CreateNativeUserIdentityLinkV2',
            admin_dot_v1_dot_native__user__pb2.CreateNativeUserIdentityLinkV2Request.SerializeToString,
            admin_dot_v1_dot_native__user__pb2.CreateNativeUserIdentityLinkV2Response.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def GetNativeUserIdentityLink(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,
            '/admin.v1.NativeUserService/GetNativeUserIdentityLink',
            admin_dot_v1_dot_native__user__pb2.GetNativeUserIdentityLinkRequest.SerializeToString,
            admin_dot_v1_dot_native__user__pb2.GetNativeUserIdentityLinkResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def UpdateNativeUserIdentityLink(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,
            '/admin.v1.NativeUserService/UpdateNativeUserIdentityLink',
            admin_dot_v1_dot_native__user__pb2.UpdateNativeUserIdentityLinkRequest.SerializeToString,
            admin_dot_v1_dot_native__user__pb2.UpdateNativeUserIdentityLinkResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def DeleteNativeUserIdentityLink(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,
            '/admin.v1.NativeUserService/DeleteNativeUserIdentityLink',
            admin_dot_v1_dot_native__user__pb2.DeleteNativeUserIdentityLinkRequest.SerializeToString,
            admin_dot_v1_dot_native__user__pb2.DeleteNativeUserIdentityLinkResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)
