# 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
import l3_xpu_infra_mgr_pb2 as l3__xpu__infra__mgr__pb2


class VrfServiceStub(object):
    """Management of Vrf Resources
    """

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

        Args:
            channel: A grpc.Channel.
        """
        self.CreateVrf = channel.unary_unary(
                '/opi_api.network.evpn_gw.v1alpha1.VrfService/CreateVrf',
                request_serializer=l3__xpu__infra__mgr__pb2.CreateVrfRequest.SerializeToString,
                response_deserializer=l3__xpu__infra__mgr__pb2.Vrf.FromString,
                )
        self.ListVrfs = channel.unary_unary(
                '/opi_api.network.evpn_gw.v1alpha1.VrfService/ListVrfs',
                request_serializer=l3__xpu__infra__mgr__pb2.ListVrfsRequest.SerializeToString,
                response_deserializer=l3__xpu__infra__mgr__pb2.ListVrfsResponse.FromString,
                )
        self.GetVrf = channel.unary_unary(
                '/opi_api.network.evpn_gw.v1alpha1.VrfService/GetVrf',
                request_serializer=l3__xpu__infra__mgr__pb2.GetVrfRequest.SerializeToString,
                response_deserializer=l3__xpu__infra__mgr__pb2.Vrf.FromString,
                )
        self.DeleteVrf = channel.unary_unary(
                '/opi_api.network.evpn_gw.v1alpha1.VrfService/DeleteVrf',
                request_serializer=l3__xpu__infra__mgr__pb2.DeleteVrfRequest.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                )
        self.UpdateVrf = channel.unary_unary(
                '/opi_api.network.evpn_gw.v1alpha1.VrfService/UpdateVrf',
                request_serializer=l3__xpu__infra__mgr__pb2.UpdateVrfRequest.SerializeToString,
                response_deserializer=l3__xpu__infra__mgr__pb2.Vrf.FromString,
                )


class VrfServiceServicer(object):
    """Management of Vrf Resources
    """

    def CreateVrf(self, request, context):
        """Create a Vrf
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

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

    def GetVrf(self, request, context):
        """Retrieve a Vrf
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def DeleteVrf(self, request, context):
        """Delete a Vrf
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def UpdateVrf(self, request, context):
        """Update a Vrf
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')


def add_VrfServiceServicer_to_server(servicer, server):
    rpc_method_handlers = {
            'CreateVrf': grpc.unary_unary_rpc_method_handler(
                    servicer.CreateVrf,
                    request_deserializer=l3__xpu__infra__mgr__pb2.CreateVrfRequest.FromString,
                    response_serializer=l3__xpu__infra__mgr__pb2.Vrf.SerializeToString,
            ),
            'ListVrfs': grpc.unary_unary_rpc_method_handler(
                    servicer.ListVrfs,
                    request_deserializer=l3__xpu__infra__mgr__pb2.ListVrfsRequest.FromString,
                    response_serializer=l3__xpu__infra__mgr__pb2.ListVrfsResponse.SerializeToString,
            ),
            'GetVrf': grpc.unary_unary_rpc_method_handler(
                    servicer.GetVrf,
                    request_deserializer=l3__xpu__infra__mgr__pb2.GetVrfRequest.FromString,
                    response_serializer=l3__xpu__infra__mgr__pb2.Vrf.SerializeToString,
            ),
            'DeleteVrf': grpc.unary_unary_rpc_method_handler(
                    servicer.DeleteVrf,
                    request_deserializer=l3__xpu__infra__mgr__pb2.DeleteVrfRequest.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'UpdateVrf': grpc.unary_unary_rpc_method_handler(
                    servicer.UpdateVrf,
                    request_deserializer=l3__xpu__infra__mgr__pb2.UpdateVrfRequest.FromString,
                    response_serializer=l3__xpu__infra__mgr__pb2.Vrf.SerializeToString,
            ),
    }
    generic_handler = grpc.method_handlers_generic_handler(
            'opi_api.network.evpn_gw.v1alpha1.VrfService', rpc_method_handlers)
    server.add_generic_rpc_handlers((generic_handler,))


 # This class is part of an EXPERIMENTAL API.
class VrfService(object):
    """Management of Vrf Resources
    """

    @staticmethod
    def CreateVrf(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.network.evpn_gw.v1alpha1.VrfService/CreateVrf',
            l3__xpu__infra__mgr__pb2.CreateVrfRequest.SerializeToString,
            l3__xpu__infra__mgr__pb2.Vrf.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ListVrfs(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.network.evpn_gw.v1alpha1.VrfService/ListVrfs',
            l3__xpu__infra__mgr__pb2.ListVrfsRequest.SerializeToString,
            l3__xpu__infra__mgr__pb2.ListVrfsResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetVrf(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.network.evpn_gw.v1alpha1.VrfService/GetVrf',
            l3__xpu__infra__mgr__pb2.GetVrfRequest.SerializeToString,
            l3__xpu__infra__mgr__pb2.Vrf.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def DeleteVrf(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.network.evpn_gw.v1alpha1.VrfService/DeleteVrf',
            l3__xpu__infra__mgr__pb2.DeleteVrfRequest.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def UpdateVrf(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.network.evpn_gw.v1alpha1.VrfService/UpdateVrf',
            l3__xpu__infra__mgr__pb2.UpdateVrfRequest.SerializeToString,
            l3__xpu__infra__mgr__pb2.Vrf.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)


class SviServiceStub(object):
    """Management of switch virtual interfaces (SVIs) binding LogicalBridges to VRFs.
    """

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

        Args:
            channel: A grpc.Channel.
        """
        self.CreateSvi = channel.unary_unary(
                '/opi_api.network.evpn_gw.v1alpha1.SviService/CreateSvi',
                request_serializer=l3__xpu__infra__mgr__pb2.CreateSviRequest.SerializeToString,
                response_deserializer=l3__xpu__infra__mgr__pb2.Svi.FromString,
                )
        self.ListSvis = channel.unary_unary(
                '/opi_api.network.evpn_gw.v1alpha1.SviService/ListSvis',
                request_serializer=l3__xpu__infra__mgr__pb2.ListSvisRequest.SerializeToString,
                response_deserializer=l3__xpu__infra__mgr__pb2.ListSvisResponse.FromString,
                )
        self.GetSvi = channel.unary_unary(
                '/opi_api.network.evpn_gw.v1alpha1.SviService/GetSvi',
                request_serializer=l3__xpu__infra__mgr__pb2.GetSviRequest.SerializeToString,
                response_deserializer=l3__xpu__infra__mgr__pb2.Svi.FromString,
                )
        self.DeleteSvi = channel.unary_unary(
                '/opi_api.network.evpn_gw.v1alpha1.SviService/DeleteSvi',
                request_serializer=l3__xpu__infra__mgr__pb2.DeleteSviRequest.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                )
        self.UpdateSvi = channel.unary_unary(
                '/opi_api.network.evpn_gw.v1alpha1.SviService/UpdateSvi',
                request_serializer=l3__xpu__infra__mgr__pb2.UpdateSviRequest.SerializeToString,
                response_deserializer=l3__xpu__infra__mgr__pb2.Svi.FromString,
                )


class SviServiceServicer(object):
    """Management of switch virtual interfaces (SVIs) binding LogicalBridges to VRFs.
    """

    def CreateSvi(self, request, context):
        """Create a Svi
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

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

    def GetSvi(self, request, context):
        """Retrieve a Svi
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def DeleteSvi(self, request, context):
        """Delete a Svi
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def UpdateSvi(self, request, context):
        """Update a Svi
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')


def add_SviServiceServicer_to_server(servicer, server):
    rpc_method_handlers = {
            'CreateSvi': grpc.unary_unary_rpc_method_handler(
                    servicer.CreateSvi,
                    request_deserializer=l3__xpu__infra__mgr__pb2.CreateSviRequest.FromString,
                    response_serializer=l3__xpu__infra__mgr__pb2.Svi.SerializeToString,
            ),
            'ListSvis': grpc.unary_unary_rpc_method_handler(
                    servicer.ListSvis,
                    request_deserializer=l3__xpu__infra__mgr__pb2.ListSvisRequest.FromString,
                    response_serializer=l3__xpu__infra__mgr__pb2.ListSvisResponse.SerializeToString,
            ),
            'GetSvi': grpc.unary_unary_rpc_method_handler(
                    servicer.GetSvi,
                    request_deserializer=l3__xpu__infra__mgr__pb2.GetSviRequest.FromString,
                    response_serializer=l3__xpu__infra__mgr__pb2.Svi.SerializeToString,
            ),
            'DeleteSvi': grpc.unary_unary_rpc_method_handler(
                    servicer.DeleteSvi,
                    request_deserializer=l3__xpu__infra__mgr__pb2.DeleteSviRequest.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'UpdateSvi': grpc.unary_unary_rpc_method_handler(
                    servicer.UpdateSvi,
                    request_deserializer=l3__xpu__infra__mgr__pb2.UpdateSviRequest.FromString,
                    response_serializer=l3__xpu__infra__mgr__pb2.Svi.SerializeToString,
            ),
    }
    generic_handler = grpc.method_handlers_generic_handler(
            'opi_api.network.evpn_gw.v1alpha1.SviService', rpc_method_handlers)
    server.add_generic_rpc_handlers((generic_handler,))


 # This class is part of an EXPERIMENTAL API.
class SviService(object):
    """Management of switch virtual interfaces (SVIs) binding LogicalBridges to VRFs.
    """

    @staticmethod
    def CreateSvi(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.network.evpn_gw.v1alpha1.SviService/CreateSvi',
            l3__xpu__infra__mgr__pb2.CreateSviRequest.SerializeToString,
            l3__xpu__infra__mgr__pb2.Svi.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ListSvis(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.network.evpn_gw.v1alpha1.SviService/ListSvis',
            l3__xpu__infra__mgr__pb2.ListSvisRequest.SerializeToString,
            l3__xpu__infra__mgr__pb2.ListSvisResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetSvi(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.network.evpn_gw.v1alpha1.SviService/GetSvi',
            l3__xpu__infra__mgr__pb2.GetSviRequest.SerializeToString,
            l3__xpu__infra__mgr__pb2.Svi.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def DeleteSvi(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.network.evpn_gw.v1alpha1.SviService/DeleteSvi',
            l3__xpu__infra__mgr__pb2.DeleteSviRequest.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def UpdateSvi(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.network.evpn_gw.v1alpha1.SviService/UpdateSvi',
            l3__xpu__infra__mgr__pb2.UpdateSviRequest.SerializeToString,
            l3__xpu__infra__mgr__pb2.Svi.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
