A reactive data loading for Android based on
RxJava. The library follows the guidelines recommended in official
Android guide to app architecture to load data and report an
operation state (Loading
/Content
/Error
).
- Widely used design with
Loading
/Content
/Error
states. - Uses cache as a 'source of truth' with
CacheThenNetLceModel
. - Checks data is valid (up-to-date or whatever).
- Falls back to invalid cache data if failed to refresh which allows offline application use.
- Supports data refresh or update to implement reload or server data update operations.
- Cache may be invalidated separately from loading to allow lazy data updates and complex data linking.
- Extendable architecture on every level.
- Thoroughly tested.
Please see a github project for detailed description.
Basic LceModel classes
Contains tools to maintain data validity
Contains tools to load and store data
Jake Wharton's DiskLruCache cache delegate for RxLceModel
DiskLruCache serialization delegate using Kotlin serialization