package com.google.mcommerce.sample.android.chapter07.sqlite;
import android.content.ContentValues;
import android.content.Context;
import android.database.Cursor;
import android.database.SQLException;
import android.database.sqlite.SQLiteDatabase;
public class ContactsDataSource {
// Database fields
private SQLiteDatabase database;
private MySQLiteHelper dbHelper;
public static final String[] allColumns = { MySQLiteHelper.COLUMN_ID,
MySQLiteHelper.COLUMN_NAME, MySQLiteHelper.COLUMN_EMAIL };
public ContactsDataSource(Context context) {
dbHelper = new MySQLiteHelper(context);
}
public void open() throws SQLException {
database = dbHelper.getWritableDatabase();
}
public void close() {
dbHelper.close();
}
public Cursor insertContact(String name, String email) {
ContentValues values = new ContentValues();
values.put(MySQLiteHelper.COLUMN_NAME, name);
values.put(MySQLiteHelper.COLUMN_EMAIL, email);
database.insert(MySQLiteHelper.TABLE_CONTACTS, null, values);
Cursor cursor = getAllContacts();
return cursor;
}
public Cursor deleteContact(Cursor cursor) {
long id = cursor.getLong(0);
database.delete(MySQLiteHelper.TABLE_CONTACTS, MySQLiteHelper.COLUMN_ID
+ " = " + id, null);
cursor = getAllContacts();
return cursor;
}
public Cursor getAllContacts() {
Cursor cursor = database.query(MySQLiteHelper.TABLE_CONTACTS,
allColumns, null, null, null, null, null);
return cursor;
}
}