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

from strmprivacy.api.installations.v1 import installations_v1_pb2 as strmprivacy_dot_api_dot_installations_dot_v1_dot_installations__v1__pb2


class InstallationsServiceStub(object):
    """Authentication goes through the users realm; a strm-external-user-id is required in the metadata.
    """

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

        Args:
            channel: A grpc.Channel.
        """
        self.GetInstallation = channel.unary_unary(
                '/strmprivacy.api.installations.v1.InstallationsService/GetInstallation',
                request_serializer=strmprivacy_dot_api_dot_installations_dot_v1_dot_installations__v1__pb2.GetInstallationRequest.SerializeToString,
                response_deserializer=strmprivacy_dot_api_dot_installations_dot_v1_dot_installations__v1__pb2.GetInstallationResponse.FromString,
                )
        self.ListInstallations = channel.unary_unary(
                '/strmprivacy.api.installations.v1.InstallationsService/ListInstallations',
                request_serializer=strmprivacy_dot_api_dot_installations_dot_v1_dot_installations__v1__pb2.ListInstallationsRequest.SerializeToString,
                response_deserializer=strmprivacy_dot_api_dot_installations_dot_v1_dot_installations__v1__pb2.ListInstallationsResponse.FromString,
                )
        self.GetProjectInstallation = channel.unary_unary(
                '/strmprivacy.api.installations.v1.InstallationsService/GetProjectInstallation',
                request_serializer=strmprivacy_dot_api_dot_installations_dot_v1_dot_installations__v1__pb2.GetProjectInstallationRequest.SerializeToString,
                response_deserializer=strmprivacy_dot_api_dot_installations_dot_v1_dot_installations__v1__pb2.GetProjectInstallationResponse.FromString,
                )
        self.ListInstallationProjects = channel.unary_unary(
                '/strmprivacy.api.installations.v1.InstallationsService/ListInstallationProjects',
                request_serializer=strmprivacy_dot_api_dot_installations_dot_v1_dot_installations__v1__pb2.ListInstallationProjectsRequest.SerializeToString,
                response_deserializer=strmprivacy_dot_api_dot_installations_dot_v1_dot_installations__v1__pb2.ListInstallationProjectsResponse.FromString,
                )


class InstallationsServiceServicer(object):
    """Authentication goes through the users realm; a strm-external-user-id is required in the metadata.
    """

    def GetInstallation(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 ListInstallations(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 GetProjectInstallation(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 ListInstallationProjects(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_InstallationsServiceServicer_to_server(servicer, server):
    rpc_method_handlers = {
            'GetInstallation': grpc.unary_unary_rpc_method_handler(
                    servicer.GetInstallation,
                    request_deserializer=strmprivacy_dot_api_dot_installations_dot_v1_dot_installations__v1__pb2.GetInstallationRequest.FromString,
                    response_serializer=strmprivacy_dot_api_dot_installations_dot_v1_dot_installations__v1__pb2.GetInstallationResponse.SerializeToString,
            ),
            'ListInstallations': grpc.unary_unary_rpc_method_handler(
                    servicer.ListInstallations,
                    request_deserializer=strmprivacy_dot_api_dot_installations_dot_v1_dot_installations__v1__pb2.ListInstallationsRequest.FromString,
                    response_serializer=strmprivacy_dot_api_dot_installations_dot_v1_dot_installations__v1__pb2.ListInstallationsResponse.SerializeToString,
            ),
            'GetProjectInstallation': grpc.unary_unary_rpc_method_handler(
                    servicer.GetProjectInstallation,
                    request_deserializer=strmprivacy_dot_api_dot_installations_dot_v1_dot_installations__v1__pb2.GetProjectInstallationRequest.FromString,
                    response_serializer=strmprivacy_dot_api_dot_installations_dot_v1_dot_installations__v1__pb2.GetProjectInstallationResponse.SerializeToString,
            ),
            'ListInstallationProjects': grpc.unary_unary_rpc_method_handler(
                    servicer.ListInstallationProjects,
                    request_deserializer=strmprivacy_dot_api_dot_installations_dot_v1_dot_installations__v1__pb2.ListInstallationProjectsRequest.FromString,
                    response_serializer=strmprivacy_dot_api_dot_installations_dot_v1_dot_installations__v1__pb2.ListInstallationProjectsResponse.SerializeToString,
            ),
    }
    generic_handler = grpc.method_handlers_generic_handler(
            'strmprivacy.api.installations.v1.InstallationsService', rpc_method_handlers)
    server.add_generic_rpc_handlers((generic_handler,))


 # This class is part of an EXPERIMENTAL API.
class InstallationsService(object):
    """Authentication goes through the users realm; a strm-external-user-id is required in the metadata.
    """

    @staticmethod
    def GetInstallation(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, '/strmprivacy.api.installations.v1.InstallationsService/GetInstallation',
            strmprivacy_dot_api_dot_installations_dot_v1_dot_installations__v1__pb2.GetInstallationRequest.SerializeToString,
            strmprivacy_dot_api_dot_installations_dot_v1_dot_installations__v1__pb2.GetInstallationResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ListInstallations(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, '/strmprivacy.api.installations.v1.InstallationsService/ListInstallations',
            strmprivacy_dot_api_dot_installations_dot_v1_dot_installations__v1__pb2.ListInstallationsRequest.SerializeToString,
            strmprivacy_dot_api_dot_installations_dot_v1_dot_installations__v1__pb2.ListInstallationsResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetProjectInstallation(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, '/strmprivacy.api.installations.v1.InstallationsService/GetProjectInstallation',
            strmprivacy_dot_api_dot_installations_dot_v1_dot_installations__v1__pb2.GetProjectInstallationRequest.SerializeToString,
            strmprivacy_dot_api_dot_installations_dot_v1_dot_installations__v1__pb2.GetProjectInstallationResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ListInstallationProjects(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, '/strmprivacy.api.installations.v1.InstallationsService/ListInstallationProjects',
            strmprivacy_dot_api_dot_installations_dot_v1_dot_installations__v1__pb2.ListInstallationProjectsRequest.SerializeToString,
            strmprivacy_dot_api_dot_installations_dot_v1_dot_installations__v1__pb2.ListInstallationProjectsResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
