Signed-off-by: alperozturk <alper_ozturk@proton.me>
This commit is contained in:
alperozturk
2025-06-25 14:37:38 +02:00
committed by Alper Öztürk
parent a6a60c5e8e
commit fe83ba6389
3 changed files with 21 additions and 3 deletions

View File

@ -43,6 +43,10 @@ public class CapabilitiesClient {
} else {
Log.w(TAG, "Response headers of capabilities are null");
}
final var repository = NotesRepository.getInstance(context);
repository.insertCapabilities(capabilities);
return capabilities;
} catch (RuntimeException e) {
final var cause = e.getCause();

View File

@ -331,6 +331,10 @@ public class NotesRepository {
db.getAccountDao().updateCapabilitiesETag(id, capabilitiesETag);
}
public void insertCapabilities(Capabilities capabilities) {
db.getCapabilitiesDao().insert(capabilities);
}
public void updateModified(long id, long modified) {
db.getAccountDao().updateModified(id, modified);
}
@ -339,7 +343,6 @@ public class NotesRepository {
db.getAccountDao().updateDirectEditingAvailable(id, available);
}
// Notes
public LiveData<Note> getNoteById$(long id) {
@ -876,6 +879,9 @@ 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
@ -920,7 +926,7 @@ public class NotesRepository {
callbacksPull.put(account.getId(), new ArrayList<>());
}
syncExecutor.submit(syncTask);
} catch (NextcloudFilesAppAccountNotFoundException e) {
} catch (Throwable e) {
Log.e(TAG, "... Could not find " + SingleSignOnAccount.class.getSimpleName() + " for account name " + account.getAccountName());
e.printStackTrace();
}

View File

@ -19,6 +19,7 @@ import android.os.Bundle;
import android.provider.ContactsContract;
import android.text.InputType;
import android.text.TextUtils;
import android.util.Log;
import android.view.View;
import android.view.ViewGroup;
import android.view.inputmethod.EditorInfo;
@ -149,9 +150,16 @@ public class NoteShareActivity extends BrandedActivity implements ShareeListAdap
executorService.submit(() -> {
try {
final var ssoAcc = SingleAccountHelper.getCurrentSingleSignOnAccount(NoteShareActivity.this);
Log.i(TAG, "SSOAccount created");
repository = new ShareRepository(NoteShareActivity.this, ssoAcc);
Log.i(TAG, "ShareRepository is created");
capabilities = repository.getCapabilities();
Log.i(TAG, "Capabilities are fetched");
repository.getSharesForNotesAndSaveShareEntities();
Log.i(TAG, "Notes share entities are fetched");
runOnUiThread(() -> {
binding.searchContainer.setVisibility(View.VISIBLE);
@ -171,7 +179,7 @@ public class NoteShareActivity extends BrandedActivity implements ShareeListAdap
binding.loadingLayout.setVisibility(View.GONE);
});
} catch (Exception e) {
throw new RuntimeException(e);
Log.e(TAG, "Exception at NoteShareActivity.init: " + e);
}
});
}