From 21acfd6becf33de97d4babe414f2a314b122c741 Mon Sep 17 00:00:00 2001 From: DAVID Axel <axel.david@etu.univ-amu.fr> Date: Wed, 3 May 2023 04:04:47 +0200 Subject: [PATCH] refactor: :truck: Move CaesarController into the package caesar --- .../api/v1/controllers/caesar/__init__.py | 21 +++++++++++++ .../api/v1/controllers/{ => caesar}/caesar.py | 31 +++++-------------- .../v1/controllers/{ => caesar}/caesar.pyi | 0 .../{docs/caesar.py => caesar/docs.py} | 0 4 files changed, 29 insertions(+), 23 deletions(-) create mode 100644 src/vigenere_api/api/v1/controllers/caesar/__init__.py rename src/vigenere_api/api/v1/controllers/{ => caesar}/caesar.py (84%) rename src/vigenere_api/api/v1/controllers/{ => caesar}/caesar.pyi (100%) rename src/vigenere_api/api/v1/controllers/{docs/caesar.py => caesar/docs.py} (100%) diff --git a/src/vigenere_api/api/v1/controllers/caesar/__init__.py b/src/vigenere_api/api/v1/controllers/caesar/__init__.py new file mode 100644 index 0000000..f582c94 --- /dev/null +++ b/src/vigenere_api/api/v1/controllers/caesar/__init__.py @@ -0,0 +1,21 @@ +# ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +# Vigenere-API + +# Copyright (C) 2023 Axel DAVID + +# + +# This program is free software: you can redistribute it and/or modify it under + +# the terms of the GNU General Public License as published by the Free Software + +# Foundation, either version 3 of the License, or (at your option) any later version. + +# + +# This program is distributed in the hope that it will be useful, but WITHOUT ANY + +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR + +# A PARTICULAR PURPOSE. See the GNU General Public License for more details. + +# + +# You should have received a copy of the GNU General Public License along with + +# this program. If not, see <https://www.gnu.org/licenses/>. + +# ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +"""CaesarController package.""" + +from .caesar import CaesarController + +__all__ = ["CaesarController"] diff --git a/src/vigenere_api/api/v1/controllers/caesar.py b/src/vigenere_api/api/v1/controllers/caesar/caesar.py similarity index 84% rename from src/vigenere_api/api/v1/controllers/caesar.py rename to src/vigenere_api/api/v1/controllers/caesar/caesar.py index ed13adb..eda8491 100644 --- a/src/vigenere_api/api/v1/controllers/caesar.py +++ b/src/vigenere_api/api/v1/controllers/caesar/caesar.py @@ -16,22 +16,19 @@ """The caesar controller.""" -from typing import final - -from blacksheep import FromJSON -from blacksheep import Response -from blacksheep.server.controllers import APIController +from blacksheep import FromJSON, Response from blacksheep.server.controllers import post +from vigenere_api.api.utils import Controller from vigenere_api.api.v1.openapi_docs import docs from vigenere_api.models import CaesarData - -from .docs import post_caesar_cipher_docs -from .docs import post_caesar_decipher_docs +from .docs import ( + post_caesar_cipher_docs, + post_caesar_decipher_docs, +) -@final -class CaesarController(APIController): +class CaesarController(Controller): """ The caesar controller. @@ -50,19 +47,7 @@ class CaesarController(APIController): version str """ - return "v1" - - @classmethod - def class_name(cls) -> str: - """ - Name of the class. - - Returns - ------- - class_name - str - """ - return "caesar" + return f"v{docs.version.major}" @docs(post_caesar_cipher_docs) @post("cipher") diff --git a/src/vigenere_api/api/v1/controllers/caesar.pyi b/src/vigenere_api/api/v1/controllers/caesar/caesar.pyi similarity index 100% rename from src/vigenere_api/api/v1/controllers/caesar.pyi rename to src/vigenere_api/api/v1/controllers/caesar/caesar.pyi diff --git a/src/vigenere_api/api/v1/controllers/docs/caesar.py b/src/vigenere_api/api/v1/controllers/caesar/docs.py similarity index 100% rename from src/vigenere_api/api/v1/controllers/docs/caesar.py rename to src/vigenere_api/api/v1/controllers/caesar/docs.py -- GitLab