Files

42 lines
1.0 KiB
Python

import uuid
from datetime import datetime
from typing import Optional, List
from pydantic import BaseModel, Field
class BaseRequest(BaseModel):
user_name: str = "anonymous"
ip_address: str = "anonymous"
req_id: str = Field(default_factory=lambda: str(uuid.uuid4()))
class BaseResponse(BaseModel):
res_id: str = Field(default_factory=lambda: str(uuid.uuid4()))
rel_req_id: str
res_time: str = Field(default_factory=lambda: datetime.now().isoformat())
success: bool = True
msg: str = "Request processed successfully"
# Cache management specific models
class CacheClearRequest(BaseRequest):
service: Optional[str] = None # If None, clear all caches
class CacheClearResponse(BaseResponse):
cleared_count: int = 0
cleared_services: List[str] = []
# Memory management specific models
class MemoryCleanupRequest(BaseRequest):
service: str # Required, must specify which service to clean up
class MemoryCleanupResponse(BaseResponse):
freed_memory: bool = False
cleanup_details: str = ""