Implement task API with input validation; implement error handling; refactoring

This commit is contained in:
Lexi / Zoe 2022-09-23 20:38:34 +02:00
parent 19d264a03b
commit 50aff05614
Signed by: binaryDiv
GPG key ID: F8D4956E224DA232
24 changed files with 612 additions and 131 deletions

View file

@ -0,0 +1,30 @@
from tofu_api.common.rest import BaseBlueprint
from .task_views import TaskCollectionView, TaskItemView
class TaskBlueprint(BaseBlueprint):
"""
Blueprint for the tasks REST API.
"""
# Blueprint settings
name = 'rest_api_tasks'
import_name = __name__
url_prefix = '/tasks'
def init_blueprint(self) -> None:
"""
Register URL rules.
"""
task_handler = self.app.dependencies.get_task_handler()
self.add_url_rule(
'',
view_func=TaskCollectionView.as_view(task_handler=task_handler),
methods=['GET', 'POST'],
)
self.add_url_rule(
'/<int:task_id>',
view_func=TaskItemView.as_view(task_handler=task_handler),
methods=['GET', 'PATCH', 'DELETE'],
)