cleanup(api): Move route registration to routes.
This commit is contained in:
51
src/api.py
51
src/api.py
@@ -11,54 +11,14 @@ from datamodels import DataModel
|
|||||||
from constants import DATA_VERSION
|
from constants import DATA_VERSION
|
||||||
|
|
||||||
from modules.profiles.data import ProfileData
|
from modules.profiles.data import ProfileData
|
||||||
|
from routes import dbvar, datamodelsv, profiledatav, register_routes
|
||||||
|
|
||||||
from routes.stamps import routes as stamp_routes
|
|
||||||
from routes.documents import routes as doc_routes
|
|
||||||
from routes.users import routes as user_routes
|
|
||||||
from routes.specimens import routes as spec_routes
|
|
||||||
from routes.transactions import routes as txn_routes
|
|
||||||
from routes.events import routes as event_routes
|
|
||||||
from routes.lib import dbvar, datamodelsv, profiledatav
|
|
||||||
|
|
||||||
sys.path.insert(0, os.path.join(os.getcwd()))
|
sys.path.insert(0, os.path.join(os.getcwd()))
|
||||||
sys.path.insert(0, os.path.join(os.getcwd(), "src"))
|
sys.path.insert(0, os.path.join(os.getcwd(), "src"))
|
||||||
|
|
||||||
logger = logging.getLogger(__name__)
|
logger = logging.getLogger(__name__)
|
||||||
|
|
||||||
# TODO: Move the route table to the __init__ of routes
|
|
||||||
# Maybe we can join route tables together?
|
|
||||||
# Or we just expose an add_routes or register method
|
|
||||||
|
|
||||||
"""
|
|
||||||
- `/stamps` with `POST`, `PUT`, `GET`
|
|
||||||
- `/stamps/{stamp_id}` with `GET`, `PATCH`, `DELETE`
|
|
||||||
|
|
||||||
- `/documents` with `POST, GET`
|
|
||||||
- `/documents/{document_id}` with `GET`, `PATCH`, `DELETE`
|
|
||||||
- `/documents/{document_id}/stamps` which is passed to `/stamps` with `document_id` set.
|
|
||||||
|
|
||||||
- `/events` with `POST`, `GET`
|
|
||||||
- `/events/{event_id}` with `GET`, `PATCH`, `DELETE`
|
|
||||||
- `/events/{event_id}/document` which is passed to `/documents/{document_id}`
|
|
||||||
- `/events/{event_id}/user` which is passed to `/users/{user_id}`
|
|
||||||
|
|
||||||
- `/users` with `POST`, `GET`, `PATCH`, `DELETE`
|
|
||||||
- `/users/{user_id}` with `GET`, `PATCH`, `DELETE`
|
|
||||||
- `/users/{user_id}/events` which is passed to `/events`
|
|
||||||
- `/users/{user_id}/specimen` which is passed to `/specimens/{specimen_id}`
|
|
||||||
- `/users/{user_id}/specimens` which is passed to `/specimens`
|
|
||||||
- `/users/{user_id}/wallet` with `GET`
|
|
||||||
- `/users/{user_id}/transactions` which is passed to `/transactions`
|
|
||||||
|
|
||||||
- `/specimens` with `GET` and `POST`
|
|
||||||
- `/specimens/{specimen_id}` with `PATCH` and `DELETE`
|
|
||||||
- `/specimens/{specimen_id}/owner` which is passed to `/users/{user_id}`
|
|
||||||
|
|
||||||
- `/transactions` with `POST`, `GET`
|
|
||||||
- `/transactions/{transaction_id}` with `GET`, `PATCH`, `DELETE`
|
|
||||||
- `/transactions/{transaction_id}/user` which is passed to `/users/{user_id}`
|
|
||||||
"""
|
|
||||||
|
|
||||||
async def attach_db(app: web.Application):
|
async def attach_db(app: web.Application):
|
||||||
db = Database(conf.data['args'])
|
db = Database(conf.data['args'])
|
||||||
async with db.open():
|
async with db.open():
|
||||||
@@ -84,19 +44,14 @@ async def attach_db(app: web.Application):
|
|||||||
|
|
||||||
|
|
||||||
async def test(request: web.Request) -> web.Response:
|
async def test(request: web.Request) -> web.Response:
|
||||||
return web.Response(text="Hello World")
|
return web.Response(text="Welcome to the Dreamspace API. Please donate an important childhood memory to continue.")
|
||||||
|
|
||||||
def app_factory():
|
def app_factory():
|
||||||
auth = key_auth_factory(conf.API['TOKEN'])
|
auth = key_auth_factory(conf.API['TOKEN'])
|
||||||
app = web.Application(middlewares=[auth])
|
app = web.Application(middlewares=[auth])
|
||||||
app.cleanup_ctx.append(attach_db)
|
app.cleanup_ctx.append(attach_db)
|
||||||
app.router.add_get('/', test)
|
app.router.add_get('/', test)
|
||||||
app.router.add_routes(stamp_routes)
|
register_routes(app.router)
|
||||||
app.router.add_routes(doc_routes)
|
|
||||||
app.router.add_routes(user_routes)
|
|
||||||
app.router.add_routes(spec_routes)
|
|
||||||
app.router.add_routes(event_routes)
|
|
||||||
app.router.add_routes(txn_routes)
|
|
||||||
return app
|
return app
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
16
src/routes/__init__.py
Normal file
16
src/routes/__init__.py
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
from .stamps import routes as stamp_routes
|
||||||
|
from .documents import routes as doc_routes
|
||||||
|
from .users import routes as user_routes
|
||||||
|
from .specimens import routes as spec_routes
|
||||||
|
from .transactions import routes as txn_routes
|
||||||
|
from .events import routes as event_routes
|
||||||
|
from .lib import dbvar, datamodelsv, profiledatav
|
||||||
|
|
||||||
|
|
||||||
|
def register_routes(router):
|
||||||
|
router.add_routes(stamp_routes)
|
||||||
|
router.add_routes(doc_routes)
|
||||||
|
router.add_routes(user_routes)
|
||||||
|
router.add_routes(spec_routes)
|
||||||
|
router.add_routes(event_routes)
|
||||||
|
router.add_routes(txn_routes)
|
||||||
Reference in New Issue
Block a user