mercredi 13 janvier 2016

How to know when SQLite query is finished

Ok, I've got this Retrofit Call that receives a list of objects and insert the into a local SQLite database. I want to display a message saying that the operation was successful with a Ok button that when pressed opens a new activity.

How do I check if my Query has finished so I can show the message?

final ContactApi contactApi = retrofit.create(ContactApi.class);

Call<List<Contact>> callContact = contactApi.getContact(token);
callContact.enqueue(new Callback<List<Contact>>() {
    @Override
     public void onResponse(Response<List<Contact>> response, Retrofit retrofit) {

        List<Contact> contactList = response.body();

        if (contactList != null) {

            try {

                DBHelper dbHelper = new DBHelper(TokenActivity.this, token);
                SQLiteDatabase conn = dbHelper.getWritableDatabase();
                RepoContact repocontact = new RepoContact(conn);

                // Inserts each contact into the database
                    for (Contatc c : contactList) {

                        repositorioCadastro.inserirCadastro(c);

                        Log.i("ACTTOKEN", "Contact insert ID: " + c.getId());

                    }

            } catch (SQLiteException e) {
             Log.i("ACTTOKEN", "Faillure on insert: " + e.getMessage());
            }

}

Aucun commentaire:

Enregistrer un commentaire