コード例 #1
0
def read_files_descriptor():
    file_downloader_and_saver = CsvDownloader()
    mongo_operations = MongoOperations()
    database = DatabaseApi(mongo_operations, file_downloader_and_saver)

    return jsonify({MESSAGE_RESULT: database.get_files()}),\
        HTTP_STATUS_CODE_SUCESS
コード例 #2
0
def create_file():
    file_downloader_and_saver = CsvDownloader()
    mongo_operations = MongoOperations()
    database = DatabaseApi(mongo_operations, file_downloader_and_saver)

    try:
        database.add_file(
            request.json["url"],
            request.json[FILENAME])

    except Exception as error_message:

        if(error_message.args[FIRST_ARGUMENT] == MESSAGE_INVALID_URL):
            return jsonify(
                {MESSAGE_RESULT: error_message.args[FIRST_ARGUMENT]}),\
                    HTTP_STATUS_CODE_NOT_ACCEPTABLE

        elif(error_message.args[FIRST_ARGUMENT] == MESSAGE_DUPLICATE_FILE):
            return jsonify(
                {MESSAGE_RESULT: error_message.args[FIRST_ARGUMENT]}),\
                    HTTP_STATUS_CODE_CONFLICT

    return jsonify(
        {MESSAGE_RESULT: MESSAGE_CREATED_FILE}),\
        HTTP_STATUS_CODE_SUCESS_CREATED
コード例 #3
0
def delete_file(filename):
    file_downloader_and_saver = CsvDownloader()
    mongo_operations = MongoOperations()
    database = DatabaseApi(mongo_operations, file_downloader_and_saver)

    database.delete_file(filename)

    return jsonify({MESSAGE_RESULT:
                    MESSAGE_DELETED_FILE}), HTTP_STATUS_CODE_SUCESS
コード例 #4
0
def delete_file():
    file_downloader_and_saver = FileDownloaderAndSaver()
    mongo_operations = MongoOperations()
    database = DatabaseApi(mongo_operations, file_downloader_and_saver)

    result = database.delete_file(request.json[FILENAME])

    if (result == DatabaseApi.MESSAGE_DELETED_FILE):
        return jsonify(
            {MESSAGE_RESULT: DatabaseApi.MESSAGE_DELETED_FILE}),\
                HTTP_STATUS_CODE_SUCESS
コード例 #5
0
def read_files(filename):
    file_downloader_and_saver = CsvDownloader()
    mongo_operations = MongoOperations()
    database = DatabaseApi(mongo_operations, file_downloader_and_saver)

    limit = int(request.args.get("limit"))
    if limit > PAGINATE_FILE_LIMIT:
        limit = PAGINATE_FILE_LIMIT

    file_result = database.read_file(filename, request.args.get("skip"), limit,
                                     request.args.get("query"))

    return jsonify({MESSAGE_RESULT: file_result}), HTTP_STATUS_CODE_SUCESS
コード例 #6
0
def read_files():
    file_downloader_and_saver = FileDownloaderAndSaver()
    mongo_operations = MongoOperations()
    database = DatabaseApi(mongo_operations, file_downloader_and_saver)

    if (request.args):
        file_result = database.read_file(request.args.get(FILENAME),
                                         request.args.get('skip'),
                                         request.args.get('limit'),
                                         request.args.get('query'))

        return jsonify({MESSAGE_RESULT: file_result}), HTTP_STATUS_CODE_SUCESS

    else:
        return jsonify({MESSAGE_RESULT: database.get_files()}),\
            HTTP_STATUS_CODE_SUCESS
コード例 #7
0
def create_file():
    file_downloader_and_saver = FileDownloaderAndSaver()
    mongo_operations = MongoOperations()
    database = DatabaseApi(mongo_operations, file_downloader_and_saver)

    result = database.add_file(request.json["url"], request.json[FILENAME])

    if (result == DatabaseApi.MESSAGE_INVALID_URL):
        return jsonify(
            {MESSAGE_RESULT: DatabaseApi.MESSAGE_INVALID_URL}),\
                HTTP_STATUS_CODE_NOT_ACCEPTABLE

    elif (result == DatabaseApi.MESSAGE_DUPLICATE_FILE):
        return jsonify(
            {MESSAGE_RESULT: DatabaseApi.MESSAGE_DUPLICATE_FILE}),\
                HTTP_STATUS_CODE_CONFLICT

    else:
        return jsonify(
            {MESSAGE_RESULT: DatabaseApi.MESSAGE_CREATED_FILE}),\
                HTTP_STATUS_CODE_SUCESS_CREATED