From 5ce6ac2e88ef586397462290146f95d7316b83ae Mon Sep 17 00:00:00 2001 From: Joseph Ware Date: Wed, 6 Mar 2024 12:26:22 +0000 Subject: [PATCH] Refactor dodal setter --- pyproject.toml | 3 +-- src/blueapi/service/handler.py | 17 +++-------------- 2 files changed, 4 insertions(+), 16 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index 68dc1817f..bfd55b0cf 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -26,8 +26,7 @@ dependencies = [ "fastapi[all]<0.99", "uvicorn", "requests", - "dls-bluesky-core", #requires ophyd-async - "dls-dodal", + "dls_dodal @ git+https://github.com/DiamondLightSource/dodal.git@rebased_i22", "typing_extensions<4.6", ] dynamic = ["version"] diff --git a/src/blueapi/service/handler.py b/src/blueapi/service/handler.py index 22ec159ae..a6a4338e9 100644 --- a/src/blueapi/service/handler.py +++ b/src/blueapi/service/handler.py @@ -1,6 +1,8 @@ import logging from typing import List, Mapping, Optional +from dodal.beamlines.beamline_utils import set_directory_provider + from blueapi.config import ApplicationConfig from blueapi.core import BlueskyContext from blueapi.core.event import EventStream @@ -150,7 +152,6 @@ def setup_handler( ) -> None: global HANDLER - provider = None plan_wrappers = [] if config: visit_service_client: VisitServiceClientBase @@ -167,19 +168,7 @@ def setup_handler( client=visit_service_client, ) - # Make all dodal devices created by the context use provider if they can - try: - from dodal.parameters.gda_directory_provider import ( - set_directory_provider_singleton, - ) - - set_directory_provider_singleton(provider) - except ImportError: - logging.error( - "Unable to set directory provider for ophyd-async devices, " - "a newer version of dodal is required" - ) - + set_directory_provider(provider) plan_wrappers.append(lambda plan: attach_metadata(plan, provider)) handler = Handler(