public abstract class AbstractDao<DbObject>
extends java.lang.Object
| Modifier and Type | Field and Description |
|---|---|
static java.lang.String |
ID |
protected DatabaseTransformer<DbObject> |
mTransformer |
protected static DatabaseHelper |
sDatabaseHelper |
| Modifier | Constructor and Description |
|---|---|
protected |
AbstractDao(DatabaseTransformer<DbObject> transformer) |
| Modifier and Type | Method and Description |
|---|---|
boolean |
add(java.util.Collection<DbObject> entities) |
boolean |
add(DbObject entity) |
boolean |
add(DbObject[] entities) |
boolean |
addOrReplace(java.util.Collection<DbObject> entities) |
boolean |
addOrReplace(DbObject entity) |
boolean |
addOrReplace(DbObject[] entities) |
static void |
cancelTransaction()
Cancels transaction
|
static void |
closeDatabase() |
protected java.util.List<DbObject> |
convertCursor(SqlCursor dbResult)
Converts multiple results into list
|
long |
count(java.lang.String whereClause,
java.lang.String... parameters)
Counts rows
|
boolean |
delete(DbObject entity)
Removes entity from database if implements LocalIdentifiable
|
protected int |
delete(java.lang.String whereClause,
java.lang.String... arguments) |
int |
deleteAll()
Clears table
|
static void |
endTransaction()
|
java.util.List<DbObject> |
getAll() |
DbObject |
getById(long entityId)
Returns entity that contains this key
|
protected java.util.List<DbObject> |
getList(java.lang.String selection,
java.lang.String... selectionArguments)
Abstract list query that helps create queries
|
protected DbObject |
getOneResult(java.lang.String selection,
java.lang.String... selectionArguments)
Abstract one result query
|
abstract java.lang.String |
getTableName() |
void |
onPostCreate(android.database.sqlite.SQLiteDatabase db)
Invoked after all
onTableCreate(SQLiteDatabase) methods are invoked |
abstract void |
onTableCreate(android.database.sqlite.SQLiteDatabase db)
Method is used to create necessary tables for this dao.
|
protected android.content.ContentValues |
prepareValues(DbObject entity) |
static void |
setDatabaseConfiguration(android.app.Application context,
DatabaseConfiguration configuration) |
static void |
startTransaction()
Applies to ALL database operations - invariant to used DAO
|
protected int |
update(android.content.ContentValues values,
java.lang.String whereClause,
java.lang.String... arguments) |
boolean |
update(DbObject entity)
Updates entity in database
|
public static final java.lang.String ID
protected static DatabaseHelper sDatabaseHelper
protected DatabaseTransformer<DbObject> mTransformer
protected AbstractDao(DatabaseTransformer<DbObject> transformer)
public static void setDatabaseConfiguration(android.app.Application context,
DatabaseConfiguration configuration)
public static void closeDatabase()
public abstract java.lang.String getTableName()
public abstract void onTableCreate(android.database.sqlite.SQLiteDatabase db)
public void onPostCreate(android.database.sqlite.SQLiteDatabase db)
onTableCreate(SQLiteDatabase) methods are invokedpublic DbObject getById(long entityId)
entityId - key to find entitypublic boolean add(DbObject entity)
public boolean add(DbObject[] entities)
public boolean add(java.util.Collection<DbObject> entities)
public boolean addOrReplace(DbObject entity)
public boolean addOrReplace(DbObject[] entities)
public boolean addOrReplace(java.util.Collection<DbObject> entities)
protected android.content.ContentValues prepareValues(DbObject entity)
public boolean update(DbObject entity)
entity - objects that implements LocalIdentifiableprotected int update(android.content.ContentValues values,
java.lang.String whereClause,
java.lang.String... arguments)
public boolean delete(DbObject entity)
entity - objects that implements LocalIdentifiableprotected int delete(java.lang.String whereClause,
java.lang.String... arguments)
public java.util.List<DbObject> getAll()
public int deleteAll()
public long count(java.lang.String whereClause,
java.lang.String... parameters)
public static void startTransaction()
public static void cancelTransaction()
public static void endTransaction()
protected DbObject getOneResult(java.lang.String selection, java.lang.String... selectionArguments)
selection - WHERE clause excluding WHERE keywordselectionArguments - parameters to be bindprotected java.util.List<DbObject> getList(java.lang.String selection, java.lang.String... selectionArguments)
selection - WHERE clause excluding WHERE keyword. Pass null for all rowsselectionArguments - parameters to be bound