Initial travel knowledge graph release
This commit is contained in:
28
app/project_context.py
Normal file
28
app/project_context.py
Normal file
@@ -0,0 +1,28 @@
|
||||
from __future__ import annotations
|
||||
|
||||
from dataclasses import dataclass
|
||||
|
||||
from fastapi import Header
|
||||
|
||||
from app.config import settings
|
||||
|
||||
|
||||
@dataclass(frozen=True)
|
||||
class ProjectContext:
|
||||
tenant_id: str
|
||||
project_id: str
|
||||
graph_name: str
|
||||
|
||||
|
||||
def get_project_context(
|
||||
x_kg_tenant_id: str | None = Header(default=None, alias="X-KG-Tenant-Id"),
|
||||
x_kg_project_id: str | None = Header(default=None, alias="X-KG-Project-Id"),
|
||||
x_kg_graph_name: str | None = Header(default=None, alias="X-KG-Graph-Name"),
|
||||
) -> ProjectContext:
|
||||
project_id = (x_kg_project_id or settings.default_project).strip()
|
||||
return ProjectContext(
|
||||
tenant_id=(x_kg_tenant_id or settings.default_tenant).strip(),
|
||||
project_id=project_id,
|
||||
graph_name=(x_kg_graph_name or project_id or settings.falkordb_graph).strip(),
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user