RESTDroid : REST client library for Android
Alpha release 0.8.2 : Testers and contributors are welcome :)
RESTDroid provides a way to handle REST call to REST web-service. RESTDroid only packed fundamental logic to handle request but comes with additionnal logic such as automatic data persistency with remote server. Using or extending this logic is the role of Module. Here you can found severals Module such as an ORMlite-Jackon module to handle data persistence and mapping/parsing.
RESTDroid in a nutshell :
- Make asynchronous REST request
- You're not limited to one web service
- Requests hold POJO's (can be your database model)
- Network calls are not tied to your Activity, if the Activity is killed, network / database operations (ore whathever you decided to do) are still running
- You can notify your Activities with request listeners
- You can dynamically change the process logic via RESTDroid Module (choose to cache & persist, only debug, not to cache, or whatever you want/need by creating a new RESTDroid Module)
- You can know at any moment if a particular local resource is remotely syncronized. Data persistence between local and remote is automatically handles.
- You can easily manage caching for your request (new in 0.8)
- You can specify a behavior at failure for your request such as automatically retry request when another one has succeeded or retry the request every X seconds untils the request is successfull. You can of course implement your own behavior at failure (new in 0.8)
Futures features for v1
- Use HttpConnection instead of apache HTTP client
- Handle authentication and certificate
- Create a good Exception handling model
To migrate on version 0.8.x just refactor any calls to setResourceRepresentation or getResourceRepresentation to only setResource / getResource. Some methods signature will change in that way too but Eclipse should warn you.