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

from . import context_pb2 as context__pb2


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

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

        Args:
            channel: A grpc.Channel.
        """
        self.ListContextIds = channel.unary_unary(
                '/context.ContextService/ListContextIds',
                request_serializer=context__pb2.Empty.SerializeToString,
                response_deserializer=context__pb2.ContextIdList.FromString,
                )
        self.ListContexts = channel.unary_unary(
                '/context.ContextService/ListContexts',
                request_serializer=context__pb2.Empty.SerializeToString,
                response_deserializer=context__pb2.ContextList.FromString,
                )
        self.GetContext = channel.unary_unary(
                '/context.ContextService/GetContext',
                request_serializer=context__pb2.ContextId.SerializeToString,
                response_deserializer=context__pb2.Context.FromString,
                )
        self.SetContext = channel.unary_unary(
                '/context.ContextService/SetContext',
                request_serializer=context__pb2.Context.SerializeToString,
                response_deserializer=context__pb2.ContextId.FromString,
                )
        self.RemoveContext = channel.unary_unary(
                '/context.ContextService/RemoveContext',
                request_serializer=context__pb2.ContextId.SerializeToString,
                response_deserializer=context__pb2.Empty.FromString,
                )
        self.GetContextEvents = channel.unary_stream(
                '/context.ContextService/GetContextEvents',
                request_serializer=context__pb2.Empty.SerializeToString,
                response_deserializer=context__pb2.ContextEvent.FromString,
                )
        self.ListTopologyIds = channel.unary_unary(
                '/context.ContextService/ListTopologyIds',
                request_serializer=context__pb2.ContextId.SerializeToString,
                response_deserializer=context__pb2.TopologyIdList.FromString,
                )
        self.ListTopologies = channel.unary_unary(
                '/context.ContextService/ListTopologies',
                request_serializer=context__pb2.ContextId.SerializeToString,
                response_deserializer=context__pb2.TopologyList.FromString,
                )
        self.GetTopology = channel.unary_unary(
                '/context.ContextService/GetTopology',
                request_serializer=context__pb2.TopologyId.SerializeToString,
                response_deserializer=context__pb2.Topology.FromString,
                )
        self.SetTopology = channel.unary_unary(
                '/context.ContextService/SetTopology',
                request_serializer=context__pb2.Topology.SerializeToString,
                response_deserializer=context__pb2.TopologyId.FromString,
                )
        self.RemoveTopology = channel.unary_unary(
                '/context.ContextService/RemoveTopology',
                request_serializer=context__pb2.TopologyId.SerializeToString,
                response_deserializer=context__pb2.Empty.FromString,
                )
        self.GetTopologyEvents = channel.unary_stream(
                '/context.ContextService/GetTopologyEvents',
                request_serializer=context__pb2.Empty.SerializeToString,
                response_deserializer=context__pb2.TopologyEvent.FromString,
                )
        self.ListDeviceIds = channel.unary_unary(
                '/context.ContextService/ListDeviceIds',
                request_serializer=context__pb2.Empty.SerializeToString,
                response_deserializer=context__pb2.DeviceIdList.FromString,
                )
        self.ListDevices = channel.unary_unary(
                '/context.ContextService/ListDevices',
                request_serializer=context__pb2.Empty.SerializeToString,
                response_deserializer=context__pb2.DeviceList.FromString,
                )
        self.GetDevice = channel.unary_unary(
                '/context.ContextService/GetDevice',
                request_serializer=context__pb2.DeviceId.SerializeToString,
                response_deserializer=context__pb2.Device.FromString,
                )
        self.SetDevice = channel.unary_unary(
                '/context.ContextService/SetDevice',
                request_serializer=context__pb2.Device.SerializeToString,
                response_deserializer=context__pb2.DeviceId.FromString,
                )
        self.RemoveDevice = channel.unary_unary(
                '/context.ContextService/RemoveDevice',
                request_serializer=context__pb2.DeviceId.SerializeToString,
                response_deserializer=context__pb2.Empty.FromString,
                )
        self.GetDeviceEvents = channel.unary_stream(
                '/context.ContextService/GetDeviceEvents',
                request_serializer=context__pb2.Empty.SerializeToString,
                response_deserializer=context__pb2.DeviceEvent.FromString,
                )
        self.ListLinkIds = channel.unary_unary(
                '/context.ContextService/ListLinkIds',
                request_serializer=context__pb2.Empty.SerializeToString,
                response_deserializer=context__pb2.LinkIdList.FromString,
                )
        self.ListLinks = channel.unary_unary(
                '/context.ContextService/ListLinks',
                request_serializer=context__pb2.Empty.SerializeToString,
                response_deserializer=context__pb2.LinkList.FromString,
                )
        self.GetLink = channel.unary_unary(
                '/context.ContextService/GetLink',
                request_serializer=context__pb2.LinkId.SerializeToString,
                response_deserializer=context__pb2.Link.FromString,
                )
        self.SetLink = channel.unary_unary(
                '/context.ContextService/SetLink',
                request_serializer=context__pb2.Link.SerializeToString,
                response_deserializer=context__pb2.LinkId.FromString,
                )
        self.RemoveLink = channel.unary_unary(
                '/context.ContextService/RemoveLink',
                request_serializer=context__pb2.LinkId.SerializeToString,
                response_deserializer=context__pb2.Empty.FromString,
                )
        self.GetLinkEvents = channel.unary_stream(
                '/context.ContextService/GetLinkEvents',
                request_serializer=context__pb2.Empty.SerializeToString,
                response_deserializer=context__pb2.LinkEvent.FromString,
                )
        self.ListServiceIds = channel.unary_unary(
                '/context.ContextService/ListServiceIds',
                request_serializer=context__pb2.ContextId.SerializeToString,
                response_deserializer=context__pb2.ServiceIdList.FromString,
                )
        self.ListServices = channel.unary_unary(
                '/context.ContextService/ListServices',
                request_serializer=context__pb2.ContextId.SerializeToString,
                response_deserializer=context__pb2.ServiceList.FromString,
                )
        self.GetService = channel.unary_unary(
                '/context.ContextService/GetService',
                request_serializer=context__pb2.ServiceId.SerializeToString,
                response_deserializer=context__pb2.Service.FromString,
                )
        self.SetService = channel.unary_unary(
                '/context.ContextService/SetService',
                request_serializer=context__pb2.Service.SerializeToString,
                response_deserializer=context__pb2.ServiceId.FromString,
                )
        self.RemoveService = channel.unary_unary(
                '/context.ContextService/RemoveService',
                request_serializer=context__pb2.ServiceId.SerializeToString,
                response_deserializer=context__pb2.Empty.FromString,
                )
        self.GetServiceEvents = channel.unary_stream(
                '/context.ContextService/GetServiceEvents',
                request_serializer=context__pb2.Empty.SerializeToString,
                response_deserializer=context__pb2.ServiceEvent.FromString,
                )


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

    def ListContextIds(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 ListContexts(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 GetContext(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 SetContext(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 RemoveContext(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 GetContextEvents(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 ListTopologyIds(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 ListTopologies(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 GetTopology(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 SetTopology(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 RemoveTopology(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 GetTopologyEvents(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 ListDeviceIds(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 ListDevices(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 GetDevice(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 SetDevice(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 RemoveDevice(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 GetDeviceEvents(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 ListLinkIds(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 ListLinks(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 GetLink(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 SetLink(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 RemoveLink(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 GetLinkEvents(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 ListServiceIds(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 ListServices(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 GetService(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 SetService(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 RemoveService(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 GetServiceEvents(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_ContextServiceServicer_to_server(servicer, server):
    rpc_method_handlers = {
            'ListContextIds': grpc.unary_unary_rpc_method_handler(
                    servicer.ListContextIds,
                    request_deserializer=context__pb2.Empty.FromString,
                    response_serializer=context__pb2.ContextIdList.SerializeToString,
            ),
            'ListContexts': grpc.unary_unary_rpc_method_handler(
                    servicer.ListContexts,
                    request_deserializer=context__pb2.Empty.FromString,
                    response_serializer=context__pb2.ContextList.SerializeToString,
            ),
            'GetContext': grpc.unary_unary_rpc_method_handler(
                    servicer.GetContext,
                    request_deserializer=context__pb2.ContextId.FromString,
                    response_serializer=context__pb2.Context.SerializeToString,
            ),
            'SetContext': grpc.unary_unary_rpc_method_handler(
                    servicer.SetContext,
                    request_deserializer=context__pb2.Context.FromString,
                    response_serializer=context__pb2.ContextId.SerializeToString,
            ),
            'RemoveContext': grpc.unary_unary_rpc_method_handler(
                    servicer.RemoveContext,
                    request_deserializer=context__pb2.ContextId.FromString,
                    response_serializer=context__pb2.Empty.SerializeToString,
            ),
            'GetContextEvents': grpc.unary_stream_rpc_method_handler(
                    servicer.GetContextEvents,
                    request_deserializer=context__pb2.Empty.FromString,
                    response_serializer=context__pb2.ContextEvent.SerializeToString,
            ),
            'ListTopologyIds': grpc.unary_unary_rpc_method_handler(
                    servicer.ListTopologyIds,
                    request_deserializer=context__pb2.ContextId.FromString,
                    response_serializer=context__pb2.TopologyIdList.SerializeToString,
            ),
            'ListTopologies': grpc.unary_unary_rpc_method_handler(
                    servicer.ListTopologies,
                    request_deserializer=context__pb2.ContextId.FromString,
                    response_serializer=context__pb2.TopologyList.SerializeToString,
            ),
            'GetTopology': grpc.unary_unary_rpc_method_handler(
                    servicer.GetTopology,
                    request_deserializer=context__pb2.TopologyId.FromString,
                    response_serializer=context__pb2.Topology.SerializeToString,
            ),
            'SetTopology': grpc.unary_unary_rpc_method_handler(
                    servicer.SetTopology,
                    request_deserializer=context__pb2.Topology.FromString,
                    response_serializer=context__pb2.TopologyId.SerializeToString,
            ),
            'RemoveTopology': grpc.unary_unary_rpc_method_handler(
                    servicer.RemoveTopology,
                    request_deserializer=context__pb2.TopologyId.FromString,
                    response_serializer=context__pb2.Empty.SerializeToString,
            ),
            'GetTopologyEvents': grpc.unary_stream_rpc_method_handler(
                    servicer.GetTopologyEvents,
                    request_deserializer=context__pb2.Empty.FromString,
                    response_serializer=context__pb2.TopologyEvent.SerializeToString,
            ),
            'ListDeviceIds': grpc.unary_unary_rpc_method_handler(
                    servicer.ListDeviceIds,
                    request_deserializer=context__pb2.Empty.FromString,
                    response_serializer=context__pb2.DeviceIdList.SerializeToString,
            ),
            'ListDevices': grpc.unary_unary_rpc_method_handler(
                    servicer.ListDevices,
                    request_deserializer=context__pb2.Empty.FromString,
                    response_serializer=context__pb2.DeviceList.SerializeToString,
            ),
            'GetDevice': grpc.unary_unary_rpc_method_handler(
                    servicer.GetDevice,
                    request_deserializer=context__pb2.DeviceId.FromString,
                    response_serializer=context__pb2.Device.SerializeToString,
            ),
            'SetDevice': grpc.unary_unary_rpc_method_handler(
                    servicer.SetDevice,
                    request_deserializer=context__pb2.Device.FromString,
                    response_serializer=context__pb2.DeviceId.SerializeToString,
            ),
            'RemoveDevice': grpc.unary_unary_rpc_method_handler(
                    servicer.RemoveDevice,
                    request_deserializer=context__pb2.DeviceId.FromString,
                    response_serializer=context__pb2.Empty.SerializeToString,
            ),
            'GetDeviceEvents': grpc.unary_stream_rpc_method_handler(
                    servicer.GetDeviceEvents,
                    request_deserializer=context__pb2.Empty.FromString,
                    response_serializer=context__pb2.DeviceEvent.SerializeToString,
            ),
            'ListLinkIds': grpc.unary_unary_rpc_method_handler(
                    servicer.ListLinkIds,
                    request_deserializer=context__pb2.Empty.FromString,
                    response_serializer=context__pb2.LinkIdList.SerializeToString,
            ),
            'ListLinks': grpc.unary_unary_rpc_method_handler(
                    servicer.ListLinks,
                    request_deserializer=context__pb2.Empty.FromString,
                    response_serializer=context__pb2.LinkList.SerializeToString,
            ),
            'GetLink': grpc.unary_unary_rpc_method_handler(
                    servicer.GetLink,
                    request_deserializer=context__pb2.LinkId.FromString,
                    response_serializer=context__pb2.Link.SerializeToString,
            ),
            'SetLink': grpc.unary_unary_rpc_method_handler(
                    servicer.SetLink,
                    request_deserializer=context__pb2.Link.FromString,
                    response_serializer=context__pb2.LinkId.SerializeToString,
            ),
            'RemoveLink': grpc.unary_unary_rpc_method_handler(
                    servicer.RemoveLink,
                    request_deserializer=context__pb2.LinkId.FromString,
                    response_serializer=context__pb2.Empty.SerializeToString,
            ),
            'GetLinkEvents': grpc.unary_stream_rpc_method_handler(
                    servicer.GetLinkEvents,
                    request_deserializer=context__pb2.Empty.FromString,
                    response_serializer=context__pb2.LinkEvent.SerializeToString,
            ),
            'ListServiceIds': grpc.unary_unary_rpc_method_handler(
                    servicer.ListServiceIds,
                    request_deserializer=context__pb2.ContextId.FromString,
                    response_serializer=context__pb2.ServiceIdList.SerializeToString,
            ),
            'ListServices': grpc.unary_unary_rpc_method_handler(
                    servicer.ListServices,
                    request_deserializer=context__pb2.ContextId.FromString,
                    response_serializer=context__pb2.ServiceList.SerializeToString,
            ),
            'GetService': grpc.unary_unary_rpc_method_handler(
                    servicer.GetService,
                    request_deserializer=context__pb2.ServiceId.FromString,
                    response_serializer=context__pb2.Service.SerializeToString,
            ),
            'SetService': grpc.unary_unary_rpc_method_handler(
                    servicer.SetService,
                    request_deserializer=context__pb2.Service.FromString,
                    response_serializer=context__pb2.ServiceId.SerializeToString,
            ),
            'RemoveService': grpc.unary_unary_rpc_method_handler(
                    servicer.RemoveService,
                    request_deserializer=context__pb2.ServiceId.FromString,
                    response_serializer=context__pb2.Empty.SerializeToString,
            ),
            'GetServiceEvents': grpc.unary_stream_rpc_method_handler(
                    servicer.GetServiceEvents,
                    request_deserializer=context__pb2.Empty.FromString,
                    response_serializer=context__pb2.ServiceEvent.SerializeToString,
            ),
    }
    generic_handler = grpc.method_handlers_generic_handler(
            'context.ContextService', rpc_method_handlers)
    server.add_generic_rpc_handlers((generic_handler,))


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

    @staticmethod
    def ListContextIds(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, '/context.ContextService/ListContextIds',
            context__pb2.Empty.SerializeToString,
            context__pb2.ContextIdList.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ListContexts(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, '/context.ContextService/ListContexts',
            context__pb2.Empty.SerializeToString,
            context__pb2.ContextList.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetContext(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, '/context.ContextService/GetContext',
            context__pb2.ContextId.SerializeToString,
            context__pb2.Context.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def SetContext(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, '/context.ContextService/SetContext',
            context__pb2.Context.SerializeToString,
            context__pb2.ContextId.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def RemoveContext(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, '/context.ContextService/RemoveContext',
            context__pb2.ContextId.SerializeToString,
            context__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetContextEvents(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, '/context.ContextService/GetContextEvents',
            context__pb2.Empty.SerializeToString,
            context__pb2.ContextEvent.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ListTopologyIds(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, '/context.ContextService/ListTopologyIds',
            context__pb2.ContextId.SerializeToString,
            context__pb2.TopologyIdList.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ListTopologies(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, '/context.ContextService/ListTopologies',
            context__pb2.ContextId.SerializeToString,
            context__pb2.TopologyList.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetTopology(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, '/context.ContextService/GetTopology',
            context__pb2.TopologyId.SerializeToString,
            context__pb2.Topology.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def SetTopology(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, '/context.ContextService/SetTopology',
            context__pb2.Topology.SerializeToString,
            context__pb2.TopologyId.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def RemoveTopology(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, '/context.ContextService/RemoveTopology',
            context__pb2.TopologyId.SerializeToString,
            context__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetTopologyEvents(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, '/context.ContextService/GetTopologyEvents',
            context__pb2.Empty.SerializeToString,
            context__pb2.TopologyEvent.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ListDeviceIds(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, '/context.ContextService/ListDeviceIds',
            context__pb2.Empty.SerializeToString,
            context__pb2.DeviceIdList.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ListDevices(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, '/context.ContextService/ListDevices',
            context__pb2.Empty.SerializeToString,
            context__pb2.DeviceList.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetDevice(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, '/context.ContextService/GetDevice',
            context__pb2.DeviceId.SerializeToString,
            context__pb2.Device.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def SetDevice(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, '/context.ContextService/SetDevice',
            context__pb2.Device.SerializeToString,
            context__pb2.DeviceId.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def RemoveDevice(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, '/context.ContextService/RemoveDevice',
            context__pb2.DeviceId.SerializeToString,
            context__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetDeviceEvents(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, '/context.ContextService/GetDeviceEvents',
            context__pb2.Empty.SerializeToString,
            context__pb2.DeviceEvent.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ListLinkIds(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, '/context.ContextService/ListLinkIds',
            context__pb2.Empty.SerializeToString,
            context__pb2.LinkIdList.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ListLinks(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, '/context.ContextService/ListLinks',
            context__pb2.Empty.SerializeToString,
            context__pb2.LinkList.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetLink(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, '/context.ContextService/GetLink',
            context__pb2.LinkId.SerializeToString,
            context__pb2.Link.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def SetLink(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, '/context.ContextService/SetLink',
            context__pb2.Link.SerializeToString,
            context__pb2.LinkId.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def RemoveLink(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, '/context.ContextService/RemoveLink',
            context__pb2.LinkId.SerializeToString,
            context__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetLinkEvents(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, '/context.ContextService/GetLinkEvents',
            context__pb2.Empty.SerializeToString,
            context__pb2.LinkEvent.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ListServiceIds(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, '/context.ContextService/ListServiceIds',
            context__pb2.ContextId.SerializeToString,
            context__pb2.ServiceIdList.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ListServices(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, '/context.ContextService/ListServices',
            context__pb2.ContextId.SerializeToString,
            context__pb2.ServiceList.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetService(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, '/context.ContextService/GetService',
            context__pb2.ServiceId.SerializeToString,
            context__pb2.Service.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def SetService(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, '/context.ContextService/SetService',
            context__pb2.Service.SerializeToString,
            context__pb2.ServiceId.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def RemoveService(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, '/context.ContextService/RemoveService',
            context__pb2.ServiceId.SerializeToString,
            context__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetServiceEvents(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, '/context.ContextService/GetServiceEvents',
            context__pb2.Empty.SerializeToString,
            context__pb2.ServiceEvent.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)