Loading app/src/main/java/it/niedermann/owncloud/notes/main/MainActivity.java +3 −3 Original line number Diff line number Diff line Loading @@ -286,7 +286,7 @@ public class MainActivity extends LockedActivity implements NoteClickListener, A .apply(RequestOptions.circleCropTransform()) .into(activityBinding.launchAccountSwitcher); mainViewModel.synchronizeNotes(nextAccount, new IResponseCallback<>() { mainViewModel.synchronizeNotes(this, nextAccount, new IResponseCallback<>() { @Override public void onSuccess(Void v) { Log.d(TAG, "Successfully synchronized notes for " + nextAccount.getAccountName()); Loading Loading @@ -376,7 +376,7 @@ public class MainActivity extends LockedActivity implements NoteClickListener, A try { // It is possible that after the deletion of the last account, this onResponse gets called before the ImportAccountActivity gets started. if (SingleAccountHelper.getCurrentSingleSignOnAccount(this) != null) { mainViewModel.synchronizeNotes(currentAccount, new IResponseCallback<>() { mainViewModel.synchronizeNotes(this, currentAccount, new IResponseCallback<>() { @Override public void onSuccess(Void v) { Log.d(TAG, "Successfully synchronized notes for " + currentAccount.getAccountName()); Loading Loading @@ -477,7 +477,7 @@ public class MainActivity extends LockedActivity implements NoteClickListener, A final var syncLiveData = mainViewModel.getCurrentAccount(); final Observer<Account> syncObserver = currentAccount -> { syncLiveData.removeObservers(this); mainViewModel.synchronizeCapabilitiesAndNotes(currentAccount, new IResponseCallback<>() { mainViewModel.synchronizeCapabilitiesAndNotes(this, currentAccount, new IResponseCallback<>() { @Override public void onSuccess(Void v) { Log.d(TAG, "Successfully synchronized capabilities and notes for " + currentAccount.getAccountName()); Loading app/src/main/java/it/niedermann/owncloud/notes/main/MainViewModel.java +12 −3 Original line number Diff line number Diff line Loading @@ -44,6 +44,7 @@ import com.nextcloud.android.sso.exceptions.NextcloudFilesAppAccountNotFoundExce import com.nextcloud.android.sso.exceptions.NextcloudHttpRequestFailedException; import com.nextcloud.android.sso.exceptions.UnknownErrorException; import com.nextcloud.android.sso.helper.SingleAccountHelper; import com.owncloud.android.lib.common.utils.Log_OC; import java.util.ArrayList; import java.util.Collection; Loading Loading @@ -379,13 +380,13 @@ public class MainViewModel extends AndroidViewModel { return items; } public void synchronizeCapabilitiesAndNotes(@NonNull Account localAccount, @NonNull IResponseCallback<Void> callback) { public void synchronizeCapabilitiesAndNotes(Context context, @NonNull Account localAccount, @NonNull IResponseCallback<Void> callback) { Log.i(TAG, "[synchronizeCapabilitiesAndNotes] Synchronize capabilities for " + localAccount.getAccountName()); synchronizeCapabilities(localAccount, new IResponseCallback<>() { @Override public void onSuccess(Void v) { Log.i(TAG, "[synchronizeCapabilitiesAndNotes] Synchronize notes for " + localAccount.getAccountName()); synchronizeNotes(localAccount, callback); synchronizeNotes(context, localAccount, callback); } @Override Loading Loading @@ -442,7 +443,7 @@ public class MainViewModel extends AndroidViewModel { /** * Updates the network status if necessary and pulls the latest notes of the given {@param localAccount} */ public void synchronizeNotes(@NonNull Account currentAccount, @NonNull IResponseCallback<Void> callback) { public void synchronizeNotes(Context context, @NonNull Account currentAccount, @NonNull IResponseCallback<Void> callback) { executor.submit(() -> { Log.v(TAG, "[synchronize] - currentAccount: " + currentAccount.getAccountName()); if (!repo.isSyncPossible()) { Loading @@ -450,6 +451,14 @@ public class MainViewModel extends AndroidViewModel { } if (repo.isSyncPossible()) { repo.scheduleSync(currentAccount, false); try { final var ssoAccount = AccountImporter.getSingleSignOnAccount(context, currentAccount.getAccountName()); CapabilitiesClient.getCapabilities(context, ssoAccount, null, ApiProvider.getInstance()); } catch (Throwable t) { Log_OC.e(TAG, t.getMessage()); } callback.onSuccess(null); } else { // Sync is not possible if (repo.isNetworkConnected() && repo.isSyncOnlyOnWifi()) { Loading app/src/main/java/it/niedermann/owncloud/notes/persistence/NotesRepository.java +0 −3 Original line number Diff line number Diff line Loading @@ -879,9 +879,6 @@ public class NotesRepository { if (isSyncPossible() && (!Boolean.TRUE.equals(syncActive.get(account.getId())) || onlyLocalChanges)) { syncActive.put(account.getId(), true); try { final var ssoAccount = AccountImporter.getSingleSignOnAccount(context, account.getAccountName()); CapabilitiesClient.getCapabilities(context,ssoAccount, null, ApiProvider.getInstance()); Log.d(TAG, "... starting now"); final NotesServerSyncTask syncTask = new NotesServerSyncTask(context, this, account, onlyLocalChanges, apiProvider) { @Override Loading Loading
app/src/main/java/it/niedermann/owncloud/notes/main/MainActivity.java +3 −3 Original line number Diff line number Diff line Loading @@ -286,7 +286,7 @@ public class MainActivity extends LockedActivity implements NoteClickListener, A .apply(RequestOptions.circleCropTransform()) .into(activityBinding.launchAccountSwitcher); mainViewModel.synchronizeNotes(nextAccount, new IResponseCallback<>() { mainViewModel.synchronizeNotes(this, nextAccount, new IResponseCallback<>() { @Override public void onSuccess(Void v) { Log.d(TAG, "Successfully synchronized notes for " + nextAccount.getAccountName()); Loading Loading @@ -376,7 +376,7 @@ public class MainActivity extends LockedActivity implements NoteClickListener, A try { // It is possible that after the deletion of the last account, this onResponse gets called before the ImportAccountActivity gets started. if (SingleAccountHelper.getCurrentSingleSignOnAccount(this) != null) { mainViewModel.synchronizeNotes(currentAccount, new IResponseCallback<>() { mainViewModel.synchronizeNotes(this, currentAccount, new IResponseCallback<>() { @Override public void onSuccess(Void v) { Log.d(TAG, "Successfully synchronized notes for " + currentAccount.getAccountName()); Loading Loading @@ -477,7 +477,7 @@ public class MainActivity extends LockedActivity implements NoteClickListener, A final var syncLiveData = mainViewModel.getCurrentAccount(); final Observer<Account> syncObserver = currentAccount -> { syncLiveData.removeObservers(this); mainViewModel.synchronizeCapabilitiesAndNotes(currentAccount, new IResponseCallback<>() { mainViewModel.synchronizeCapabilitiesAndNotes(this, currentAccount, new IResponseCallback<>() { @Override public void onSuccess(Void v) { Log.d(TAG, "Successfully synchronized capabilities and notes for " + currentAccount.getAccountName()); Loading
app/src/main/java/it/niedermann/owncloud/notes/main/MainViewModel.java +12 −3 Original line number Diff line number Diff line Loading @@ -44,6 +44,7 @@ import com.nextcloud.android.sso.exceptions.NextcloudFilesAppAccountNotFoundExce import com.nextcloud.android.sso.exceptions.NextcloudHttpRequestFailedException; import com.nextcloud.android.sso.exceptions.UnknownErrorException; import com.nextcloud.android.sso.helper.SingleAccountHelper; import com.owncloud.android.lib.common.utils.Log_OC; import java.util.ArrayList; import java.util.Collection; Loading Loading @@ -379,13 +380,13 @@ public class MainViewModel extends AndroidViewModel { return items; } public void synchronizeCapabilitiesAndNotes(@NonNull Account localAccount, @NonNull IResponseCallback<Void> callback) { public void synchronizeCapabilitiesAndNotes(Context context, @NonNull Account localAccount, @NonNull IResponseCallback<Void> callback) { Log.i(TAG, "[synchronizeCapabilitiesAndNotes] Synchronize capabilities for " + localAccount.getAccountName()); synchronizeCapabilities(localAccount, new IResponseCallback<>() { @Override public void onSuccess(Void v) { Log.i(TAG, "[synchronizeCapabilitiesAndNotes] Synchronize notes for " + localAccount.getAccountName()); synchronizeNotes(localAccount, callback); synchronizeNotes(context, localAccount, callback); } @Override Loading Loading @@ -442,7 +443,7 @@ public class MainViewModel extends AndroidViewModel { /** * Updates the network status if necessary and pulls the latest notes of the given {@param localAccount} */ public void synchronizeNotes(@NonNull Account currentAccount, @NonNull IResponseCallback<Void> callback) { public void synchronizeNotes(Context context, @NonNull Account currentAccount, @NonNull IResponseCallback<Void> callback) { executor.submit(() -> { Log.v(TAG, "[synchronize] - currentAccount: " + currentAccount.getAccountName()); if (!repo.isSyncPossible()) { Loading @@ -450,6 +451,14 @@ public class MainViewModel extends AndroidViewModel { } if (repo.isSyncPossible()) { repo.scheduleSync(currentAccount, false); try { final var ssoAccount = AccountImporter.getSingleSignOnAccount(context, currentAccount.getAccountName()); CapabilitiesClient.getCapabilities(context, ssoAccount, null, ApiProvider.getInstance()); } catch (Throwable t) { Log_OC.e(TAG, t.getMessage()); } callback.onSuccess(null); } else { // Sync is not possible if (repo.isNetworkConnected() && repo.isSyncOnlyOnWifi()) { Loading
app/src/main/java/it/niedermann/owncloud/notes/persistence/NotesRepository.java +0 −3 Original line number Diff line number Diff line Loading @@ -879,9 +879,6 @@ public class NotesRepository { if (isSyncPossible() && (!Boolean.TRUE.equals(syncActive.get(account.getId())) || onlyLocalChanges)) { syncActive.put(account.getId(), true); try { final var ssoAccount = AccountImporter.getSingleSignOnAccount(context, account.getAccountName()); CapabilitiesClient.getCapabilities(context,ssoAccount, null, ApiProvider.getInstance()); Log.d(TAG, "... starting now"); final NotesServerSyncTask syncTask = new NotesServerSyncTask(context, this, account, onlyLocalChanges, apiProvider) { @Override Loading