Skip to content

Commit e4e7554

Browse files
committed
Remove dead code
1 parent ef2c6bd commit e4e7554

File tree

2 files changed

+2
-78
lines changed

2 files changed

+2
-78
lines changed

futuramaapi/repositories/models.py

Lines changed: 0 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,7 @@
22
from datetime import UTC, datetime, timedelta
33
from enum import Enum
44
from functools import partial
5-
from typing import Final
65

7-
from aiocache import cached
86
from fastapi_storages import FileSystemStorage
97
from fastapi_storages.integrations.sqlalchemy import ImageType
108
from sqlalchemy import (
@@ -16,13 +14,9 @@
1614
Date,
1715
ForeignKey,
1816
Integer,
19-
Result,
20-
Select,
2117
SmallInteger,
2218
UniqueConstraint,
2319
Update,
24-
func,
25-
select,
2620
update,
2721
)
2822
from sqlalchemy.dialects.postgresql import ENUM, Insert, insert # TODO: engine agnostic.
@@ -434,14 +428,6 @@ async def do_expire(cls, session: AsyncSession, key: str, /) -> None:
434428
await session.commit()
435429

436430

437-
_REQUESTS_TTL: Final[int] = 60 * 60 * 1
438-
439-
440-
def _cache_requests_since_builder(func_, *args, **_) -> str:
441-
truncated = args[1].replace(minute=0, second=0, microsecond=0)
442-
return f"{func_.__name__}:{truncated.isoformat()}"
443-
444-
445431
class RequestsCounterModel(Base):
446432
__tablename__ = "requests_counter"
447433

@@ -474,30 +460,6 @@ async def count_url(cls, url: str, /) -> None:
474460
await session.execute(statement)
475461
await session.commit()
476462

477-
@classmethod
478-
@cached(ttl=_REQUESTS_TTL)
479-
async def get_total_requests(cls) -> int:
480-
statement: Select = select(func.coalesce(func.sum(RequestsCounterModel.counter), 0))
481-
482-
session: AsyncSession
483-
async with session_manager.session() as session:
484-
result: Result = await session.execute(statement)
485-
486-
return result.scalar()
487-
488-
@classmethod
489-
@cached(ttl=_REQUESTS_TTL, key_builder=_cache_requests_since_builder)
490-
async def get_requests_since(cls, since: datetime, /) -> int:
491-
statement: Select = select(func.sum(RequestsCounterModel.counter)).where(
492-
RequestsCounterModel.created_at >= since
493-
)
494-
495-
session: AsyncSession
496-
async with session_manager.session() as session:
497-
result: Result = await session.execute(statement)
498-
499-
return result.scalar() or 0
500-
501463

502464
class SystemMessage(Base):
503465
__tablename__ = "system_messages"

futuramaapi/routers/rest/root/schemas.py

Lines changed: 2 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -1,53 +1,15 @@
1-
from datetime import UTC, datetime, timedelta
21
from pathlib import Path
3-
from typing import TYPE_CHECKING, ClassVar, Self
2+
from typing import ClassVar, Self
43

54
import aiofiles
65
from aiocache import Cache, cached
7-
from sqlalchemy import Select, select
86
from sqlalchemy.ext.asyncio import AsyncSession
97
from starlette.requests import Request
108

119
from futuramaapi.core import settings
1210
from futuramaapi.helpers import render_markdown
13-
from futuramaapi.helpers.pydantic import BaseModel, Field
11+
from futuramaapi.helpers.pydantic import BaseModel
1412
from futuramaapi.mixins.pydantic import BaseModelTemplateMixin, ProjectContext
15-
from futuramaapi.repositories import FilterStatementKwargs
16-
from futuramaapi.repositories.models import CharacterModel, RequestsCounterModel, SystemMessage
17-
from futuramaapi.routers.rest.users.schemas import User
18-
from futuramaapi.routers.services.characters.get_character import GetCharacterResponse
19-
20-
if TYPE_CHECKING:
21-
from collections.abc import Sequence
22-
23-
24-
class Root(BaseModel, BaseModelTemplateMixin):
25-
characters: list[GetCharacterResponse]
26-
user_count: int = Field(alias="user_count")
27-
total_api_requests: int
28-
last_day_api_requests: int
29-
system_messages: list[str]
30-
31-
template_name: ClassVar[str] = "index.html"
32-
33-
@classmethod
34-
async def from_request(cls, session: AsyncSession, request: Request, /) -> Self:
35-
user_count: int = await User.count(session)
36-
statement: Select[tuple[CharacterModel]] = select(CharacterModel).limit(12).order_by(CharacterModel.id.asc())
37-
characters: Sequence[CharacterModel] = (await session.execute(statement)).scalars().all()
38-
total_requests: int = await RequestsCounterModel.get_total_requests()
39-
system_messages: Sequence[SystemMessage] = await SystemMessage.filter(session, FilterStatementKwargs())
40-
last_day_api_requests: int = await RequestsCounterModel.get_requests_since(
41-
datetime.now(tz=UTC) - timedelta(days=1),
42-
)
43-
44-
return cls(
45-
characters=characters,
46-
user_count=user_count,
47-
total_api_requests=total_requests,
48-
last_day_api_requests=last_day_api_requests,
49-
system_messages=[system_message.message for system_message in system_messages],
50-
)
5113

5214

5315
class About(BaseModel, BaseModelTemplateMixin):

0 commit comments

Comments
 (0)