import os import threading from flask import ( Blueprint, request, jsonify, ) from tqdm import tqdm from slide_analysis_api.constants import SLIDE_DIR from slide_analysis_api.services.recalculate import recalculate_folder recalculate = Blueprint('recalculate', __name__) recalculate.exporting_threads = {} @recalculate.route('/', methods=['PUT']) def recalc(): path = os.path.join(SLIDE_DIR, request.get_json()['folderName']) print(f'Recalculating path: {path}') thread = ExportingThread(path) name = thread.getName() recalculate.exporting_threads[name] = thread thread.start() return jsonify({"threadName": name}) @recalculate.route('/progress/<string:thread_name>') def progress(thread_name):