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

import frontend_nvme_pb2 as frontend__nvme__pb2
from google.protobuf import empty_pb2 as google_dot_protobuf_dot_empty__pb2


class FrontendNvmeServiceStub(object):
    """Front End APIs. Used for creation of xPU managed Nvme devices
    e.g. emulated host-facing Nvme/Pcie controllers as well as
    Nvme-oF controllers
    """

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

        Args:
            channel: A grpc.Channel.
        """
        self.CreateNvmeSubsystem = channel.unary_unary(
                '/opi_api.storage.v1.FrontendNvmeService/CreateNvmeSubsystem',
                request_serializer=frontend__nvme__pb2.CreateNvmeSubsystemRequest.SerializeToString,
                response_deserializer=frontend__nvme__pb2.NvmeSubsystem.FromString,
                )
        self.DeleteNvmeSubsystem = channel.unary_unary(
                '/opi_api.storage.v1.FrontendNvmeService/DeleteNvmeSubsystem',
                request_serializer=frontend__nvme__pb2.DeleteNvmeSubsystemRequest.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                )
        self.UpdateNvmeSubsystem = channel.unary_unary(
                '/opi_api.storage.v1.FrontendNvmeService/UpdateNvmeSubsystem',
                request_serializer=frontend__nvme__pb2.UpdateNvmeSubsystemRequest.SerializeToString,
                response_deserializer=frontend__nvme__pb2.NvmeSubsystem.FromString,
                )
        self.ListNvmeSubsystems = channel.unary_unary(
                '/opi_api.storage.v1.FrontendNvmeService/ListNvmeSubsystems',
                request_serializer=frontend__nvme__pb2.ListNvmeSubsystemsRequest.SerializeToString,
                response_deserializer=frontend__nvme__pb2.ListNvmeSubsystemsResponse.FromString,
                )
        self.GetNvmeSubsystem = channel.unary_unary(
                '/opi_api.storage.v1.FrontendNvmeService/GetNvmeSubsystem',
                request_serializer=frontend__nvme__pb2.GetNvmeSubsystemRequest.SerializeToString,
                response_deserializer=frontend__nvme__pb2.NvmeSubsystem.FromString,
                )
        self.StatsNvmeSubsystem = channel.unary_unary(
                '/opi_api.storage.v1.FrontendNvmeService/StatsNvmeSubsystem',
                request_serializer=frontend__nvme__pb2.StatsNvmeSubsystemRequest.SerializeToString,
                response_deserializer=frontend__nvme__pb2.StatsNvmeSubsystemResponse.FromString,
                )
        self.CreateNvmeController = channel.unary_unary(
                '/opi_api.storage.v1.FrontendNvmeService/CreateNvmeController',
                request_serializer=frontend__nvme__pb2.CreateNvmeControllerRequest.SerializeToString,
                response_deserializer=frontend__nvme__pb2.NvmeController.FromString,
                )
        self.DeleteNvmeController = channel.unary_unary(
                '/opi_api.storage.v1.FrontendNvmeService/DeleteNvmeController',
                request_serializer=frontend__nvme__pb2.DeleteNvmeControllerRequest.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                )
        self.UpdateNvmeController = channel.unary_unary(
                '/opi_api.storage.v1.FrontendNvmeService/UpdateNvmeController',
                request_serializer=frontend__nvme__pb2.UpdateNvmeControllerRequest.SerializeToString,
                response_deserializer=frontend__nvme__pb2.NvmeController.FromString,
                )
        self.ListNvmeControllers = channel.unary_unary(
                '/opi_api.storage.v1.FrontendNvmeService/ListNvmeControllers',
                request_serializer=frontend__nvme__pb2.ListNvmeControllersRequest.SerializeToString,
                response_deserializer=frontend__nvme__pb2.ListNvmeControllersResponse.FromString,
                )
        self.GetNvmeController = channel.unary_unary(
                '/opi_api.storage.v1.FrontendNvmeService/GetNvmeController',
                request_serializer=frontend__nvme__pb2.GetNvmeControllerRequest.SerializeToString,
                response_deserializer=frontend__nvme__pb2.NvmeController.FromString,
                )
        self.StatsNvmeController = channel.unary_unary(
                '/opi_api.storage.v1.FrontendNvmeService/StatsNvmeController',
                request_serializer=frontend__nvme__pb2.StatsNvmeControllerRequest.SerializeToString,
                response_deserializer=frontend__nvme__pb2.StatsNvmeControllerResponse.FromString,
                )
        self.CreateNvmeNamespace = channel.unary_unary(
                '/opi_api.storage.v1.FrontendNvmeService/CreateNvmeNamespace',
                request_serializer=frontend__nvme__pb2.CreateNvmeNamespaceRequest.SerializeToString,
                response_deserializer=frontend__nvme__pb2.NvmeNamespace.FromString,
                )
        self.DeleteNvmeNamespace = channel.unary_unary(
                '/opi_api.storage.v1.FrontendNvmeService/DeleteNvmeNamespace',
                request_serializer=frontend__nvme__pb2.DeleteNvmeNamespaceRequest.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                )
        self.UpdateNvmeNamespace = channel.unary_unary(
                '/opi_api.storage.v1.FrontendNvmeService/UpdateNvmeNamespace',
                request_serializer=frontend__nvme__pb2.UpdateNvmeNamespaceRequest.SerializeToString,
                response_deserializer=frontend__nvme__pb2.NvmeNamespace.FromString,
                )
        self.ListNvmeNamespaces = channel.unary_unary(
                '/opi_api.storage.v1.FrontendNvmeService/ListNvmeNamespaces',
                request_serializer=frontend__nvme__pb2.ListNvmeNamespacesRequest.SerializeToString,
                response_deserializer=frontend__nvme__pb2.ListNvmeNamespacesResponse.FromString,
                )
        self.GetNvmeNamespace = channel.unary_unary(
                '/opi_api.storage.v1.FrontendNvmeService/GetNvmeNamespace',
                request_serializer=frontend__nvme__pb2.GetNvmeNamespaceRequest.SerializeToString,
                response_deserializer=frontend__nvme__pb2.NvmeNamespace.FromString,
                )
        self.StatsNvmeNamespace = channel.unary_unary(
                '/opi_api.storage.v1.FrontendNvmeService/StatsNvmeNamespace',
                request_serializer=frontend__nvme__pb2.StatsNvmeNamespaceRequest.SerializeToString,
                response_deserializer=frontend__nvme__pb2.StatsNvmeNamespaceResponse.FromString,
                )


class FrontendNvmeServiceServicer(object):
    """Front End APIs. Used for creation of xPU managed Nvme devices
    e.g. emulated host-facing Nvme/Pcie controllers as well as
    Nvme-oF controllers
    """

    def CreateNvmeSubsystem(self, request, context):
        """Create an Nvme Subsystem
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def DeleteNvmeSubsystem(self, request, context):
        """Delete an Nvme Subsystem
        Fails if there are any associated objects
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def UpdateNvmeSubsystem(self, request, context):
        """Update an Nvme Subsystem
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def ListNvmeSubsystems(self, request, context):
        """List Nvme Subsystems
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def GetNvmeSubsystem(self, request, context):
        """Get an Nvme Subsystem
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def StatsNvmeSubsystem(self, request, context):
        """Get an Nvme Subsystem statistics
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def CreateNvmeController(self, request, context):
        """Create an Nvme Controller
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def DeleteNvmeController(self, request, context):
        """Delete an Nvme Controller
        Fails if there are any associated objects
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def UpdateNvmeController(self, request, context):
        """Update an Nvme Controller
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def ListNvmeControllers(self, request, context):
        """List Nvme Controllers
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def GetNvmeController(self, request, context):
        """Get an Nvme Controller
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def StatsNvmeController(self, request, context):
        """Get an Nvme Controller statistics
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def CreateNvmeNamespace(self, request, context):
        """Create an Nvme Namespace
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def DeleteNvmeNamespace(self, request, context):
        """Delete an Nvme Namespace
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def UpdateNvmeNamespace(self, request, context):
        """Update an Nvme Namespace
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def ListNvmeNamespaces(self, request, context):
        """List Nvme Namespaces
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def GetNvmeNamespace(self, request, context):
        """Get an Nvme Namespace
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def StatsNvmeNamespace(self, request, context):
        """Get an Nvme Namespace statistics
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')


def add_FrontendNvmeServiceServicer_to_server(servicer, server):
    rpc_method_handlers = {
            'CreateNvmeSubsystem': grpc.unary_unary_rpc_method_handler(
                    servicer.CreateNvmeSubsystem,
                    request_deserializer=frontend__nvme__pb2.CreateNvmeSubsystemRequest.FromString,
                    response_serializer=frontend__nvme__pb2.NvmeSubsystem.SerializeToString,
            ),
            'DeleteNvmeSubsystem': grpc.unary_unary_rpc_method_handler(
                    servicer.DeleteNvmeSubsystem,
                    request_deserializer=frontend__nvme__pb2.DeleteNvmeSubsystemRequest.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'UpdateNvmeSubsystem': grpc.unary_unary_rpc_method_handler(
                    servicer.UpdateNvmeSubsystem,
                    request_deserializer=frontend__nvme__pb2.UpdateNvmeSubsystemRequest.FromString,
                    response_serializer=frontend__nvme__pb2.NvmeSubsystem.SerializeToString,
            ),
            'ListNvmeSubsystems': grpc.unary_unary_rpc_method_handler(
                    servicer.ListNvmeSubsystems,
                    request_deserializer=frontend__nvme__pb2.ListNvmeSubsystemsRequest.FromString,
                    response_serializer=frontend__nvme__pb2.ListNvmeSubsystemsResponse.SerializeToString,
            ),
            'GetNvmeSubsystem': grpc.unary_unary_rpc_method_handler(
                    servicer.GetNvmeSubsystem,
                    request_deserializer=frontend__nvme__pb2.GetNvmeSubsystemRequest.FromString,
                    response_serializer=frontend__nvme__pb2.NvmeSubsystem.SerializeToString,
            ),
            'StatsNvmeSubsystem': grpc.unary_unary_rpc_method_handler(
                    servicer.StatsNvmeSubsystem,
                    request_deserializer=frontend__nvme__pb2.StatsNvmeSubsystemRequest.FromString,
                    response_serializer=frontend__nvme__pb2.StatsNvmeSubsystemResponse.SerializeToString,
            ),
            'CreateNvmeController': grpc.unary_unary_rpc_method_handler(
                    servicer.CreateNvmeController,
                    request_deserializer=frontend__nvme__pb2.CreateNvmeControllerRequest.FromString,
                    response_serializer=frontend__nvme__pb2.NvmeController.SerializeToString,
            ),
            'DeleteNvmeController': grpc.unary_unary_rpc_method_handler(
                    servicer.DeleteNvmeController,
                    request_deserializer=frontend__nvme__pb2.DeleteNvmeControllerRequest.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'UpdateNvmeController': grpc.unary_unary_rpc_method_handler(
                    servicer.UpdateNvmeController,
                    request_deserializer=frontend__nvme__pb2.UpdateNvmeControllerRequest.FromString,
                    response_serializer=frontend__nvme__pb2.NvmeController.SerializeToString,
            ),
            'ListNvmeControllers': grpc.unary_unary_rpc_method_handler(
                    servicer.ListNvmeControllers,
                    request_deserializer=frontend__nvme__pb2.ListNvmeControllersRequest.FromString,
                    response_serializer=frontend__nvme__pb2.ListNvmeControllersResponse.SerializeToString,
            ),
            'GetNvmeController': grpc.unary_unary_rpc_method_handler(
                    servicer.GetNvmeController,
                    request_deserializer=frontend__nvme__pb2.GetNvmeControllerRequest.FromString,
                    response_serializer=frontend__nvme__pb2.NvmeController.SerializeToString,
            ),
            'StatsNvmeController': grpc.unary_unary_rpc_method_handler(
                    servicer.StatsNvmeController,
                    request_deserializer=frontend__nvme__pb2.StatsNvmeControllerRequest.FromString,
                    response_serializer=frontend__nvme__pb2.StatsNvmeControllerResponse.SerializeToString,
            ),
            'CreateNvmeNamespace': grpc.unary_unary_rpc_method_handler(
                    servicer.CreateNvmeNamespace,
                    request_deserializer=frontend__nvme__pb2.CreateNvmeNamespaceRequest.FromString,
                    response_serializer=frontend__nvme__pb2.NvmeNamespace.SerializeToString,
            ),
            'DeleteNvmeNamespace': grpc.unary_unary_rpc_method_handler(
                    servicer.DeleteNvmeNamespace,
                    request_deserializer=frontend__nvme__pb2.DeleteNvmeNamespaceRequest.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'UpdateNvmeNamespace': grpc.unary_unary_rpc_method_handler(
                    servicer.UpdateNvmeNamespace,
                    request_deserializer=frontend__nvme__pb2.UpdateNvmeNamespaceRequest.FromString,
                    response_serializer=frontend__nvme__pb2.NvmeNamespace.SerializeToString,
            ),
            'ListNvmeNamespaces': grpc.unary_unary_rpc_method_handler(
                    servicer.ListNvmeNamespaces,
                    request_deserializer=frontend__nvme__pb2.ListNvmeNamespacesRequest.FromString,
                    response_serializer=frontend__nvme__pb2.ListNvmeNamespacesResponse.SerializeToString,
            ),
            'GetNvmeNamespace': grpc.unary_unary_rpc_method_handler(
                    servicer.GetNvmeNamespace,
                    request_deserializer=frontend__nvme__pb2.GetNvmeNamespaceRequest.FromString,
                    response_serializer=frontend__nvme__pb2.NvmeNamespace.SerializeToString,
            ),
            'StatsNvmeNamespace': grpc.unary_unary_rpc_method_handler(
                    servicer.StatsNvmeNamespace,
                    request_deserializer=frontend__nvme__pb2.StatsNvmeNamespaceRequest.FromString,
                    response_serializer=frontend__nvme__pb2.StatsNvmeNamespaceResponse.SerializeToString,
            ),
    }
    generic_handler = grpc.method_handlers_generic_handler(
            'opi_api.storage.v1.FrontendNvmeService', rpc_method_handlers)
    server.add_generic_rpc_handlers((generic_handler,))


 # This class is part of an EXPERIMENTAL API.
class FrontendNvmeService(object):
    """Front End APIs. Used for creation of xPU managed Nvme devices
    e.g. emulated host-facing Nvme/Pcie controllers as well as
    Nvme-oF controllers
    """

    @staticmethod
    def CreateNvmeSubsystem(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, '/opi_api.storage.v1.FrontendNvmeService/CreateNvmeSubsystem',
            frontend__nvme__pb2.CreateNvmeSubsystemRequest.SerializeToString,
            frontend__nvme__pb2.NvmeSubsystem.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def DeleteNvmeSubsystem(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, '/opi_api.storage.v1.FrontendNvmeService/DeleteNvmeSubsystem',
            frontend__nvme__pb2.DeleteNvmeSubsystemRequest.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def UpdateNvmeSubsystem(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, '/opi_api.storage.v1.FrontendNvmeService/UpdateNvmeSubsystem',
            frontend__nvme__pb2.UpdateNvmeSubsystemRequest.SerializeToString,
            frontend__nvme__pb2.NvmeSubsystem.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ListNvmeSubsystems(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, '/opi_api.storage.v1.FrontendNvmeService/ListNvmeSubsystems',
            frontend__nvme__pb2.ListNvmeSubsystemsRequest.SerializeToString,
            frontend__nvme__pb2.ListNvmeSubsystemsResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetNvmeSubsystem(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, '/opi_api.storage.v1.FrontendNvmeService/GetNvmeSubsystem',
            frontend__nvme__pb2.GetNvmeSubsystemRequest.SerializeToString,
            frontend__nvme__pb2.NvmeSubsystem.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def StatsNvmeSubsystem(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, '/opi_api.storage.v1.FrontendNvmeService/StatsNvmeSubsystem',
            frontend__nvme__pb2.StatsNvmeSubsystemRequest.SerializeToString,
            frontend__nvme__pb2.StatsNvmeSubsystemResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def CreateNvmeController(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, '/opi_api.storage.v1.FrontendNvmeService/CreateNvmeController',
            frontend__nvme__pb2.CreateNvmeControllerRequest.SerializeToString,
            frontend__nvme__pb2.NvmeController.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def DeleteNvmeController(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, '/opi_api.storage.v1.FrontendNvmeService/DeleteNvmeController',
            frontend__nvme__pb2.DeleteNvmeControllerRequest.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def UpdateNvmeController(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, '/opi_api.storage.v1.FrontendNvmeService/UpdateNvmeController',
            frontend__nvme__pb2.UpdateNvmeControllerRequest.SerializeToString,
            frontend__nvme__pb2.NvmeController.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ListNvmeControllers(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, '/opi_api.storage.v1.FrontendNvmeService/ListNvmeControllers',
            frontend__nvme__pb2.ListNvmeControllersRequest.SerializeToString,
            frontend__nvme__pb2.ListNvmeControllersResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetNvmeController(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, '/opi_api.storage.v1.FrontendNvmeService/GetNvmeController',
            frontend__nvme__pb2.GetNvmeControllerRequest.SerializeToString,
            frontend__nvme__pb2.NvmeController.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def StatsNvmeController(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, '/opi_api.storage.v1.FrontendNvmeService/StatsNvmeController',
            frontend__nvme__pb2.StatsNvmeControllerRequest.SerializeToString,
            frontend__nvme__pb2.StatsNvmeControllerResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def CreateNvmeNamespace(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, '/opi_api.storage.v1.FrontendNvmeService/CreateNvmeNamespace',
            frontend__nvme__pb2.CreateNvmeNamespaceRequest.SerializeToString,
            frontend__nvme__pb2.NvmeNamespace.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def DeleteNvmeNamespace(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, '/opi_api.storage.v1.FrontendNvmeService/DeleteNvmeNamespace',
            frontend__nvme__pb2.DeleteNvmeNamespaceRequest.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def UpdateNvmeNamespace(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, '/opi_api.storage.v1.FrontendNvmeService/UpdateNvmeNamespace',
            frontend__nvme__pb2.UpdateNvmeNamespaceRequest.SerializeToString,
            frontend__nvme__pb2.NvmeNamespace.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ListNvmeNamespaces(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, '/opi_api.storage.v1.FrontendNvmeService/ListNvmeNamespaces',
            frontend__nvme__pb2.ListNvmeNamespacesRequest.SerializeToString,
            frontend__nvme__pb2.ListNvmeNamespacesResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetNvmeNamespace(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, '/opi_api.storage.v1.FrontendNvmeService/GetNvmeNamespace',
            frontend__nvme__pb2.GetNvmeNamespaceRequest.SerializeToString,
            frontend__nvme__pb2.NvmeNamespace.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def StatsNvmeNamespace(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, '/opi_api.storage.v1.FrontendNvmeService/StatsNvmeNamespace',
            frontend__nvme__pb2.StatsNvmeNamespaceRequest.SerializeToString,
            frontend__nvme__pb2.StatsNvmeNamespaceResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
