├── .gitignore ├── .idea └── copyright │ ├── epam_open_sorce.xml │ └── profiles_settings.xml ├── LICENSE ├── README.md ├── gradle.properties ├── gradle └── wrapper │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── sample ├── .gitignore ├── build.gradle ├── proguard-rules.pro └── src │ └── main │ ├── AndroidManifest.xml │ ├── java │ └── com │ │ └── epam │ │ └── viewmodelinjectionref │ │ ├── MainActivity.kt │ │ ├── MainApplication.kt │ │ ├── SampleViewModel.kt │ │ ├── dagger │ │ ├── ApplicationComponent.kt │ │ └── ModelModule.kt │ │ └── data │ │ └── Repository.kt │ └── res │ ├── layout │ └── sample_activity.xml │ └── values │ ├── colors.xml │ ├── strings.xml │ └── styles.xml ├── settings.gradle ├── viewmodel-androidx-stub ├── .gitignore ├── build.gradle ├── publish.gradle └── src │ └── main │ └── java │ └── androidx │ └── lifecycle │ ├── ViewModel.java │ └── ViewModelProvider.java ├── viewmodel-inject-annotations ├── .gitignore ├── build.gradle ├── publish.gradle └── src │ └── main │ └── java │ └── com │ └── epam │ └── inject │ └── viewmodel │ ├── AssistedViewModel.java │ ├── AssistedViewModelFactory.java │ └── ViewModelKey.java └── viewmodel-inject-processor ├── .gitignore ├── build.gradle ├── detekt-config.yml ├── detekt.gradle ├── ktlint.gradle ├── publish.gradle └── src ├── main ├── java │ └── com │ │ └── epam │ │ └── inject │ │ └── viewmodel │ │ └── processor │ │ ├── AssistedViewModelProcessor.kt │ │ ├── filer │ │ └── FileWriter.kt │ │ ├── generator │ │ ├── FactoryGenerator.kt │ │ └── ModuleGenerator.kt │ │ └── store │ │ └── AssistedViewModelStore.kt └── resources │ └── META-INF │ └── services │ └── javax.annotation.processing.Processor └── test └── java └── com └── epam └── inject └── viewmodel └── processor ├── FactoryTest.kt ├── ModuleTest.kt └── ViewModelStoreTest.kt /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/epam-mobile-lab/viewmodel-inject-dagger/HEAD/.gitignore -------------------------------------------------------------------------------- /.idea/copyright/epam_open_sorce.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/epam-mobile-lab/viewmodel-inject-dagger/HEAD/.idea/copyright/epam_open_sorce.xml -------------------------------------------------------------------------------- /.idea/copyright/profiles_settings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/epam-mobile-lab/viewmodel-inject-dagger/HEAD/.idea/copyright/profiles_settings.xml -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/epam-mobile-lab/viewmodel-inject-dagger/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/epam-mobile-lab/viewmodel-inject-dagger/HEAD/README.md -------------------------------------------------------------------------------- /gradle.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/epam-mobile-lab/viewmodel-inject-dagger/HEAD/gradle.properties -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/epam-mobile-lab/viewmodel-inject-dagger/HEAD/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/epam-mobile-lab/viewmodel-inject-dagger/HEAD/gradle/wrapper/gradle-wrapper.properties -------------------------------------------------------------------------------- /gradlew: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/epam-mobile-lab/viewmodel-inject-dagger/HEAD/gradlew -------------------------------------------------------------------------------- /gradlew.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/epam-mobile-lab/viewmodel-inject-dagger/HEAD/gradlew.bat -------------------------------------------------------------------------------- /sample/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/epam-mobile-lab/viewmodel-inject-dagger/HEAD/sample/.gitignore -------------------------------------------------------------------------------- /sample/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/epam-mobile-lab/viewmodel-inject-dagger/HEAD/sample/build.gradle -------------------------------------------------------------------------------- /sample/proguard-rules.pro: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/epam-mobile-lab/viewmodel-inject-dagger/HEAD/sample/proguard-rules.pro -------------------------------------------------------------------------------- /sample/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/epam-mobile-lab/viewmodel-inject-dagger/HEAD/sample/src/main/AndroidManifest.xml -------------------------------------------------------------------------------- /sample/src/main/java/com/epam/viewmodelinjectionref/MainActivity.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/epam-mobile-lab/viewmodel-inject-dagger/HEAD/sample/src/main/java/com/epam/viewmodelinjectionref/MainActivity.kt -------------------------------------------------------------------------------- /sample/src/main/java/com/epam/viewmodelinjectionref/MainApplication.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/epam-mobile-lab/viewmodel-inject-dagger/HEAD/sample/src/main/java/com/epam/viewmodelinjectionref/MainApplication.kt -------------------------------------------------------------------------------- /sample/src/main/java/com/epam/viewmodelinjectionref/SampleViewModel.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/epam-mobile-lab/viewmodel-inject-dagger/HEAD/sample/src/main/java/com/epam/viewmodelinjectionref/SampleViewModel.kt -------------------------------------------------------------------------------- /sample/src/main/java/com/epam/viewmodelinjectionref/dagger/ApplicationComponent.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/epam-mobile-lab/viewmodel-inject-dagger/HEAD/sample/src/main/java/com/epam/viewmodelinjectionref/dagger/ApplicationComponent.kt -------------------------------------------------------------------------------- /sample/src/main/java/com/epam/viewmodelinjectionref/dagger/ModelModule.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/epam-mobile-lab/viewmodel-inject-dagger/HEAD/sample/src/main/java/com/epam/viewmodelinjectionref/dagger/ModelModule.kt -------------------------------------------------------------------------------- /sample/src/main/java/com/epam/viewmodelinjectionref/data/Repository.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/epam-mobile-lab/viewmodel-inject-dagger/HEAD/sample/src/main/java/com/epam/viewmodelinjectionref/data/Repository.kt -------------------------------------------------------------------------------- /sample/src/main/res/layout/sample_activity.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/epam-mobile-lab/viewmodel-inject-dagger/HEAD/sample/src/main/res/layout/sample_activity.xml -------------------------------------------------------------------------------- /sample/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/epam-mobile-lab/viewmodel-inject-dagger/HEAD/sample/src/main/res/values/colors.xml -------------------------------------------------------------------------------- /sample/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/epam-mobile-lab/viewmodel-inject-dagger/HEAD/sample/src/main/res/values/strings.xml -------------------------------------------------------------------------------- /sample/src/main/res/values/styles.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/epam-mobile-lab/viewmodel-inject-dagger/HEAD/sample/src/main/res/values/styles.xml -------------------------------------------------------------------------------- /settings.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/epam-mobile-lab/viewmodel-inject-dagger/HEAD/settings.gradle -------------------------------------------------------------------------------- /viewmodel-androidx-stub/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /viewmodel-androidx-stub/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/epam-mobile-lab/viewmodel-inject-dagger/HEAD/viewmodel-androidx-stub/build.gradle -------------------------------------------------------------------------------- /viewmodel-androidx-stub/publish.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/epam-mobile-lab/viewmodel-inject-dagger/HEAD/viewmodel-androidx-stub/publish.gradle -------------------------------------------------------------------------------- /viewmodel-androidx-stub/src/main/java/androidx/lifecycle/ViewModel.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/epam-mobile-lab/viewmodel-inject-dagger/HEAD/viewmodel-androidx-stub/src/main/java/androidx/lifecycle/ViewModel.java -------------------------------------------------------------------------------- /viewmodel-androidx-stub/src/main/java/androidx/lifecycle/ViewModelProvider.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/epam-mobile-lab/viewmodel-inject-dagger/HEAD/viewmodel-androidx-stub/src/main/java/androidx/lifecycle/ViewModelProvider.java -------------------------------------------------------------------------------- /viewmodel-inject-annotations/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/epam-mobile-lab/viewmodel-inject-dagger/HEAD/viewmodel-inject-annotations/.gitignore -------------------------------------------------------------------------------- /viewmodel-inject-annotations/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/epam-mobile-lab/viewmodel-inject-dagger/HEAD/viewmodel-inject-annotations/build.gradle -------------------------------------------------------------------------------- /viewmodel-inject-annotations/publish.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/epam-mobile-lab/viewmodel-inject-dagger/HEAD/viewmodel-inject-annotations/publish.gradle -------------------------------------------------------------------------------- /viewmodel-inject-annotations/src/main/java/com/epam/inject/viewmodel/AssistedViewModel.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/epam-mobile-lab/viewmodel-inject-dagger/HEAD/viewmodel-inject-annotations/src/main/java/com/epam/inject/viewmodel/AssistedViewModel.java -------------------------------------------------------------------------------- /viewmodel-inject-annotations/src/main/java/com/epam/inject/viewmodel/AssistedViewModelFactory.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/epam-mobile-lab/viewmodel-inject-dagger/HEAD/viewmodel-inject-annotations/src/main/java/com/epam/inject/viewmodel/AssistedViewModelFactory.java -------------------------------------------------------------------------------- /viewmodel-inject-annotations/src/main/java/com/epam/inject/viewmodel/ViewModelKey.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/epam-mobile-lab/viewmodel-inject-dagger/HEAD/viewmodel-inject-annotations/src/main/java/com/epam/inject/viewmodel/ViewModelKey.java -------------------------------------------------------------------------------- /viewmodel-inject-processor/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/epam-mobile-lab/viewmodel-inject-dagger/HEAD/viewmodel-inject-processor/.gitignore -------------------------------------------------------------------------------- /viewmodel-inject-processor/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/epam-mobile-lab/viewmodel-inject-dagger/HEAD/viewmodel-inject-processor/build.gradle -------------------------------------------------------------------------------- /viewmodel-inject-processor/detekt-config.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/epam-mobile-lab/viewmodel-inject-dagger/HEAD/viewmodel-inject-processor/detekt-config.yml -------------------------------------------------------------------------------- /viewmodel-inject-processor/detekt.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/epam-mobile-lab/viewmodel-inject-dagger/HEAD/viewmodel-inject-processor/detekt.gradle -------------------------------------------------------------------------------- /viewmodel-inject-processor/ktlint.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/epam-mobile-lab/viewmodel-inject-dagger/HEAD/viewmodel-inject-processor/ktlint.gradle -------------------------------------------------------------------------------- /viewmodel-inject-processor/publish.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/epam-mobile-lab/viewmodel-inject-dagger/HEAD/viewmodel-inject-processor/publish.gradle -------------------------------------------------------------------------------- /viewmodel-inject-processor/src/main/java/com/epam/inject/viewmodel/processor/AssistedViewModelProcessor.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/epam-mobile-lab/viewmodel-inject-dagger/HEAD/viewmodel-inject-processor/src/main/java/com/epam/inject/viewmodel/processor/AssistedViewModelProcessor.kt -------------------------------------------------------------------------------- /viewmodel-inject-processor/src/main/java/com/epam/inject/viewmodel/processor/filer/FileWriter.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/epam-mobile-lab/viewmodel-inject-dagger/HEAD/viewmodel-inject-processor/src/main/java/com/epam/inject/viewmodel/processor/filer/FileWriter.kt -------------------------------------------------------------------------------- /viewmodel-inject-processor/src/main/java/com/epam/inject/viewmodel/processor/generator/FactoryGenerator.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/epam-mobile-lab/viewmodel-inject-dagger/HEAD/viewmodel-inject-processor/src/main/java/com/epam/inject/viewmodel/processor/generator/FactoryGenerator.kt -------------------------------------------------------------------------------- /viewmodel-inject-processor/src/main/java/com/epam/inject/viewmodel/processor/generator/ModuleGenerator.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/epam-mobile-lab/viewmodel-inject-dagger/HEAD/viewmodel-inject-processor/src/main/java/com/epam/inject/viewmodel/processor/generator/ModuleGenerator.kt -------------------------------------------------------------------------------- /viewmodel-inject-processor/src/main/java/com/epam/inject/viewmodel/processor/store/AssistedViewModelStore.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/epam-mobile-lab/viewmodel-inject-dagger/HEAD/viewmodel-inject-processor/src/main/java/com/epam/inject/viewmodel/processor/store/AssistedViewModelStore.kt -------------------------------------------------------------------------------- /viewmodel-inject-processor/src/main/resources/META-INF/services/javax.annotation.processing.Processor: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/epam-mobile-lab/viewmodel-inject-dagger/HEAD/viewmodel-inject-processor/src/main/resources/META-INF/services/javax.annotation.processing.Processor -------------------------------------------------------------------------------- /viewmodel-inject-processor/src/test/java/com/epam/inject/viewmodel/processor/FactoryTest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/epam-mobile-lab/viewmodel-inject-dagger/HEAD/viewmodel-inject-processor/src/test/java/com/epam/inject/viewmodel/processor/FactoryTest.kt -------------------------------------------------------------------------------- /viewmodel-inject-processor/src/test/java/com/epam/inject/viewmodel/processor/ModuleTest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/epam-mobile-lab/viewmodel-inject-dagger/HEAD/viewmodel-inject-processor/src/test/java/com/epam/inject/viewmodel/processor/ModuleTest.kt -------------------------------------------------------------------------------- /viewmodel-inject-processor/src/test/java/com/epam/inject/viewmodel/processor/ViewModelStoreTest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/epam-mobile-lab/viewmodel-inject-dagger/HEAD/viewmodel-inject-processor/src/test/java/com/epam/inject/viewmodel/processor/ViewModelStoreTest.kt --------------------------------------------------------------------------------