Modal deployment
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
import lxml.etree as ET
|
||||
from fastapi import FastAPI, Response
|
||||
from fastapi import APIRouter, FastAPI, Response
|
||||
from fastapi.middleware.cors import CORSMiddleware
|
||||
|
||||
from formex_viewer.formex4 import FormexArticleConverter
|
||||
@@ -49,7 +49,10 @@ def _get_fmx4_data(celex_id: str, language: Language) -> ET.Element:
|
||||
return xml
|
||||
|
||||
|
||||
@app.get("/{celex_id}/articles")
|
||||
api_router = APIRouter()
|
||||
|
||||
|
||||
@api_router.get("/{celex_id}/articles")
|
||||
def article_ids(celex_id: str, language: Language = Language.ENG):
|
||||
"""
|
||||
Fetch the article IDs from the server.
|
||||
@@ -63,11 +66,9 @@ def article_ids(celex_id: str, language: Language = Language.ENG):
|
||||
return article_ids
|
||||
|
||||
|
||||
@app.get("/{celex_id}/toc/{language}")
|
||||
@api_router.get("/{celex_id}/toc/{language}")
|
||||
def toc(celex_id: str, language: Language = Language.ENG):
|
||||
def _handle_division(division: ET.Element, level: int):
|
||||
print(division)
|
||||
|
||||
title = ti_el[0] if (ti_el := division.xpath("TITLE/TI//text()")) else ""
|
||||
subtitle = sti_el[0] if (sti_el := division.xpath("TITLE/STI//text()")) else ""
|
||||
|
||||
@@ -113,7 +114,7 @@ def toc(celex_id: str, language: Language = Language.ENG):
|
||||
return toc
|
||||
|
||||
|
||||
@app.get("/{celex_id}/articles/{article_id}/{language}")
|
||||
@api_router.get("/{celex_id}/articles/{article_id}/{language}")
|
||||
def article(celex_id: str, article_id: int, language: Language = Language.ENG):
|
||||
"""
|
||||
Fetch an article from the server.
|
||||
@@ -129,3 +130,6 @@ def article(celex_id: str, article_id: int, language: Language = Language.ENG):
|
||||
FormexArticleConverter().convert_article(article),
|
||||
media_type="text/html",
|
||||
)
|
||||
|
||||
|
||||
app.include_router(api_router, prefix="/api")
|
||||
|
||||
Reference in New Issue
Block a user