From 8e5c63d035ef44a269b8c43430f43f5c8eebfb63 Mon Sep 17 00:00:00 2001 From: Ignat Beresnev Date: Fri, 10 Nov 2023 11:46:54 +0100 Subject: Restructure the project to utilize included builds (#3174) * Refactor and simplify artifact publishing * Update Gradle to 8.4 * Refactor and simplify convention plugins and build scripts Fixes #3132 --------- Co-authored-by: Adam <897017+aSemy@users.noreply.github.com> Co-authored-by: Oleg Yukhnevich --- .../src/main/kotlin/AllModulesPageGeneration.kt | 80 ---------------------- 1 file changed, 80 deletions(-) delete mode 100644 plugins/all-modules-page/src/main/kotlin/AllModulesPageGeneration.kt (limited to 'plugins/all-modules-page/src/main/kotlin/AllModulesPageGeneration.kt') diff --git a/plugins/all-modules-page/src/main/kotlin/AllModulesPageGeneration.kt b/plugins/all-modules-page/src/main/kotlin/AllModulesPageGeneration.kt deleted file mode 100644 index 11d2d32c..00000000 --- a/plugins/all-modules-page/src/main/kotlin/AllModulesPageGeneration.kt +++ /dev/null @@ -1,80 +0,0 @@ -/* - * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license. - */ - -package org.jetbrains.dokka.allModulesPage - -import org.jetbrains.dokka.CoreExtensions -import org.jetbrains.dokka.Timer -import org.jetbrains.dokka.generation.Generation -import org.jetbrains.dokka.pages.RootPageNode -import org.jetbrains.dokka.plugability.DokkaContext -import org.jetbrains.dokka.plugability.plugin -import org.jetbrains.dokka.plugability.query -import org.jetbrains.dokka.plugability.querySingle -import org.jetbrains.dokka.templates.TemplatingPlugin -import org.jetbrains.dokka.templates.TemplatingResult -import org.jetbrains.dokka.transformers.pages.CreationContext - -public class AllModulesPageGeneration(private val context: DokkaContext) : Generation { - - private val allModulesPagePlugin by lazy { context.plugin() } - private val templatingPlugin by lazy { context.plugin() } - - override fun Timer.generate() { - report("Processing submodules") - val generationContext = processSubmodules() - - report("Creating all modules page") - val pages = createAllModulesPage(generationContext) - - report("Transforming pages") - val transformedPages = transformAllModulesPage(pages) - - report("Rendering") - render(transformedPages) - - report("Processing multimodule") - processMultiModule(transformedPages) - - report("Finish submodule processing") - finishProcessingSubmodules() - - report("Running post-actions") - runPostActions() - } - - override val generationName: String = "index page for project" - - public fun createAllModulesPage(allModulesContext: DefaultAllModulesContext): RootPageNode = - allModulesPagePlugin.querySingle { allModulesPageCreator }.invoke(allModulesContext) - - public fun transformAllModulesPage(pages: RootPageNode): RootPageNode = - allModulesPagePlugin.query { allModulesPageTransformer }.fold(pages) { acc, t -> t(acc) } - - public fun render(transformedPages: RootPageNode) { - context.single(CoreExtensions.renderer).render(transformedPages) - } - - public fun runPostActions() { - context[CoreExtensions.postActions].forEach { it() } - } - - public fun processSubmodules(): DefaultAllModulesContext { - return templatingPlugin.querySingle { submoduleTemplateProcessor } - .process(context.configuration.modules) - .let { DefaultAllModulesContext(it) } - } - - public fun processMultiModule(root: RootPageNode) { - templatingPlugin.querySingle { multimoduleTemplateProcessor }.process(root) - } - - public fun finishProcessingSubmodules() { - templatingPlugin.query { templateProcessingStrategy }.forEach { it.finish(context.configuration.outputDir) } - } - - public data class DefaultAllModulesContext(val nonEmptyModules: List) : CreationContext { - public constructor(templating: TemplatingResult) : this(templating.modules) - } -} -- cgit