in src/com/intellij/idea/plugin/hybris/project/configurators/MavenConfigurator.kt [33:79]
fun configureAfterImport(
project: Project,
hybrisProjectDescriptor: HybrisProjectDescriptor
): List<() -> Unit> {
val mavenModules = hybrisProjectDescriptor.modulesChosenForImport
.filterIsInstance<MavenModuleDescriptor>()
.takeIf { it.isNotEmpty() }
?: return emptyList()
val actions = mavenModules
.asSequence()
.map { it.moduleRootDirectory }
.map { File(it, MavenConstants.POM_XML) }
.filter { it.exists() && it.isFile }
.mapNotNull { VfsUtil.findFileByIoFile(it, true) }
.map { vf ->
MavenProjectBuilder()
.also {
it.setUpdate(MavenProjectsManager.getInstance(project).isMavenizedProject)
it.setFileToImport(vf)
}
}
.filter {
val path = it.rootPath
?.toAbsolutePath()
?.toString()
mavenModules.any { module: MavenModuleDescriptor -> module.moduleRootDirectory.absolutePath == path }
}
.map {
{
try {
it.commit(project, null, ModulesProvider.EMPTY_MODULES_PROVIDER)
} finally {
it.cleanup()
}
Unit
}
}
.toMutableList()
actions.add() {
MavenProjectsManager.getInstance(project).importProjects()
}
return actions
}