def process_pending(): for e in exports.find({'status': "pending"}): try: export = Export(e) export.status = 'processing' exports.update(export.key, export.serialize()) create_file(export) except Exception as e: export.status = 'error' exports.update(export.key, export.serialize()) print(str(e)) # Keep processing files, but log it
def create(api_key, domain, export_type): if export_type not in Export.TYPES: abort(400) print(api_key) print("JDFKDLJFLSDJFLDSJFLDKSJFLSD") new_export = Export({ "domain": domain, "user": api_key, "type": export_type, "status": "pending", "id": str(uuid4()) }) exports.insert_one(new_export.serialize()) return new_export
def delete(api_key, id): exports.delete_one(Export.key(api_key, id))
def list_exports(api_key, domain): export_list = exports.find({'domain': domain, 'user': api_key}) return [Export(e) for e in export_list]
def get(user, id): export = exports.find_one(Export.key(user, id)) return Export(export)