一个用于 Python 的 CMIS API 库,第 2 部分: 使用 Python 和 cmislib 构建真正的 ECM 工具
2010-05-05 00:00:00 来源:WEB开发网选择要解决的问题
我在 IBM 强化 CMIS 服务器时需要用到的一个工具是一个不错的存储库填充工具。当然,CMIS 存储库中的数据并不仅仅是文档负载,还可能包括很多与该文档相关的元数据。开发人员都经常使用的一种带有元数据的常见文档类型就是 JPG 图像。我之所以选择 JPG 文件用于测试的原因是,它们的头部通常拥有一组丰富有趣的元数据,这意味着我不必额外编写代码来表达虚构的值。这种 EXchangeable Image File Format (Exif) 数据对那些涉足数码摄影的人来说并不陌生。如果您还不熟悉这种格式,建议您先参阅关于这个主题的 Wikipedia 文章。
工具要求
您即将创建的工具需要完成以下任务:
将本地文件系统中的文件的层次结构复制到任何指定的 CMIS 兼容存储库,并将文件的文件名保留为新的 CMIS 文档的 cmis:name。
如果这个工具在 xcopy 期间遇到 JPG 类型文件,还要尝试将与图像关联的所有 Exif 数据复制到存储库中,前提是假设存储库包含兼容的属性定义。这是这个工具真正有趣的地方。尽管 xcopy 功能本身非常有用,但是用一篇文章专门介绍它可能有些单调乏味(虽然您可以将这个工具只用作一个简单的旧文件系统到 CMIS 的 xcopy,如果这是您需要这个工具的惟一原因的话)。
代码详解
现在,您可以查看这个工具的参数和代码了。
定义输入
现在我们来定义这个工具将被如何使用。首先,我根据原来的 xcopy 建模该工具,以便它将是一个命令行工具。参数是:
-s 复制的源目录。
-f 文件过滤器(例如,*.doc、*.jpg、*.* 等)。
-t target path 复制操作的目标目录的完整路径(例如:/pictures/Fiji_August_2010/)。这个工具将假定目标路径存在并自动创建所有子文件夹。
更多精彩
赞助商链接