从plone或其他异步内容创建zip文件
collective.azipfele的Python项目详细描述
从plone content或webservices创建异步zip文件
内容
这是一个基本模块,旨在异步创建zip文件。 即使它有一些基本的内置数据提取器,它也不是一个现成的包, 但对于集成商和附加产品作者来说。
在请求-响应周期中创建zip文件可能需要很多时间。 使用此包,ZIP作业信息将排队到任务队列中。
它支持collective.taskqueue(redis支持的可选) 以及collective.zamqp(使用amqp服务器(如rabbitmq)的基于amqp的解决方案)。
zip文件是在工作实例中创建的。 创建文件后,将触发事件。 有了它,即可以发送电子邮件通知。
创建的状态(挂起、处理、完成)和时间戳(排队、开始、完成)在工作进程和实例之间共享。
worker实例获取一个jobinfo(dict)和一个fileinfos列表(dict)。 每个fileinfo至少有一个内容项的有效uuid。 对于列表中的每个文件信息,将创建一个文件。 它使用zca使用 collective.azipfele.interfaces import-izipcontentextractor 调整具有给定uuid的内容。 如果fileinfo包含一个 提取器(字符串),它将使用一个命名适配器。
izipcontentextractor可以调用fileinfo和全局设置。 它将返回一个文件名元组和要与文件名一起存储在zip中的数据。 返回的文件名也可以是相对路径。