From e3aa31e299f3b5a9d5c3d8b8f43a17c2a8d8cacf Mon Sep 17 00:00:00 2001
From: Sinisa Veseli <sveseli@aps.anl.gov>
Date: Mon, 6 Mar 2017 22:30:33 +0000
Subject: [PATCH] starting to document DS experiment API

---
 doc/sphinx/source/dm.ds_web_service.api.rst   |  2 +-
 .../dm/ds_web_service/api/experimentDsApi.py  | 19 ++++++++++++++++++-
 2 files changed, 19 insertions(+), 2 deletions(-)

diff --git a/doc/sphinx/source/dm.ds_web_service.api.rst b/doc/sphinx/source/dm.ds_web_service.api.rst
index da6ab6d5..00894151 100644
--- a/doc/sphinx/source/dm.ds_web_service.api.rst
+++ b/doc/sphinx/source/dm.ds_web_service.api.rst
@@ -7,6 +7,6 @@ ExperimentDsApi
 
 .. autoclass:: dm.ds_web_service.api.experimentDsApi.ExperimentDsApi()
     :show-inheritance: 
-    :members:  __init__, getExperimentTypes, getExperiments
+    :members:  __init__, getExperimentTypes, getExperiments, getExperimentsByStation
 
 
diff --git a/src/python/dm/ds_web_service/api/experimentDsApi.py b/src/python/dm/ds_web_service/api/experimentDsApi.py
index f898f866..b0e97e89 100755
--- a/src/python/dm/ds_web_service/api/experimentDsApi.py
+++ b/src/python/dm/ds_web_service/api/experimentDsApi.py
@@ -78,8 +78,25 @@ class ExperimentDsApi(DsRestApi):
         responseData = self.sendSessionRequest(url=url, method='GET')
         return self.toDmObjectList(responseData, Experiment)
 
-    @DsRestApi.execute
+    @DsRestApi.execute2
     def getExperimentsByStation(self, stationName):
+        '''
+        Get list of experiments on a given station.
+
+        :param stationName: DM station name
+        :type stationName: str
+
+        :returns: list of Experiment objects
+
+        :raises AuthorizationError: in case user is not authorized to manage the given DM station
+
+        :raises DmException: in case of any other errors
+
+        >>> experimentList = api.getExperiments()
+        >>> for experiment in experimentList:
+        >>>     print experiment['id'], experiment['name']
+        '''
+
         url = '%s/experimentsByStation/%s' % (self.getContextRoot(), stationName)
         if not stationName:
             raise InvalidRequest('Experiment station name must be provided.')
-- 
GitLab