Add the new contact to the DB when the invitation process completes.

This commit is contained in:
akwizgran
2013-02-18 17:47:34 +00:00
parent b8cf58c426
commit 00c0729f10

View File

@@ -1,7 +1,15 @@
package net.sf.briar.android.invitation;
import static java.util.logging.Level.WARNING;
import java.util.concurrent.Executor;
import java.util.logging.Logger;
import net.sf.briar.api.android.ReferenceManager;
import net.sf.briar.api.crypto.CryptoComponent;
import net.sf.briar.api.db.DatabaseComponent;
import net.sf.briar.api.db.DatabaseExecutor;
import net.sf.briar.api.db.DbException;
import net.sf.briar.api.invitation.InvitationListener;
import net.sf.briar.api.invitation.InvitationState;
import net.sf.briar.api.invitation.InvitationTask;
@@ -14,7 +22,12 @@ import com.google.inject.Inject;
public class AddContactActivity extends RoboActivity
implements InvitationListener {
private static final Logger LOG =
Logger.getLogger(AddContactActivity.class.getName());
@Inject private CryptoComponent crypto;
@Inject private DatabaseComponent db;
@Inject @DatabaseExecutor private Executor dbExecutor;
@Inject private InvitationTaskFactory invitationTaskFactory;
@Inject private ReferenceManager referenceManager;
@@ -191,6 +204,20 @@ implements InvitationListener {
}
}
void addContactAndFinish(final String nickname) {
dbExecutor.execute(new Runnable() {
public void run() {
try {
db.addContact(nickname);
} catch(DbException e) {
if(LOG.isLoggable(WARNING))
LOG.log(WARNING, e.toString(), e);
}
}
});
finish();
}
public void connectionSucceeded(final int localCode, final int remoteCode) {
runOnUiThread(new Runnable() {
public void run() {