diff --git a/interfaces.py b/interfaces.py index a49ce22..52a092f 100644 --- a/interfaces.py +++ b/interfaces.py @@ -786,9 +786,12 @@ class IExternalFile(IFile): missing_value='', required=False) - def copyDataFile(self, targetAddress): - """ Copy the external file object with all data to the target address - given. + def copyDataFile(self, targetParams, targetAddress=None): + """ Copy the external file object with all data to the destination + specified by target params and target address. + + If no target address is given the external address of the + object is used. """ diff --git a/resource.py b/resource.py index b221e33..e317767 100644 --- a/resource.py +++ b/resource.py @@ -402,6 +402,10 @@ class ExternalFileAdapter(FileAdapter): def storage(self): return component.getUtility(IExternalStorage, name=self.storageName) + @Lazy + def modified(self): + return self.storage.getMTime(self.externalAddress, self.storageParams) + def copyDataFile(self, targetParams, targetAddress=None): storageParams = self.storageParams externalAddress = self.externalAddress