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

import evpn_connector.bgp.generated.gobgp_pb2 as gobgp__pb2
from google.protobuf import empty_pb2 as google_dot_protobuf_dot_empty__pb2


class GobgpApiStub(object):
    """Interface exported by the server.

    """

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

        Args:
            channel: A grpc.Channel.
        """
        self.StartBgp = channel.unary_unary(
                '/apipb.GobgpApi/StartBgp',
                request_serializer=gobgp__pb2.StartBgpRequest.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                )
        self.StopBgp = channel.unary_unary(
                '/apipb.GobgpApi/StopBgp',
                request_serializer=gobgp__pb2.StopBgpRequest.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                )
        self.GetBgp = channel.unary_unary(
                '/apipb.GobgpApi/GetBgp',
                request_serializer=gobgp__pb2.GetBgpRequest.SerializeToString,
                response_deserializer=gobgp__pb2.GetBgpResponse.FromString,
                )
        self.WatchEvent = channel.unary_stream(
                '/apipb.GobgpApi/WatchEvent',
                request_serializer=gobgp__pb2.WatchEventRequest.SerializeToString,
                response_deserializer=gobgp__pb2.WatchEventResponse.FromString,
                )
        self.AddPeer = channel.unary_unary(
                '/apipb.GobgpApi/AddPeer',
                request_serializer=gobgp__pb2.AddPeerRequest.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                )
        self.DeletePeer = channel.unary_unary(
                '/apipb.GobgpApi/DeletePeer',
                request_serializer=gobgp__pb2.DeletePeerRequest.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                )
        self.ListPeer = channel.unary_stream(
                '/apipb.GobgpApi/ListPeer',
                request_serializer=gobgp__pb2.ListPeerRequest.SerializeToString,
                response_deserializer=gobgp__pb2.ListPeerResponse.FromString,
                )
        self.UpdatePeer = channel.unary_unary(
                '/apipb.GobgpApi/UpdatePeer',
                request_serializer=gobgp__pb2.UpdatePeerRequest.SerializeToString,
                response_deserializer=gobgp__pb2.UpdatePeerResponse.FromString,
                )
        self.ResetPeer = channel.unary_unary(
                '/apipb.GobgpApi/ResetPeer',
                request_serializer=gobgp__pb2.ResetPeerRequest.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                )
        self.ShutdownPeer = channel.unary_unary(
                '/apipb.GobgpApi/ShutdownPeer',
                request_serializer=gobgp__pb2.ShutdownPeerRequest.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                )
        self.EnablePeer = channel.unary_unary(
                '/apipb.GobgpApi/EnablePeer',
                request_serializer=gobgp__pb2.EnablePeerRequest.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                )
        self.DisablePeer = channel.unary_unary(
                '/apipb.GobgpApi/DisablePeer',
                request_serializer=gobgp__pb2.DisablePeerRequest.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                )
        self.AddPeerGroup = channel.unary_unary(
                '/apipb.GobgpApi/AddPeerGroup',
                request_serializer=gobgp__pb2.AddPeerGroupRequest.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                )
        self.DeletePeerGroup = channel.unary_unary(
                '/apipb.GobgpApi/DeletePeerGroup',
                request_serializer=gobgp__pb2.DeletePeerGroupRequest.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                )
        self.ListPeerGroup = channel.unary_stream(
                '/apipb.GobgpApi/ListPeerGroup',
                request_serializer=gobgp__pb2.ListPeerGroupRequest.SerializeToString,
                response_deserializer=gobgp__pb2.ListPeerGroupResponse.FromString,
                )
        self.UpdatePeerGroup = channel.unary_unary(
                '/apipb.GobgpApi/UpdatePeerGroup',
                request_serializer=gobgp__pb2.UpdatePeerGroupRequest.SerializeToString,
                response_deserializer=gobgp__pb2.UpdatePeerGroupResponse.FromString,
                )
        self.AddDynamicNeighbor = channel.unary_unary(
                '/apipb.GobgpApi/AddDynamicNeighbor',
                request_serializer=gobgp__pb2.AddDynamicNeighborRequest.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                )
        self.ListDynamicNeighbor = channel.unary_stream(
                '/apipb.GobgpApi/ListDynamicNeighbor',
                request_serializer=gobgp__pb2.ListDynamicNeighborRequest.SerializeToString,
                response_deserializer=gobgp__pb2.ListDynamicNeighborResponse.FromString,
                )
        self.DeleteDynamicNeighbor = channel.unary_unary(
                '/apipb.GobgpApi/DeleteDynamicNeighbor',
                request_serializer=gobgp__pb2.DeleteDynamicNeighborRequest.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                )
        self.AddPath = channel.unary_unary(
                '/apipb.GobgpApi/AddPath',
                request_serializer=gobgp__pb2.AddPathRequest.SerializeToString,
                response_deserializer=gobgp__pb2.AddPathResponse.FromString,
                )
        self.DeletePath = channel.unary_unary(
                '/apipb.GobgpApi/DeletePath',
                request_serializer=gobgp__pb2.DeletePathRequest.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                )
        self.ListPath = channel.unary_stream(
                '/apipb.GobgpApi/ListPath',
                request_serializer=gobgp__pb2.ListPathRequest.SerializeToString,
                response_deserializer=gobgp__pb2.ListPathResponse.FromString,
                )
        self.AddPathStream = channel.stream_unary(
                '/apipb.GobgpApi/AddPathStream',
                request_serializer=gobgp__pb2.AddPathStreamRequest.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                )
        self.GetTable = channel.unary_unary(
                '/apipb.GobgpApi/GetTable',
                request_serializer=gobgp__pb2.GetTableRequest.SerializeToString,
                response_deserializer=gobgp__pb2.GetTableResponse.FromString,
                )
        self.AddVrf = channel.unary_unary(
                '/apipb.GobgpApi/AddVrf',
                request_serializer=gobgp__pb2.AddVrfRequest.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                )
        self.DeleteVrf = channel.unary_unary(
                '/apipb.GobgpApi/DeleteVrf',
                request_serializer=gobgp__pb2.DeleteVrfRequest.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                )
        self.ListVrf = channel.unary_stream(
                '/apipb.GobgpApi/ListVrf',
                request_serializer=gobgp__pb2.ListVrfRequest.SerializeToString,
                response_deserializer=gobgp__pb2.ListVrfResponse.FromString,
                )
        self.AddPolicy = channel.unary_unary(
                '/apipb.GobgpApi/AddPolicy',
                request_serializer=gobgp__pb2.AddPolicyRequest.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                )
        self.DeletePolicy = channel.unary_unary(
                '/apipb.GobgpApi/DeletePolicy',
                request_serializer=gobgp__pb2.DeletePolicyRequest.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                )
        self.ListPolicy = channel.unary_stream(
                '/apipb.GobgpApi/ListPolicy',
                request_serializer=gobgp__pb2.ListPolicyRequest.SerializeToString,
                response_deserializer=gobgp__pb2.ListPolicyResponse.FromString,
                )
        self.SetPolicies = channel.unary_unary(
                '/apipb.GobgpApi/SetPolicies',
                request_serializer=gobgp__pb2.SetPoliciesRequest.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                )
        self.AddDefinedSet = channel.unary_unary(
                '/apipb.GobgpApi/AddDefinedSet',
                request_serializer=gobgp__pb2.AddDefinedSetRequest.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                )
        self.DeleteDefinedSet = channel.unary_unary(
                '/apipb.GobgpApi/DeleteDefinedSet',
                request_serializer=gobgp__pb2.DeleteDefinedSetRequest.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                )
        self.ListDefinedSet = channel.unary_stream(
                '/apipb.GobgpApi/ListDefinedSet',
                request_serializer=gobgp__pb2.ListDefinedSetRequest.SerializeToString,
                response_deserializer=gobgp__pb2.ListDefinedSetResponse.FromString,
                )
        self.AddStatement = channel.unary_unary(
                '/apipb.GobgpApi/AddStatement',
                request_serializer=gobgp__pb2.AddStatementRequest.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                )
        self.DeleteStatement = channel.unary_unary(
                '/apipb.GobgpApi/DeleteStatement',
                request_serializer=gobgp__pb2.DeleteStatementRequest.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                )
        self.ListStatement = channel.unary_stream(
                '/apipb.GobgpApi/ListStatement',
                request_serializer=gobgp__pb2.ListStatementRequest.SerializeToString,
                response_deserializer=gobgp__pb2.ListStatementResponse.FromString,
                )
        self.AddPolicyAssignment = channel.unary_unary(
                '/apipb.GobgpApi/AddPolicyAssignment',
                request_serializer=gobgp__pb2.AddPolicyAssignmentRequest.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                )
        self.DeletePolicyAssignment = channel.unary_unary(
                '/apipb.GobgpApi/DeletePolicyAssignment',
                request_serializer=gobgp__pb2.DeletePolicyAssignmentRequest.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                )
        self.ListPolicyAssignment = channel.unary_stream(
                '/apipb.GobgpApi/ListPolicyAssignment',
                request_serializer=gobgp__pb2.ListPolicyAssignmentRequest.SerializeToString,
                response_deserializer=gobgp__pb2.ListPolicyAssignmentResponse.FromString,
                )
        self.SetPolicyAssignment = channel.unary_unary(
                '/apipb.GobgpApi/SetPolicyAssignment',
                request_serializer=gobgp__pb2.SetPolicyAssignmentRequest.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                )
        self.AddRpki = channel.unary_unary(
                '/apipb.GobgpApi/AddRpki',
                request_serializer=gobgp__pb2.AddRpkiRequest.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                )
        self.DeleteRpki = channel.unary_unary(
                '/apipb.GobgpApi/DeleteRpki',
                request_serializer=gobgp__pb2.DeleteRpkiRequest.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                )
        self.ListRpki = channel.unary_stream(
                '/apipb.GobgpApi/ListRpki',
                request_serializer=gobgp__pb2.ListRpkiRequest.SerializeToString,
                response_deserializer=gobgp__pb2.ListRpkiResponse.FromString,
                )
        self.EnableRpki = channel.unary_unary(
                '/apipb.GobgpApi/EnableRpki',
                request_serializer=gobgp__pb2.EnableRpkiRequest.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                )
        self.DisableRpki = channel.unary_unary(
                '/apipb.GobgpApi/DisableRpki',
                request_serializer=gobgp__pb2.DisableRpkiRequest.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                )
        self.ResetRpki = channel.unary_unary(
                '/apipb.GobgpApi/ResetRpki',
                request_serializer=gobgp__pb2.ResetRpkiRequest.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                )
        self.ListRpkiTable = channel.unary_stream(
                '/apipb.GobgpApi/ListRpkiTable',
                request_serializer=gobgp__pb2.ListRpkiTableRequest.SerializeToString,
                response_deserializer=gobgp__pb2.ListRpkiTableResponse.FromString,
                )
        self.EnableZebra = channel.unary_unary(
                '/apipb.GobgpApi/EnableZebra',
                request_serializer=gobgp__pb2.EnableZebraRequest.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                )
        self.EnableMrt = channel.unary_unary(
                '/apipb.GobgpApi/EnableMrt',
                request_serializer=gobgp__pb2.EnableMrtRequest.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                )
        self.DisableMrt = channel.unary_unary(
                '/apipb.GobgpApi/DisableMrt',
                request_serializer=gobgp__pb2.DisableMrtRequest.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                )
        self.AddBmp = channel.unary_unary(
                '/apipb.GobgpApi/AddBmp',
                request_serializer=gobgp__pb2.AddBmpRequest.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                )
        self.DeleteBmp = channel.unary_unary(
                '/apipb.GobgpApi/DeleteBmp',
                request_serializer=gobgp__pb2.DeleteBmpRequest.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                )
        self.ListBmp = channel.unary_stream(
                '/apipb.GobgpApi/ListBmp',
                request_serializer=gobgp__pb2.ListBmpRequest.SerializeToString,
                response_deserializer=gobgp__pb2.ListBmpResponse.FromString,
                )
        self.SetLogLevel = channel.unary_unary(
                '/apipb.GobgpApi/SetLogLevel',
                request_serializer=gobgp__pb2.SetLogLevelRequest.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                )


class GobgpApiServicer(object):
    """Interface exported by the server.

    """

    def StartBgp(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 StopBgp(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 GetBgp(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 WatchEvent(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 AddPeer(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 DeletePeer(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 ListPeer(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 UpdatePeer(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 ResetPeer(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 ShutdownPeer(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 EnablePeer(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 DisablePeer(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 AddPeerGroup(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 DeletePeerGroup(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 ListPeerGroup(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 UpdatePeerGroup(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 AddDynamicNeighbor(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 ListDynamicNeighbor(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 DeleteDynamicNeighbor(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 AddPath(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 DeletePath(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 ListPath(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 AddPathStream(self, request_iterator, 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 GetTable(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 AddVrf(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 DeleteVrf(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 ListVrf(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 AddPolicy(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 DeletePolicy(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 ListPolicy(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 SetPolicies(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 AddDefinedSet(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 DeleteDefinedSet(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 ListDefinedSet(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 AddStatement(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 DeleteStatement(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 ListStatement(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 AddPolicyAssignment(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 DeletePolicyAssignment(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 ListPolicyAssignment(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 SetPolicyAssignment(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 AddRpki(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 DeleteRpki(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 ListRpki(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 EnableRpki(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 DisableRpki(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 ResetRpki(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 ListRpkiTable(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 EnableZebra(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 EnableMrt(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 DisableMrt(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 AddBmp(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 DeleteBmp(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 ListBmp(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 SetLogLevel(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_GobgpApiServicer_to_server(servicer, server):
    rpc_method_handlers = {
            'StartBgp': grpc.unary_unary_rpc_method_handler(
                    servicer.StartBgp,
                    request_deserializer=gobgp__pb2.StartBgpRequest.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'StopBgp': grpc.unary_unary_rpc_method_handler(
                    servicer.StopBgp,
                    request_deserializer=gobgp__pb2.StopBgpRequest.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'GetBgp': grpc.unary_unary_rpc_method_handler(
                    servicer.GetBgp,
                    request_deserializer=gobgp__pb2.GetBgpRequest.FromString,
                    response_serializer=gobgp__pb2.GetBgpResponse.SerializeToString,
            ),
            'WatchEvent': grpc.unary_stream_rpc_method_handler(
                    servicer.WatchEvent,
                    request_deserializer=gobgp__pb2.WatchEventRequest.FromString,
                    response_serializer=gobgp__pb2.WatchEventResponse.SerializeToString,
            ),
            'AddPeer': grpc.unary_unary_rpc_method_handler(
                    servicer.AddPeer,
                    request_deserializer=gobgp__pb2.AddPeerRequest.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'DeletePeer': grpc.unary_unary_rpc_method_handler(
                    servicer.DeletePeer,
                    request_deserializer=gobgp__pb2.DeletePeerRequest.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'ListPeer': grpc.unary_stream_rpc_method_handler(
                    servicer.ListPeer,
                    request_deserializer=gobgp__pb2.ListPeerRequest.FromString,
                    response_serializer=gobgp__pb2.ListPeerResponse.SerializeToString,
            ),
            'UpdatePeer': grpc.unary_unary_rpc_method_handler(
                    servicer.UpdatePeer,
                    request_deserializer=gobgp__pb2.UpdatePeerRequest.FromString,
                    response_serializer=gobgp__pb2.UpdatePeerResponse.SerializeToString,
            ),
            'ResetPeer': grpc.unary_unary_rpc_method_handler(
                    servicer.ResetPeer,
                    request_deserializer=gobgp__pb2.ResetPeerRequest.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'ShutdownPeer': grpc.unary_unary_rpc_method_handler(
                    servicer.ShutdownPeer,
                    request_deserializer=gobgp__pb2.ShutdownPeerRequest.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'EnablePeer': grpc.unary_unary_rpc_method_handler(
                    servicer.EnablePeer,
                    request_deserializer=gobgp__pb2.EnablePeerRequest.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'DisablePeer': grpc.unary_unary_rpc_method_handler(
                    servicer.DisablePeer,
                    request_deserializer=gobgp__pb2.DisablePeerRequest.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'AddPeerGroup': grpc.unary_unary_rpc_method_handler(
                    servicer.AddPeerGroup,
                    request_deserializer=gobgp__pb2.AddPeerGroupRequest.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'DeletePeerGroup': grpc.unary_unary_rpc_method_handler(
                    servicer.DeletePeerGroup,
                    request_deserializer=gobgp__pb2.DeletePeerGroupRequest.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'ListPeerGroup': grpc.unary_stream_rpc_method_handler(
                    servicer.ListPeerGroup,
                    request_deserializer=gobgp__pb2.ListPeerGroupRequest.FromString,
                    response_serializer=gobgp__pb2.ListPeerGroupResponse.SerializeToString,
            ),
            'UpdatePeerGroup': grpc.unary_unary_rpc_method_handler(
                    servicer.UpdatePeerGroup,
                    request_deserializer=gobgp__pb2.UpdatePeerGroupRequest.FromString,
                    response_serializer=gobgp__pb2.UpdatePeerGroupResponse.SerializeToString,
            ),
            'AddDynamicNeighbor': grpc.unary_unary_rpc_method_handler(
                    servicer.AddDynamicNeighbor,
                    request_deserializer=gobgp__pb2.AddDynamicNeighborRequest.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'ListDynamicNeighbor': grpc.unary_stream_rpc_method_handler(
                    servicer.ListDynamicNeighbor,
                    request_deserializer=gobgp__pb2.ListDynamicNeighborRequest.FromString,
                    response_serializer=gobgp__pb2.ListDynamicNeighborResponse.SerializeToString,
            ),
            'DeleteDynamicNeighbor': grpc.unary_unary_rpc_method_handler(
                    servicer.DeleteDynamicNeighbor,
                    request_deserializer=gobgp__pb2.DeleteDynamicNeighborRequest.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'AddPath': grpc.unary_unary_rpc_method_handler(
                    servicer.AddPath,
                    request_deserializer=gobgp__pb2.AddPathRequest.FromString,
                    response_serializer=gobgp__pb2.AddPathResponse.SerializeToString,
            ),
            'DeletePath': grpc.unary_unary_rpc_method_handler(
                    servicer.DeletePath,
                    request_deserializer=gobgp__pb2.DeletePathRequest.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'ListPath': grpc.unary_stream_rpc_method_handler(
                    servicer.ListPath,
                    request_deserializer=gobgp__pb2.ListPathRequest.FromString,
                    response_serializer=gobgp__pb2.ListPathResponse.SerializeToString,
            ),
            'AddPathStream': grpc.stream_unary_rpc_method_handler(
                    servicer.AddPathStream,
                    request_deserializer=gobgp__pb2.AddPathStreamRequest.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'GetTable': grpc.unary_unary_rpc_method_handler(
                    servicer.GetTable,
                    request_deserializer=gobgp__pb2.GetTableRequest.FromString,
                    response_serializer=gobgp__pb2.GetTableResponse.SerializeToString,
            ),
            'AddVrf': grpc.unary_unary_rpc_method_handler(
                    servicer.AddVrf,
                    request_deserializer=gobgp__pb2.AddVrfRequest.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'DeleteVrf': grpc.unary_unary_rpc_method_handler(
                    servicer.DeleteVrf,
                    request_deserializer=gobgp__pb2.DeleteVrfRequest.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'ListVrf': grpc.unary_stream_rpc_method_handler(
                    servicer.ListVrf,
                    request_deserializer=gobgp__pb2.ListVrfRequest.FromString,
                    response_serializer=gobgp__pb2.ListVrfResponse.SerializeToString,
            ),
            'AddPolicy': grpc.unary_unary_rpc_method_handler(
                    servicer.AddPolicy,
                    request_deserializer=gobgp__pb2.AddPolicyRequest.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'DeletePolicy': grpc.unary_unary_rpc_method_handler(
                    servicer.DeletePolicy,
                    request_deserializer=gobgp__pb2.DeletePolicyRequest.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'ListPolicy': grpc.unary_stream_rpc_method_handler(
                    servicer.ListPolicy,
                    request_deserializer=gobgp__pb2.ListPolicyRequest.FromString,
                    response_serializer=gobgp__pb2.ListPolicyResponse.SerializeToString,
            ),
            'SetPolicies': grpc.unary_unary_rpc_method_handler(
                    servicer.SetPolicies,
                    request_deserializer=gobgp__pb2.SetPoliciesRequest.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'AddDefinedSet': grpc.unary_unary_rpc_method_handler(
                    servicer.AddDefinedSet,
                    request_deserializer=gobgp__pb2.AddDefinedSetRequest.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'DeleteDefinedSet': grpc.unary_unary_rpc_method_handler(
                    servicer.DeleteDefinedSet,
                    request_deserializer=gobgp__pb2.DeleteDefinedSetRequest.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'ListDefinedSet': grpc.unary_stream_rpc_method_handler(
                    servicer.ListDefinedSet,
                    request_deserializer=gobgp__pb2.ListDefinedSetRequest.FromString,
                    response_serializer=gobgp__pb2.ListDefinedSetResponse.SerializeToString,
            ),
            'AddStatement': grpc.unary_unary_rpc_method_handler(
                    servicer.AddStatement,
                    request_deserializer=gobgp__pb2.AddStatementRequest.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'DeleteStatement': grpc.unary_unary_rpc_method_handler(
                    servicer.DeleteStatement,
                    request_deserializer=gobgp__pb2.DeleteStatementRequest.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'ListStatement': grpc.unary_stream_rpc_method_handler(
                    servicer.ListStatement,
                    request_deserializer=gobgp__pb2.ListStatementRequest.FromString,
                    response_serializer=gobgp__pb2.ListStatementResponse.SerializeToString,
            ),
            'AddPolicyAssignment': grpc.unary_unary_rpc_method_handler(
                    servicer.AddPolicyAssignment,
                    request_deserializer=gobgp__pb2.AddPolicyAssignmentRequest.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'DeletePolicyAssignment': grpc.unary_unary_rpc_method_handler(
                    servicer.DeletePolicyAssignment,
                    request_deserializer=gobgp__pb2.DeletePolicyAssignmentRequest.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'ListPolicyAssignment': grpc.unary_stream_rpc_method_handler(
                    servicer.ListPolicyAssignment,
                    request_deserializer=gobgp__pb2.ListPolicyAssignmentRequest.FromString,
                    response_serializer=gobgp__pb2.ListPolicyAssignmentResponse.SerializeToString,
            ),
            'SetPolicyAssignment': grpc.unary_unary_rpc_method_handler(
                    servicer.SetPolicyAssignment,
                    request_deserializer=gobgp__pb2.SetPolicyAssignmentRequest.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'AddRpki': grpc.unary_unary_rpc_method_handler(
                    servicer.AddRpki,
                    request_deserializer=gobgp__pb2.AddRpkiRequest.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'DeleteRpki': grpc.unary_unary_rpc_method_handler(
                    servicer.DeleteRpki,
                    request_deserializer=gobgp__pb2.DeleteRpkiRequest.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'ListRpki': grpc.unary_stream_rpc_method_handler(
                    servicer.ListRpki,
                    request_deserializer=gobgp__pb2.ListRpkiRequest.FromString,
                    response_serializer=gobgp__pb2.ListRpkiResponse.SerializeToString,
            ),
            'EnableRpki': grpc.unary_unary_rpc_method_handler(
                    servicer.EnableRpki,
                    request_deserializer=gobgp__pb2.EnableRpkiRequest.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'DisableRpki': grpc.unary_unary_rpc_method_handler(
                    servicer.DisableRpki,
                    request_deserializer=gobgp__pb2.DisableRpkiRequest.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'ResetRpki': grpc.unary_unary_rpc_method_handler(
                    servicer.ResetRpki,
                    request_deserializer=gobgp__pb2.ResetRpkiRequest.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'ListRpkiTable': grpc.unary_stream_rpc_method_handler(
                    servicer.ListRpkiTable,
                    request_deserializer=gobgp__pb2.ListRpkiTableRequest.FromString,
                    response_serializer=gobgp__pb2.ListRpkiTableResponse.SerializeToString,
            ),
            'EnableZebra': grpc.unary_unary_rpc_method_handler(
                    servicer.EnableZebra,
                    request_deserializer=gobgp__pb2.EnableZebraRequest.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'EnableMrt': grpc.unary_unary_rpc_method_handler(
                    servicer.EnableMrt,
                    request_deserializer=gobgp__pb2.EnableMrtRequest.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'DisableMrt': grpc.unary_unary_rpc_method_handler(
                    servicer.DisableMrt,
                    request_deserializer=gobgp__pb2.DisableMrtRequest.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'AddBmp': grpc.unary_unary_rpc_method_handler(
                    servicer.AddBmp,
                    request_deserializer=gobgp__pb2.AddBmpRequest.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'DeleteBmp': grpc.unary_unary_rpc_method_handler(
                    servicer.DeleteBmp,
                    request_deserializer=gobgp__pb2.DeleteBmpRequest.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'ListBmp': grpc.unary_stream_rpc_method_handler(
                    servicer.ListBmp,
                    request_deserializer=gobgp__pb2.ListBmpRequest.FromString,
                    response_serializer=gobgp__pb2.ListBmpResponse.SerializeToString,
            ),
            'SetLogLevel': grpc.unary_unary_rpc_method_handler(
                    servicer.SetLogLevel,
                    request_deserializer=gobgp__pb2.SetLogLevelRequest.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
    }
    generic_handler = grpc.method_handlers_generic_handler(
            'apipb.GobgpApi', rpc_method_handlers)
    server.add_generic_rpc_handlers((generic_handler,))


 # This class is part of an EXPERIMENTAL API.
class GobgpApi(object):
    """Interface exported by the server.

    """

    @staticmethod
    def StartBgp(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, '/apipb.GobgpApi/StartBgp',
            gobgp__pb2.StartBgpRequest.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def StopBgp(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, '/apipb.GobgpApi/StopBgp',
            gobgp__pb2.StopBgpRequest.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetBgp(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, '/apipb.GobgpApi/GetBgp',
            gobgp__pb2.GetBgpRequest.SerializeToString,
            gobgp__pb2.GetBgpResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def WatchEvent(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_stream(request, target, '/apipb.GobgpApi/WatchEvent',
            gobgp__pb2.WatchEventRequest.SerializeToString,
            gobgp__pb2.WatchEventResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def AddPeer(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, '/apipb.GobgpApi/AddPeer',
            gobgp__pb2.AddPeerRequest.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def DeletePeer(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, '/apipb.GobgpApi/DeletePeer',
            gobgp__pb2.DeletePeerRequest.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ListPeer(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_stream(request, target, '/apipb.GobgpApi/ListPeer',
            gobgp__pb2.ListPeerRequest.SerializeToString,
            gobgp__pb2.ListPeerResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def UpdatePeer(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, '/apipb.GobgpApi/UpdatePeer',
            gobgp__pb2.UpdatePeerRequest.SerializeToString,
            gobgp__pb2.UpdatePeerResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ResetPeer(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, '/apipb.GobgpApi/ResetPeer',
            gobgp__pb2.ResetPeerRequest.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ShutdownPeer(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, '/apipb.GobgpApi/ShutdownPeer',
            gobgp__pb2.ShutdownPeerRequest.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def EnablePeer(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, '/apipb.GobgpApi/EnablePeer',
            gobgp__pb2.EnablePeerRequest.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def DisablePeer(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, '/apipb.GobgpApi/DisablePeer',
            gobgp__pb2.DisablePeerRequest.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def AddPeerGroup(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, '/apipb.GobgpApi/AddPeerGroup',
            gobgp__pb2.AddPeerGroupRequest.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def DeletePeerGroup(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, '/apipb.GobgpApi/DeletePeerGroup',
            gobgp__pb2.DeletePeerGroupRequest.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ListPeerGroup(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_stream(request, target, '/apipb.GobgpApi/ListPeerGroup',
            gobgp__pb2.ListPeerGroupRequest.SerializeToString,
            gobgp__pb2.ListPeerGroupResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def UpdatePeerGroup(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, '/apipb.GobgpApi/UpdatePeerGroup',
            gobgp__pb2.UpdatePeerGroupRequest.SerializeToString,
            gobgp__pb2.UpdatePeerGroupResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def AddDynamicNeighbor(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, '/apipb.GobgpApi/AddDynamicNeighbor',
            gobgp__pb2.AddDynamicNeighborRequest.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ListDynamicNeighbor(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_stream(request, target, '/apipb.GobgpApi/ListDynamicNeighbor',
            gobgp__pb2.ListDynamicNeighborRequest.SerializeToString,
            gobgp__pb2.ListDynamicNeighborResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def DeleteDynamicNeighbor(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, '/apipb.GobgpApi/DeleteDynamicNeighbor',
            gobgp__pb2.DeleteDynamicNeighborRequest.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def AddPath(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, '/apipb.GobgpApi/AddPath',
            gobgp__pb2.AddPathRequest.SerializeToString,
            gobgp__pb2.AddPathResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def DeletePath(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, '/apipb.GobgpApi/DeletePath',
            gobgp__pb2.DeletePathRequest.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ListPath(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_stream(request, target, '/apipb.GobgpApi/ListPath',
            gobgp__pb2.ListPathRequest.SerializeToString,
            gobgp__pb2.ListPathResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def AddPathStream(request_iterator,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.stream_unary(request_iterator, target, '/apipb.GobgpApi/AddPathStream',
            gobgp__pb2.AddPathStreamRequest.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetTable(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, '/apipb.GobgpApi/GetTable',
            gobgp__pb2.GetTableRequest.SerializeToString,
            gobgp__pb2.GetTableResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def AddVrf(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, '/apipb.GobgpApi/AddVrf',
            gobgp__pb2.AddVrfRequest.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.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, '/apipb.GobgpApi/DeleteVrf',
            gobgp__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 ListVrf(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_stream(request, target, '/apipb.GobgpApi/ListVrf',
            gobgp__pb2.ListVrfRequest.SerializeToString,
            gobgp__pb2.ListVrfResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def AddPolicy(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, '/apipb.GobgpApi/AddPolicy',
            gobgp__pb2.AddPolicyRequest.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def DeletePolicy(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, '/apipb.GobgpApi/DeletePolicy',
            gobgp__pb2.DeletePolicyRequest.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ListPolicy(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_stream(request, target, '/apipb.GobgpApi/ListPolicy',
            gobgp__pb2.ListPolicyRequest.SerializeToString,
            gobgp__pb2.ListPolicyResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def SetPolicies(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, '/apipb.GobgpApi/SetPolicies',
            gobgp__pb2.SetPoliciesRequest.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def AddDefinedSet(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, '/apipb.GobgpApi/AddDefinedSet',
            gobgp__pb2.AddDefinedSetRequest.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def DeleteDefinedSet(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, '/apipb.GobgpApi/DeleteDefinedSet',
            gobgp__pb2.DeleteDefinedSetRequest.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ListDefinedSet(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_stream(request, target, '/apipb.GobgpApi/ListDefinedSet',
            gobgp__pb2.ListDefinedSetRequest.SerializeToString,
            gobgp__pb2.ListDefinedSetResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def AddStatement(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, '/apipb.GobgpApi/AddStatement',
            gobgp__pb2.AddStatementRequest.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def DeleteStatement(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, '/apipb.GobgpApi/DeleteStatement',
            gobgp__pb2.DeleteStatementRequest.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ListStatement(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_stream(request, target, '/apipb.GobgpApi/ListStatement',
            gobgp__pb2.ListStatementRequest.SerializeToString,
            gobgp__pb2.ListStatementResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def AddPolicyAssignment(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, '/apipb.GobgpApi/AddPolicyAssignment',
            gobgp__pb2.AddPolicyAssignmentRequest.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def DeletePolicyAssignment(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, '/apipb.GobgpApi/DeletePolicyAssignment',
            gobgp__pb2.DeletePolicyAssignmentRequest.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ListPolicyAssignment(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_stream(request, target, '/apipb.GobgpApi/ListPolicyAssignment',
            gobgp__pb2.ListPolicyAssignmentRequest.SerializeToString,
            gobgp__pb2.ListPolicyAssignmentResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def SetPolicyAssignment(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, '/apipb.GobgpApi/SetPolicyAssignment',
            gobgp__pb2.SetPolicyAssignmentRequest.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def AddRpki(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, '/apipb.GobgpApi/AddRpki',
            gobgp__pb2.AddRpkiRequest.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def DeleteRpki(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, '/apipb.GobgpApi/DeleteRpki',
            gobgp__pb2.DeleteRpkiRequest.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ListRpki(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_stream(request, target, '/apipb.GobgpApi/ListRpki',
            gobgp__pb2.ListRpkiRequest.SerializeToString,
            gobgp__pb2.ListRpkiResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def EnableRpki(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, '/apipb.GobgpApi/EnableRpki',
            gobgp__pb2.EnableRpkiRequest.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def DisableRpki(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, '/apipb.GobgpApi/DisableRpki',
            gobgp__pb2.DisableRpkiRequest.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ResetRpki(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, '/apipb.GobgpApi/ResetRpki',
            gobgp__pb2.ResetRpkiRequest.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ListRpkiTable(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_stream(request, target, '/apipb.GobgpApi/ListRpkiTable',
            gobgp__pb2.ListRpkiTableRequest.SerializeToString,
            gobgp__pb2.ListRpkiTableResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def EnableZebra(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, '/apipb.GobgpApi/EnableZebra',
            gobgp__pb2.EnableZebraRequest.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def EnableMrt(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, '/apipb.GobgpApi/EnableMrt',
            gobgp__pb2.EnableMrtRequest.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def DisableMrt(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, '/apipb.GobgpApi/DisableMrt',
            gobgp__pb2.DisableMrtRequest.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def AddBmp(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, '/apipb.GobgpApi/AddBmp',
            gobgp__pb2.AddBmpRequest.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def DeleteBmp(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, '/apipb.GobgpApi/DeleteBmp',
            gobgp__pb2.DeleteBmpRequest.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ListBmp(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_stream(request, target, '/apipb.GobgpApi/ListBmp',
            gobgp__pb2.ListBmpRequest.SerializeToString,
            gobgp__pb2.ListBmpResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def SetLogLevel(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, '/apipb.GobgpApi/SetLogLevel',
            gobgp__pb2.SetLogLevelRequest.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
