2012-10-26 69 views
0

CMIS文件夾可以包含許多子文件夾和文檔,因此它們可以是任意大的。知道遠程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(); 
} 

有沒有更有效的方法,我和服務器之間的流量少?

回答

3

使用查詢更有效一些,因爲它允許您過濾非文檔對象(例如文件夾)和沒有內容的文檔。它還返回一個扁平列表,該列表更易於遍歷,並且支持分頁,這可以在返回多個文檔時幫助客戶端和服務器。

+0

如何使用查詢? – swemon

相關問題