fun configureAfterImport()

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
    }