#!/usr/bin/env python import time import os from dmObject import DmObject import urlparse class ObservedFile(DmObject): DEFAULT_KEY_LIST = [ 'filePath', 'lastUpdateTime' ] def __init__(self, dict={}, filePath=None, dataDirectory=None, experiment=None, destDirectory=None): DmObject.__init__(self, dict) if filePath: self['filePath'] = filePath if dataDirectory: self['dataDirectory'] = dataDirectory if filePath: parseResult = urlparse.urlparse(dataDirectory) self['experimentFilePath'] = os.path.relpath(filePath, parseResult.path) if destDirectory: self['destDirectory'] = destDirectory self['experimentFilePath'] = '%s/%s' % (destDirectory, self['experimentFilePath']) if experiment: self['experimentName'] = experiment.get('name') self['storageHost'] = experiment.get('storageHost') self['storageDirectory'] = experiment.get('storageDirectory') def setLastUpdateTimeToNow(self): self['lastUpdateTime'] = time.time() def getLastUpdateTime(self): self.get('lastUpdateTime') def getFilePath(self): return self.get('filePath') def getDataDirectory(self): return self.get('dataDirectory') #################################################################### # Testing if __name__ == '__main__': of = ObservedFile(filePath='tmp/xyz') print of of.setLastUpdateTimeToNow() print of