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

from _qwak_proto.qwak.feature_store.sources import data_source_service_pb2 as qwak_dot_feature__store_dot_sources_dot_data__source__service__pb2


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

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

        Args:
            channel: A grpc.Channel.
        """
        self.CreateDataSource = channel.unary_unary(
                '/qwak.feature.store.sources.DataSourceService/CreateDataSource',
                request_serializer=qwak_dot_feature__store_dot_sources_dot_data__source__service__pb2.CreateDataSourceRequest.SerializeToString,
                response_deserializer=qwak_dot_feature__store_dot_sources_dot_data__source__service__pb2.CreateDataSourceResponse.FromString,
                )
        self.UpdateDataSource = channel.unary_unary(
                '/qwak.feature.store.sources.DataSourceService/UpdateDataSource',
                request_serializer=qwak_dot_feature__store_dot_sources_dot_data__source__service__pb2.UpdateDataSourceRequest.SerializeToString,
                response_deserializer=qwak_dot_feature__store_dot_sources_dot_data__source__service__pb2.UpdateDataSourceResponse.FromString,
                )
        self.DeleteDataSource = channel.unary_unary(
                '/qwak.feature.store.sources.DataSourceService/DeleteDataSource',
                request_serializer=qwak_dot_feature__store_dot_sources_dot_data__source__service__pb2.DeleteDataSourceRequest.SerializeToString,
                response_deserializer=qwak_dot_feature__store_dot_sources_dot_data__source__service__pb2.DeleteDataSourceResponse.FromString,
                )
        self.GetDataSourceById = channel.unary_unary(
                '/qwak.feature.store.sources.DataSourceService/GetDataSourceById',
                request_serializer=qwak_dot_feature__store_dot_sources_dot_data__source__service__pb2.GetDataSourceByIdRequest.SerializeToString,
                response_deserializer=qwak_dot_feature__store_dot_sources_dot_data__source__service__pb2.GetDataSourceByIdResponse.FromString,
                )
        self.GetDataSourceByName = channel.unary_unary(
                '/qwak.feature.store.sources.DataSourceService/GetDataSourceByName',
                request_serializer=qwak_dot_feature__store_dot_sources_dot_data__source__service__pb2.GetDataSourceByNameRequest.SerializeToString,
                response_deserializer=qwak_dot_feature__store_dot_sources_dot_data__source__service__pb2.GetDataSourceByNameResponse.FromString,
                )
        self.ListDataSources = channel.unary_unary(
                '/qwak.feature.store.sources.DataSourceService/ListDataSources',
                request_serializer=qwak_dot_feature__store_dot_sources_dot_data__source__service__pb2.ListDataSourcesRequest.SerializeToString,
                response_deserializer=qwak_dot_feature__store_dot_sources_dot_data__source__service__pb2.ListDataSourcesResponse.FromString,
                )
        self.CreateDataSourceUploadURL = channel.unary_unary(
                '/qwak.feature.store.sources.DataSourceService/CreateDataSourceUploadURL',
                request_serializer=qwak_dot_feature__store_dot_sources_dot_data__source__service__pb2.CreateDataSourceUploadURLRequest.SerializeToString,
                response_deserializer=qwak_dot_feature__store_dot_sources_dot_data__source__service__pb2.CreateDataSourceUploadURLResponse.FromString,
                )
        self.CreateDataSourceUploadURLV1 = channel.unary_unary(
                '/qwak.feature.store.sources.DataSourceService/CreateDataSourceUploadURLV1',
                request_serializer=qwak_dot_feature__store_dot_sources_dot_data__source__service__pb2.CreateDataSourceUploadURLRequest.SerializeToString,
                response_deserializer=qwak_dot_feature__store_dot_sources_dot_data__source__service__pb2.CreateDataSourceUploadURLResponse.FromString,
                )


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

    def CreateDataSource(self, request, context):
        """Create a new data source
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def UpdateDataSource(self, request, context):
        """Update an existing data source
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def DeleteDataSource(self, request, context):
        """Delete a data source from the registry
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def GetDataSourceById(self, request, context):
        """Get a data source by ID
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def GetDataSourceByName(self, request, context):
        """Get a data source by ID
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def ListDataSources(self, request, context):
        """List all registered data sources
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def CreateDataSourceUploadURL(self, request, context):
        """Create a url for uploading data source configuration
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def CreateDataSourceUploadURLV1(self, request, context):
        """Create a url for uploading data source configuration V1 - taking into account env id
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')


def add_DataSourceServiceServicer_to_server(servicer, server):
    rpc_method_handlers = {
            'CreateDataSource': grpc.unary_unary_rpc_method_handler(
                    servicer.CreateDataSource,
                    request_deserializer=qwak_dot_feature__store_dot_sources_dot_data__source__service__pb2.CreateDataSourceRequest.FromString,
                    response_serializer=qwak_dot_feature__store_dot_sources_dot_data__source__service__pb2.CreateDataSourceResponse.SerializeToString,
            ),
            'UpdateDataSource': grpc.unary_unary_rpc_method_handler(
                    servicer.UpdateDataSource,
                    request_deserializer=qwak_dot_feature__store_dot_sources_dot_data__source__service__pb2.UpdateDataSourceRequest.FromString,
                    response_serializer=qwak_dot_feature__store_dot_sources_dot_data__source__service__pb2.UpdateDataSourceResponse.SerializeToString,
            ),
            'DeleteDataSource': grpc.unary_unary_rpc_method_handler(
                    servicer.DeleteDataSource,
                    request_deserializer=qwak_dot_feature__store_dot_sources_dot_data__source__service__pb2.DeleteDataSourceRequest.FromString,
                    response_serializer=qwak_dot_feature__store_dot_sources_dot_data__source__service__pb2.DeleteDataSourceResponse.SerializeToString,
            ),
            'GetDataSourceById': grpc.unary_unary_rpc_method_handler(
                    servicer.GetDataSourceById,
                    request_deserializer=qwak_dot_feature__store_dot_sources_dot_data__source__service__pb2.GetDataSourceByIdRequest.FromString,
                    response_serializer=qwak_dot_feature__store_dot_sources_dot_data__source__service__pb2.GetDataSourceByIdResponse.SerializeToString,
            ),
            'GetDataSourceByName': grpc.unary_unary_rpc_method_handler(
                    servicer.GetDataSourceByName,
                    request_deserializer=qwak_dot_feature__store_dot_sources_dot_data__source__service__pb2.GetDataSourceByNameRequest.FromString,
                    response_serializer=qwak_dot_feature__store_dot_sources_dot_data__source__service__pb2.GetDataSourceByNameResponse.SerializeToString,
            ),
            'ListDataSources': grpc.unary_unary_rpc_method_handler(
                    servicer.ListDataSources,
                    request_deserializer=qwak_dot_feature__store_dot_sources_dot_data__source__service__pb2.ListDataSourcesRequest.FromString,
                    response_serializer=qwak_dot_feature__store_dot_sources_dot_data__source__service__pb2.ListDataSourcesResponse.SerializeToString,
            ),
            'CreateDataSourceUploadURL': grpc.unary_unary_rpc_method_handler(
                    servicer.CreateDataSourceUploadURL,
                    request_deserializer=qwak_dot_feature__store_dot_sources_dot_data__source__service__pb2.CreateDataSourceUploadURLRequest.FromString,
                    response_serializer=qwak_dot_feature__store_dot_sources_dot_data__source__service__pb2.CreateDataSourceUploadURLResponse.SerializeToString,
            ),
            'CreateDataSourceUploadURLV1': grpc.unary_unary_rpc_method_handler(
                    servicer.CreateDataSourceUploadURLV1,
                    request_deserializer=qwak_dot_feature__store_dot_sources_dot_data__source__service__pb2.CreateDataSourceUploadURLRequest.FromString,
                    response_serializer=qwak_dot_feature__store_dot_sources_dot_data__source__service__pb2.CreateDataSourceUploadURLResponse.SerializeToString,
            ),
    }
    generic_handler = grpc.method_handlers_generic_handler(
            'qwak.feature.store.sources.DataSourceService', rpc_method_handlers)
    server.add_generic_rpc_handlers((generic_handler,))


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

    @staticmethod
    def CreateDataSource(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, '/qwak.feature.store.sources.DataSourceService/CreateDataSource',
            qwak_dot_feature__store_dot_sources_dot_data__source__service__pb2.CreateDataSourceRequest.SerializeToString,
            qwak_dot_feature__store_dot_sources_dot_data__source__service__pb2.CreateDataSourceResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def UpdateDataSource(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, '/qwak.feature.store.sources.DataSourceService/UpdateDataSource',
            qwak_dot_feature__store_dot_sources_dot_data__source__service__pb2.UpdateDataSourceRequest.SerializeToString,
            qwak_dot_feature__store_dot_sources_dot_data__source__service__pb2.UpdateDataSourceResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def DeleteDataSource(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, '/qwak.feature.store.sources.DataSourceService/DeleteDataSource',
            qwak_dot_feature__store_dot_sources_dot_data__source__service__pb2.DeleteDataSourceRequest.SerializeToString,
            qwak_dot_feature__store_dot_sources_dot_data__source__service__pb2.DeleteDataSourceResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetDataSourceById(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, '/qwak.feature.store.sources.DataSourceService/GetDataSourceById',
            qwak_dot_feature__store_dot_sources_dot_data__source__service__pb2.GetDataSourceByIdRequest.SerializeToString,
            qwak_dot_feature__store_dot_sources_dot_data__source__service__pb2.GetDataSourceByIdResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetDataSourceByName(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, '/qwak.feature.store.sources.DataSourceService/GetDataSourceByName',
            qwak_dot_feature__store_dot_sources_dot_data__source__service__pb2.GetDataSourceByNameRequest.SerializeToString,
            qwak_dot_feature__store_dot_sources_dot_data__source__service__pb2.GetDataSourceByNameResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ListDataSources(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, '/qwak.feature.store.sources.DataSourceService/ListDataSources',
            qwak_dot_feature__store_dot_sources_dot_data__source__service__pb2.ListDataSourcesRequest.SerializeToString,
            qwak_dot_feature__store_dot_sources_dot_data__source__service__pb2.ListDataSourcesResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def CreateDataSourceUploadURL(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, '/qwak.feature.store.sources.DataSourceService/CreateDataSourceUploadURL',
            qwak_dot_feature__store_dot_sources_dot_data__source__service__pb2.CreateDataSourceUploadURLRequest.SerializeToString,
            qwak_dot_feature__store_dot_sources_dot_data__source__service__pb2.CreateDataSourceUploadURLResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def CreateDataSourceUploadURLV1(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, '/qwak.feature.store.sources.DataSourceService/CreateDataSourceUploadURLV1',
            qwak_dot_feature__store_dot_sources_dot_data__source__service__pb2.CreateDataSourceUploadURLRequest.SerializeToString,
            qwak_dot_feature__store_dot_sources_dot_data__source__service__pb2.CreateDataSourceUploadURLResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
