Browse Source

Grant renewal ownCloudClients managed in SessionManager after updating credentials

David A. Velasco 9 years ago
parent
commit
945841203c

+ 9 - 8
src/com/owncloud/android/authentication/AuthenticatorActivity.java

@@ -25,7 +25,6 @@ package com.owncloud.android.authentication;
 
 import android.accounts.Account;
 import android.accounts.AccountManager;
-import android.app.Activity;
 import android.app.Dialog;
 import android.content.ComponentName;
 import android.content.Context;
@@ -66,6 +65,8 @@ import android.widget.Toast;
 import com.owncloud.android.MainApp;
 import com.owncloud.android.R;
 import com.owncloud.android.authentication.SsoWebViewClient.SsoWebViewClientListener;
+import com.owncloud.android.lib.common.OwnCloudAccount;
+import com.owncloud.android.lib.common.OwnCloudClientManagerFactory;
 import com.owncloud.android.lib.common.OwnCloudCredentials;
 import com.owncloud.android.lib.common.OwnCloudCredentialsFactory;
 import com.owncloud.android.lib.common.accounts.AccountTypeUtils;
@@ -1027,10 +1028,6 @@ public class AuthenticatorActivity extends AccountAuthenticatorActivity
             onGetUserNameFinish(result);
         }
 
-        if (result.isSuccess() && mAction == ACTION_UPDATE_EXPIRED_TOKEN) {
-            setResult(Activity.RESULT_OK);
-        }
-
     }
 
     private void onGetUserNameFinish(RemoteOperationResult result) {
@@ -1425,9 +1422,6 @@ public class AuthenticatorActivity extends AccountAuthenticatorActivity
             }
 
             if (success) {
-                if (mAction == ACTION_UPDATE_EXPIRED_TOKEN) {
-                    setResult(Activity.RESULT_OK);
-                }
                 finish();
             }
             
@@ -1474,6 +1468,8 @@ public class AuthenticatorActivity extends AccountAuthenticatorActivity
      * the new credentials when needed.
      */
     private void updateAccountAuthentication() throws AccountNotFoundException {
+
+
         
         Bundle response = new Bundle();
         response.putString(AccountManager.KEY_ACCOUNT_NAME, mAccount.name);
@@ -1498,6 +1494,11 @@ public class AuthenticatorActivity extends AccountAuthenticatorActivity
             response.putString(AccountManager.KEY_AUTHTOKEN, mPasswordInput.getText().toString());
             mAccountMgr.setPassword(mAccount, mPasswordInput.getText().toString());
         }
+
+        // remove managed clients for this account to enforce creation with fresh credentials
+        OwnCloudAccount ocAccount = new OwnCloudAccount(mAccount, this);
+        OwnCloudClientManagerFactory.getDefaultSingleton().removeClientFor(ocAccount);
+
         setAccountAuthenticatorResult(response);
 
     }

+ 1 - 1
src/com/owncloud/android/datamodel/UploadsStorageManager.java

@@ -100,7 +100,7 @@ public class UploadsStorageManager extends Observable {
      * @return upload id, -1 if the insert process fails.
      */
     public long storeUpload(OCUpload ocUpload) {
-        Log_OC.e(TAG, "Inserting " + ocUpload.getLocalPath() + " with status=" + ocUpload.getUploadStatus());
+        Log_OC.v(TAG, "Inserting " + ocUpload.getLocalPath() + " with status=" + ocUpload.getUploadStatus());
 
         ContentValues cv = new ContentValues();
         cv.put(ProviderTableMeta.UPLOADS_LOCAL_PATH, ocUpload.getLocalPath());

+ 0 - 2
src/com/owncloud/android/files/services/FileUploader.java

@@ -1083,8 +1083,6 @@ public class FileUploader extends Service
                         PendingIntent.FLAG_ONE_SHOT
                 ));
 
-                mUploadClient = null;
-                // grant that future retries on the same account will get the fresh credentials
             } else {
                 mNotificationBuilder.setContentText(content);
             }