From: jabarros Date: Mon, 15 Sep 2014 11:14:32 +0000 (+0200) Subject: Add boolean parameter 'ignoreTag' to SyncronizeFolderOperation constructor and pass... X-Git-Tag: oc-android-1.7.0_signed~178^2~3 X-Git-Url: http://git.linex4red.de/pub/Android/ownCloud.git/commitdiff_plain/e5492540596256e511c4b00819640e804808764a?hp=--cc Add boolean parameter 'ignoreTag' to SyncronizeFolderOperation constructor and pass ignoreTag = true in calls to #startSyncFolderOperation at FileDisplayActivity and MoveActivity in #onRefresh() --- e5492540596256e511c4b00819640e804808764a diff --git a/src/com/owncloud/android/operations/SynchronizeFolderOperation.java b/src/com/owncloud/android/operations/SynchronizeFolderOperation.java index fc4a74e8..31e4e7a9 100644 --- a/src/com/owncloud/android/operations/SynchronizeFolderOperation.java +++ b/src/com/owncloud/android/operations/SynchronizeFolderOperation.java @@ -109,6 +109,9 @@ public class SynchronizeFolderOperation extends RemoteOperation { /** 'True' means that the remote folder changed from last synchronization and should be fetched */ private boolean mRemoteFolderChanged; + /** 'True' means that Etag will be ignored */ + private boolean mIgnoreTag; + /** * Creates a new instance of {@link SynchronizeFolderOperation}. @@ -126,6 +129,7 @@ public class SynchronizeFolderOperation extends RemoteOperation { long currentSyncTime, boolean syncFullAccount, boolean isShareSupported, + boolean ignoreTag, FileDataStorageManager dataStorageManager, Account account, Context context ) { @@ -138,6 +142,7 @@ public class SynchronizeFolderOperation extends RemoteOperation { mContext = context; mForgottenLocalFiles = new HashMap(); mRemoteFolderChanged = false; + mIgnoreTag = ignoreTag; } @@ -215,7 +220,7 @@ public class SynchronizeFolderOperation extends RemoteOperation { private RemoteOperationResult checkForChanges(OwnCloudClient client) { - mRemoteFolderChanged = false; + mRemoteFolderChanged = true; RemoteOperationResult result = null; String remotePath = null; @@ -227,10 +232,12 @@ public class SynchronizeFolderOperation extends RemoteOperation { result = operation.execute(client); if (result.isSuccess()){ OCFile remoteFolder = FileStorageUtils.fillOCFile((RemoteFile) result.getData().get(0)); - - // check if remote and local folder are different - mRemoteFolderChanged = !(remoteFolder.getEtag().equalsIgnoreCase(mLocalFolder.getEtag())); - + + if (!mIgnoreTag) { + // check if remote and local folder are different + mRemoteFolderChanged = !(remoteFolder.getEtag().equalsIgnoreCase(mLocalFolder.getEtag())); + } + result = new RemoteOperationResult(ResultCode.OK); Log_OC.i(TAG, "Checked " + mAccount.name + remotePath + " : " + (mRemoteFolderChanged ? "changed" : "not changed")); diff --git a/src/com/owncloud/android/syncadapter/FileSyncAdapter.java b/src/com/owncloud/android/syncadapter/FileSyncAdapter.java index 2ac89835..80964041 100644 --- a/src/com/owncloud/android/syncadapter/FileSyncAdapter.java +++ b/src/com/owncloud/android/syncadapter/FileSyncAdapter.java @@ -264,6 +264,7 @@ public class FileSyncAdapter extends AbstractOwnCloudSyncAdapter { mCurrentSyncTime, true, mIsShareSupported, + true, getStorageManager(), getAccount(), getContext() diff --git a/src/com/owncloud/android/ui/activity/FileDisplayActivity.java b/src/com/owncloud/android/ui/activity/FileDisplayActivity.java index 63298334..90a6f48c 100644 --- a/src/com/owncloud/android/ui/activity/FileDisplayActivity.java +++ b/src/com/owncloud/android/ui/activity/FileDisplayActivity.java @@ -251,7 +251,7 @@ OnSslUntrustedCertListener, SwipeRefreshLayout.OnRefreshListener { Log_OC.e(TAG, "Initializing Fragments in onAccountChanged.."); initFragmentsWithFile(); if (file.isFolder()) { - startSyncFolderOperation(file); + startSyncFolderOperation(file, false); } } else { @@ -1153,7 +1153,7 @@ OnSslUntrustedCertListener, SwipeRefreshLayout.OnRefreshListener { OCFile root = getStorageManager().getFileByPath(OCFile.ROOT_PATH); listOfFiles.listDirectory(root); setFile(listOfFiles.getCurrentFile()); - startSyncFolderOperation(root); + startSyncFolderOperation(root, false); } cleanSecondFragment(); } @@ -1168,7 +1168,7 @@ OnSslUntrustedCertListener, SwipeRefreshLayout.OnRefreshListener { setNavigationListWithFolder(folder); listOfFiles.listDirectory(folder); setFile(listOfFiles.getCurrentFile()); - startSyncFolderOperation(folder); + startSyncFolderOperation(folder, false); } else { Log_OC.e(TAG, "Unexpected null when accessing list fragment"); } @@ -1187,7 +1187,7 @@ OnSslUntrustedCertListener, SwipeRefreshLayout.OnRefreshListener { cleanSecondFragment(); // Sync Folder - startSyncFolderOperation(directory); + startSyncFolderOperation(directory, false); } @@ -1304,7 +1304,7 @@ OnSslUntrustedCertListener, SwipeRefreshLayout.OnRefreshListener { @Override public void onSavedCertificate() { - startSyncFolderOperation(getCurrentDir()); + startSyncFolderOperation(getCurrentDir(), false); } @@ -1592,7 +1592,7 @@ OnSslUntrustedCertListener, SwipeRefreshLayout.OnRefreshListener { return null; } - public void startSyncFolderOperation(OCFile folder) { + public void startSyncFolderOperation(OCFile folder, boolean ignoreTag) { long currentSyncTime = System.currentTimeMillis(); mSyncInProgress = true; @@ -1602,6 +1602,7 @@ OnSslUntrustedCertListener, SwipeRefreshLayout.OnRefreshListener { currentSyncTime, false, getFileOperationsHelper().isSharedSupported(), + ignoreTag, getStorageManager(), getAccount(), getApplicationContext() @@ -1721,7 +1722,7 @@ OnSslUntrustedCertListener, SwipeRefreshLayout.OnRefreshListener { if (folder != null) { /*mFile = mContainerActivity.getStorageManager().getFileById(mFile.getFileId()); listDirectory(mFile);*/ - startSyncFolderOperation(folder); + startSyncFolderOperation(folder, true); } } } diff --git a/src/com/owncloud/android/ui/activity/MoveActivity.java b/src/com/owncloud/android/ui/activity/MoveActivity.java index be8fce1a..f6a95290 100644 --- a/src/com/owncloud/android/ui/activity/MoveActivity.java +++ b/src/com/owncloud/android/ui/activity/MoveActivity.java @@ -145,7 +145,7 @@ public class MoveActivity extends HookActivity implements FileFragment.Container OCFileListFragment listOfFolders = getListOfFilesFragment(); listOfFolders.listDirectory(folder); - startSyncFolderOperation(folder); + startSyncFolderOperation(folder, false); } updateNavigationElementsInActionBar(); @@ -201,12 +201,12 @@ public class MoveActivity extends HookActivity implements FileFragment.Container setFile(directory); updateNavigationElementsInActionBar(); // Sync Folder - startSyncFolderOperation(directory); + startSyncFolderOperation(directory, false); } - public void startSyncFolderOperation(OCFile folder) { + public void startSyncFolderOperation(OCFile folder, boolean ignoreTag) { long currentSyncTime = System.currentTimeMillis(); mSyncInProgress = true; @@ -216,6 +216,7 @@ public class MoveActivity extends HookActivity implements FileFragment.Container currentSyncTime, false, getFileOperationsHelper().isSharedSupported(), + ignoreTag, getStorageManager(), getAccount(), getApplicationContext() @@ -323,7 +324,7 @@ public class MoveActivity extends HookActivity implements FileFragment.Container listOfFiles.listDirectory(root); setFile(listOfFiles.getCurrentFile()); updateNavigationElementsInActionBar(); - startSyncFolderOperation(root); + startSyncFolderOperation(root, false); } } @@ -560,7 +561,7 @@ public class MoveActivity extends HookActivity implements FileFragment.Container if (listOfFiles != null) { OCFile folder = listOfFiles.getCurrentFile(); if (folder != null) { - startSyncFolderOperation(folder); + startSyncFolderOperation(folder, true); } } }