mirror of
https://code.briarproject.org/briar/briar.git
synced 2026-02-12 18:59:06 +01:00
Fix dependency problems after refactor
This commit is contained in:
@@ -174,6 +174,14 @@
|
||||
android:value="org.briarproject.briar.android.account.NewOrRecoverActivity" />
|
||||
</activity>
|
||||
|
||||
<activity
|
||||
android:name="org.briarproject.briar.android.socialbackup.recover.RestoreAccountActivity"
|
||||
android:label="@string/activity_name_restore_account"
|
||||
android:parentActivityName="org.briarproject.briar.android.socialbackup.recover.OwnerReturnShardActivity">
|
||||
<meta-data
|
||||
android:name="android.support.PARENT_ACTIVITY"
|
||||
android:value="org.briarproject.briar.android.socialbackup.recover.OwnerReturnShardActivity" />
|
||||
</activity>
|
||||
|
||||
<activity
|
||||
android:name="org.briarproject.briar.android.conversation.ConversationActivity"
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
package org.briarproject.briar.android.socialbackup.recover;
|
||||
|
||||
import android.content.Intent;
|
||||
import android.os.Bundle;
|
||||
import android.view.MenuItem;
|
||||
import android.widget.Toast;
|
||||
@@ -23,6 +24,10 @@ import javax.inject.Inject;
|
||||
import androidx.fragment.app.FragmentManager;
|
||||
import androidx.lifecycle.ViewModelProvider;
|
||||
|
||||
import static android.content.Intent.FLAG_ACTIVITY_CLEAR_TASK;
|
||||
import static android.content.Intent.FLAG_ACTIVITY_CLEAR_TOP;
|
||||
import static android.content.Intent.FLAG_ACTIVITY_NEW_TASK;
|
||||
import static android.content.Intent.FLAG_ACTIVITY_TASK_ON_HOME;
|
||||
import static java.util.logging.Logger.getLogger;
|
||||
|
||||
@MethodsNotNullByDefault
|
||||
@@ -152,6 +157,11 @@ public class OwnerReturnShardActivity extends BaseActivity
|
||||
"Account recovered! " + version,
|
||||
Toast.LENGTH_LONG).show();
|
||||
finish();
|
||||
// TODO Success fragment
|
||||
Intent i = new Intent(this, RestoreAccountActivity.class);
|
||||
i.addFlags(FLAG_ACTIVITY_NEW_TASK | FLAG_ACTIVITY_CLEAR_TOP |
|
||||
FLAG_ACTIVITY_CLEAR_TASK | FLAG_ACTIVITY_TASK_ON_HOME);
|
||||
startActivity(i);
|
||||
return;
|
||||
}
|
||||
onBackPressed();
|
||||
|
||||
@@ -716,7 +716,7 @@
|
||||
|
||||
<!-- activity names -->
|
||||
<string name="activity_name_distributed_backup">Social Backup</string>
|
||||
<string name="activity_name_old_distributed_backup">Old Social Backup</string>
|
||||
<string name="activity_name_restore_account">Restore Account</string>
|
||||
|
||||
<!-- conversation -->
|
||||
<string name="social_backup_shard_received">You have received a social backup shard.</string>
|
||||
|
||||
@@ -12,14 +12,14 @@ import javax.annotation.concurrent.Immutable;
|
||||
|
||||
@Immutable
|
||||
@NotNullByDefault
|
||||
class ContactData {
|
||||
public class ContactData {
|
||||
|
||||
private final Contact contact;
|
||||
private final Map<TransportId, TransportProperties> properties;
|
||||
@Nullable
|
||||
private final Shard shard;
|
||||
|
||||
ContactData(Contact contact,
|
||||
public ContactData(Contact contact,
|
||||
Map<TransportId, TransportProperties> properties,
|
||||
@Nullable Shard shard) {
|
||||
this.contact = contact;
|
||||
|
||||
@@ -9,7 +9,7 @@ public class SocialBackup {
|
||||
private List<ContactData> contacts;
|
||||
private int version;
|
||||
|
||||
SocialBackup (Identity identity, List<ContactData> contacts, int version) {
|
||||
public SocialBackup (Identity identity, List<ContactData> contacts, int version) {
|
||||
this.identity = identity;
|
||||
this.contacts = contacts;
|
||||
this.version = version;
|
||||
|
||||
@@ -3,12 +3,14 @@ package org.briarproject.briar.socialbackup;
|
||||
import org.briarproject.bramble.api.crypto.SecretKey;
|
||||
import org.briarproject.bramble.api.identity.Identity;
|
||||
import org.briarproject.bramble.api.nullsafety.NotNullByDefault;
|
||||
import org.briarproject.briar.api.socialbackup.BackupPayload;
|
||||
import org.briarproject.briar.api.socialbackup.ContactData;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@NotNullByDefault
|
||||
interface BackupPayloadEncoder {
|
||||
|
||||
org.briarproject.briar.api.socialbackup.BackupPayload encodeBackupPayload(SecretKey secret, Identity identity,
|
||||
List<org.briarproject.briar.api.socialbackup.ContactData> contactData, int version);
|
||||
BackupPayload encodeBackupPayload(SecretKey secret, Identity identity,
|
||||
List<ContactData> contactData, int version);
|
||||
}
|
||||
|
||||
@@ -52,6 +52,7 @@ import org.briarproject.briar.api.socialbackup.ShardMessageHeader;
|
||||
import org.briarproject.briar.api.socialbackup.ShardReceivedEvent;
|
||||
import org.briarproject.briar.api.socialbackup.SocialBackupManager;
|
||||
import org.briarproject.briar.client.ConversationClientImpl;
|
||||
import org.briarproject.briar.api.socialbackup.ContactData;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collection;
|
||||
@@ -193,12 +194,12 @@ class SocialBackupManagerImpl extends ConversationClientImpl
|
||||
// Add the shard to our backup, if any
|
||||
if (localBackupExists(txn)) {
|
||||
Shard shard = messageParser.parseShardMessage(body);
|
||||
List<org.briarproject.briar.api.socialbackup.ContactData> contactData = loadContactData(txn);
|
||||
ListIterator<org.briarproject.briar.api.socialbackup.ContactData> it = contactData.listIterator();
|
||||
List<ContactData> contactData = loadContactData(txn);
|
||||
ListIterator<ContactData> it = contactData.listIterator();
|
||||
while (it.hasNext()) {
|
||||
org.briarproject.briar.api.socialbackup.ContactData cd = it.next();
|
||||
ContactData cd = it.next();
|
||||
if (cd.getContact().getId().equals(contactId)) {
|
||||
it.set(new org.briarproject.briar.api.socialbackup.ContactData(cd.getContact(),
|
||||
it.set(new ContactData(cd.getContact(),
|
||||
cd.getProperties(), shard));
|
||||
updateBackup(txn, contactData);
|
||||
break;
|
||||
|
||||
@@ -61,7 +61,7 @@ public class RestoreAccountImpl implements RestoreAccount {
|
||||
public int recover() throws FormatException, GeneralSecurityException {
|
||||
if (secretKey == null) throw new GeneralSecurityException();
|
||||
// Find backup with highest version number
|
||||
int highestVersion = 0;
|
||||
int highestVersion = -1;
|
||||
for (ReturnShardPayload returnShardPayload : recoveredShards) {
|
||||
BackupPayload backupPayload = returnShardPayload.getBackupPayload();
|
||||
SocialBackup s = backupPayloadDecoder.decodeBackupPayload(secretKey, backupPayload);
|
||||
|
||||
Reference in New Issue
Block a user