+ /* Commented code for ugly performance tests\r
+ long saveDelay = System.currentTimeMillis();\r
+ */ \r
+ getStorageManager().saveFiles(updatedFiles); // all "at once" ; trying to get a best performance in database update\r
+ /* Commented code for ugly performance tests\r
+ saveDelay = System.currentTimeMillis() - saveDelay;\r
+ Log.e(TAG, "syncing: SAVE TIME for " + uri + " contents, " + mSaveDelays[mDelaysIndex] + "ms");\r
+ */\r
+ \r
+ // removal of obsolete files\r
+ Vector<OCFile> files = getStorageManager().getDirectoryContent(\r
+ getStorageManager().getFileById(parentId));\r
+ OCFile file;\r
+ for (int i=0; i < files.size(); ) {\r
+ file = files.get(i);\r
+ if (file.getLastSyncDate() != mCurrentSyncTime && file.getLastSyncDate() != 0) {\r
+ getStorageManager().removeFile(file);\r
+ files.remove(i);\r
+ } else {\r
+ i++;\r
+ }\r
+ }\r
+ \r
+ // synchronized folder -> notice to UI\r
+ sendStickyBroadcast(true, getStorageManager().getFileById(parentId).getRemotePath());\r
+\r
+ // recursive fetch\r
+ for (int i=0; i < files.size() && !mCancellation; i++) {\r
+ OCFile newFile = files.get(i);\r
+ if (newFile.getMimetype().equals("DIR")) {\r
+ fetchData(getUri().toString() + WebdavUtils.encodePath(newFile.getRemotePath()), syncResult, newFile.getFileId());\r
+ }\r
+ }\r
+ if (mCancellation) Log.d(TAG, "Leaving " + uri + " because cancellation request");\r
+ \r
+ /* Commented code for ugly performance tests\r
+ mResponseDelays[mDelaysIndex] = responseDelay;\r
+ mSaveDelays[mDelaysIndex] = saveDelay;\r
+ mDelaysCount++;\r
+ mDelaysIndex++;\r
+ if (mDelaysIndex >= MAX_DELAYS)\r
+ mDelaysIndex = 0;\r
+ */\r
+ \r
+\r
+\r