From 720dbf4b77e0ab7332d09b18c78e896a79b0675f Mon Sep 17 00:00:00 2001 From: Matthew Richards Date: Wed, 18 Sep 2024 12:23:41 +0000 Subject: [PATCH] Add config section for reader performance query option --- datagateway_api/config.yaml.example | 5 +++++ datagateway_api/src/common/config.py | 8 ++++++++ 2 files changed, 13 insertions(+) diff --git a/datagateway_api/config.yaml.example b/datagateway_api/config.yaml.example index 0634e1ac..38170d43 100644 --- a/datagateway_api/config.yaml.example +++ b/datagateway_api/config.yaml.example @@ -8,6 +8,11 @@ datagateway_api: db_url: "mysql+pymysql://icatdbuser:icatdbuserpw@localhost:3306/icatdb" icat_url: "https://localhost:8181" icat_check_cert: false + use_reader_for_performance: + enabled: false + reader_mechanism: simple + reader_username: reader + reader_password: readerpw search_api: extension: "/search-api" icat_url: "https://localhost:8181" diff --git a/datagateway_api/src/common/config.py b/datagateway_api/src/common/config.py index 245ffc68..dbc96571 100644 --- a/datagateway_api/src/common/config.py +++ b/datagateway_api/src/common/config.py @@ -38,6 +38,13 @@ def validate_extension(extension): return extension +class UseReaderForPerformance(BaseModel): + enabled: StrictBool + reader_mechanism: StrictStr + reader_username: StrictStr + reader_password: StrictStr + + class DataGatewayAPI(BaseModel): """ Configuration model class that implements pydantic's BaseModel class to allow for @@ -54,6 +61,7 @@ class DataGatewayAPI(BaseModel): extension: StrictStr icat_check_cert: Optional[StrictBool] icat_url: Optional[StrictStr] + use_reader_for_performance: Optional[UseReaderForPerformance] _validate_extension = validator("extension", allow_reuse=True)(validate_extension)