diff --git a/openflexure_microscope/api/v2/views/actions/camera.py b/openflexure_microscope/api/v2/views/actions/camera.py index 4169e042..4e8ef19e 100644 --- a/openflexure_microscope/api/v2/views/actions/camera.py +++ b/openflexure_microscope/api/v2/views/actions/camera.py @@ -6,7 +6,7 @@ from openflexure_microscope.common.flask_labthings.decorators import ( marshal_with, doc, tag, - ltaction, + ThingAction, doc_response, ) @@ -19,7 +19,7 @@ import logging from flask import jsonify, request, abort, url_for, redirect, send_file -@ltaction +@ThingAction class CaptureAPI(Resource): """ Create a new image capture. diff --git a/openflexure_microscope/common/flask_labthings/decorators.py b/openflexure_microscope/common/flask_labthings/decorators.py index 67e56eee..94ace85b 100644 --- a/openflexure_microscope/common/flask_labthings/decorators.py +++ b/openflexure_microscope/common/flask_labthings/decorators.py @@ -71,17 +71,21 @@ def marshal_task(f): return wrapper -def ltaction(f): +def ThingAction(viewcls): # Pass params to call function attribute for external access - update_spec(f, {"tags": ["actions"]}) - update_spec(f, {"_groups": ["actions"]}) - return f + update_spec(viewcls, {"tags": ["actions"]}) + update_spec(viewcls, {"_groups": ["actions"]}) + return viewcls -def ltproperty(f): +thing_action = ThingAction + +def ThingProperty(viewcls): # Pass params to call function attribute for external access - update_spec(f, {"tags": ["properties"]}) - update_spec(f, {"_groups": ["properties"]}) - return f + update_spec(viewcls, {"tags": ["properties"]}) + update_spec(viewcls, {"_groups": ["properties"]}) + return viewcls + +thing_property = ThingProperty class use_args(object): def __init__(self, schema, **kwargs):