Skip to content
Snippets Groups Projects
Commit e674de62 authored by sveseli's avatar sveseli
Browse files

allow arbitrary key-value pairs to be passed to daq service and to processing plugins

parent 09b8150a
No related branches found
No related tags found
No related merge requests found
......@@ -6,7 +6,7 @@ from daqWebServiceSessionCli import DaqWebServiceSessionCli
class StartDaqCli(DaqWebServiceSessionCli):
def __init__(self):
DaqWebServiceSessionCli.__init__(self)
DaqWebServiceSessionCli.__init__(self, validArgCount=self.ANY_NUMBER_OF_POSITIONAL_ARGS)
self.addOption('', '--experiment', dest='experimentName', help='Experiment name.')
self.addOption('', '--data-directory', dest='dataDirectory', help='Experiment data directory.')
......@@ -25,13 +25,17 @@ class StartDaqCli(DaqWebServiceSessionCli):
def runCommand(self):
self.parseArgs(usage="""
dm-start-daq --experiment=EXPERIMENTNAME --data-directory=DATADIRECTORY
[key1:value1, key2:value2, ...]
Description:
Starts DAQ for a given experiment. Provided data directory will be monitored for data files.
Starts DAQ for a given experiment. Specified data directory will be
monitored for data files. All provided key/value pairs will be passed to
file processing plugins.
""")
self.checkArgs()
api = ExperimentRestApi(self.getLoginUsername(), self.getLoginPassword(), self.getServiceHost(), self.getServicePort(), self.getServiceProtocol())
experiment = api.startDaq(self.getExperimentName(), self.getDataDirectory())
daqInfo = self.splitArgsIntoDict()
experiment = api.startDaq(self.getExperimentName(), self.getDataDirectory(), daqInfo=daqInfo)
print experiment.getDisplayString(self.getDisplayKeys(), self.getDisplayFormat())
#######################################################################
......
......@@ -6,7 +6,7 @@ from dm.common.exceptions.invalidRequest import InvalidRequest
class UploadCli(DaqWebServiceSessionCli):
def __init__(self):
DaqWebServiceSessionCli.__init__(self)
DaqWebServiceSessionCli.__init__(self, validArgCount=self.ANY_NUMBER_OF_POSITIONAL_ARGS)
self.addOption('', '--experiment', dest='experimentName', help='Experiment name.')
self.addOption('', '--data-directory', dest='dataDirectory', help='Experiment data directory.')
......@@ -25,9 +25,13 @@ class UploadCli(DaqWebServiceSessionCli):
def runCommand(self):
self.parseArgs(usage="""
dm-upload --experiment=EXPERIMENTNAME --data-directory=DATADIRECTORY
[key1:value1, key2:value2, ...]
Description:
Schedules data upload for a given experiment.
Schedules data upload for a given experiment. All existing files in the
specified directory will be uploaded to storage. Relative directory
structure will be preserved. All provided key/value pairs will be passed
to file processing plugins.
""")
self.checkArgs()
api = ExperimentRestApi(self.getLoginUsername(), self.getLoginPassword(), self.getServiceHost(), self.getServicePort(), self.getServiceProtocol())
......
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