Need help with PagingRoom?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

jshvarts
140 Stars 21 Forks Apache License 2.0 16 Commits 3 Opened issues

Description

Demonstrates various ways of using Paging library with Room (LiveData, RxJava, custom datasource)

Services available

!
?

Need anything else?

Contributors list

Paging Library Architecture Component Demo

Build Status Android Weekly

Companion article: Exploring Paging Library from Jetpack

This project contains a sample of using the Paging Library Architecture Component by way of a simple Notes app--no domain knowledge needed to understand the purpose of this app.

Libraries

App Design

The app follows Clean Architecture Principles to make it cleaner, more readable and maintainable. * Separate layers: Data, Domain, Presentation and UI * MVVM architecture for clean separation between UI and Presentation and below * Repository pattern * Mapping model between data and domain (

NoteEntity
and
Note
)

Branches

1) master -- common setup with no paging used 2) room-livedata -- paging using

LiveData
and default
DataSource
3) room-rxjava -- paging using
RxJava
and default
DataSource
4) room-livedata-custom-datasource -- paging using
LiveData
and custom
ItemKeyedDataSource
5) room-livedata-custom-datasource-koin -- paging using
LiveData
and custom
ItemKeyedDataSource
with Koin

License

Copyright 2018 James Shvarts

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.