Skip to content

Commit f24b481

Browse files
committed
create model for Market
Signed-off-by: Lu Ken <[email protected]>
1 parent f4f7f7c commit f24b481

File tree

3 files changed

+28
-20
lines changed

3 files changed

+28
-20
lines changed

src/gentrade_server/model.py

+22-3
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,11 @@
1-
from pydantic import BaseModel, Field
2-
from pydantic_settings import BaseSettings, SettingsConfigDict
3-
from pydantic import Field, field_validator
1+
"""
2+
Model
3+
"""
44
from typing import List
55

6+
from pydantic import BaseModel, Field, field_validator
7+
from pydantic_settings import BaseSettings, SettingsConfigDict
8+
69
class HealthCheck(BaseModel):
710
"""
811
Response model to validate and return when performing a health check.
@@ -27,6 +30,22 @@ class Settings(BaseSettings):
2730
@field_validator('ntp_servers', mode='before')
2831
@classmethod
2932
def decode_ntp_servers(cls, v: str) -> List[str]:
33+
"""decode function override
34+
35+
Args:
36+
v (str): input string
37+
38+
Returns:
39+
List[str]: splitted list for all NTP servers
40+
"""
3041
return v.split(',')
3142

3243
settings = Settings()
44+
45+
class Market(BaseModel):
46+
"""
47+
Response model to validate and return when performing a health check.
48+
"""
49+
50+
name: str = Field(...)
51+
type: str = Field(...)

src/gentrade_server/routers/admin.py

+4-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
1+
'''
2+
Admin portal
3+
'''
14
import logging
25

36
from fastapi import APIRouter, Depends
4-
from pydantic import BaseModel, Field
57
from ..model import settings, Settings
68
from ..auth import get_user
79

@@ -14,4 +16,5 @@ async def get_settings(user: dict = Depends(get_user)) -> Settings:
1416
"""
1517
Get server settings
1618
"""
19+
LOG.info(user)
1720
return settings

src/gentrade_server/routers/public.py

+2-16
Original file line numberDiff line numberDiff line change
@@ -9,10 +9,9 @@
99
from dateutil.tz import tzlocal
1010

1111
from fastapi import APIRouter
12-
from pydantic import BaseModel, Field
1312

1413
from ..datahub import DataHub
15-
from ..model import HealthCheck, settings
14+
from ..model import HealthCheck, Market
1615

1716
LOG = logging.getLogger(__name__)
1817

@@ -42,20 +41,7 @@ async def get_server_time():
4241
}
4342

4443
@router.get("/markets/")
45-
async def get_markets():
46-
"""
47-
Get markets
48-
"""
49-
retval = {}
50-
for _, market in DataHub.inst().markets.items():
51-
retval[market.market_id] = {
52-
"name": market.name,
53-
"type": market.market_type,
54-
}
55-
return retval
56-
57-
@router.get("/markets/")
58-
async def get_markets2():
44+
async def get_markets() -> Market:
5945
"""
6046
Get markets
6147
"""

0 commit comments

Comments
 (0)