Android Open Source - InMemoryDb Async Query Handler






From Project

Back to project page InMemoryDb.

License

The source code is released under:

Apache License

If you think the Android project InMemoryDb listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

package org.gawst.asyncdb;
/*from ww  w  . j  av  a 2s. c  o m*/
import android.content.ContentResolver;
import android.content.ContentValues;
import android.database.Cursor;
import android.net.Uri;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;

import org.gawst.asyncdb.source.ContentProviderDataSource;
import org.gawst.asyncdb.source.DatabaseElementHandler;
import org.gawst.asyncdb.source.DatabaseSource;

/**
 * Class to mimick exactly the API of Android's {@link android.content.AsyncQueryHandler AsyncQueryHandler} with a {@link org.gawst.asyncdb.AsynchronousDbHelper} source
 *
 * @author Created by robUx4 on 09/01/2015.
 * @see AsyncDbHelperHandler AsyncDbHelperHandler for a cleaner version
 */
public class AsyncQueryHandler extends AsyncDatabaseHandler<Uri, Uri> {

  /**
   * Constructor similar to Android's {@link android.content.AsyncQueryHandler#AsyncQueryHandler(android.content.ContentResolver) AsyncQueryHandler()}
   * using a fixed {@link android.net.Uri} to access data.
   *
   * @param contentResolver
   * @param contentProviderUri
   */
  public AsyncQueryHandler(ContentResolver contentResolver, Uri contentProviderUri) {
    this(new ContentProviderDataSource<Uri>(contentResolver, contentProviderUri, new DatabaseElementHandler<Uri>() {
      @Override
      public String getItemSelectClause(@Nullable Uri itemToSelect) {
        throw new AssertionError("not supported");
      }

      @Override
      public String[] getItemSelectArgs(@NonNull Uri itemToSelect) {
        throw new AssertionError("not supported");
      }

      @NonNull
      @Override
      public Uri cursorToItem(@NonNull Cursor cursor) throws InvalidDbEntry {
        throw new AssertionError("not supported");
      }
    }));
  }

  /**
   * Constructor.
   *
   * @param dataSource Custom {@link org.gawst.asyncdb.source.ContentProviderDataSource} source.
   */
  public AsyncQueryHandler(ContentProviderDataSource<Uri> dataSource) {
    this(new AsynchronousDatabase<Uri, Uri>(dataSource, dataSource.contentProviderUri.getAuthority() + dataSource.contentProviderUri.getPath(), null) {
      @Override
      protected ContentValues getValuesFromData(Uri data) throws RuntimeException {
        throw new AssertionError("not supported");
      }
    }, dataSource);
  }

  /**
   * Constructor.
   *
   * @param asynchronousDbHelper The {@link org.gawst.asyncdb.AsynchronousDbHelper} database to work with.
   * @param dataSource           The {@link org.gawst.asyncdb.source.DatabaseSource} source used by the {@code asynchronousDbHelper}.
   */
  public AsyncQueryHandler(AsynchronousDbHelper<?, Uri> asynchronousDbHelper, DatabaseSource<Uri, Uri> dataSource) {
    super(asynchronousDbHelper, dataSource);
  }
}




Java Source Code List

org.gawst.asyncdb.AsyncDatabaseHandler.java
org.gawst.asyncdb.AsyncDbHelperHandler.java
org.gawst.asyncdb.AsyncQueryHandler.java
org.gawst.asyncdb.AsynchronousDatabase.java
org.gawst.asyncdb.AsynchronousDbErrorHandler.java
org.gawst.asyncdb.AsynchronousDbHelper.java
org.gawst.asyncdb.AsynchronousDbOperation.java
org.gawst.asyncdb.DataSource.java
org.gawst.asyncdb.InMemoryDbArrayList.java
org.gawst.asyncdb.InMemoryDbCopyOnWriteArrayList.java
org.gawst.asyncdb.InMemoryDbList.java
org.gawst.asyncdb.InMemoryDbListener.java
org.gawst.asyncdb.InMemoryDbMap.java
org.gawst.asyncdb.InMemoryDbSet.java
org.gawst.asyncdb.InMemoryDbTreeSet.java
org.gawst.asyncdb.InMemoryHashmapDb.java
org.gawst.asyncdb.InMemoryLruCache.java
org.gawst.asyncdb.InvalidDbEntry.java
org.gawst.asyncdb.InvalidEntry.java
org.gawst.asyncdb.LogManager.java
org.gawst.asyncdb.Logger.java
org.gawst.asyncdb.LruCache.java
org.gawst.asyncdb.MapDataSource.java
org.gawst.asyncdb.MapDatabaseElementHandler.java
org.gawst.asyncdb.MapEntry.java
org.gawst.asyncdb.adapter.InMemoryArrayListAdapter.java
org.gawst.asyncdb.adapter.InMemoryFilteredAdapter.java
org.gawst.asyncdb.adapter.InMemoryFilteredListAdapter.java
org.gawst.asyncdb.adapter.InMemoryFilteredTreeAdapter.java
org.gawst.asyncdb.adapter.InMemoryTreeSetAdapter.java
org.gawst.asyncdb.adapter.UIHandler.java
org.gawst.asyncdb.purge.DatabasePurgerMaxDate.java
org.gawst.asyncdb.purge.DatabaseSourcePurgerMax.java
org.gawst.asyncdb.purge.DatabaseSourcePurger.java
org.gawst.asyncdb.purge.PurgeHandler.java
org.gawst.asyncdb.source.ContentProviderDataSource.java
org.gawst.asyncdb.source.CursorDataSource.java
org.gawst.asyncdb.source.DatabaseElementHandler.java
org.gawst.asyncdb.source.DatabaseSource.java
org.gawst.asyncdb.source.SqliteDataSource.java
org.gawst.asyncdb.source.SqliteMapDataSource.java
org.gawst.asyncdb.source.typed.TypedContentProviderDataSource.java
org.gawst.asyncdb.source.typed.TypedCursorDataSource.java
org.gawst.asyncdb.source.typed.TypedDatabaseElementHandler.java
org.gawst.asyncdb.source.typed.TypedDatabaseSource.java
org.gawst.asyncdb.source.typed.TypedSqliteDataSource.java
org.gawst.asyncdb.source.typed.TypedSqliteMapDataSource.java