in src/main/kotlin/org/jetbrains/intellij/platform/gradle/utils/IntelliJPlatformCacheResolver.kt [139:167]
fun resolve(configurationName: String, configure: IntelliJPlatformDependencyConfiguration.() -> Unit): Path {
val dependenciesHelper = dependenciesHelperProvider.get()
val requestedProvider = dependenciesHelper.requestedIntelliJPlatforms.set(
objects.newInstance<IntelliJPlatformDependencyConfiguration>(objects, extensionProvider).apply(configure),
configurationName,
)
val targetDirectory = parameters.cacheDirectory.dir(
requestedProvider.map {
parameters.name.get().invoke(it)
},
).asPath
if (targetDirectory.exists() && targetDirectory.listFiles().isNotEmpty()) {
return targetDirectory
}
val configuration = configurations.create(Configurations.INTELLIJ_PLATFORM_DEPENDENCY.withRandomSuffix)
dependenciesHelper.addIntelliJPlatformDependency(
requestedIntelliJPlatformProvider = requestedProvider,
configurationName = configuration.name,
)
extractorService.get().extract(
path = configuration.files.single().toPath(),
targetDirectory = targetDirectory,
)
return targetDirectory
}