1234567891011121314151617181920212223242526272829 |
- from flask import abort, jsonify
- from flask.views import View
- from pycs.database.Database import Database
- from pycs.interfaces.AnnotatedMediaFile import AnnotatedMediaFile
- class GetProjectResults(View):
- """
- get a list of all files and annotations for a project
- """
- # pylint: disable=arguments-differ
- methods = ['GET']
- def __init__(self, db: Database):
- # pylint: disable=invalid-name
- self.db = db
- def dispatch_request(self, project_id: int):
- # get project from database
- project = self.db.project(project_id)
- if project is None:
- return abort(404)
- # get results
- files = list(map(AnnotatedMediaFile, project.files()))
- # return result
- return jsonify(files)
|