Skip to content

Commit

Permalink
Merge pull request #464 from sparcs-kaist/base_refactoring
Browse files Browse the repository at this point in the history
Customize directory structure
  • Loading branch information
injoonH committed Apr 28, 2024
2 parents cacab4e + 9048372 commit e10acb2
Show file tree
Hide file tree
Showing 15 changed files with 441 additions and 32 deletions.
1 change: 1 addition & 0 deletions Pipfile
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,7 @@ uritemplate = "*"
tqdm = "*"
lxml = "*"
django-ses = "*"
pydantic = "*"

[dev-packages]
black = "*"
Expand Down
174 changes: 142 additions & 32 deletions Pipfile.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Empty file added ara/controller/__init__.py
Empty file.
Empty file added ara/controller/api.py
Empty file.
3 changes: 3 additions & 0 deletions ara/controller/authentication.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
class AuthLoggedInUser:
# TODO
pass
65 changes: 65 additions & 0 deletions ara/controller/constants.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
from enum import IntEnum, unique


@unique
class HttpStatusCode(IntEnum):
CONTINUE = 100
SWITCHING_PROTOCOLS = 101
OK = 200
CREATED = 201
ACCEPTED = 202
NON_AUTHORITATIVE_INFORMATION = 203
NO_CONTENT = 204
RESET_CONTENT = 205
PARTIAL_CONTENT = 206
MULTI_STATUS = 207
ALREADY_REPORTED = 208
IM_USED = 226
MULTIPLE_CHOICES = 300
MOVED_PERMANENTLY = 301
FOUND = 302
SEE_OTHER = 303
NOT_MODIFIED = 304
USE_PROXY = 305
RESERVED = 306
TEMPORARY_REDIRECT = 307
PERMANENT_REDIRECT = 308
BAD_REQUEST = 400
UNAUTHORIZED = 401
PAYMENT_REQUIRED = 402
FORBIDDEN = 403
NOT_FOUND = 404
METHOD_NOT_ALLOWED = 405
NOT_ACCEPTABLE = 406
PROXY_AUTHENTICATION_REQUIRED = 407
REQUEST_TIMEOUT = 408
CONFLICT = 409
GONE = 410
LENGTH_REQUIRED = 411
PRECONDITION_FAILED = 412
REQUEST_ENTITY_TOO_LARGE = 413
REQUEST_URI_TOO_LONG = 414
UNSUPPORTED_MEDIA_TYPE = 415
REQUESTED_RANGE_NOT_SATISFIABLE = 416
EXPECTATION_FAILED = 417
IM_A_TEAPOT = 418
UNPROCESSABLE_ENTITY = 422
LOCKED = 423
FAILED_DEPENDENCY = 424
UPGRADE_REQUIRED = 426
PRECONDITION_REQUIRED = 428
TOO_MANY_REQUESTS = 429
REQUEST_HEADER_FIELDS_TOO_LARGE = 431
UNAVAILABLE_FOR_LEGAL_REASONS = 451
INTERNAL_SERVER_ERROR = 500
NOT_IMPLEMENTED = 501
BAD_GATEWAY = 502
SERVICE_UNAVAILABLE = 503
GATEWAY_TIMEOUT = 504
HTTP_VERSION_NOT_SUPPORTED = 505
VARIANT_ALSO_NEGOTIATES = 506
INSUFFICIENT_STORAGE = 507
LOOP_DETECTED = 508
BANDWIDTH_LIMIT_EXCEEDED = 509
NOT_EXTENDED = 510
NETWORK_AUTHENTICATION_REQUIRED = 511
14 changes: 14 additions & 0 deletions ara/controller/pagination.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
from typing import Any

from pydantic import BaseModel


class PaginatedData(BaseModel):
count: int
next: str | None
previous: str | None
results: list[Any]


class NesAraPagination:
pass
10 changes: 10 additions & 0 deletions ara/controller/request.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
from typing import TypeVar

from django.contrib.auth import get_user_model
from django.http import HttpRequest

User = TypeVar("User", bound=get_user_model())


class LoggedInUserRequest(HttpRequest):
user: User
Loading

0 comments on commit e10acb2

Please sign in to comment.