Skip to content

Commit cd07dab

Browse files
committed
Add session finalising endpoints
1 parent f2ec83d commit cd07dab

File tree

2 files changed

+27
-0
lines changed

2 files changed

+27
-0
lines changed

src/murfey/instrument_server/api.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -214,6 +214,12 @@ def finalise_rsyncer(session_id: MurfeySessionID, rsyncer_source: RsyncerSource)
214214
return {"success": True}
215215

216216

217+
@router.post("/sessions/{session_id}/finalise_session")
218+
def finalise_session(session_id: MurfeySessionID):
219+
controllers[session_id].finalise()
220+
return {"success": True}
221+
222+
217223
@router.post("/sessions/{session_id}/restart_rsyncer")
218224
def restart_rsyncer(session_id: MurfeySessionID, rsyncer_source: RsyncerSource):
219225
controllers[session_id]._restart_rsyncer(rsyncer_source.source)

src/murfey/server/api/instrument.py

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -353,6 +353,27 @@ async def finalise_rsyncer(
353353
return data
354354

355355

356+
@router.post("/sessions/{session_id}/finalise_session")
357+
async def finalise_session(session_id: MurfeySessionID, db=murfey_db):
358+
data = {}
359+
instrument_name = (
360+
db.exec(select(Session).where(Session.id == session_id)).one().instrument_name
361+
)
362+
machine_config = get_machine_config(instrument_name=instrument_name)[
363+
instrument_name
364+
]
365+
if machine_config.instrument_server_url:
366+
async with aiohttp.ClientSession() as clientsession:
367+
async with clientsession.post(
368+
f"{machine_config.instrument_server_url}/sessions/{session_id}/finalise_session",
369+
headers={
370+
"Authorization": f"Bearer {instrument_server_tokens[session_id]['access_token']}"
371+
},
372+
) as resp:
373+
data = await resp.json()
374+
return data
375+
376+
356377
@router.post("/sessions/{session_id}/remove_rsyncer")
357378
async def remove_rsyncer(
358379
session_id: MurfeySessionID, rsyncer_source: RsyncerSource, db=murfey_db

0 commit comments

Comments
 (0)