Search in sources :

Example 1 with DatabaseConnectivity

use of com.dailystudio.dataobject.database.DatabaseConnectivity in project devbricks by dailystudio.

the class DatabaseCursorLoader method loadInBackground.

@Override
public Cursor loadInBackground() {
    final Class<? extends DatabaseObject> objectClass = getObjectClass();
    if (objectClass == null) {
        return null;
    }
    final DatabaseConnectivity connectivity = getDatabaseConnectivity(objectClass);
    final Query query = getQuery(objectClass);
    if (query == null) {
        return null;
    }
    final Class<? extends DatabaseObject> projectionClass = getProjectionClass();
    Cursor cursor = null;
    if (projectionClass == null) {
        cursor = connectivity.queryCursor(query);
    } else {
        cursor = connectivity.queryCursor(query, projectionClass);
    }
    if (cursor != null) {
        cursor.getCount();
        cursor.registerContentObserver(mObserver);
    }
    return cursor;
}
Also used : Query(com.dailystudio.dataobject.query.Query) Cursor(android.database.Cursor) DatabaseConnectivity(com.dailystudio.dataobject.database.DatabaseConnectivity)

Example 2 with DatabaseConnectivity

use of com.dailystudio.dataobject.database.DatabaseConnectivity in project devbricks by dailystudio.

the class TimeCapsuleDatabaseWriter method delete.

public int delete(T object) {
    if (object == null) {
        return 0;
    }
    final DatabaseConnectivity connectivity = getConnectivity();
    if (connectivity == null) {
        return 0;
    }
    Query query = getQuery();
    ExpressionToken token = TimeCapsule.COLUMN_ID.eq(object.getId());
    query.setSelection(token);
    return connectivity.delete(query);
}
Also used : Query(com.dailystudio.dataobject.query.Query) ExpressionToken(com.dailystudio.dataobject.query.ExpressionToken) DatabaseConnectivity(com.dailystudio.dataobject.database.DatabaseConnectivity)

Example 3 with DatabaseConnectivity

use of com.dailystudio.dataobject.database.DatabaseConnectivity in project devbricks by dailystudio.

the class DatabaseReader method query.

@SuppressWarnings("unchecked")
public List<T> query(Query query) {
    final DatabaseConnectivity connectivity = getConnectivity();
    if (connectivity == null) {
        return null;
    }
    List<DatabaseObject> objects = connectivity.query(query, null);
    if (objects == null || objects.size() < 0) {
        return null;
    }
    return (List<T>) objects;
}
Also used : DatabaseObject(com.dailystudio.dataobject.DatabaseObject) List(java.util.List) DatabaseConnectivity(com.dailystudio.dataobject.database.DatabaseConnectivity)

Example 4 with DatabaseConnectivity

use of com.dailystudio.dataobject.database.DatabaseConnectivity in project devbricks by dailystudio.

the class ConvertedDatabaseObjectsAsyncTask method doInBackground.

@SuppressWarnings("unchecked")
@Override
protected List<C> doInBackground(Void... params) {
    final Class<D> objectClass = getObjectClass();
    if (objectClass == null) {
        return null;
    }
    final DatabaseConnectivity connectivity = getDatabaseConnectivity(objectClass);
    if (connectivity == null) {
        return null;
    }
    final Query query = getQuery(objectClass);
    if (query == null) {
        return null;
    }
    final Class<P> projectionClass = getProjectionClass();
    List<DatabaseObject> data = null;
    if (projectionClass == null) {
        data = connectivity.query(query);
    } else {
        data = connectivity.query(query, projectionClass);
    }
    return (List<C>) data;
}
Also used : Query(com.dailystudio.dataobject.query.Query) DatabaseObject(com.dailystudio.dataobject.DatabaseObject) List(java.util.List) DatabaseConnectivity(com.dailystudio.dataobject.database.DatabaseConnectivity)

Example 5 with DatabaseConnectivity

use of com.dailystudio.dataobject.database.DatabaseConnectivity in project devbricks by dailystudio.

the class ConvertedDatabaseObjectsLoader method loadInBackground.

@SuppressWarnings("unchecked")
@Override
public List<C> loadInBackground() {
    if (mObserver != null) {
        getContext().getContentResolver().unregisterContentObserver(mObserver);
    }
    final Class<D> objectClass = getObjectClass();
    if (objectClass == null) {
        return null;
    }
    final DatabaseConnectivity connectivity = getDatabaseConnectivity(objectClass);
    if (connectivity == null) {
        return null;
    }
    final Query query = getQuery(objectClass);
    if (query == null) {
        return null;
    }
    final Class<? extends DatabaseObject> projectionClass = getProjectionClass();
    List<DatabaseObject> data = null;
    if (projectionClass == null) {
        data = connectivity.query(query);
    } else {
        data = connectivity.query(query, projectionClass);
    }
    Uri uri = connectivity.getDatabaseObserverUri();
    if (uri != null) {
        ContentResolver cr = getContext().getContentResolver();
        cr.registerContentObserver(uri, true, mObserver);
    }
    return (projectionClass == null ? convertRawObjects((List<D>) data) : convertProjectedObjects((List<P>) data));
}
Also used : Query(com.dailystudio.dataobject.query.Query) DatabaseObject(com.dailystudio.dataobject.DatabaseObject) DatabaseConnectivity(com.dailystudio.dataobject.database.DatabaseConnectivity) Uri(android.net.Uri) ContentResolver(android.content.ContentResolver)

Aggregations

DatabaseConnectivity (com.dailystudio.dataobject.database.DatabaseConnectivity)6 Query (com.dailystudio.dataobject.query.Query)5 DatabaseObject (com.dailystudio.dataobject.DatabaseObject)3 ExpressionToken (com.dailystudio.dataobject.query.ExpressionToken)2 List (java.util.List)2 ContentResolver (android.content.ContentResolver)1 Cursor (android.database.Cursor)1 Uri (android.net.Uri)1