X-Git-Url: http://git.linex4red.de/pub/Android/ownCloud.git/blobdiff_plain/2cad715525713db88abae3b7878968e422adcc80..HEAD:/src/com/owncloud/android/operations/GetSharesForFileOperation.java diff --git a/src/com/owncloud/android/operations/GetSharesForFileOperation.java b/src/com/owncloud/android/operations/GetSharesForFileOperation.java index 649437d2..a04d4159 100644 --- a/src/com/owncloud/android/operations/GetSharesForFileOperation.java +++ b/src/com/owncloud/android/operations/GetSharesForFileOperation.java @@ -1,5 +1,8 @@ -/* ownCloud Android client application - * Copyright (C) 2012-2013 ownCloud Inc. +/** + * ownCloud Android client application + * + * @author masensio + * Copyright (C) 2015 ownCloud Inc. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2, @@ -18,20 +21,17 @@ package com.owncloud.android.operations; -import java.util.ArrayList; - import com.owncloud.android.lib.common.OwnCloudClient; -import com.owncloud.android.lib.resources.shares.OCShare; import com.owncloud.android.lib.common.operations.RemoteOperationResult; import com.owncloud.android.lib.common.utils.Log_OC; import com.owncloud.android.lib.resources.shares.GetRemoteSharesForFileOperation; +import com.owncloud.android.lib.resources.shares.OCShare; import com.owncloud.android.operations.common.SyncOperation; +import java.util.ArrayList; + /** - * Provide a list shares for a specific file. - * - * @author masensio - * + * Provide a list shares for a specific file. */ public class GetSharesForFileOperation extends SyncOperation { @@ -58,7 +58,8 @@ public class GetSharesForFileOperation extends SyncOperation { @Override protected RemoteOperationResult run(OwnCloudClient client) { - GetRemoteSharesForFileOperation operation = new GetRemoteSharesForFileOperation(mPath, mReshares, mSubfiles); + GetRemoteSharesForFileOperation operation = new GetRemoteSharesForFileOperation(mPath, + mReshares, mSubfiles); RemoteOperationResult result = operation.execute(client); if (result.isSuccess()) { @@ -71,6 +72,11 @@ public class GetSharesForFileOperation extends SyncOperation { } getStorageManager().saveSharesDB(shares); + + } else if (result.getCode() == RemoteOperationResult.ResultCode.SHARE_NOT_FOUND) { + // no share on the file - remove local shares + getStorageManager().removeSharesForFile(mPath); + } return result;