33 lines
853 B
Python
33 lines
853 B
Python
from typing import Optional
|
|
from uuid import UUID
|
|
from pydantic import field_validator
|
|
|
|
from ApiLayers.AllConfigs.Redis.configs import RedisAuthKeys
|
|
from Services.Redis.Models.row import BaseRedisModel
|
|
|
|
|
|
class AccessToken(BaseRedisModel):
|
|
|
|
auth_key: Optional[str] = RedisAuthKeys.AUTH
|
|
accessToken: Optional[str] = None
|
|
userUUID: Optional[str | UUID] = None
|
|
|
|
@field_validator("userUUID", mode="after")
|
|
def validate_uuid(cls, v):
|
|
"""Convert UUID to string during validation."""
|
|
if v is None:
|
|
return None
|
|
return str(v)
|
|
|
|
def to_list(self):
|
|
"""Convert to list for Redis storage."""
|
|
return [self.auth_key, self.accessToken, str(self.userUUID) if self.userUUID else None]
|
|
|
|
@property
|
|
def count(self):
|
|
return 2
|
|
|
|
@property
|
|
def delimiter(self):
|
|
return ":"
|