cmis文件夹可以包含许多子文件夹和文档,因此它们可以任意大。
我想在下载文件夹之前警告用户。
例如:You are about to download 35TB. Are you sure?
这对于进度栏也将很有用。
了解远程CMIS文件夹的递归大小的最有效方法是什么?
我的幼稚方法(简化代码),带有getDebentant:
// 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();
}
是否有更有效的方法,我和服务器之间的流量更少?
使用查询更有效,因为它允许您过滤非文档对象(例如文件夹)和文档,而没有内容。它还返回一个平面列表,该列表更容易穿越,并支持分页,如果返回许多文档,这可能会帮助客户端和服务器。