Skip to content
Snippets Groups Projects
Commit 74473e69 authored by Barbara B. Frosik's avatar Barbara B. Frosik
Browse files

change daq service startDaq not to encode the String

parent 5e8ccaee
No related branches found
No related tags found
No related merge requests found
......@@ -21,9 +21,10 @@ class ExperimentRestApi(DaqRestApi):
raise InvalidRequest('Experiment name must be provided.')
if dataDirectory is None or not len(dataDirectory):
raise InvalidRequest('Experiment data directory must be provided.')
url += '?dataDirectory=%s' % dataDirectory
url += '&experimentName=%s' % experimentName
daqInfo['experimentName'] = experimentName
daqInfo['dataDirectory'] = dataDirectory
url += '?daqInfo=%s' % (Encoder.encode(json.dumps(daqInfo)))
responseDict = self.sendSessionRequest(url=url, method='POST')
return Experiment(responseDict)
......
......@@ -20,16 +20,13 @@ class ExperimentSessionController(DmSessionController):
@DmSessionController.require(DmSessionController.isAdministrator())
@DmSessionController.execute
def startDaq(self, **kwargs):
encodedDaqInfo = kwargs.get('daqInfo')
if not encodedDaqInfo:
raise InvalidRequest('Invalid DAQ info provided.')
daqInfo = json.loads(Encoder.decode(encodedDaqInfo))
if not daqInfo.has_key('experimentName'):
raise InvalidRequest('Experiment name is missing.')
if not daqInfo.has_key('dataDirectory'):
raise InvalidRequest('Data directory is missing.')
response = self.experimentSessionControllerImpl.startDaq(daqInfo).getFullJsonRep()
experimentName = kwargs.get('experimentName')
if experimentName is None or not len(experimentName):
raise InvalidRequest('Missing experiment name.')
dataDirectory = kwargs.get('dataDirectory')
if dataDirectory is None or not len(dataDirectory):
raise InvalidRequest('Missing experiment name.')
response = self.experimentSessionControllerImpl.startDaq(experimentName, dataDirectory).getFullJsonRep()
self.logger.debug('Returning: %s' % response)
return response
......
......@@ -23,15 +23,16 @@ class ExperimentSessionControllerImpl(DmObjectManager):
DmObjectManager.__init__(self)
self.dsExperimentApi = DsRestApiFactory.getExperimentRestApi()
def startDaq(self, daqInfo):
experimentName = daqInfo.get('experimentName')
def startDaq(self, experimentName, dataDirectory):
daqInfo={}
daqInfo['experimentName'] = experimentName
daqInfo['dataDirectory'] = dataDirectory
experiment = ExperimentTracker.getInstance().get(experimentName)
if experiment is not None:
oldDaqInfo = experiment.get('daqInfo')
if oldDaqInfo.get('daqEndTime') is None:
raise InvalidRequest('DAQ for experiment %s is already active in directory %s.' % (experimentName,oldDaqInfo.get('dataDirectory')))
dataDirectory = daqInfo.get('dataDirectory')
experiment = self.dsExperimentApi.getExperimentByName(experimentName)
storageDirectory = experiment.get('storageDirectory')
if storageDirectory is None:
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment