package dsq.thedroid.db;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
public class DefaultDbAccessRead implements DbAccessRead {
private static final String NO_SELECTION = null;
private static final String[] NO_SELECTION_ARGS = null;
private static final String NO_GROUP_BY = null;
private static final String NO_HAVING = null;
private static final String NO_ORDER_BY = null;
private static final String NO_LIMIT = null;
public Cursor query(SQLiteDatabase db, String sql, String[] bindings) {
return db.rawQuery(sql, bindings);
}
public Cursor fetch(SQLiteDatabase db, String tableName, String[] columns, String whereClause, String[] whereArgs) {
return db.query(true, tableName, columns, whereClause, whereArgs, NO_GROUP_BY, NO_HAVING, NO_ORDER_BY, NO_LIMIT);
}
public Cursor fetchById(SQLiteDatabase db, String tableName, String[] columns, long id) {
Cursor cursor = fetch(db, tableName, columns, "_id = ?", new String[] { "" + id });
if (cursor != null) cursor.moveToFirst();
return cursor;
}
public Cursor fetchAll(SQLiteDatabase db, String tableName, String[] columns) {
return db.query(tableName, columns,
NO_SELECTION, NO_SELECTION_ARGS, NO_GROUP_BY, NO_HAVING, NO_ORDER_BY, NO_LIMIT);
}
public boolean contains(SQLiteDatabase db, String tableName, String[] columns, String whereClause, String[] whereValues) {
Cursor cursor = fetch(db, tableName, columns, whereClause, whereValues);
boolean success = cursor.moveToFirst();
cursor.close();
return success;
}
}