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

implement ds service notification that file is ready for processing

parent 62d03240
No related branches found
No related tags found
No related merge requests found
#!/usr/bin/env python
from dm.common.api.dmRestApi import DmRestApi
from dm.common.utility.configurationManager import ConfigurationManager
class DaqRestApi(DmRestApi):
""" Base DAQ DM REST api class. """
def __init__(self, username=None, password=None, host=None, port=None, protocol=None):
if host == None:
host = self.configurationManager.getDaqWebServiceHost()
host = ConfigurationManager.getInstance().getDaqWebServiceHost()
if port == None:
port = self.configurationManager.getDaqWebServicePort()
port = ConfigurationManager.getInstance().getDaqWebServicePort()
DmRestApi.__init__(self, username, password, host, port, protocol)
#######################################################################
......
......@@ -7,8 +7,8 @@
from dm.common.service.dmRestWebServiceBase import DmRestWebServiceBase
from dm.common.utility.dmModuleManager import DmModuleManager
from dm.common.utility.configurationManager import ConfigurationManager
from dm.common.processing.fileProcessingManager import FileProcessingManager
from dm.daq_web_service.service.impl.fileSystemObserver import FileSystemObserver
from dm.daq_web_service.service.impl.fileProcessingManager import FileProcessingManager
from daqWebServiceRouteMapper import DaqWebServiceRouteMapper
class DaqWebService(DmRestWebServiceBase):
......
#!/usr/bin/env python
import os
from dm.common.utility.loggingManager import LoggingManager
from dm.common.processing.plugins.fileProcessor import FileProcessor
from dm.ds_web_service.api.dsRestApiFactory import DsRestApiFactory
class DsProcessFileNotificationPlugin(FileProcessor):
def __init__(self):
FileProcessor.__init__(self)
self.dsFileApi = DsRestApiFactory.getFileRestApi()
self.logger = LoggingManager.getInstance().getLogger(self.__class__.__name__)
def processFile(self, filePath, daqPath, experiment):
experimentName = experiment.get('name')
storageDirectory = experiment.get('storageDirectory')
fileName = os.path.basename(filePath)
daqFilePath = os.path.join(storageDirectory, fileName)
self.logger.debug('Processing file %s' % filePath)
self.dsFileApi.processFile(fileName, daqFilePath, experimentName)
#######################################################################
# Testing.
if __name__ == '__main__':
pass
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