File tree Expand file tree Collapse file tree
plugin/src/main/kotlin/com/github/gmazzo/buildconfig Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -33,19 +33,13 @@ public class BuildConfigPlugin : Plugin<Project> {
3333 " Gradle version must be at least $MIN_GRADLE_VERSION "
3434 }
3535
36- val sourceSets = objects.domainObjectContainer(DefaultBuildConfigSourceSet ::class )
37-
38- val defaultSS = sourceSets.create(SourceSet .MAIN_SOURCE_SET_NAME )
39-
4036 val extension = extensions.create(
4137 BuildConfigExtension ::class .java,
4238 " buildConfig" ,
4339 DefaultBuildConfigExtension ::class .java,
44- sourceSets,
45- defaultSS,
46- ) as BuildConfigExtensionInternal
40+ ) as DefaultBuildConfigExtension
4741
48- sourceSets.configureEach { configureSourceSet(it, defaultSS ) }
42+ extension. sourceSets.configureEach { configureSourceSet(it, extension.defaultSourceSet ) }
4943
5044 extension.generateAtSync
5145 .convention(
@@ -56,7 +50,7 @@ public class BuildConfigPlugin : Plugin<Project> {
5650 .finalizeValueOnRead()
5751
5852 afterEvaluate {
59- sourceSets.toList() // force configuration
53+ extension. sourceSets.toList() // force configuration
6054
6155 // generate at sync
6256 if (extension.generateAtSync.get() && isGradleSync) {
Original file line number Diff line number Diff line change @@ -3,7 +3,7 @@ package com.github.gmazzo.buildconfig.internal
33import com.github.gmazzo.buildconfig.BuildConfigExtension
44import org.gradle.api.NamedDomainObjectContainer
55
6- internal interface BuildConfigExtensionInternal : BuildConfigExtension {
6+ internal interface BuildConfigExtensionInternal : BuildConfigExtension , BuildConfigSourceSetInternal {
77
88 override val sourceSets: NamedDomainObjectContainer <out BuildConfigSourceSetInternal >
99
Original file line number Diff line number Diff line change 11package com.github.gmazzo.buildconfig.internal
22
3+ import javax.inject.Inject
34import org.gradle.api.NamedDomainObjectContainer
5+ import org.gradle.api.model.ObjectFactory
6+ import org.gradle.api.tasks.SourceSet
7+ import org.gradle.kotlin.dsl.domainObjectContainer
48
5- internal abstract class DefaultBuildConfigExtension (
9+ internal abstract class DefaultBuildConfigExtension private constructor (
610 override val sourceSets : NamedDomainObjectContainer <BuildConfigSourceSetInternal >,
7- defaultSourceSet : BuildConfigSourceSetInternal
11+ val defaultSourceSet : BuildConfigSourceSetInternal = sourceSets.maybeCreate( SourceSet . MAIN_SOURCE_SET_NAME )
812) : BuildConfigExtensionInternal,
913 BuildConfigSourceSetInternal by defaultSourceSet,
10- GroovyNullValueWorkaround ()
14+ GroovyNullValueWorkaround () {
15+
16+ @Inject
17+ @Suppress(" UNCHECKED_CAST" )
18+ constructor (objects: ObjectFactory ): this (
19+ objects.domainObjectContainer(DefaultBuildConfigSourceSet ::class ) as NamedDomainObjectContainer <BuildConfigSourceSetInternal >,
20+ )
21+
22+ }
You can’t perform that action at this time.
0 commit comments