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

from aiauto.v1 import aiauto_pb2 as aiauto_dot_v1_dot_aiauto__pb2
from google.api import httpbody_pb2 as google_dot_api_dot_httpbody__pb2


class AIAutoServiceStub(object):
    """---------- Service ----------
    주의: 모든 RPC는 gRPC Metadata에 authorization: Bearer <JWT> 헤더가 필수입니다
    """

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

        Args:
            channel: A grpc.Channel.
        """
        self.EnsureWorkspace = channel.unary_unary(
                '/aiauto.v1.AIAutoService/EnsureWorkspace',
                request_serializer=aiauto_dot_v1_dot_aiauto__pb2.EnsureWorkspaceRequest.SerializeToString,
                response_deserializer=aiauto_dot_v1_dot_aiauto__pb2.EnsureWorkspaceResponse.FromString,
                _registered_method=True)
        self.CreateStudy = channel.unary_unary(
                '/aiauto.v1.AIAutoService/CreateStudy',
                request_serializer=aiauto_dot_v1_dot_aiauto__pb2.CreateStudyRequest.SerializeToString,
                response_deserializer=aiauto_dot_v1_dot_aiauto__pb2.CreateStudyResponse.FromString,
                _registered_method=True)
        self.Optimize = channel.unary_unary(
                '/aiauto.v1.AIAutoService/Optimize',
                request_serializer=aiauto_dot_v1_dot_aiauto__pb2.OptimizeRequest.SerializeToString,
                response_deserializer=aiauto_dot_v1_dot_aiauto__pb2.OptimizeResponse.FromString,
                _registered_method=True)
        self.GetStatus = channel.unary_unary(
                '/aiauto.v1.AIAutoService/GetStatus',
                request_serializer=aiauto_dot_v1_dot_aiauto__pb2.GetStatusRequest.SerializeToString,
                response_deserializer=aiauto_dot_v1_dot_aiauto__pb2.GetStatusResponse.FromString,
                _registered_method=True)
        self.ListSharedCache = channel.unary_unary(
                '/aiauto.v1.AIAutoService/ListSharedCache',
                request_serializer=aiauto_dot_v1_dot_aiauto__pb2.ListSharedCacheRequest.SerializeToString,
                response_deserializer=aiauto_dot_v1_dot_aiauto__pb2.ListSharedCacheResponse.FromString,
                _registered_method=True)
        self.DeleteFromSharedCache = channel.unary_unary(
                '/aiauto.v1.AIAutoService/DeleteFromSharedCache',
                request_serializer=aiauto_dot_v1_dot_aiauto__pb2.DeleteFromSharedCacheRequest.SerializeToString,
                response_deserializer=aiauto_dot_v1_dot_aiauto__pb2.DeleteFromSharedCacheResponse.FromString,
                _registered_method=True)
        self.ListGpuFlavors = channel.unary_unary(
                '/aiauto.v1.AIAutoService/ListGpuFlavors',
                request_serializer=aiauto_dot_v1_dot_aiauto__pb2.ListGpuFlavorsRequest.SerializeToString,
                response_deserializer=aiauto_dot_v1_dot_aiauto__pb2.ListGpuFlavorsResponse.FromString,
                _registered_method=True)
        self.GetArtifact = channel.unary_unary(
                '/aiauto.v1.AIAutoService/GetArtifact',
                request_serializer=aiauto_dot_v1_dot_aiauto__pb2.GetArtifactRequest.SerializeToString,
                response_deserializer=google_dot_api_dot_httpbody__pb2.HttpBody.FromString,
                _registered_method=True)
        self.ListWorkspaces = channel.unary_unary(
                '/aiauto.v1.AIAutoService/ListWorkspaces',
                request_serializer=aiauto_dot_v1_dot_aiauto__pb2.ListWorkspacesRequest.SerializeToString,
                response_deserializer=aiauto_dot_v1_dot_aiauto__pb2.ListWorkspacesResponse.FromString,
                _registered_method=True)
        self.ListStudies = channel.unary_unary(
                '/aiauto.v1.AIAutoService/ListStudies',
                request_serializer=aiauto_dot_v1_dot_aiauto__pb2.ListStudiesRequest.SerializeToString,
                response_deserializer=aiauto_dot_v1_dot_aiauto__pb2.ListStudiesResponse.FromString,
                _registered_method=True)
        self.ListTrialBatches = channel.unary_unary(
                '/aiauto.v1.AIAutoService/ListTrialBatches',
                request_serializer=aiauto_dot_v1_dot_aiauto__pb2.ListTrialBatchesRequest.SerializeToString,
                response_deserializer=aiauto_dot_v1_dot_aiauto__pb2.ListTrialBatchesResponse.FromString,
                _registered_method=True)
        self.ListPvcsByUserId = channel.unary_unary(
                '/aiauto.v1.AIAutoService/ListPvcsByUserId',
                request_serializer=aiauto_dot_v1_dot_aiauto__pb2.ListPvcsByUserIdRequest.SerializeToString,
                response_deserializer=aiauto_dot_v1_dot_aiauto__pb2.ListPvcsByUserIdResponse.FromString,
                _registered_method=True)
        self.ListTrialBatchesByStudy = channel.unary_unary(
                '/aiauto.v1.AIAutoService/ListTrialBatchesByStudy',
                request_serializer=aiauto_dot_v1_dot_aiauto__pb2.ListTrialBatchesByStudyRequest.SerializeToString,
                response_deserializer=aiauto_dot_v1_dot_aiauto__pb2.ListTrialBatchesByStudyResponse.FromString,
                _registered_method=True)
        self.GetTrialBatch = channel.unary_unary(
                '/aiauto.v1.AIAutoService/GetTrialBatch',
                request_serializer=aiauto_dot_v1_dot_aiauto__pb2.GetTrialBatchRequest.SerializeToString,
                response_deserializer=aiauto_dot_v1_dot_aiauto__pb2.GetTrialBatchResponse.FromString,
                _registered_method=True)
        self.GetOptunaWorkspaceStatus = channel.unary_unary(
                '/aiauto.v1.AIAutoService/GetOptunaWorkspaceStatus',
                request_serializer=aiauto_dot_v1_dot_aiauto__pb2.GetOptunaWorkspaceStatusRequest.SerializeToString,
                response_deserializer=aiauto_dot_v1_dot_aiauto__pb2.GetOptunaWorkspaceStatusResponse.FromString,
                _registered_method=True)
        self.GetWorkspacePvc = channel.unary_unary(
                '/aiauto.v1.AIAutoService/GetWorkspacePvc',
                request_serializer=aiauto_dot_v1_dot_aiauto__pb2.GetWorkspacePvcRequest.SerializeToString,
                response_deserializer=aiauto_dot_v1_dot_aiauto__pb2.GetWorkspacePvcResponse.FromString,
                _registered_method=True)
        self.ListTrialBatchPods = channel.unary_unary(
                '/aiauto.v1.AIAutoService/ListTrialBatchPods',
                request_serializer=aiauto_dot_v1_dot_aiauto__pb2.ListTrialBatchPodsRequest.SerializeToString,
                response_deserializer=aiauto_dot_v1_dot_aiauto__pb2.ListTrialBatchPodsResponse.FromString,
                _registered_method=True)
        self.DeleteStudy = channel.unary_unary(
                '/aiauto.v1.AIAutoService/DeleteStudy',
                request_serializer=aiauto_dot_v1_dot_aiauto__pb2.DeleteStudyRequest.SerializeToString,
                response_deserializer=aiauto_dot_v1_dot_aiauto__pb2.DeleteStudyResponse.FromString,
                _registered_method=True)
        self.DeleteTrialBatch = channel.unary_unary(
                '/aiauto.v1.AIAutoService/DeleteTrialBatch',
                request_serializer=aiauto_dot_v1_dot_aiauto__pb2.DeleteTrialBatchRequest.SerializeToString,
                response_deserializer=aiauto_dot_v1_dot_aiauto__pb2.DeleteTrialBatchResponse.FromString,
                _registered_method=True)
        self.DeleteWorkspace = channel.unary_unary(
                '/aiauto.v1.AIAutoService/DeleteWorkspace',
                request_serializer=aiauto_dot_v1_dot_aiauto__pb2.DeleteWorkspaceRequest.SerializeToString,
                response_deserializer=aiauto_dot_v1_dot_aiauto__pb2.DeleteWorkspaceResponse.FromString,
                _registered_method=True)
        self.CreateToken = channel.unary_unary(
                '/aiauto.v1.AIAutoService/CreateToken',
                request_serializer=aiauto_dot_v1_dot_aiauto__pb2.CreateTokenRequest.SerializeToString,
                response_deserializer=aiauto_dot_v1_dot_aiauto__pb2.CreateTokenResponse.FromString,
                _registered_method=True)
        self.DeleteToken = channel.unary_unary(
                '/aiauto.v1.AIAutoService/DeleteToken',
                request_serializer=aiauto_dot_v1_dot_aiauto__pb2.DeleteTokenRequest.SerializeToString,
                response_deserializer=aiauto_dot_v1_dot_aiauto__pb2.DeleteTokenResponse.FromString,
                _registered_method=True)
        self.GetActiveToken = channel.unary_unary(
                '/aiauto.v1.AIAutoService/GetActiveToken',
                request_serializer=aiauto_dot_v1_dot_aiauto__pb2.GetActiveTokenRequest.SerializeToString,
                response_deserializer=aiauto_dot_v1_dot_aiauto__pb2.GetActiveTokenResponse.FromString,
                _registered_method=True)


class AIAutoServiceServicer(object):
    """---------- Service ----------
    주의: 모든 RPC는 gRPC Metadata에 authorization: Bearer <JWT> 헤더가 필수입니다
    """

    def EnsureWorkspace(self, request, context):
        """--- Core RPCs ---
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def CreateStudy(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 Optimize(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 GetStatus(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 ListSharedCache(self, request, context):
        """--- Shared Cache ---
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def DeleteFromSharedCache(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 ListGpuFlavors(self, request, context):
        """--- Dashboard Read RPCs ---
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def GetArtifact(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 ListWorkspaces(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 ListStudies(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 ListTrialBatches(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 ListPvcsByUserId(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 ListTrialBatchesByStudy(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 GetTrialBatch(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 GetOptunaWorkspaceStatus(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 GetWorkspacePvc(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 ListTrialBatchPods(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 DeleteStudy(self, request, context):
        """--- Dashboard Delete RPCs ---
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def DeleteTrialBatch(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 DeleteWorkspace(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 CreateToken(self, request, context):
        """--- Token Management RPCs ---
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def DeleteToken(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 GetActiveToken(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_AIAutoServiceServicer_to_server(servicer, server):
    rpc_method_handlers = {
            'EnsureWorkspace': grpc.unary_unary_rpc_method_handler(
                    servicer.EnsureWorkspace,
                    request_deserializer=aiauto_dot_v1_dot_aiauto__pb2.EnsureWorkspaceRequest.FromString,
                    response_serializer=aiauto_dot_v1_dot_aiauto__pb2.EnsureWorkspaceResponse.SerializeToString,
            ),
            'CreateStudy': grpc.unary_unary_rpc_method_handler(
                    servicer.CreateStudy,
                    request_deserializer=aiauto_dot_v1_dot_aiauto__pb2.CreateStudyRequest.FromString,
                    response_serializer=aiauto_dot_v1_dot_aiauto__pb2.CreateStudyResponse.SerializeToString,
            ),
            'Optimize': grpc.unary_unary_rpc_method_handler(
                    servicer.Optimize,
                    request_deserializer=aiauto_dot_v1_dot_aiauto__pb2.OptimizeRequest.FromString,
                    response_serializer=aiauto_dot_v1_dot_aiauto__pb2.OptimizeResponse.SerializeToString,
            ),
            'GetStatus': grpc.unary_unary_rpc_method_handler(
                    servicer.GetStatus,
                    request_deserializer=aiauto_dot_v1_dot_aiauto__pb2.GetStatusRequest.FromString,
                    response_serializer=aiauto_dot_v1_dot_aiauto__pb2.GetStatusResponse.SerializeToString,
            ),
            'ListSharedCache': grpc.unary_unary_rpc_method_handler(
                    servicer.ListSharedCache,
                    request_deserializer=aiauto_dot_v1_dot_aiauto__pb2.ListSharedCacheRequest.FromString,
                    response_serializer=aiauto_dot_v1_dot_aiauto__pb2.ListSharedCacheResponse.SerializeToString,
            ),
            'DeleteFromSharedCache': grpc.unary_unary_rpc_method_handler(
                    servicer.DeleteFromSharedCache,
                    request_deserializer=aiauto_dot_v1_dot_aiauto__pb2.DeleteFromSharedCacheRequest.FromString,
                    response_serializer=aiauto_dot_v1_dot_aiauto__pb2.DeleteFromSharedCacheResponse.SerializeToString,
            ),
            'ListGpuFlavors': grpc.unary_unary_rpc_method_handler(
                    servicer.ListGpuFlavors,
                    request_deserializer=aiauto_dot_v1_dot_aiauto__pb2.ListGpuFlavorsRequest.FromString,
                    response_serializer=aiauto_dot_v1_dot_aiauto__pb2.ListGpuFlavorsResponse.SerializeToString,
            ),
            'GetArtifact': grpc.unary_unary_rpc_method_handler(
                    servicer.GetArtifact,
                    request_deserializer=aiauto_dot_v1_dot_aiauto__pb2.GetArtifactRequest.FromString,
                    response_serializer=google_dot_api_dot_httpbody__pb2.HttpBody.SerializeToString,
            ),
            'ListWorkspaces': grpc.unary_unary_rpc_method_handler(
                    servicer.ListWorkspaces,
                    request_deserializer=aiauto_dot_v1_dot_aiauto__pb2.ListWorkspacesRequest.FromString,
                    response_serializer=aiauto_dot_v1_dot_aiauto__pb2.ListWorkspacesResponse.SerializeToString,
            ),
            'ListStudies': grpc.unary_unary_rpc_method_handler(
                    servicer.ListStudies,
                    request_deserializer=aiauto_dot_v1_dot_aiauto__pb2.ListStudiesRequest.FromString,
                    response_serializer=aiauto_dot_v1_dot_aiauto__pb2.ListStudiesResponse.SerializeToString,
            ),
            'ListTrialBatches': grpc.unary_unary_rpc_method_handler(
                    servicer.ListTrialBatches,
                    request_deserializer=aiauto_dot_v1_dot_aiauto__pb2.ListTrialBatchesRequest.FromString,
                    response_serializer=aiauto_dot_v1_dot_aiauto__pb2.ListTrialBatchesResponse.SerializeToString,
            ),
            'ListPvcsByUserId': grpc.unary_unary_rpc_method_handler(
                    servicer.ListPvcsByUserId,
                    request_deserializer=aiauto_dot_v1_dot_aiauto__pb2.ListPvcsByUserIdRequest.FromString,
                    response_serializer=aiauto_dot_v1_dot_aiauto__pb2.ListPvcsByUserIdResponse.SerializeToString,
            ),
            'ListTrialBatchesByStudy': grpc.unary_unary_rpc_method_handler(
                    servicer.ListTrialBatchesByStudy,
                    request_deserializer=aiauto_dot_v1_dot_aiauto__pb2.ListTrialBatchesByStudyRequest.FromString,
                    response_serializer=aiauto_dot_v1_dot_aiauto__pb2.ListTrialBatchesByStudyResponse.SerializeToString,
            ),
            'GetTrialBatch': grpc.unary_unary_rpc_method_handler(
                    servicer.GetTrialBatch,
                    request_deserializer=aiauto_dot_v1_dot_aiauto__pb2.GetTrialBatchRequest.FromString,
                    response_serializer=aiauto_dot_v1_dot_aiauto__pb2.GetTrialBatchResponse.SerializeToString,
            ),
            'GetOptunaWorkspaceStatus': grpc.unary_unary_rpc_method_handler(
                    servicer.GetOptunaWorkspaceStatus,
                    request_deserializer=aiauto_dot_v1_dot_aiauto__pb2.GetOptunaWorkspaceStatusRequest.FromString,
                    response_serializer=aiauto_dot_v1_dot_aiauto__pb2.GetOptunaWorkspaceStatusResponse.SerializeToString,
            ),
            'GetWorkspacePvc': grpc.unary_unary_rpc_method_handler(
                    servicer.GetWorkspacePvc,
                    request_deserializer=aiauto_dot_v1_dot_aiauto__pb2.GetWorkspacePvcRequest.FromString,
                    response_serializer=aiauto_dot_v1_dot_aiauto__pb2.GetWorkspacePvcResponse.SerializeToString,
            ),
            'ListTrialBatchPods': grpc.unary_unary_rpc_method_handler(
                    servicer.ListTrialBatchPods,
                    request_deserializer=aiauto_dot_v1_dot_aiauto__pb2.ListTrialBatchPodsRequest.FromString,
                    response_serializer=aiauto_dot_v1_dot_aiauto__pb2.ListTrialBatchPodsResponse.SerializeToString,
            ),
            'DeleteStudy': grpc.unary_unary_rpc_method_handler(
                    servicer.DeleteStudy,
                    request_deserializer=aiauto_dot_v1_dot_aiauto__pb2.DeleteStudyRequest.FromString,
                    response_serializer=aiauto_dot_v1_dot_aiauto__pb2.DeleteStudyResponse.SerializeToString,
            ),
            'DeleteTrialBatch': grpc.unary_unary_rpc_method_handler(
                    servicer.DeleteTrialBatch,
                    request_deserializer=aiauto_dot_v1_dot_aiauto__pb2.DeleteTrialBatchRequest.FromString,
                    response_serializer=aiauto_dot_v1_dot_aiauto__pb2.DeleteTrialBatchResponse.SerializeToString,
            ),
            'DeleteWorkspace': grpc.unary_unary_rpc_method_handler(
                    servicer.DeleteWorkspace,
                    request_deserializer=aiauto_dot_v1_dot_aiauto__pb2.DeleteWorkspaceRequest.FromString,
                    response_serializer=aiauto_dot_v1_dot_aiauto__pb2.DeleteWorkspaceResponse.SerializeToString,
            ),
            'CreateToken': grpc.unary_unary_rpc_method_handler(
                    servicer.CreateToken,
                    request_deserializer=aiauto_dot_v1_dot_aiauto__pb2.CreateTokenRequest.FromString,
                    response_serializer=aiauto_dot_v1_dot_aiauto__pb2.CreateTokenResponse.SerializeToString,
            ),
            'DeleteToken': grpc.unary_unary_rpc_method_handler(
                    servicer.DeleteToken,
                    request_deserializer=aiauto_dot_v1_dot_aiauto__pb2.DeleteTokenRequest.FromString,
                    response_serializer=aiauto_dot_v1_dot_aiauto__pb2.DeleteTokenResponse.SerializeToString,
            ),
            'GetActiveToken': grpc.unary_unary_rpc_method_handler(
                    servicer.GetActiveToken,
                    request_deserializer=aiauto_dot_v1_dot_aiauto__pb2.GetActiveTokenRequest.FromString,
                    response_serializer=aiauto_dot_v1_dot_aiauto__pb2.GetActiveTokenResponse.SerializeToString,
            ),
    }
    generic_handler = grpc.method_handlers_generic_handler(
            'aiauto.v1.AIAutoService', rpc_method_handlers)
    server.add_generic_rpc_handlers((generic_handler,))
    server.add_registered_method_handlers('aiauto.v1.AIAutoService', rpc_method_handlers)


 # This class is part of an EXPERIMENTAL API.
class AIAutoService(object):
    """---------- Service ----------
    주의: 모든 RPC는 gRPC Metadata에 authorization: Bearer <JWT> 헤더가 필수입니다
    """

    @staticmethod
    def EnsureWorkspace(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,
            '/aiauto.v1.AIAutoService/EnsureWorkspace',
            aiauto_dot_v1_dot_aiauto__pb2.EnsureWorkspaceRequest.SerializeToString,
            aiauto_dot_v1_dot_aiauto__pb2.EnsureWorkspaceResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def CreateStudy(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,
            '/aiauto.v1.AIAutoService/CreateStudy',
            aiauto_dot_v1_dot_aiauto__pb2.CreateStudyRequest.SerializeToString,
            aiauto_dot_v1_dot_aiauto__pb2.CreateStudyResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def Optimize(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,
            '/aiauto.v1.AIAutoService/Optimize',
            aiauto_dot_v1_dot_aiauto__pb2.OptimizeRequest.SerializeToString,
            aiauto_dot_v1_dot_aiauto__pb2.OptimizeResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def GetStatus(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,
            '/aiauto.v1.AIAutoService/GetStatus',
            aiauto_dot_v1_dot_aiauto__pb2.GetStatusRequest.SerializeToString,
            aiauto_dot_v1_dot_aiauto__pb2.GetStatusResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def ListSharedCache(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,
            '/aiauto.v1.AIAutoService/ListSharedCache',
            aiauto_dot_v1_dot_aiauto__pb2.ListSharedCacheRequest.SerializeToString,
            aiauto_dot_v1_dot_aiauto__pb2.ListSharedCacheResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def DeleteFromSharedCache(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,
            '/aiauto.v1.AIAutoService/DeleteFromSharedCache',
            aiauto_dot_v1_dot_aiauto__pb2.DeleteFromSharedCacheRequest.SerializeToString,
            aiauto_dot_v1_dot_aiauto__pb2.DeleteFromSharedCacheResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def ListGpuFlavors(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,
            '/aiauto.v1.AIAutoService/ListGpuFlavors',
            aiauto_dot_v1_dot_aiauto__pb2.ListGpuFlavorsRequest.SerializeToString,
            aiauto_dot_v1_dot_aiauto__pb2.ListGpuFlavorsResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def GetArtifact(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,
            '/aiauto.v1.AIAutoService/GetArtifact',
            aiauto_dot_v1_dot_aiauto__pb2.GetArtifactRequest.SerializeToString,
            google_dot_api_dot_httpbody__pb2.HttpBody.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def ListWorkspaces(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,
            '/aiauto.v1.AIAutoService/ListWorkspaces',
            aiauto_dot_v1_dot_aiauto__pb2.ListWorkspacesRequest.SerializeToString,
            aiauto_dot_v1_dot_aiauto__pb2.ListWorkspacesResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def ListStudies(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,
            '/aiauto.v1.AIAutoService/ListStudies',
            aiauto_dot_v1_dot_aiauto__pb2.ListStudiesRequest.SerializeToString,
            aiauto_dot_v1_dot_aiauto__pb2.ListStudiesResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def ListTrialBatches(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,
            '/aiauto.v1.AIAutoService/ListTrialBatches',
            aiauto_dot_v1_dot_aiauto__pb2.ListTrialBatchesRequest.SerializeToString,
            aiauto_dot_v1_dot_aiauto__pb2.ListTrialBatchesResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def ListPvcsByUserId(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,
            '/aiauto.v1.AIAutoService/ListPvcsByUserId',
            aiauto_dot_v1_dot_aiauto__pb2.ListPvcsByUserIdRequest.SerializeToString,
            aiauto_dot_v1_dot_aiauto__pb2.ListPvcsByUserIdResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def ListTrialBatchesByStudy(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,
            '/aiauto.v1.AIAutoService/ListTrialBatchesByStudy',
            aiauto_dot_v1_dot_aiauto__pb2.ListTrialBatchesByStudyRequest.SerializeToString,
            aiauto_dot_v1_dot_aiauto__pb2.ListTrialBatchesByStudyResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def GetTrialBatch(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,
            '/aiauto.v1.AIAutoService/GetTrialBatch',
            aiauto_dot_v1_dot_aiauto__pb2.GetTrialBatchRequest.SerializeToString,
            aiauto_dot_v1_dot_aiauto__pb2.GetTrialBatchResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def GetOptunaWorkspaceStatus(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,
            '/aiauto.v1.AIAutoService/GetOptunaWorkspaceStatus',
            aiauto_dot_v1_dot_aiauto__pb2.GetOptunaWorkspaceStatusRequest.SerializeToString,
            aiauto_dot_v1_dot_aiauto__pb2.GetOptunaWorkspaceStatusResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def GetWorkspacePvc(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,
            '/aiauto.v1.AIAutoService/GetWorkspacePvc',
            aiauto_dot_v1_dot_aiauto__pb2.GetWorkspacePvcRequest.SerializeToString,
            aiauto_dot_v1_dot_aiauto__pb2.GetWorkspacePvcResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def ListTrialBatchPods(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,
            '/aiauto.v1.AIAutoService/ListTrialBatchPods',
            aiauto_dot_v1_dot_aiauto__pb2.ListTrialBatchPodsRequest.SerializeToString,
            aiauto_dot_v1_dot_aiauto__pb2.ListTrialBatchPodsResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def DeleteStudy(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,
            '/aiauto.v1.AIAutoService/DeleteStudy',
            aiauto_dot_v1_dot_aiauto__pb2.DeleteStudyRequest.SerializeToString,
            aiauto_dot_v1_dot_aiauto__pb2.DeleteStudyResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def DeleteTrialBatch(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,
            '/aiauto.v1.AIAutoService/DeleteTrialBatch',
            aiauto_dot_v1_dot_aiauto__pb2.DeleteTrialBatchRequest.SerializeToString,
            aiauto_dot_v1_dot_aiauto__pb2.DeleteTrialBatchResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def DeleteWorkspace(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,
            '/aiauto.v1.AIAutoService/DeleteWorkspace',
            aiauto_dot_v1_dot_aiauto__pb2.DeleteWorkspaceRequest.SerializeToString,
            aiauto_dot_v1_dot_aiauto__pb2.DeleteWorkspaceResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def CreateToken(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,
            '/aiauto.v1.AIAutoService/CreateToken',
            aiauto_dot_v1_dot_aiauto__pb2.CreateTokenRequest.SerializeToString,
            aiauto_dot_v1_dot_aiauto__pb2.CreateTokenResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def DeleteToken(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,
            '/aiauto.v1.AIAutoService/DeleteToken',
            aiauto_dot_v1_dot_aiauto__pb2.DeleteTokenRequest.SerializeToString,
            aiauto_dot_v1_dot_aiauto__pb2.DeleteTokenResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def GetActiveToken(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,
            '/aiauto.v1.AIAutoService/GetActiveToken',
            aiauto_dot_v1_dot_aiauto__pb2.GetActiveTokenRequest.SerializeToString,
            aiauto_dot_v1_dot_aiauto__pb2.GetActiveTokenResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)
