Package | Description |
---|---|
fr.pcreations.labs.RESTDroid.core |
Modifier and Type | Interface and Description |
---|---|
interface |
Parser<T extends Resource>
Interface which represents Parser
|
interface |
Persistable<T extends Resource>
Interface which represents methods to implement for object persistency
|
class |
RESTRequest<T extends Resource>
Holder class for all request stuff.
|
Modifier and Type | Interface and Description |
---|---|
interface |
ResourceRepresentation<ID>
Interface which represents application items that have to be synchronized with the server
|
interface |
ResourcesList
Interface which represents a list of
ResourceRepresentation |
Modifier and Type | Field and Description |
---|---|
private T |
RESTRequest.mResource
Instance of
ResourceRepresentation attached to this request |
Modifier and Type | Field and Description |
---|---|
protected java.util.HashMap<java.lang.Class<? extends Resource>,Parser<? extends Resource>> |
ParserFactory.mParserMap
HashMap to store Parser as Singleton
key :
ResourceRepresentation Class object
value : Parser instance
|
protected java.util.HashMap<java.lang.Class<? extends Resource>,Parser<? extends Resource>> |
ParserFactory.mParserMap
HashMap to store Parser as Singleton
key :
ResourceRepresentation Class object
value : Parser instance
|
protected java.util.HashMap<java.lang.Class<? extends Resource>,Persistable<? extends Resource>> |
PersistableFactory.mPersistables
HashMap to store Persistable as Singleton
key :
ResourceRepresentation Class object
value : Persistable instance
|
protected java.util.HashMap<java.lang.Class<? extends Resource>,Persistable<? extends Resource>> |
PersistableFactory.mPersistables
HashMap to store Persistable as Singleton
key :
ResourceRepresentation Class object
value : Persistable instance
|
protected RESTRequest<? extends Resource> |
RequestListeners.mRequest
RESTRequest holding by this RequestListeners class |
private static java.util.concurrent.CopyOnWriteArrayList<RESTRequest<? extends Resource>> |
WebService.requestsCollection
Collection of
RESTRequest
Initialized to an instance of CopyOnWriteArrayList to avoid ConcurrentModificationException |
Modifier and Type | Method and Description |
---|---|
protected <R extends Resource> |
WebService.delete(java.lang.Class<R> clazz,
java.lang.String uri,
Resource resource)
Initializes and prepares a DELETE request or retrieve it if already pending.
|
protected <R extends Resource> |
WebService.get(java.lang.Class<R> clazz,
java.lang.String uri,
long expirationTime)
Initializes and prepares a GET request or retrieve it from cache if needed or if the request is already pending
|
protected <R extends Resource> |
WebService.get(java.lang.Class<R> clazz,
java.lang.String uri,
long expirationTime,
Bundle extraParams)
Initializes and prepares a GET request or retrieve it from cache if needed or if the request is already pending
|
abstract <P extends Parser<T>,T extends Resource> |
ParserFactory.getParser(java.lang.Class<T> clazz)
Method to retrieve Parser.
|
abstract <P extends Persistable<R>,R extends Resource> |
PersistableFactory.getPersistable(java.lang.Class<R> clazz)
Method to retrieve Persistable.
|
<T extends Resource> |
WebService.getRequest(java.util.UUID requestID,
java.lang.Class<T> clazz)
Getter for retrieve specific
RESTRequest in WebService.requestsCollection
FIXME ! |
protected <R extends Resource> |
Processor.parseToInputStream(R resource)
Shortcut to parse an instance of
ResourceRepresentation to InputStream from Processor via retrieving the Parser thanks to ParserFactory |
protected <R extends Resource> |
Processor.parseToObject(java.io.InputStream content,
java.lang.Class<R> clazz)
Shortcut to parse an InputStream to object from Processor via retrieving the
Parser thanks to ParserFactory |
protected <R extends Resource> |
WebService.post(java.lang.Class<R> clazz,
java.lang.String uri,
ResourceRepresentation<?> resource)
Initializes and prepares a POST request or retrieve it if already pending.
|
protected <R extends Resource> |
WebService.put(java.lang.Class<R> clazz,
java.lang.String uri,
Resource resource)
Initializes and prepares a PUT request or retrieve it if already pending.
|
protected <R extends Resource> |
WebService.requestRoutine(java.lang.Class<R> clazz,
java.lang.String uri,
Resource resource,
boolean retrieveRequest)
Create or retrieve
RESTRequest if it is already pending |
protected <T extends Resource> |
WebService.retrieveRequest(java.lang.Class<T> clazz,
java.lang.String url,
Resource resource)
Factory of
RESTRequest . |
Modifier and Type | Method and Description |
---|---|
static java.util.concurrent.CopyOnWriteArrayList<RESTRequest<? extends Resource>> |
WebService.getFailedRequests()
Returns all failed
RESTRequest |
protected Persistable<Resource> |
Processor.getResourcePersistable(Resource resource)
Shortcut to retrieve Persistable class from Processor via
PersistableFactory |
Modifier and Type | Method and Description |
---|---|
protected <R extends Resource> |
WebService.delete(java.lang.Class<R> clazz,
java.lang.String uri,
Resource resource)
Initializes and prepares a DELETE request or retrieve it if already pending.
|
protected Persistable<Resource> |
Processor.getResourcePersistable(Resource resource)
Shortcut to retrieve Persistable class from Processor via
PersistableFactory |
protected <R extends Resource> |
WebService.put(java.lang.Class<R> clazz,
java.lang.String uri,
Resource resource)
Initializes and prepares a PUT request or retrieve it if already pending.
|
protected <R extends Resource> |
WebService.requestRoutine(java.lang.Class<R> clazz,
java.lang.String uri,
Resource resource,
boolean retrieveRequest)
Create or retrieve
RESTRequest if it is already pending |
protected <T extends Resource> |
WebService.retrieveRequest(java.lang.Class<T> clazz,
java.lang.String url,
Resource resource)
Factory of
RESTRequest . |
void |
RESTRequest.setResource(Resource mResourceRepresentation)
Setter for
ResourceRepresentation |
Modifier and Type | Method and Description |
---|---|
static void |
CacheManager.cacheRequest(RESTRequest<? extends Resource> request)
Cache request in
CacheManager.cacheDir |
void |
Processor.RESTServiceCallback.callAction(int statusCode,
RESTRequest<? extends Resource> r)
Logic to executes
|
void |
HttpRequestHandler.ProcessorCallback.callAction(int statusCode,
RESTRequest<? extends Resource> request)
Method to handle the callback
|
boolean |
Processor.checkRequest(RESTRequest<? extends Resource> request)
Handles caching logic.
|
void |
HttpRequestHandler.delete(RESTRequest<? extends Resource> r)
Prepares
HttpRequestHandler.HTTPContainer and executes a HTTP DELETE request |
void |
WebService.executeRequest(RESTRequest<? extends Resource> r)
Executes a
RESTRequest |
void |
RetryWhenOtherSucceededFailBehavior.failAction(WebService context,
java.util.ArrayList<RESTRequest<? extends Resource>> failedRequests) |
abstract void |
FailBehavior.failAction(WebService context,
java.util.ArrayList<RESTRequest<? extends Resource>> failedRequests)
Action to perform for all requests which defined this FailBehavior as behavior of failure
|
void |
DefaultRetryAtDelayedTimeFailBehavior.failAction(WebService context,
java.util.ArrayList<RESTRequest<? extends Resource>> failedRequests) |
void |
HttpRequestHandler.get(RESTRequest<? extends Resource> r)
Prepares
HttpRequestHandler.HTTPContainer and executes a HTTP GET request |
static java.io.InputStream |
CacheManager.getRequestFromCache(RESTRequest<? extends Resource> r)
Retrieves a
RESTRequest from cache |
protected void |
Processor.handleHttpRequestHandlerCallback(int statusCode,
RESTRequest<? extends Resource> request)
Handles the binder callback from
HttpRequestHandler by updating status code calling Processor.postRequestProcess(int, RESTRequest, InputStream) hook, set the result stream in RESTRequest and fires Processor.RESTServiceCallback |
private void |
RestService.handleRESTServiceCallback(int statusCode,
RESTRequest<? extends Resource> r)
Handles the binder callback fires by the Processor in
Processor.postRequestProcess(int, RESTRequest, java.io.InputStream)
Current intent is retrieved in RestService#intentsMap in order to send results to RestResultReceiver |
protected void |
WebService.initAndStartService(RESTRequest<? extends Resource> request)
Initializes and starts the service if the request has to be re-sent
|
protected void |
WebService.initRequest(RESTRequest<? extends Resource> r,
HTTPVerb verb,
java.lang.String uri)
Initializes a request by setting verb and uri
|
protected void |
WebService.initRequest(RESTRequest<? extends Resource> r,
HTTPVerb verb,
java.lang.String uri,
Bundle extraParams)
Initializes a request by setting verb, uri and extra paramaters
|
protected void |
Processor.mirrorServerState(RESTRequest<? extends Resource> r)
Mirrors the server state before the request is executed.
|
protected void |
Processor.onFailedRequest(WebService context,
int statusCode,
RESTRequest<? extends Resource> request)
Hook to execute actions on failed request.
|
protected void |
Processor.onSucceededRequest(WebService context,
int statusCode,
RESTRequest<? extends Resource> request)
Hook to execute actions on succeed request.
|
void |
HttpRequestHandler.post(RESTRequest<? extends Resource> r,
java.io.InputStream holder)
Prepares
HttpRequestHandler.HTTPContainer and executes a HTTP POST request |
protected abstract int |
Processor.postRequestProcess(int statusCode,
RESTRequest<? extends Resource> r,
java.io.InputStream resultStream)
Hook for logic just after the request is executed (regardless of the request's HTTP verb)
|
protected abstract void |
Processor.preDeleteRequest(RESTRequest<? extends Resource> r)
Hook for logic just before a DELETE request
|
protected abstract void |
Processor.preGetRequest(RESTRequest<? extends Resource> r)
Hook for logic just before a GET request
|
protected abstract java.io.InputStream |
Processor.prePostRequest(RESTRequest<? extends Resource> r)
Hook for logic just before a POST request
|
protected abstract java.io.InputStream |
Processor.prePutRequest(RESTRequest<? extends Resource> r)
Hook for logic just before a PUT request
|
protected void |
Processor.preRequestProcess(RESTRequest<? extends Resource> r)
Hook for logic just before the request is executed (regardless of the request's HTTP verb).
|
protected void |
Processor.process(RESTRequest<? extends Resource> r)
|
protected void |
Processor.processRequest(RESTRequest<? extends Resource> r)
|
private void |
HttpRequestHandler.processRequest(RESTRequest<? extends Resource> request) |
private void |
HttpRequestHandler.processRequest(RESTRequest<? extends Resource> request,
java.io.InputStream holder)
Launch request in a worker thread and fires
HttpRequestHandler.ProcessorCallback |
void |
HttpRequestHandler.put(RESTRequest<? extends Resource> r,
java.io.InputStream holder)
Prepares
HttpRequestHandler.HTTPContainer and executes a HTTP PUT request |
private void |
WebService.removeRequests(java.util.ArrayList<RESTRequest<? extends Resource>> requestsToRemove)
Removes request from
WebService.requestsCollection . |
void |
WebService.retryRequest(RESTRequest<? extends Resource> request)
Retries a request by resetting it result code, it
RequestListeners , it Resource and initializes and starts the service |
void |
RequestListeners.setRequest(RESTRequest<? extends Resource> r)
Setter for
RequestListeners.mRequest |
protected int |
Processor.updateLocalResource(int statusCode,
RESTRequest<? extends Resource> r,
java.io.InputStream resultStream)
Updates the local resource to mirror the server state after the request is executed.
|