Skip to content

Commit f5ca54f

Browse files
committed
fail fast for ignore eTag thus no need read file operation
Signed-off-by: alperozturk96 <alper_ozturk@proton.me>
1 parent 03f138b commit f5ca54f

1 file changed

Lines changed: 19 additions & 18 deletions

File tree

app/src/main/java/com/owncloud/android/operations/RefreshFolderOperation.java

Lines changed: 19 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -407,6 +407,11 @@ private void updatePredefinedStatus(ArbitraryDataProvider arbitraryDataProvider)
407407

408408
private RemoteOperationResult checkForChanges(OwnCloudClient client) {
409409
mRemoteFolderChanged = true;
410+
411+
if (mIgnoreETag) {
412+
return new RemoteOperationResult<>(ResultCode.OK);
413+
}
414+
410415
RemoteOperationResult<?> result;
411416
String remotePath = mLocalFolder.getRemotePath();
412417

@@ -418,25 +423,21 @@ private RemoteOperationResult checkForChanges(OwnCloudClient client) {
418423
if (result.isSuccess()) {
419424
OCFile remoteFolder = FileStorageUtils.fillOCFile((RemoteFile) result.getData().get(0));
420425

421-
if (!mIgnoreETag) {
422-
// check if remote and local folder are different
423-
String remoteFolderETag = remoteFolder.getEtag();
424-
if (remoteFolderETag != null) {
425-
String localFolderEtag = mLocalFolder.getEtag();
426-
mRemoteFolderChanged = StringExtensionsKt.eTagChanged(remoteFolderETag, localFolderEtag);
427-
Log_OC.d(
428-
TAG,
429-
"📂 eTag check\n" +
430-
" Path: " + remoteFolder.getRemotePath() + "\n" +
431-
" Local eTag: " + localFolderEtag + "\n" +
432-
" Remote eTag: " + remoteFolderETag + "\n" +
433-
" Changed: " + mRemoteFolderChanged
434-
);
435-
} else {
436-
Log_OC.e(TAG, "Checked " + user.getAccountName() + remotePath + ": No ETag received from server");
437-
}
426+
// check if remote and local folder are different
427+
String remoteFolderETag = remoteFolder.getEtag();
428+
if (remoteFolderETag != null) {
429+
String localFolderEtag = mLocalFolder.getEtag();
430+
mRemoteFolderChanged = StringExtensionsKt.eTagChanged(remoteFolderETag, localFolderEtag);
431+
Log_OC.d(
432+
TAG,
433+
"📂 eTag check\n" +
434+
" Path: " + remoteFolder.getRemotePath() + "\n" +
435+
" Local eTag: " + localFolderEtag + "\n" +
436+
" Remote eTag: " + remoteFolderETag + "\n" +
437+
" Changed: " + mRemoteFolderChanged
438+
);
438439
} else {
439-
Log_OC.d(TAG, "Ignoring eTag. mRemoteFolderChanged is true.");
440+
Log_OC.e(TAG, "Checked " + user.getAccountName() + remotePath + ": No ETag received from server");
440441
}
441442

442443
result = new RemoteOperationResult<>(ResultCode.OK);

0 commit comments

Comments
 (0)