コード例 #1
0
ファイル: archive.py プロジェクト: dtgit/dtedu
 def getZipFile(self,**kwargs):
     """
     """
     adapted = IArchiver(self.context)
     self.request.RESPONSE.setHeader('Content-Type','application/zip')
     self.request.RESPONSE.addHeader("Content-Disposition","filename=%s.zip" % self.context.getId())
     self.request.RESPONSE.write(adapted.getRawArchive(**kwargs))
コード例 #2
0
ファイル: archive.py プロジェクト: dtgit/dtedu
 def createArchive(self, path, accumulator, **kwargs):
     """
     get the archive file object
     """
     recursive = kwargs.get('recursive',1)
     adapter = IFilterFolder(self.context)
     for item in adapter.listObjects():
         if IArchivable.providedBy(item):
             archiver = IArchiver(item)
             folderish = isinstance(archiver,FolderishArchiver)
             if path:
                 cpath = '%s/%s' % (path, self.context.getId())
             else:
                 cpath = self.context.getId()
             if (recursive and folderish) or not folderish:
                 archiver.createArchive(cpath, accumulator, **kwargs)
コード例 #3
0
ファイル: test_adapters.py プロジェクト: dtgit/dtedu
 def test_implements(self):
     archiver = IArchiver(self.fobj)
     self.failUnless(IArchiver.providedBy(archiver))