From e92dbc8d7ff47ec6e66da61126fcfa2713326d20 Mon Sep 17 00:00:00 2001 From: ahmedk <karim.ahmed@xfel.eu> Date: Tue, 27 Dec 2022 16:22:26 +0100 Subject: [PATCH] restful config client --- .../AGIPD/AGIPD_Correct_and_Verify.ipynb | 23 ++----------------- ...IPD_Retrieve_Constants_Precorrection.ipynb | 23 ++----------------- src/cal_tools/restful_config.py | 16 +++++++++++++ 3 files changed, 20 insertions(+), 42 deletions(-) diff --git a/notebooks/AGIPD/AGIPD_Correct_and_Verify.ipynb b/notebooks/AGIPD/AGIPD_Correct_and_Verify.ipynb index 090216708..5201f84d6 100644 --- a/notebooks/AGIPD/AGIPD_Correct_and_Verify.ipynb +++ b/notebooks/AGIPD/AGIPD_Correct_and_Verify.ipynb @@ -153,6 +153,7 @@ "sns.set_context(\"paper\", font_scale=1.4)\n", "sns.set_style(\"ticks\")\n", "\n", + "import cal_tools.restful_config as rest_cfg\n", "from calibration_client import CalibrationClient\n", "from cal_tools import agipdalgs as calgs\n", "from cal_tools.agipdlib import (\n", @@ -551,26 +552,6 @@ "module_index_to_karabo_da = {mod: da for (mod, da) in zip(modules, karabo_da)}" ] }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# Connect to CalCat.\n", - "calcat_config = restful_config['calcat']\n", - "client = CalibrationClient(\n", - " base_api_url=calcat_config['base-api-url'],\n", - " use_oauth2=calcat_config['use-oauth2'],\n", - " client_id=calcat_config['user-id'],\n", - " client_secret=calcat_config['user-secret'],\n", - " user_email=calcat_config['user-email'],\n", - " token_url=calcat_config['token-url'],\n", - " refresh_url=calcat_config['refresh-url'],\n", - " auth_url=calcat_config['auth-url'],\n", - " scope='')" - ] - }, { "cell_type": "code", "execution_count": null, @@ -608,7 +589,7 @@ " integration_time=integration_time,\n", " gain_mode=gain_mode,\n", " module_idx=mod,\n", - " client=client,\n", + " client=rest_cfg.calibration_client(),\n", " )\n", " print(f\"Queried CalCat for {k_da}\")\n", " return mod, when, k_da\n", diff --git a/notebooks/AGIPD/AGIPD_Retrieve_Constants_Precorrection.ipynb b/notebooks/AGIPD/AGIPD_Retrieve_Constants_Precorrection.ipynb index 3f4e7b43a..dc6bf84a2 100644 --- a/notebooks/AGIPD/AGIPD_Retrieve_Constants_Precorrection.ipynb +++ b/notebooks/AGIPD/AGIPD_Retrieve_Constants_Precorrection.ipynb @@ -89,6 +89,7 @@ "from dateutil import parser\n", "from extra_data import RunDirectory\n", "\n", + "import cal_tools.restful_config as rest_cfg\n", "from calibration_client import CalibrationClient\n", "from cal_tools.agipdlib import AgipdCtrl, SnowResolution\n", "from cal_tools.calcat_interface import AGIPD_CalibrationData, CalCatError\n", @@ -266,26 +267,6 @@ "acq_rate = all_acq_rates.pop()" ] }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# Connect to CalCat.\n", - "calcat_config = restful_config['calcat']\n", - "client = CalibrationClient(\n", - " base_api_url=calcat_config['base-api-url'],\n", - " use_oauth2=calcat_config['use-oauth2'],\n", - " client_id=calcat_config['user-id'],\n", - " client_secret=calcat_config['user-secret'],\n", - " user_email=calcat_config['user-email'],\n", - " token_url=calcat_config['token-url'],\n", - " refresh_url=calcat_config['refresh-url'],\n", - " auth_url=calcat_config['auth-url'],\n", - " scope='')" - ] - }, { "cell_type": "code", "execution_count": null, @@ -305,7 +286,7 @@ " gain_mode=gain_mode,\n", " gain_setting=gain_setting,\n", " event_at=creation_time,\n", - " client=client,\n", + " client=rest_cfg.calibration_client(),\n", ")\n", "\n", "dark_constants = [\"Offset\", \"Noise\", \"BadPixelsDark\"] if gain_mode else [\"ThresholdsDark\", \"Offset\", \"Noise\", \"BadPixelsDark\"]\n", diff --git a/src/cal_tools/restful_config.py b/src/cal_tools/restful_config.py index 7a7944080..5eb32aad2 100644 --- a/src/cal_tools/restful_config.py +++ b/src/cal_tools/restful_config.py @@ -1,5 +1,6 @@ from pathlib import Path +from calibration_client import CalibrationClient from dynaconf import Dynaconf config_dir = Path(__file__).parent.resolve() @@ -13,3 +14,18 @@ restful_config = Dynaconf( ], merge_enabled=True, ) + + +def calibration_client(): + # Create client for CalCat. + calcat_config = restful_config.get('calcat') + return CalibrationClient( + base_api_url=calcat_config['base-api-url'], + use_oauth2=calcat_config['use-oauth2'], + client_id=calcat_config['user-id'], + client_secret=calcat_config['user-secret'], + user_email=calcat_config['user-email'], + token_url=calcat_config['token-url'], + refresh_url=calcat_config['refresh-url'], + auth_url=calcat_config['auth-url'], + scope='') -- GitLab