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

from github.com.metaprov.modelaapi.services.report.v1 import report_pb2 as github_dot_com_dot_metaprov_dot_modelaapi_dot_services_dot_report_dot_v1_dot_report__pb2


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

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

        Args:
            channel: A grpc.Channel.
        """
        self.ListReports = channel.unary_unary(
                '/github.com.metaprov.modelaapi.services.report.v1.ReportService/ListReports',
                request_serializer=github_dot_com_dot_metaprov_dot_modelaapi_dot_services_dot_report_dot_v1_dot_report__pb2.ListReportsRequest.SerializeToString,
                response_deserializer=github_dot_com_dot_metaprov_dot_modelaapi_dot_services_dot_report_dot_v1_dot_report__pb2.ListReportsResponse.FromString,
                )
        self.CreateReport = channel.unary_unary(
                '/github.com.metaprov.modelaapi.services.report.v1.ReportService/CreateReport',
                request_serializer=github_dot_com_dot_metaprov_dot_modelaapi_dot_services_dot_report_dot_v1_dot_report__pb2.CreateReportRequest.SerializeToString,
                response_deserializer=github_dot_com_dot_metaprov_dot_modelaapi_dot_services_dot_report_dot_v1_dot_report__pb2.CreateReportResponse.FromString,
                )
        self.GetReport = channel.unary_unary(
                '/github.com.metaprov.modelaapi.services.report.v1.ReportService/GetReport',
                request_serializer=github_dot_com_dot_metaprov_dot_modelaapi_dot_services_dot_report_dot_v1_dot_report__pb2.GetReportRequest.SerializeToString,
                response_deserializer=github_dot_com_dot_metaprov_dot_modelaapi_dot_services_dot_report_dot_v1_dot_report__pb2.GetReportResponse.FromString,
                )
        self.UpdateReport = channel.unary_unary(
                '/github.com.metaprov.modelaapi.services.report.v1.ReportService/UpdateReport',
                request_serializer=github_dot_com_dot_metaprov_dot_modelaapi_dot_services_dot_report_dot_v1_dot_report__pb2.UpdateReportRequest.SerializeToString,
                response_deserializer=github_dot_com_dot_metaprov_dot_modelaapi_dot_services_dot_report_dot_v1_dot_report__pb2.UpdateReportResponse.FromString,
                )
        self.DeleteReport = channel.unary_unary(
                '/github.com.metaprov.modelaapi.services.report.v1.ReportService/DeleteReport',
                request_serializer=github_dot_com_dot_metaprov_dot_modelaapi_dot_services_dot_report_dot_v1_dot_report__pb2.DeleteReportRequest.SerializeToString,
                response_deserializer=github_dot_com_dot_metaprov_dot_modelaapi_dot_services_dot_report_dot_v1_dot_report__pb2.DeleteReportResponse.FromString,
                )
        self.Download = channel.unary_unary(
                '/github.com.metaprov.modelaapi.services.report.v1.ReportService/Download',
                request_serializer=github_dot_com_dot_metaprov_dot_modelaapi_dot_services_dot_report_dot_v1_dot_report__pb2.DownloadReportRequest.SerializeToString,
                response_deserializer=github_dot_com_dot_metaprov_dot_modelaapi_dot_services_dot_report_dot_v1_dot_report__pb2.DownloadReportResponse.FromString,
                )


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

    def ListReports(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 CreateReport(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 GetReport(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 UpdateReport(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 DeleteReport(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 Download(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_ReportServiceServicer_to_server(servicer, server):
    rpc_method_handlers = {
            'ListReports': grpc.unary_unary_rpc_method_handler(
                    servicer.ListReports,
                    request_deserializer=github_dot_com_dot_metaprov_dot_modelaapi_dot_services_dot_report_dot_v1_dot_report__pb2.ListReportsRequest.FromString,
                    response_serializer=github_dot_com_dot_metaprov_dot_modelaapi_dot_services_dot_report_dot_v1_dot_report__pb2.ListReportsResponse.SerializeToString,
            ),
            'CreateReport': grpc.unary_unary_rpc_method_handler(
                    servicer.CreateReport,
                    request_deserializer=github_dot_com_dot_metaprov_dot_modelaapi_dot_services_dot_report_dot_v1_dot_report__pb2.CreateReportRequest.FromString,
                    response_serializer=github_dot_com_dot_metaprov_dot_modelaapi_dot_services_dot_report_dot_v1_dot_report__pb2.CreateReportResponse.SerializeToString,
            ),
            'GetReport': grpc.unary_unary_rpc_method_handler(
                    servicer.GetReport,
                    request_deserializer=github_dot_com_dot_metaprov_dot_modelaapi_dot_services_dot_report_dot_v1_dot_report__pb2.GetReportRequest.FromString,
                    response_serializer=github_dot_com_dot_metaprov_dot_modelaapi_dot_services_dot_report_dot_v1_dot_report__pb2.GetReportResponse.SerializeToString,
            ),
            'UpdateReport': grpc.unary_unary_rpc_method_handler(
                    servicer.UpdateReport,
                    request_deserializer=github_dot_com_dot_metaprov_dot_modelaapi_dot_services_dot_report_dot_v1_dot_report__pb2.UpdateReportRequest.FromString,
                    response_serializer=github_dot_com_dot_metaprov_dot_modelaapi_dot_services_dot_report_dot_v1_dot_report__pb2.UpdateReportResponse.SerializeToString,
            ),
            'DeleteReport': grpc.unary_unary_rpc_method_handler(
                    servicer.DeleteReport,
                    request_deserializer=github_dot_com_dot_metaprov_dot_modelaapi_dot_services_dot_report_dot_v1_dot_report__pb2.DeleteReportRequest.FromString,
                    response_serializer=github_dot_com_dot_metaprov_dot_modelaapi_dot_services_dot_report_dot_v1_dot_report__pb2.DeleteReportResponse.SerializeToString,
            ),
            'Download': grpc.unary_unary_rpc_method_handler(
                    servicer.Download,
                    request_deserializer=github_dot_com_dot_metaprov_dot_modelaapi_dot_services_dot_report_dot_v1_dot_report__pb2.DownloadReportRequest.FromString,
                    response_serializer=github_dot_com_dot_metaprov_dot_modelaapi_dot_services_dot_report_dot_v1_dot_report__pb2.DownloadReportResponse.SerializeToString,
            ),
    }
    generic_handler = grpc.method_handlers_generic_handler(
            'github.com.metaprov.modelaapi.services.report.v1.ReportService', rpc_method_handlers)
    server.add_generic_rpc_handlers((generic_handler,))


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

    @staticmethod
    def ListReports(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, '/github.com.metaprov.modelaapi.services.report.v1.ReportService/ListReports',
            github_dot_com_dot_metaprov_dot_modelaapi_dot_services_dot_report_dot_v1_dot_report__pb2.ListReportsRequest.SerializeToString,
            github_dot_com_dot_metaprov_dot_modelaapi_dot_services_dot_report_dot_v1_dot_report__pb2.ListReportsResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def CreateReport(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, '/github.com.metaprov.modelaapi.services.report.v1.ReportService/CreateReport',
            github_dot_com_dot_metaprov_dot_modelaapi_dot_services_dot_report_dot_v1_dot_report__pb2.CreateReportRequest.SerializeToString,
            github_dot_com_dot_metaprov_dot_modelaapi_dot_services_dot_report_dot_v1_dot_report__pb2.CreateReportResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetReport(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, '/github.com.metaprov.modelaapi.services.report.v1.ReportService/GetReport',
            github_dot_com_dot_metaprov_dot_modelaapi_dot_services_dot_report_dot_v1_dot_report__pb2.GetReportRequest.SerializeToString,
            github_dot_com_dot_metaprov_dot_modelaapi_dot_services_dot_report_dot_v1_dot_report__pb2.GetReportResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def UpdateReport(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, '/github.com.metaprov.modelaapi.services.report.v1.ReportService/UpdateReport',
            github_dot_com_dot_metaprov_dot_modelaapi_dot_services_dot_report_dot_v1_dot_report__pb2.UpdateReportRequest.SerializeToString,
            github_dot_com_dot_metaprov_dot_modelaapi_dot_services_dot_report_dot_v1_dot_report__pb2.UpdateReportResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def DeleteReport(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, '/github.com.metaprov.modelaapi.services.report.v1.ReportService/DeleteReport',
            github_dot_com_dot_metaprov_dot_modelaapi_dot_services_dot_report_dot_v1_dot_report__pb2.DeleteReportRequest.SerializeToString,
            github_dot_com_dot_metaprov_dot_modelaapi_dot_services_dot_report_dot_v1_dot_report__pb2.DeleteReportResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def Download(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, '/github.com.metaprov.modelaapi.services.report.v1.ReportService/Download',
            github_dot_com_dot_metaprov_dot_modelaapi_dot_services_dot_report_dot_v1_dot_report__pb2.DownloadReportRequest.SerializeToString,
            github_dot_com_dot_metaprov_dot_modelaapi_dot_services_dot_report_dot_v1_dot_report__pb2.DownloadReportResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
