Skip to content

Commit

Permalink
Adds a supertype for leaf dokka tasks that defines dokkaSourceSets (#…
Browse files Browse the repository at this point in the history
…1891)

* Adds a supertype for leaf dokka tasks that defines dokkaSourceSets

* Extract implementation of dokkaSourceSets to AbstractDokkaLeafTask
  • Loading branch information
rnett authored May 4, 2021
1 parent 6a6017a commit 430f2c3
Show file tree
Hide file tree
Showing 4 changed files with 22 additions and 29 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
package org.jetbrains.dokka.gradle;

import org.gradle.api.NamedDomainObjectContainer
import org.gradle.api.internal.plugins.DslObject
import org.gradle.api.tasks.Internal

abstract class AbstractDokkaLeafTask() : AbstractDokkaTask() {

@get:Internal
val dokkaSourceSets: NamedDomainObjectContainer<GradleDokkaSourceSetBuilder> =
project.container(GradleDokkaSourceSetBuilder::class.java, gradleDokkaSourceSetBuilderFactory())
.also { container ->
DslObject(this).extensions.add("dokkaSourceSets", container)
project.kotlinOrNull?.sourceSets?.all { kotlinSourceSet ->
container.register(kotlinSourceSet.name) { dokkaSourceSet ->
dokkaSourceSet.configureWithKotlinSourceSet(kotlinSourceSet)
}
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,6 @@ import org.gradle.api.Project
import org.gradle.api.Task
import org.gradle.api.tasks.Internal
import org.gradle.api.tasks.Nested
import org.jetbrains.dokka.DokkaBootstrap
import org.jetbrains.dokka.DokkaBootstrapImpl
import kotlin.reflect.KClass

abstract class AbstractDokkaParentTask : AbstractDokkaTask() {

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,19 +6,7 @@ import org.gradle.api.tasks.Internal
import org.gradle.api.tasks.Nested
import org.jetbrains.dokka.*

abstract class DokkaTask : AbstractDokkaTask() {

@get:Internal
val dokkaSourceSets: NamedDomainObjectContainer<GradleDokkaSourceSetBuilder> =
project.container(GradleDokkaSourceSetBuilder::class.java, gradleDokkaSourceSetBuilderFactory())
.also { container ->
DslObject(this).extensions.add("dokkaSourceSets", container)
project.kotlinOrNull?.sourceSets?.all { kotlinSourceSet ->
container.register(kotlinSourceSet.name) { dokkaSourceSet ->
dokkaSourceSet.configureWithKotlinSourceSet(kotlinSourceSet)
}
}
}
abstract class DokkaTask : AbstractDokkaLeafTask() {

/**
* Only contains source sets that are marked with `isDocumented`.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,19 +7,7 @@ import org.gradle.api.tasks.Nested
import org.jetbrains.dokka.DokkaConfigurationImpl
import org.jetbrains.dokka.build

abstract class DokkaTaskPartial : AbstractDokkaTask() {

@get:Internal
val dokkaSourceSets: NamedDomainObjectContainer<GradleDokkaSourceSetBuilder> =
project.container(GradleDokkaSourceSetBuilder::class.java, gradleDokkaSourceSetBuilderFactory())
.also { container ->
DslObject(this).extensions.add("dokkaSourceSets", container)
project.kotlinOrNull?.sourceSets?.all { kotlinSourceSet ->
container.register(kotlinSourceSet.name) { dokkaSourceSet ->
dokkaSourceSet.configureWithKotlinSourceSet(kotlinSourceSet)
}
}
}
abstract class DokkaTaskPartial : AbstractDokkaLeafTask() {

/**
* Only contains source sets that are marked with `isDocumented`.
Expand Down

0 comments on commit 430f2c3

Please sign in to comment.