Skip to content
Snippets Groups Projects
daqProcessingCompleteNotificationPlugin.py 1.15 KiB
Newer Older
#!/usr/bin/env python

import os
from dm.common.utility.loggingManager import LoggingManager
from dm.common.processing.plugins.fileProcessor import FileProcessor
from uploadTracker import UploadTracker

class DaqProcessingCompleteNotificationPlugin(FileProcessor):

    def __init__(self):
        FileProcessor.__init__(self)
        self.logger = LoggingManager.getInstance().getLogger(self.__class__.__name__)

    def processFile(self, fileInfo):
        uploadId = fileInfo.get('uploadId')
        filePath = fileInfo.get('filePath')
        if uploadId != None:
            self.logger.debug('Upload id for file %s: %s' %(filePath, uploadId))
            uploadInfo = UploadTracker.getInstance().get(uploadId)
            if uploadInfo != None:
               fileDict = uploadInfo.get('fileDict', {})
               uploadFileInfo = fileDict.get(filePath)
               if uploadFileInfo:
                   uploadFileInfo['processed'] = True
            else:
                self.logger.error('Upload tracker does not have upload id %s' %(uploadId))


#######################################################################
# Testing.
if __name__ == '__main__':
    pass