Build 1.0_r1(from source)

android.content
Class ContentQueryMap

java.lang.Object
  extended by java.util.Observable
      extended by android.content.ContentQueryMap
Direct Known Subclasses:
Im.ProviderSettings.QueryMap, Settings.Gservices.QueryMap, Sync.Active.QueryMap, Sync.Pending.QueryMap, Sync.Settings.QueryMap, Sync.Status.QueryMap

public class ContentQueryMap
extends Observable

Caches the contents of a cursor into a Map of String->ContentValues and optionally keeps the cache fresh by registering for updates on the content backing the cursor. The column of the database that is to be used as the key of the map is user-configurable, and the ContentValues contains all columns other than the one that is designated the key.

The cursor data is accessed by row key and column name via getValue().


Constructor Summary
ContentQueryMap(Cursor cursor, String columnNameOfKey, boolean keepUpdated, Handler handlerForUpdateNotifications)
          Creates a ContentQueryMap that caches the content backing the cursor
 
Method Summary
 void close()
           
protected  void finalize()
          Called by the virtual machine when there are no longer any (non-weak) references to the receiver.
 Map<String,ContentValues> getRows()
           
 ContentValues getValues(String rowName)
          Access the ContentValues for the row specified by rowName
 void requery()
          Requeries the cursor and reads the contents into the cache
 void setKeepUpdated(boolean keepUpdated)
          Change whether or not the ContentQueryMap will register with the cursor's ContentProvider for change notifications.
 
Methods inherited from class java.util.Observable
addObserver, clearChanged, countObservers, deleteObserver, deleteObservers, hasChanged, notifyObservers, notifyObservers, setChanged
 
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ContentQueryMap

public ContentQueryMap(Cursor cursor,
                       String columnNameOfKey,
                       boolean keepUpdated,
                       Handler handlerForUpdateNotifications)
Creates a ContentQueryMap that caches the content backing the cursor

Parameters:
cursor - the cursor whose contents should be cached
columnNameOfKey - the column that is to be used as the key of the values map
keepUpdated - true if the cursor's ContentProvider should be monitored for changes and the map updated when changes do occur
handlerForUpdateNotifications - the Handler that should be used to receive notifications of changes (if requested). Normally you pass null here, but if you know that the thread that is creating this isn't a thread that can receive messages then you can create your own handler and use that here.
Method Detail

setKeepUpdated

public void setKeepUpdated(boolean keepUpdated)
Change whether or not the ContentQueryMap will register with the cursor's ContentProvider for change notifications. If you use a ContentQueryMap in an activity you should call this with false in onPause(), which means you need to call it with true in onResume() if want it to be kept updated.

Parameters:
keepUpdated - if true the ContentQueryMap should be registered with the cursor's ContentProvider, false otherwise

getValues

public ContentValues getValues(String rowName)
Access the ContentValues for the row specified by rowName

Parameters:
rowName - which row to read
Returns:
the ContentValues for the row, or null if the row wasn't present in the cursor

requery

public void requery()
Requeries the cursor and reads the contents into the cache


getRows

public Map<String,ContentValues> getRows()

close

public void close()

finalize

protected void finalize()
                 throws Throwable
Description copied from class: Object
Called by the virtual machine when there are no longer any (non-weak) references to the receiver. Subclasses can use this facility to guarantee that any associated resources are cleaned up before the receiver is garbage collected. Uncaught exceptions which are thrown during the running of the method cause it to terminate immediately, but are otherwise ignored.

Note: The virtual machine assumes that the implementation in class Object is empty.

Overrides:
finalize in class Object
Throws:
Throwable - The virtual machine ignores any exceptions which are thrown during finalization.

Build 1.0_r1(from source)

Please submit a feedback, bug or feature