├── .gitignore ├── .travis.yml ├── README.md ├── app ├── build.gradle ├── proguard-rules.pro └── src │ └── main │ ├── AndroidManifest.xml │ ├── kotlin │ └── com │ │ └── djuarez │ │ └── rxkotlin │ │ ├── data │ │ ├── cache │ │ │ └── DBHelper.kt │ │ ├── entity │ │ │ ├── GithubEntity.kt │ │ │ └── mapper │ │ │ │ ├── EntryEntityMapper.kt │ │ │ │ └── GithubMapper.kt │ │ ├── executor │ │ │ └── JobExecutor.kt │ │ ├── net │ │ │ ├── GithubService.kt │ │ │ └── RestApi.kt │ │ └── repository │ │ │ ├── GithubDataRepository.kt │ │ │ └── datasource │ │ │ ├── GithubCloudDataStore.kt │ │ │ ├── GithubDBDataStore.kt │ │ │ ├── GithubDataFactory.kt │ │ │ └── GithubDataStore.kt │ │ ├── domain │ │ ├── exception │ │ │ ├── DefaultErrorBundle.kt │ │ │ └── ErrorBundle.kt │ │ ├── executor │ │ │ ├── PostExecutionThread.kt │ │ │ └── ThreadExecutor.kt │ │ ├── model │ │ │ └── Github.kt │ │ ├── repository │ │ │ └── GithubRepository.kt │ │ └── usingcases │ │ │ ├── GithubListUseCase.kt │ │ │ ├── GithubUseCase.kt │ │ │ └── UseCase.kt │ │ └── presentation │ │ ├── AndroidApplication.kt │ │ ├── UIThread.kt │ │ ├── internal │ │ └── di │ │ │ ├── components │ │ │ ├── ActivityComponent.kt │ │ │ ├── ApplicationComponent.kt │ │ │ └── FragmentComponent.kt │ │ │ ├── modules │ │ │ ├── ActivityModule.kt │ │ │ ├── ApplicationModule.kt │ │ │ └── FragmentModule.kt │ │ │ └── scope │ │ │ ├── PerActivity.kt │ │ │ └── PerFragment.kt │ │ ├── navigation │ │ └── Navigator.kt │ │ └── ui │ │ └── main │ │ ├── MainActivity.kt │ │ ├── presenters │ │ └── MainPresenter.kt │ │ └── views │ │ └── MainView.kt │ └── res │ ├── layout │ ├── activity_main.xml │ ├── fragment_test.xml │ ├── view_empty.xml │ ├── view_progress.xml │ └── view_toolbar.xml │ ├── values-v21 │ └── styles.xml │ └── values │ ├── bools.xml │ ├── colors.xml │ ├── dimens.xml │ ├── settings.xml │ ├── strings.xml │ └── styles.xml ├── config └── buildsystem │ ├── ci.gradle │ ├── debug.keystore │ └── dependencies.gradle ├── gradle.properties ├── gradle └── wrapper │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat └── settings.gradle /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djuarez/Kotlin-CleanArchitecture/HEAD/.gitignore -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djuarez/Kotlin-CleanArchitecture/HEAD/.travis.yml -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djuarez/Kotlin-CleanArchitecture/HEAD/README.md -------------------------------------------------------------------------------- /app/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djuarez/Kotlin-CleanArchitecture/HEAD/app/build.gradle -------------------------------------------------------------------------------- /app/proguard-rules.pro: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djuarez/Kotlin-CleanArchitecture/HEAD/app/proguard-rules.pro -------------------------------------------------------------------------------- /app/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djuarez/Kotlin-CleanArchitecture/HEAD/app/src/main/AndroidManifest.xml -------------------------------------------------------------------------------- /app/src/main/kotlin/com/djuarez/rxkotlin/data/cache/DBHelper.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djuarez/Kotlin-CleanArchitecture/HEAD/app/src/main/kotlin/com/djuarez/rxkotlin/data/cache/DBHelper.kt -------------------------------------------------------------------------------- /app/src/main/kotlin/com/djuarez/rxkotlin/data/entity/GithubEntity.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djuarez/Kotlin-CleanArchitecture/HEAD/app/src/main/kotlin/com/djuarez/rxkotlin/data/entity/GithubEntity.kt -------------------------------------------------------------------------------- /app/src/main/kotlin/com/djuarez/rxkotlin/data/entity/mapper/EntryEntityMapper.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djuarez/Kotlin-CleanArchitecture/HEAD/app/src/main/kotlin/com/djuarez/rxkotlin/data/entity/mapper/EntryEntityMapper.kt -------------------------------------------------------------------------------- /app/src/main/kotlin/com/djuarez/rxkotlin/data/entity/mapper/GithubMapper.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djuarez/Kotlin-CleanArchitecture/HEAD/app/src/main/kotlin/com/djuarez/rxkotlin/data/entity/mapper/GithubMapper.kt -------------------------------------------------------------------------------- /app/src/main/kotlin/com/djuarez/rxkotlin/data/executor/JobExecutor.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djuarez/Kotlin-CleanArchitecture/HEAD/app/src/main/kotlin/com/djuarez/rxkotlin/data/executor/JobExecutor.kt -------------------------------------------------------------------------------- /app/src/main/kotlin/com/djuarez/rxkotlin/data/net/GithubService.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djuarez/Kotlin-CleanArchitecture/HEAD/app/src/main/kotlin/com/djuarez/rxkotlin/data/net/GithubService.kt -------------------------------------------------------------------------------- /app/src/main/kotlin/com/djuarez/rxkotlin/data/net/RestApi.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djuarez/Kotlin-CleanArchitecture/HEAD/app/src/main/kotlin/com/djuarez/rxkotlin/data/net/RestApi.kt -------------------------------------------------------------------------------- /app/src/main/kotlin/com/djuarez/rxkotlin/data/repository/GithubDataRepository.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djuarez/Kotlin-CleanArchitecture/HEAD/app/src/main/kotlin/com/djuarez/rxkotlin/data/repository/GithubDataRepository.kt -------------------------------------------------------------------------------- /app/src/main/kotlin/com/djuarez/rxkotlin/data/repository/datasource/GithubCloudDataStore.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djuarez/Kotlin-CleanArchitecture/HEAD/app/src/main/kotlin/com/djuarez/rxkotlin/data/repository/datasource/GithubCloudDataStore.kt -------------------------------------------------------------------------------- /app/src/main/kotlin/com/djuarez/rxkotlin/data/repository/datasource/GithubDBDataStore.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djuarez/Kotlin-CleanArchitecture/HEAD/app/src/main/kotlin/com/djuarez/rxkotlin/data/repository/datasource/GithubDBDataStore.kt -------------------------------------------------------------------------------- /app/src/main/kotlin/com/djuarez/rxkotlin/data/repository/datasource/GithubDataFactory.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djuarez/Kotlin-CleanArchitecture/HEAD/app/src/main/kotlin/com/djuarez/rxkotlin/data/repository/datasource/GithubDataFactory.kt -------------------------------------------------------------------------------- /app/src/main/kotlin/com/djuarez/rxkotlin/data/repository/datasource/GithubDataStore.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djuarez/Kotlin-CleanArchitecture/HEAD/app/src/main/kotlin/com/djuarez/rxkotlin/data/repository/datasource/GithubDataStore.kt -------------------------------------------------------------------------------- /app/src/main/kotlin/com/djuarez/rxkotlin/domain/exception/DefaultErrorBundle.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djuarez/Kotlin-CleanArchitecture/HEAD/app/src/main/kotlin/com/djuarez/rxkotlin/domain/exception/DefaultErrorBundle.kt -------------------------------------------------------------------------------- /app/src/main/kotlin/com/djuarez/rxkotlin/domain/exception/ErrorBundle.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djuarez/Kotlin-CleanArchitecture/HEAD/app/src/main/kotlin/com/djuarez/rxkotlin/domain/exception/ErrorBundle.kt -------------------------------------------------------------------------------- /app/src/main/kotlin/com/djuarez/rxkotlin/domain/executor/PostExecutionThread.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djuarez/Kotlin-CleanArchitecture/HEAD/app/src/main/kotlin/com/djuarez/rxkotlin/domain/executor/PostExecutionThread.kt -------------------------------------------------------------------------------- /app/src/main/kotlin/com/djuarez/rxkotlin/domain/executor/ThreadExecutor.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djuarez/Kotlin-CleanArchitecture/HEAD/app/src/main/kotlin/com/djuarez/rxkotlin/domain/executor/ThreadExecutor.kt -------------------------------------------------------------------------------- /app/src/main/kotlin/com/djuarez/rxkotlin/domain/model/Github.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djuarez/Kotlin-CleanArchitecture/HEAD/app/src/main/kotlin/com/djuarez/rxkotlin/domain/model/Github.kt -------------------------------------------------------------------------------- /app/src/main/kotlin/com/djuarez/rxkotlin/domain/repository/GithubRepository.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djuarez/Kotlin-CleanArchitecture/HEAD/app/src/main/kotlin/com/djuarez/rxkotlin/domain/repository/GithubRepository.kt -------------------------------------------------------------------------------- /app/src/main/kotlin/com/djuarez/rxkotlin/domain/usingcases/GithubListUseCase.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djuarez/Kotlin-CleanArchitecture/HEAD/app/src/main/kotlin/com/djuarez/rxkotlin/domain/usingcases/GithubListUseCase.kt -------------------------------------------------------------------------------- /app/src/main/kotlin/com/djuarez/rxkotlin/domain/usingcases/GithubUseCase.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djuarez/Kotlin-CleanArchitecture/HEAD/app/src/main/kotlin/com/djuarez/rxkotlin/domain/usingcases/GithubUseCase.kt -------------------------------------------------------------------------------- /app/src/main/kotlin/com/djuarez/rxkotlin/domain/usingcases/UseCase.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djuarez/Kotlin-CleanArchitecture/HEAD/app/src/main/kotlin/com/djuarez/rxkotlin/domain/usingcases/UseCase.kt -------------------------------------------------------------------------------- /app/src/main/kotlin/com/djuarez/rxkotlin/presentation/AndroidApplication.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djuarez/Kotlin-CleanArchitecture/HEAD/app/src/main/kotlin/com/djuarez/rxkotlin/presentation/AndroidApplication.kt -------------------------------------------------------------------------------- /app/src/main/kotlin/com/djuarez/rxkotlin/presentation/UIThread.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djuarez/Kotlin-CleanArchitecture/HEAD/app/src/main/kotlin/com/djuarez/rxkotlin/presentation/UIThread.kt -------------------------------------------------------------------------------- /app/src/main/kotlin/com/djuarez/rxkotlin/presentation/internal/di/components/ActivityComponent.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djuarez/Kotlin-CleanArchitecture/HEAD/app/src/main/kotlin/com/djuarez/rxkotlin/presentation/internal/di/components/ActivityComponent.kt -------------------------------------------------------------------------------- /app/src/main/kotlin/com/djuarez/rxkotlin/presentation/internal/di/components/ApplicationComponent.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djuarez/Kotlin-CleanArchitecture/HEAD/app/src/main/kotlin/com/djuarez/rxkotlin/presentation/internal/di/components/ApplicationComponent.kt -------------------------------------------------------------------------------- /app/src/main/kotlin/com/djuarez/rxkotlin/presentation/internal/di/components/FragmentComponent.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djuarez/Kotlin-CleanArchitecture/HEAD/app/src/main/kotlin/com/djuarez/rxkotlin/presentation/internal/di/components/FragmentComponent.kt -------------------------------------------------------------------------------- /app/src/main/kotlin/com/djuarez/rxkotlin/presentation/internal/di/modules/ActivityModule.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djuarez/Kotlin-CleanArchitecture/HEAD/app/src/main/kotlin/com/djuarez/rxkotlin/presentation/internal/di/modules/ActivityModule.kt -------------------------------------------------------------------------------- /app/src/main/kotlin/com/djuarez/rxkotlin/presentation/internal/di/modules/ApplicationModule.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djuarez/Kotlin-CleanArchitecture/HEAD/app/src/main/kotlin/com/djuarez/rxkotlin/presentation/internal/di/modules/ApplicationModule.kt -------------------------------------------------------------------------------- /app/src/main/kotlin/com/djuarez/rxkotlin/presentation/internal/di/modules/FragmentModule.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djuarez/Kotlin-CleanArchitecture/HEAD/app/src/main/kotlin/com/djuarez/rxkotlin/presentation/internal/di/modules/FragmentModule.kt -------------------------------------------------------------------------------- /app/src/main/kotlin/com/djuarez/rxkotlin/presentation/internal/di/scope/PerActivity.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djuarez/Kotlin-CleanArchitecture/HEAD/app/src/main/kotlin/com/djuarez/rxkotlin/presentation/internal/di/scope/PerActivity.kt -------------------------------------------------------------------------------- /app/src/main/kotlin/com/djuarez/rxkotlin/presentation/internal/di/scope/PerFragment.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djuarez/Kotlin-CleanArchitecture/HEAD/app/src/main/kotlin/com/djuarez/rxkotlin/presentation/internal/di/scope/PerFragment.kt -------------------------------------------------------------------------------- /app/src/main/kotlin/com/djuarez/rxkotlin/presentation/navigation/Navigator.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djuarez/Kotlin-CleanArchitecture/HEAD/app/src/main/kotlin/com/djuarez/rxkotlin/presentation/navigation/Navigator.kt -------------------------------------------------------------------------------- /app/src/main/kotlin/com/djuarez/rxkotlin/presentation/ui/main/MainActivity.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djuarez/Kotlin-CleanArchitecture/HEAD/app/src/main/kotlin/com/djuarez/rxkotlin/presentation/ui/main/MainActivity.kt -------------------------------------------------------------------------------- /app/src/main/kotlin/com/djuarez/rxkotlin/presentation/ui/main/presenters/MainPresenter.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djuarez/Kotlin-CleanArchitecture/HEAD/app/src/main/kotlin/com/djuarez/rxkotlin/presentation/ui/main/presenters/MainPresenter.kt -------------------------------------------------------------------------------- /app/src/main/kotlin/com/djuarez/rxkotlin/presentation/ui/main/views/MainView.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djuarez/Kotlin-CleanArchitecture/HEAD/app/src/main/kotlin/com/djuarez/rxkotlin/presentation/ui/main/views/MainView.kt -------------------------------------------------------------------------------- /app/src/main/res/layout/activity_main.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djuarez/Kotlin-CleanArchitecture/HEAD/app/src/main/res/layout/activity_main.xml -------------------------------------------------------------------------------- /app/src/main/res/layout/fragment_test.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djuarez/Kotlin-CleanArchitecture/HEAD/app/src/main/res/layout/fragment_test.xml -------------------------------------------------------------------------------- /app/src/main/res/layout/view_empty.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djuarez/Kotlin-CleanArchitecture/HEAD/app/src/main/res/layout/view_empty.xml -------------------------------------------------------------------------------- /app/src/main/res/layout/view_progress.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djuarez/Kotlin-CleanArchitecture/HEAD/app/src/main/res/layout/view_progress.xml -------------------------------------------------------------------------------- /app/src/main/res/layout/view_toolbar.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djuarez/Kotlin-CleanArchitecture/HEAD/app/src/main/res/layout/view_toolbar.xml -------------------------------------------------------------------------------- /app/src/main/res/values-v21/styles.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djuarez/Kotlin-CleanArchitecture/HEAD/app/src/main/res/values-v21/styles.xml -------------------------------------------------------------------------------- /app/src/main/res/values/bools.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djuarez/Kotlin-CleanArchitecture/HEAD/app/src/main/res/values/bools.xml -------------------------------------------------------------------------------- /app/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djuarez/Kotlin-CleanArchitecture/HEAD/app/src/main/res/values/colors.xml -------------------------------------------------------------------------------- /app/src/main/res/values/dimens.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djuarez/Kotlin-CleanArchitecture/HEAD/app/src/main/res/values/dimens.xml -------------------------------------------------------------------------------- /app/src/main/res/values/settings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djuarez/Kotlin-CleanArchitecture/HEAD/app/src/main/res/values/settings.xml -------------------------------------------------------------------------------- /app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djuarez/Kotlin-CleanArchitecture/HEAD/app/src/main/res/values/strings.xml -------------------------------------------------------------------------------- /app/src/main/res/values/styles.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djuarez/Kotlin-CleanArchitecture/HEAD/app/src/main/res/values/styles.xml -------------------------------------------------------------------------------- /config/buildsystem/ci.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djuarez/Kotlin-CleanArchitecture/HEAD/config/buildsystem/ci.gradle -------------------------------------------------------------------------------- /config/buildsystem/debug.keystore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djuarez/Kotlin-CleanArchitecture/HEAD/config/buildsystem/debug.keystore -------------------------------------------------------------------------------- /config/buildsystem/dependencies.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djuarez/Kotlin-CleanArchitecture/HEAD/config/buildsystem/dependencies.gradle -------------------------------------------------------------------------------- /gradle.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djuarez/Kotlin-CleanArchitecture/HEAD/gradle.properties -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djuarez/Kotlin-CleanArchitecture/HEAD/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djuarez/Kotlin-CleanArchitecture/HEAD/gradle/wrapper/gradle-wrapper.properties -------------------------------------------------------------------------------- /gradlew: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djuarez/Kotlin-CleanArchitecture/HEAD/gradlew -------------------------------------------------------------------------------- /gradlew.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djuarez/Kotlin-CleanArchitecture/HEAD/gradlew.bat -------------------------------------------------------------------------------- /settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | 3 | --------------------------------------------------------------------------------