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

from . import job_pb2 as job__pb2
from . import log_pb2 as log__pb2


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

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

        Args:
            channel: A grpc.Channel.
        """
        self.GetJob = channel.unary_unary(
                '/batchx.job.JobService/GetJob',
                request_serializer=job__pb2.GetJobRequest.SerializeToString,
                response_deserializer=job__pb2.GetJobResponse.FromString,
                )
        self.GetComputationalCost = channel.unary_unary(
                '/batchx.job.JobService/GetComputationalCost',
                request_serializer=job__pb2.GetComputationalCostRequest.SerializeToString,
                response_deserializer=job__pb2.GetComputationalCostResponse.FromString,
                )
        self.ListJobs = channel.unary_unary(
                '/batchx.job.JobService/ListJobs',
                request_serializer=job__pb2.ListJobsRequest.SerializeToString,
                response_deserializer=job__pb2.ListJobsResponse.FromString,
                )
        self.Submit = channel.unary_unary(
                '/batchx.job.JobService/Submit',
                request_serializer=job__pb2.SubmitRequest.SerializeToString,
                response_deserializer=job__pb2.SubmitResponse.FromString,
                )
        self.Stream = channel.unary_stream(
                '/batchx.job.JobService/Stream',
                request_serializer=job__pb2.StreamRequest.SerializeToString,
                response_deserializer=job__pb2.StreamResponse.FromString,
                )
        self.GetLogs = channel.unary_stream(
                '/batchx.job.JobService/GetLogs',
                request_serializer=job__pb2.GetLogsRequest.SerializeToString,
                response_deserializer=log__pb2.LogRecord.FromString,
                )
        self.Delete = channel.unary_unary(
                '/batchx.job.JobService/Delete',
                request_serializer=job__pb2.DeleteRequest.SerializeToString,
                response_deserializer=job__pb2.DeleteResponse.FromString,
                )
        self.DeleteWorkflow = channel.unary_unary(
                '/batchx.job.JobService/DeleteWorkflow',
                request_serializer=job__pb2.DeleteWorkflowRequest.SerializeToString,
                response_deserializer=job__pb2.DeleteWorkflowResponse.FromString,
                )
        self.Cancel = channel.unary_unary(
                '/batchx.job.JobService/Cancel',
                request_serializer=job__pb2.CancelRequest.SerializeToString,
                response_deserializer=job__pb2.CancelResponse.FromString,
                )
        self.CreateWorkflow = channel.unary_unary(
                '/batchx.job.JobService/CreateWorkflow',
                request_serializer=job__pb2.CreateWorkflowRequest.SerializeToString,
                response_deserializer=job__pb2.CreateWorkflowResponse.FromString,
                )
        self.CloseWorkflow = channel.unary_unary(
                '/batchx.job.JobService/CloseWorkflow',
                request_serializer=job__pb2.CloseWorkflowRequest.SerializeToString,
                response_deserializer=job__pb2.CloseWorkflowResponse.FromString,
                )
        self.ListWorkflows = channel.unary_unary(
                '/batchx.job.JobService/ListWorkflows',
                request_serializer=job__pb2.ListWorkflowsRequest.SerializeToString,
                response_deserializer=job__pb2.ListWorkflowsResponse.FromString,
                )
        self.GetWorkflow = channel.unary_unary(
                '/batchx.job.JobService/GetWorkflow',
                request_serializer=job__pb2.GetWorkflowRequest.SerializeToString,
                response_deserializer=job__pb2.GetWorkflowResponse.FromString,
                )
        self.TagJob = channel.unary_unary(
                '/batchx.job.JobService/TagJob',
                request_serializer=job__pb2.TagJobRequest.SerializeToString,
                response_deserializer=job__pb2.TagJobResponse.FromString,
                )
        self.TagWorkflow = channel.unary_unary(
                '/batchx.job.JobService/TagWorkflow',
                request_serializer=job__pb2.TagWorkflowRequest.SerializeToString,
                response_deserializer=job__pb2.TagWorkflowResponse.FromString,
                )
        self.GetWorkflowGraph = channel.unary_unary(
                '/batchx.job.JobService/GetWorkflowGraph',
                request_serializer=job__pb2.GetWorkflowGraphRequest.SerializeToString,
                response_deserializer=job__pb2.GetWorkflowGraphResponse.FromString,
                )


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

    def GetJob(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 GetComputationalCost(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 ListJobs(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 Submit(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 Stream(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 GetLogs(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 Delete(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 DeleteWorkflow(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 Cancel(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 CreateWorkflow(self, request, context):
        """Workflow
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def CloseWorkflow(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 ListWorkflows(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 GetWorkflow(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 TagJob(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 TagWorkflow(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 GetWorkflowGraph(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_JobServiceServicer_to_server(servicer, server):
    rpc_method_handlers = {
            'GetJob': grpc.unary_unary_rpc_method_handler(
                    servicer.GetJob,
                    request_deserializer=job__pb2.GetJobRequest.FromString,
                    response_serializer=job__pb2.GetJobResponse.SerializeToString,
            ),
            'GetComputationalCost': grpc.unary_unary_rpc_method_handler(
                    servicer.GetComputationalCost,
                    request_deserializer=job__pb2.GetComputationalCostRequest.FromString,
                    response_serializer=job__pb2.GetComputationalCostResponse.SerializeToString,
            ),
            'ListJobs': grpc.unary_unary_rpc_method_handler(
                    servicer.ListJobs,
                    request_deserializer=job__pb2.ListJobsRequest.FromString,
                    response_serializer=job__pb2.ListJobsResponse.SerializeToString,
            ),
            'Submit': grpc.unary_unary_rpc_method_handler(
                    servicer.Submit,
                    request_deserializer=job__pb2.SubmitRequest.FromString,
                    response_serializer=job__pb2.SubmitResponse.SerializeToString,
            ),
            'Stream': grpc.unary_stream_rpc_method_handler(
                    servicer.Stream,
                    request_deserializer=job__pb2.StreamRequest.FromString,
                    response_serializer=job__pb2.StreamResponse.SerializeToString,
            ),
            'GetLogs': grpc.unary_stream_rpc_method_handler(
                    servicer.GetLogs,
                    request_deserializer=job__pb2.GetLogsRequest.FromString,
                    response_serializer=log__pb2.LogRecord.SerializeToString,
            ),
            'Delete': grpc.unary_unary_rpc_method_handler(
                    servicer.Delete,
                    request_deserializer=job__pb2.DeleteRequest.FromString,
                    response_serializer=job__pb2.DeleteResponse.SerializeToString,
            ),
            'DeleteWorkflow': grpc.unary_unary_rpc_method_handler(
                    servicer.DeleteWorkflow,
                    request_deserializer=job__pb2.DeleteWorkflowRequest.FromString,
                    response_serializer=job__pb2.DeleteWorkflowResponse.SerializeToString,
            ),
            'Cancel': grpc.unary_unary_rpc_method_handler(
                    servicer.Cancel,
                    request_deserializer=job__pb2.CancelRequest.FromString,
                    response_serializer=job__pb2.CancelResponse.SerializeToString,
            ),
            'CreateWorkflow': grpc.unary_unary_rpc_method_handler(
                    servicer.CreateWorkflow,
                    request_deserializer=job__pb2.CreateWorkflowRequest.FromString,
                    response_serializer=job__pb2.CreateWorkflowResponse.SerializeToString,
            ),
            'CloseWorkflow': grpc.unary_unary_rpc_method_handler(
                    servicer.CloseWorkflow,
                    request_deserializer=job__pb2.CloseWorkflowRequest.FromString,
                    response_serializer=job__pb2.CloseWorkflowResponse.SerializeToString,
            ),
            'ListWorkflows': grpc.unary_unary_rpc_method_handler(
                    servicer.ListWorkflows,
                    request_deserializer=job__pb2.ListWorkflowsRequest.FromString,
                    response_serializer=job__pb2.ListWorkflowsResponse.SerializeToString,
            ),
            'GetWorkflow': grpc.unary_unary_rpc_method_handler(
                    servicer.GetWorkflow,
                    request_deserializer=job__pb2.GetWorkflowRequest.FromString,
                    response_serializer=job__pb2.GetWorkflowResponse.SerializeToString,
            ),
            'TagJob': grpc.unary_unary_rpc_method_handler(
                    servicer.TagJob,
                    request_deserializer=job__pb2.TagJobRequest.FromString,
                    response_serializer=job__pb2.TagJobResponse.SerializeToString,
            ),
            'TagWorkflow': grpc.unary_unary_rpc_method_handler(
                    servicer.TagWorkflow,
                    request_deserializer=job__pb2.TagWorkflowRequest.FromString,
                    response_serializer=job__pb2.TagWorkflowResponse.SerializeToString,
            ),
            'GetWorkflowGraph': grpc.unary_unary_rpc_method_handler(
                    servicer.GetWorkflowGraph,
                    request_deserializer=job__pb2.GetWorkflowGraphRequest.FromString,
                    response_serializer=job__pb2.GetWorkflowGraphResponse.SerializeToString,
            ),
    }
    generic_handler = grpc.method_handlers_generic_handler(
            'batchx.job.JobService', rpc_method_handlers)
    server.add_generic_rpc_handlers((generic_handler,))


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

    @staticmethod
    def GetJob(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, '/batchx.job.JobService/GetJob',
            job__pb2.GetJobRequest.SerializeToString,
            job__pb2.GetJobResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetComputationalCost(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, '/batchx.job.JobService/GetComputationalCost',
            job__pb2.GetComputationalCostRequest.SerializeToString,
            job__pb2.GetComputationalCostResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ListJobs(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, '/batchx.job.JobService/ListJobs',
            job__pb2.ListJobsRequest.SerializeToString,
            job__pb2.ListJobsResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def Submit(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, '/batchx.job.JobService/Submit',
            job__pb2.SubmitRequest.SerializeToString,
            job__pb2.SubmitResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def Stream(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, '/batchx.job.JobService/Stream',
            job__pb2.StreamRequest.SerializeToString,
            job__pb2.StreamResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetLogs(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, '/batchx.job.JobService/GetLogs',
            job__pb2.GetLogsRequest.SerializeToString,
            log__pb2.LogRecord.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def Delete(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, '/batchx.job.JobService/Delete',
            job__pb2.DeleteRequest.SerializeToString,
            job__pb2.DeleteResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def DeleteWorkflow(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, '/batchx.job.JobService/DeleteWorkflow',
            job__pb2.DeleteWorkflowRequest.SerializeToString,
            job__pb2.DeleteWorkflowResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def Cancel(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, '/batchx.job.JobService/Cancel',
            job__pb2.CancelRequest.SerializeToString,
            job__pb2.CancelResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def CreateWorkflow(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, '/batchx.job.JobService/CreateWorkflow',
            job__pb2.CreateWorkflowRequest.SerializeToString,
            job__pb2.CreateWorkflowResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def CloseWorkflow(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, '/batchx.job.JobService/CloseWorkflow',
            job__pb2.CloseWorkflowRequest.SerializeToString,
            job__pb2.CloseWorkflowResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ListWorkflows(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, '/batchx.job.JobService/ListWorkflows',
            job__pb2.ListWorkflowsRequest.SerializeToString,
            job__pb2.ListWorkflowsResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetWorkflow(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, '/batchx.job.JobService/GetWorkflow',
            job__pb2.GetWorkflowRequest.SerializeToString,
            job__pb2.GetWorkflowResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def TagJob(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, '/batchx.job.JobService/TagJob',
            job__pb2.TagJobRequest.SerializeToString,
            job__pb2.TagJobResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def TagWorkflow(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, '/batchx.job.JobService/TagWorkflow',
            job__pb2.TagWorkflowRequest.SerializeToString,
            job__pb2.TagWorkflowResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetWorkflowGraph(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, '/batchx.job.JobService/GetWorkflowGraph',
            job__pb2.GetWorkflowGraphRequest.SerializeToString,
            job__pb2.GetWorkflowGraphResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
