in plugin/src/main/kotlin/com/android/gradle/replicator/GatherModuleInfoTask.kt [73:124]
fun action() {
val pluginList: List<PluginType> = plugins.get()
val androidInputs = androidInputs.orNull
val javaSources = if (pluginList.containsJava() || pluginList.containsAndroid()) {
getSourceFilesInfo("**/*.java", androidInputs)
} else {
null
}
val kotlinSources = if (pluginList.containsKotlin()) {
getSourceFilesInfo("**/*.kt", androidInputs)
} else {
null
}
val androidResources = if (pluginList.containsAndroid()) {
getAndroidResourceFilesInfo(
ANDROID_RESOURCE_FOLDER_CONVENTION, androidInputs)
} else {
null
}
val javaResources = if (pluginList.containsJava()
|| pluginList.containsAndroid()
|| pluginList.containsKotlin()) {
getJavaResourceFilesInfo(androidInputs)
} else {
null
}
val assets = if (pluginList.containsAndroid()) {
getAssetFilesInfo(androidInputs)
} else {
null
}
val moduleInfo = DefaultModuleInfo(
path = projectPath.get(),
plugins = plugins.get(),
javaSources = javaSources,
kotlinSources = kotlinSources,
androidResources = androidResources,
javaResources = javaResources,
assets = assets,
dependencies = dependencies.get().map { it.toInfo() },
android = androidInputs?.toInfo()
)
outputFile.get().asFile.writeText(Serializer.instance().serialize(moduleInfo))
}