public class

OfflineTable

extends Object
java.lang.Object
   ↳ com.kinvey.android.offline.OfflineTable<T extends com.google.api.client.json.GenericJson>

Class Overview

This class manages the necessary tables for offline to function associated with one specific AsyncAppData collection.

Schema-less entities are stored in an `offline_MyCollection` table, which has two columns-- one for the _id of the entity and one for the json representation of the entity. `queue_MyCollection` maintains an ordered list of queued requests, so that they be retrieved and executed when a connection is restored. The queue associates an HTTP Verb with an _id of the entity to perform it on. Another table is used to support queries, mapping the query string to a list of returned _ids.

Summary

Constants
String PREFIX_OFFLINE
String PREFIX_QUERY
String PREFIX_QUEUE
String PREFIX_RESULTS
Public Constructors
OfflineTable(String collection)
Public Methods
KinveyDeleteResponse delete(DatabaseHandler handler, AbstractClient client, String id, AbstractKinveyOfflineClientRequest<T> req)
Flag an entity for deletion
void enqueueRequest(DatabaseHandler handler, String verb, OfflineRequestInfo.OfflineMetaData id, AbstractKinveyOfflineClientRequest<T> req)
enqueue a request for later execution
T[] getAll(DatabaseHandler handler, AbstractClient client, Class<T> responseClass, AbstractKinveyOfflineClientRequest<T> req)
T getEntity(DatabaseHandler handler, AbstractClient client, String id, Class<T> responseClass, AbstractKinveyOfflineClientRequest<T> req)
Retrive an entity from this offline table
List<OfflineResponseInfo> getHistoricalRequests(DatabaseHandler handler)
This method is deprecated. removed, as table would grow infinitely
T[] getQuery(DatabaseHandler handler, AbstractClient client, String q, Class clazz, AbstractKinveyOfflineClientRequest<T> req)
Retrieve the results of a query from this offline table
T insertEntity(DatabaseHandler helper, AbstractClient client, GenericJson offlineEntity, AbstractKinveyOfflineClientRequest<T> req)
Insert an entity into this offline table
void onCreate(DatabaseHandler handler)
OfflineRequestInfo popSingleQueue(DatabaseHandler handler)
Pop a queued request and remove it from the queue
void storeCompletedRequestInfo(OfflineHelper helper, String collectionName, boolean success, OfflineRequestInfo info, String returnValue)
This method is deprecated. removed, as table would grow infinitely and currently not needed
void storeQueryResults(DatabaseHandler handler, String queryString, List<String> resultIds)
Store the results of a query
[Expand]
Inherited Methods
From class java.lang.Object

Constants

public static final String PREFIX_OFFLINE

Constant Value: "offline_"

public static final String PREFIX_QUERY

Constant Value: "query_"

public static final String PREFIX_QUEUE

Constant Value: "queue_"

public static final String PREFIX_RESULTS

Constant Value: "results_"

Public Constructors

public OfflineTable (String collection)

Public Methods

public KinveyDeleteResponse delete (DatabaseHandler handler, AbstractClient client, String id, AbstractKinveyOfflineClientRequest<T> req)

Flag an entity for deletion

public void enqueueRequest (DatabaseHandler handler, String verb, OfflineRequestInfo.OfflineMetaData id, AbstractKinveyOfflineClientRequest<T> req)

enqueue a request for later execution

public T[] getAll (DatabaseHandler handler, AbstractClient client, Class<T> responseClass, AbstractKinveyOfflineClientRequest<T> req)

public T getEntity (DatabaseHandler handler, AbstractClient client, String id, Class<T> responseClass, AbstractKinveyOfflineClientRequest<T> req)

Retrive an entity from this offline table

public List<OfflineResponseInfo> getHistoricalRequests (DatabaseHandler handler)

This method is deprecated.
removed, as table would grow infinitely

return a list of all historical offline requests@return

public T[] getQuery (DatabaseHandler handler, AbstractClient client, String q, Class clazz, AbstractKinveyOfflineClientRequest<T> req)

Retrieve the results of a query from this offline table

public T insertEntity (DatabaseHandler helper, AbstractClient client, GenericJson offlineEntity, AbstractKinveyOfflineClientRequest<T> req)

Insert an entity into this offline table

public void onCreate (DatabaseHandler handler)

public OfflineRequestInfo popSingleQueue (DatabaseHandler handler)

Pop a queued request and remove it from the queue

public void storeCompletedRequestInfo (OfflineHelper helper, String collectionName, boolean success, OfflineRequestInfo info, String returnValue)

This method is deprecated.
removed, as table would grow infinitely and currently not needed

store the results of a request executed in the background

public void storeQueryResults (DatabaseHandler handler, String queryString, List<String> resultIds)

Store the results of a query