0

CMIS 文件夹可以包含许多子文件夹和文档,因此它们可以任意大。

我想在下载文件夹之前警告用户。
例如:You are about to download 35TB. Are you sure?
它对于进度条也很有用。

了解远程 CMIS 文件夹的递归大小的最有效方法是什么。

我使用getDecendants的天真方法(简化代码):

// Get all descendants
depth = 99999999; // By the way, this is not great
descendants = cmisFolder.getDescendants(depth);

// Add up all sizes
size = 0;
foreach(descendants) {
  size += descendant.getSize();
}

有没有更有效的方法,我和服务器之间的流量更少?

4

1 回答 1

3

使用查询更有效,因为它允许您过滤非文档对象(例如文件夹)和没有内容的文档。它还返回一个扁平列表,更易于遍历,并且支持分页,如果返回许多文档,这可能对客户端和服务器有所帮助。

于 2012-10-29T08:35:32.797 回答