├── .github └── workflows │ └── main.yml ├── .gitignore ├── LICENSE ├── README.md ├── gradle.properties ├── gradle └── wrapper │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── publish-helper.gradle ├── sample ├── .gitignore ├── build.gradle ├── proguard-rules.pro └── src │ ├── androidTest │ └── java │ │ └── com │ │ └── factorymarket │ │ └── sergey │ │ └── myapplication │ │ └── ExampleInstrumentedTest.kt │ ├── main │ ├── AndroidManifest.xml │ ├── java │ │ └── dev │ │ │ └── teapot │ │ │ └── sample │ │ │ ├── BaseFragment.kt │ │ │ ├── SampleApp.kt │ │ │ ├── constants.kt │ │ │ ├── data │ │ │ ├── AppPrefs.kt │ │ │ ├── GitHubService.kt │ │ │ ├── IAppPrefs.kt │ │ │ └── RepoService.kt │ │ │ ├── di │ │ │ └── AppComponent.kt │ │ │ ├── login │ │ │ ├── di │ │ │ │ └── LoginComponent.kt │ │ │ ├── feature │ │ │ │ └── LoginFeature.kt │ │ │ ├── model │ │ │ │ ├── LoginState.kt │ │ │ │ ├── cmd.kt │ │ │ │ └── msg.kt │ │ │ └── view │ │ │ │ ├── LoginFragment.kt │ │ │ │ └── LoginView.kt │ │ │ ├── main │ │ │ ├── di │ │ │ │ ├── ActivityComponent.kt │ │ │ │ └── MainComponent.kt │ │ │ ├── feature │ │ │ │ └── MainFeature.kt │ │ │ ├── model │ │ │ │ └── model.kt │ │ │ └── view │ │ │ │ ├── MainActivity.kt │ │ │ │ ├── MainFragment.kt │ │ │ │ └── MainView.kt │ │ │ ├── navigation │ │ │ ├── AndroidNavigator.kt │ │ │ └── Navigator.kt │ │ │ └── repo │ │ │ ├── di │ │ │ └── RepoComponent.kt │ │ │ ├── model │ │ │ └── model.kt │ │ │ ├── presenter │ │ │ └── RepoFeature.kt │ │ │ └── view │ │ │ ├── RepoFragment.kt │ │ │ └── RepoView.kt │ └── res │ │ ├── drawable-v24 │ │ └── ic_launcher_foreground.xml │ │ ├── drawable │ │ └── ic_launcher_background.xml │ │ ├── layout │ │ ├── content_main.xml │ │ ├── fragment_login.xml │ │ ├── login_main.xml │ │ ├── main_layout.xml │ │ ├── repo_layout.xml │ │ └── repos_list_item_layout.xml │ │ ├── mipmap-anydpi-v26 │ │ ├── ic_launcher.xml │ │ └── ic_launcher_round.xml │ │ ├── mipmap-hdpi │ │ ├── ic_launcher.png │ │ └── ic_launcher_round.png │ │ ├── mipmap-mdpi │ │ ├── ic_launcher.png │ │ └── ic_launcher_round.png │ │ ├── mipmap-xhdpi │ │ ├── ic_launcher.png │ │ └── ic_launcher_round.png │ │ ├── mipmap-xxhdpi │ │ ├── ic_launcher.png │ │ └── ic_launcher_round.png │ │ ├── mipmap-xxxhdpi │ │ ├── ic_launcher.png │ │ └── ic_launcher_round.png │ │ └── values │ │ ├── colors.xml │ │ ├── strings.xml │ │ └── styles.xml │ └── test │ └── java │ └── dev │ └── teapot │ └── sample │ └── login │ └── LoginFeatureTest.kt ├── settings.gradle ├── teapot ├── .gitignore ├── build.gradle ├── gradle.properties ├── proguard-rules.pro └── src │ ├── main │ └── java │ │ └── dev │ │ └── teapot │ │ ├── cmd │ │ ├── CommandExecutor.kt │ │ └── cmds.kt │ │ ├── contract │ │ ├── PluggableFeature.kt │ │ ├── contract.kt │ │ ├── coroutines.kt │ │ └── rx.kt │ │ ├── effect │ │ ├── BaseCommandExecutor.kt │ │ ├── coroutine │ │ │ └── CoroutinesCommandExecutor.kt │ │ └── rx │ │ │ └── RxCommandExecutor.kt │ │ ├── feature │ │ ├── CompositeFeature.kt │ │ ├── CoroutineCompositeFeature.kt │ │ └── RxCompositeFeature.kt │ │ ├── functions.kt │ │ ├── log │ │ └── TeapotLogger.kt │ │ ├── middleware │ │ └── Middleware.kt │ │ ├── msg │ │ └── msgs.kt │ │ ├── program │ │ ├── MessageConsumer.kt │ │ ├── Program.kt │ │ └── ProgramBuilder.kt │ │ └── sub │ │ ├── FlowSub.kt │ │ ├── RxSub.kt │ │ └── Sub.kt │ └── test │ └── java │ └── dev │ └── teapot │ └── CompositeComponentTest.kt ├── teapotextensions ├── .gitignore ├── build.gradle ├── gradle.properties └── src │ ├── main │ └── java │ │ └── dev │ │ └── teapot │ │ └── extensions │ │ ├── cachedentity │ │ ├── CachedEntityFeature.kt │ │ └── model.kt │ │ ├── cachedpaging │ │ ├── CachedPagingFeature.kt │ │ ├── builder.kt │ │ ├── commands.kt │ │ ├── contract.kt │ │ ├── messages.kt │ │ └── model.kt │ │ └── paging │ │ ├── PagingFeature.kt │ │ ├── builder.kt │ │ ├── contract.kt │ │ ├── coroutines.kt │ │ ├── model.kt │ │ └── rx.kt │ └── test │ └── java │ └── dev │ └── teapot │ └── extensions │ ├── CachedPagingFeatureNoCacheCaseSpec.kt │ ├── CachedPagingFeatureVariousCasesSpec.kt │ ├── CachedPagingFeatureWithCacheCaseSpec.kt │ └── PagingFeatureSpec.kt └── teapottest ├── .gitignore ├── build.gradle ├── gradle.properties └── src └── main └── java └── dev └── teapot └── test └── TeapotSpec.kt /.github/workflows/main.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/.github/workflows/main.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/.gitignore -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/README.md -------------------------------------------------------------------------------- /gradle.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/gradle.properties -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/gradle/wrapper/gradle-wrapper.properties -------------------------------------------------------------------------------- /gradlew: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/gradlew -------------------------------------------------------------------------------- /gradlew.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/gradlew.bat -------------------------------------------------------------------------------- /publish-helper.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/publish-helper.gradle -------------------------------------------------------------------------------- /sample/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /sample/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/sample/build.gradle -------------------------------------------------------------------------------- /sample/proguard-rules.pro: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/sample/proguard-rules.pro -------------------------------------------------------------------------------- /sample/src/androidTest/java/com/factorymarket/sergey/myapplication/ExampleInstrumentedTest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/sample/src/androidTest/java/com/factorymarket/sergey/myapplication/ExampleInstrumentedTest.kt -------------------------------------------------------------------------------- /sample/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/sample/src/main/AndroidManifest.xml -------------------------------------------------------------------------------- /sample/src/main/java/dev/teapot/sample/BaseFragment.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/sample/src/main/java/dev/teapot/sample/BaseFragment.kt -------------------------------------------------------------------------------- /sample/src/main/java/dev/teapot/sample/SampleApp.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/sample/src/main/java/dev/teapot/sample/SampleApp.kt -------------------------------------------------------------------------------- /sample/src/main/java/dev/teapot/sample/constants.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/sample/src/main/java/dev/teapot/sample/constants.kt -------------------------------------------------------------------------------- /sample/src/main/java/dev/teapot/sample/data/AppPrefs.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/sample/src/main/java/dev/teapot/sample/data/AppPrefs.kt -------------------------------------------------------------------------------- /sample/src/main/java/dev/teapot/sample/data/GitHubService.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/sample/src/main/java/dev/teapot/sample/data/GitHubService.kt -------------------------------------------------------------------------------- /sample/src/main/java/dev/teapot/sample/data/IAppPrefs.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/sample/src/main/java/dev/teapot/sample/data/IAppPrefs.kt -------------------------------------------------------------------------------- /sample/src/main/java/dev/teapot/sample/data/RepoService.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/sample/src/main/java/dev/teapot/sample/data/RepoService.kt -------------------------------------------------------------------------------- /sample/src/main/java/dev/teapot/sample/di/AppComponent.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/sample/src/main/java/dev/teapot/sample/di/AppComponent.kt -------------------------------------------------------------------------------- /sample/src/main/java/dev/teapot/sample/login/di/LoginComponent.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/sample/src/main/java/dev/teapot/sample/login/di/LoginComponent.kt -------------------------------------------------------------------------------- /sample/src/main/java/dev/teapot/sample/login/feature/LoginFeature.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/sample/src/main/java/dev/teapot/sample/login/feature/LoginFeature.kt -------------------------------------------------------------------------------- /sample/src/main/java/dev/teapot/sample/login/model/LoginState.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/sample/src/main/java/dev/teapot/sample/login/model/LoginState.kt -------------------------------------------------------------------------------- /sample/src/main/java/dev/teapot/sample/login/model/cmd.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/sample/src/main/java/dev/teapot/sample/login/model/cmd.kt -------------------------------------------------------------------------------- /sample/src/main/java/dev/teapot/sample/login/model/msg.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/sample/src/main/java/dev/teapot/sample/login/model/msg.kt -------------------------------------------------------------------------------- /sample/src/main/java/dev/teapot/sample/login/view/LoginFragment.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/sample/src/main/java/dev/teapot/sample/login/view/LoginFragment.kt -------------------------------------------------------------------------------- /sample/src/main/java/dev/teapot/sample/login/view/LoginView.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/sample/src/main/java/dev/teapot/sample/login/view/LoginView.kt -------------------------------------------------------------------------------- /sample/src/main/java/dev/teapot/sample/main/di/ActivityComponent.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/sample/src/main/java/dev/teapot/sample/main/di/ActivityComponent.kt -------------------------------------------------------------------------------- /sample/src/main/java/dev/teapot/sample/main/di/MainComponent.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/sample/src/main/java/dev/teapot/sample/main/di/MainComponent.kt -------------------------------------------------------------------------------- /sample/src/main/java/dev/teapot/sample/main/feature/MainFeature.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/sample/src/main/java/dev/teapot/sample/main/feature/MainFeature.kt -------------------------------------------------------------------------------- /sample/src/main/java/dev/teapot/sample/main/model/model.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/sample/src/main/java/dev/teapot/sample/main/model/model.kt -------------------------------------------------------------------------------- /sample/src/main/java/dev/teapot/sample/main/view/MainActivity.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/sample/src/main/java/dev/teapot/sample/main/view/MainActivity.kt -------------------------------------------------------------------------------- /sample/src/main/java/dev/teapot/sample/main/view/MainFragment.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/sample/src/main/java/dev/teapot/sample/main/view/MainFragment.kt -------------------------------------------------------------------------------- /sample/src/main/java/dev/teapot/sample/main/view/MainView.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/sample/src/main/java/dev/teapot/sample/main/view/MainView.kt -------------------------------------------------------------------------------- /sample/src/main/java/dev/teapot/sample/navigation/AndroidNavigator.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/sample/src/main/java/dev/teapot/sample/navigation/AndroidNavigator.kt -------------------------------------------------------------------------------- /sample/src/main/java/dev/teapot/sample/navigation/Navigator.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/sample/src/main/java/dev/teapot/sample/navigation/Navigator.kt -------------------------------------------------------------------------------- /sample/src/main/java/dev/teapot/sample/repo/di/RepoComponent.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/sample/src/main/java/dev/teapot/sample/repo/di/RepoComponent.kt -------------------------------------------------------------------------------- /sample/src/main/java/dev/teapot/sample/repo/model/model.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/sample/src/main/java/dev/teapot/sample/repo/model/model.kt -------------------------------------------------------------------------------- /sample/src/main/java/dev/teapot/sample/repo/presenter/RepoFeature.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/sample/src/main/java/dev/teapot/sample/repo/presenter/RepoFeature.kt -------------------------------------------------------------------------------- /sample/src/main/java/dev/teapot/sample/repo/view/RepoFragment.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/sample/src/main/java/dev/teapot/sample/repo/view/RepoFragment.kt -------------------------------------------------------------------------------- /sample/src/main/java/dev/teapot/sample/repo/view/RepoView.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/sample/src/main/java/dev/teapot/sample/repo/view/RepoView.kt -------------------------------------------------------------------------------- /sample/src/main/res/drawable-v24/ic_launcher_foreground.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/sample/src/main/res/drawable-v24/ic_launcher_foreground.xml -------------------------------------------------------------------------------- /sample/src/main/res/drawable/ic_launcher_background.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/sample/src/main/res/drawable/ic_launcher_background.xml -------------------------------------------------------------------------------- /sample/src/main/res/layout/content_main.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/sample/src/main/res/layout/content_main.xml -------------------------------------------------------------------------------- /sample/src/main/res/layout/fragment_login.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/sample/src/main/res/layout/fragment_login.xml -------------------------------------------------------------------------------- /sample/src/main/res/layout/login_main.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/sample/src/main/res/layout/login_main.xml -------------------------------------------------------------------------------- /sample/src/main/res/layout/main_layout.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/sample/src/main/res/layout/main_layout.xml -------------------------------------------------------------------------------- /sample/src/main/res/layout/repo_layout.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/sample/src/main/res/layout/repo_layout.xml -------------------------------------------------------------------------------- /sample/src/main/res/layout/repos_list_item_layout.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/sample/src/main/res/layout/repos_list_item_layout.xml -------------------------------------------------------------------------------- /sample/src/main/res/mipmap-anydpi-v26/ic_launcher.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/sample/src/main/res/mipmap-anydpi-v26/ic_launcher.xml -------------------------------------------------------------------------------- /sample/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/sample/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml -------------------------------------------------------------------------------- /sample/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/sample/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /sample/src/main/res/mipmap-hdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/sample/src/main/res/mipmap-hdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /sample/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/sample/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /sample/src/main/res/mipmap-mdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/sample/src/main/res/mipmap-mdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /sample/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/sample/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /sample/src/main/res/mipmap-xhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/sample/src/main/res/mipmap-xhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /sample/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/sample/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /sample/src/main/res/mipmap-xxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/sample/src/main/res/mipmap-xxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /sample/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/sample/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /sample/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/sample/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /sample/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/sample/src/main/res/values/colors.xml -------------------------------------------------------------------------------- /sample/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/sample/src/main/res/values/strings.xml -------------------------------------------------------------------------------- /sample/src/main/res/values/styles.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/sample/src/main/res/values/styles.xml -------------------------------------------------------------------------------- /sample/src/test/java/dev/teapot/sample/login/LoginFeatureTest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/sample/src/test/java/dev/teapot/sample/login/LoginFeatureTest.kt -------------------------------------------------------------------------------- /settings.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/settings.gradle -------------------------------------------------------------------------------- /teapot/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /teapot/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/teapot/build.gradle -------------------------------------------------------------------------------- /teapot/gradle.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/teapot/gradle.properties -------------------------------------------------------------------------------- /teapot/proguard-rules.pro: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/teapot/proguard-rules.pro -------------------------------------------------------------------------------- /teapot/src/main/java/dev/teapot/cmd/CommandExecutor.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/teapot/src/main/java/dev/teapot/cmd/CommandExecutor.kt -------------------------------------------------------------------------------- /teapot/src/main/java/dev/teapot/cmd/cmds.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/teapot/src/main/java/dev/teapot/cmd/cmds.kt -------------------------------------------------------------------------------- /teapot/src/main/java/dev/teapot/contract/PluggableFeature.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/teapot/src/main/java/dev/teapot/contract/PluggableFeature.kt -------------------------------------------------------------------------------- /teapot/src/main/java/dev/teapot/contract/contract.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/teapot/src/main/java/dev/teapot/contract/contract.kt -------------------------------------------------------------------------------- /teapot/src/main/java/dev/teapot/contract/coroutines.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/teapot/src/main/java/dev/teapot/contract/coroutines.kt -------------------------------------------------------------------------------- /teapot/src/main/java/dev/teapot/contract/rx.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/teapot/src/main/java/dev/teapot/contract/rx.kt -------------------------------------------------------------------------------- /teapot/src/main/java/dev/teapot/effect/BaseCommandExecutor.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/teapot/src/main/java/dev/teapot/effect/BaseCommandExecutor.kt -------------------------------------------------------------------------------- /teapot/src/main/java/dev/teapot/effect/coroutine/CoroutinesCommandExecutor.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/teapot/src/main/java/dev/teapot/effect/coroutine/CoroutinesCommandExecutor.kt -------------------------------------------------------------------------------- /teapot/src/main/java/dev/teapot/effect/rx/RxCommandExecutor.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/teapot/src/main/java/dev/teapot/effect/rx/RxCommandExecutor.kt -------------------------------------------------------------------------------- /teapot/src/main/java/dev/teapot/feature/CompositeFeature.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/teapot/src/main/java/dev/teapot/feature/CompositeFeature.kt -------------------------------------------------------------------------------- /teapot/src/main/java/dev/teapot/feature/CoroutineCompositeFeature.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/teapot/src/main/java/dev/teapot/feature/CoroutineCompositeFeature.kt -------------------------------------------------------------------------------- /teapot/src/main/java/dev/teapot/feature/RxCompositeFeature.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/teapot/src/main/java/dev/teapot/feature/RxCompositeFeature.kt -------------------------------------------------------------------------------- /teapot/src/main/java/dev/teapot/functions.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/teapot/src/main/java/dev/teapot/functions.kt -------------------------------------------------------------------------------- /teapot/src/main/java/dev/teapot/log/TeapotLogger.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/teapot/src/main/java/dev/teapot/log/TeapotLogger.kt -------------------------------------------------------------------------------- /teapot/src/main/java/dev/teapot/middleware/Middleware.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/teapot/src/main/java/dev/teapot/middleware/Middleware.kt -------------------------------------------------------------------------------- /teapot/src/main/java/dev/teapot/msg/msgs.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/teapot/src/main/java/dev/teapot/msg/msgs.kt -------------------------------------------------------------------------------- /teapot/src/main/java/dev/teapot/program/MessageConsumer.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/teapot/src/main/java/dev/teapot/program/MessageConsumer.kt -------------------------------------------------------------------------------- /teapot/src/main/java/dev/teapot/program/Program.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/teapot/src/main/java/dev/teapot/program/Program.kt -------------------------------------------------------------------------------- /teapot/src/main/java/dev/teapot/program/ProgramBuilder.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/teapot/src/main/java/dev/teapot/program/ProgramBuilder.kt -------------------------------------------------------------------------------- /teapot/src/main/java/dev/teapot/sub/FlowSub.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/teapot/src/main/java/dev/teapot/sub/FlowSub.kt -------------------------------------------------------------------------------- /teapot/src/main/java/dev/teapot/sub/RxSub.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/teapot/src/main/java/dev/teapot/sub/RxSub.kt -------------------------------------------------------------------------------- /teapot/src/main/java/dev/teapot/sub/Sub.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/teapot/src/main/java/dev/teapot/sub/Sub.kt -------------------------------------------------------------------------------- /teapot/src/test/java/dev/teapot/CompositeComponentTest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/teapot/src/test/java/dev/teapot/CompositeComponentTest.kt -------------------------------------------------------------------------------- /teapotextensions/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /teapotextensions/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/teapotextensions/build.gradle -------------------------------------------------------------------------------- /teapotextensions/gradle.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/teapotextensions/gradle.properties -------------------------------------------------------------------------------- /teapotextensions/src/main/java/dev/teapot/extensions/cachedentity/CachedEntityFeature.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/teapotextensions/src/main/java/dev/teapot/extensions/cachedentity/CachedEntityFeature.kt -------------------------------------------------------------------------------- /teapotextensions/src/main/java/dev/teapot/extensions/cachedentity/model.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/teapotextensions/src/main/java/dev/teapot/extensions/cachedentity/model.kt -------------------------------------------------------------------------------- /teapotextensions/src/main/java/dev/teapot/extensions/cachedpaging/CachedPagingFeature.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/teapotextensions/src/main/java/dev/teapot/extensions/cachedpaging/CachedPagingFeature.kt -------------------------------------------------------------------------------- /teapotextensions/src/main/java/dev/teapot/extensions/cachedpaging/builder.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/teapotextensions/src/main/java/dev/teapot/extensions/cachedpaging/builder.kt -------------------------------------------------------------------------------- /teapotextensions/src/main/java/dev/teapot/extensions/cachedpaging/commands.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/teapotextensions/src/main/java/dev/teapot/extensions/cachedpaging/commands.kt -------------------------------------------------------------------------------- /teapotextensions/src/main/java/dev/teapot/extensions/cachedpaging/contract.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/teapotextensions/src/main/java/dev/teapot/extensions/cachedpaging/contract.kt -------------------------------------------------------------------------------- /teapotextensions/src/main/java/dev/teapot/extensions/cachedpaging/messages.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/teapotextensions/src/main/java/dev/teapot/extensions/cachedpaging/messages.kt -------------------------------------------------------------------------------- /teapotextensions/src/main/java/dev/teapot/extensions/cachedpaging/model.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/teapotextensions/src/main/java/dev/teapot/extensions/cachedpaging/model.kt -------------------------------------------------------------------------------- /teapotextensions/src/main/java/dev/teapot/extensions/paging/PagingFeature.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/teapotextensions/src/main/java/dev/teapot/extensions/paging/PagingFeature.kt -------------------------------------------------------------------------------- /teapotextensions/src/main/java/dev/teapot/extensions/paging/builder.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/teapotextensions/src/main/java/dev/teapot/extensions/paging/builder.kt -------------------------------------------------------------------------------- /teapotextensions/src/main/java/dev/teapot/extensions/paging/contract.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/teapotextensions/src/main/java/dev/teapot/extensions/paging/contract.kt -------------------------------------------------------------------------------- /teapotextensions/src/main/java/dev/teapot/extensions/paging/coroutines.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/teapotextensions/src/main/java/dev/teapot/extensions/paging/coroutines.kt -------------------------------------------------------------------------------- /teapotextensions/src/main/java/dev/teapot/extensions/paging/model.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/teapotextensions/src/main/java/dev/teapot/extensions/paging/model.kt -------------------------------------------------------------------------------- /teapotextensions/src/main/java/dev/teapot/extensions/paging/rx.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/teapotextensions/src/main/java/dev/teapot/extensions/paging/rx.kt -------------------------------------------------------------------------------- /teapotextensions/src/test/java/dev/teapot/extensions/CachedPagingFeatureNoCacheCaseSpec.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/teapotextensions/src/test/java/dev/teapot/extensions/CachedPagingFeatureNoCacheCaseSpec.kt -------------------------------------------------------------------------------- /teapotextensions/src/test/java/dev/teapot/extensions/CachedPagingFeatureVariousCasesSpec.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/teapotextensions/src/test/java/dev/teapot/extensions/CachedPagingFeatureVariousCasesSpec.kt -------------------------------------------------------------------------------- /teapotextensions/src/test/java/dev/teapot/extensions/CachedPagingFeatureWithCacheCaseSpec.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/teapotextensions/src/test/java/dev/teapot/extensions/CachedPagingFeatureWithCacheCaseSpec.kt -------------------------------------------------------------------------------- /teapotextensions/src/test/java/dev/teapot/extensions/PagingFeatureSpec.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/teapotextensions/src/test/java/dev/teapot/extensions/PagingFeatureSpec.kt -------------------------------------------------------------------------------- /teapottest/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /teapottest/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/teapottest/build.gradle -------------------------------------------------------------------------------- /teapottest/gradle.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/teapottest/gradle.properties -------------------------------------------------------------------------------- /teapottest/src/main/java/dev/teapot/test/TeapotSpec.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sgrekov/Teapot/HEAD/teapottest/src/main/java/dev/teapot/test/TeapotSpec.kt --------------------------------------------------------------------------------