Skip to content

Commit ce41605

Browse files
committed
Update source set names
1 parent e827f37 commit ce41605

File tree

3 files changed

+12
-26
lines changed

3 files changed

+12
-26
lines changed

gradle-plugin/src/main/kotlin/kotlinx/rpc/grpc/DefaultGrpcExtension.kt

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@ internal open class DefaultGrpcExtension @Inject constructor(
5959

6060
createDefaultProtocPlugins()
6161

62-
project.configureProtoExtensions { _, _, protoSourceSet ->
62+
project.configureProtoExtensions { _, protoSourceSet ->
6363
protoSourceSet.protocPlugin(protocPlugins.protobufJava)
6464
protoSourceSet.protocPlugin(protocPlugins.grpcJava)
6565
protoSourceSet.protocPlugin(protocPlugins.grpcKotlin)
@@ -79,7 +79,7 @@ internal open class DefaultGrpcExtension @Inject constructor(
7979

8080
@Suppress("detekt.LongMethod", "detekt.CyclomaticComplexMethod")
8181
private fun Project.configureTasks(protoSourceSet: DefaultProtoSourceSet) {
82-
val baseName = protoSourceSet.baseName.get()
82+
val baseName = protoSourceSet.name
8383
val baseGenDir = project.protoBuildDirSourceSets.resolve(baseName)
8484

8585
val pairSourceSet = protoSourceSet.correspondingMainSourceSetOrNull()
@@ -224,7 +224,7 @@ internal open class DefaultGrpcExtension @Inject constructor(
224224
.kotlin.srcDirs(out.resolve(plugin.name))
225225
} ?: error(
226226
"Unable to find fitting source directory set " +
227-
"for plugin '${plugin.name}' in '$protoSourceSet' source set"
227+
"for plugin '${plugin.name}' in '$protoSourceSet' proto source set"
228228
)
229229
}
230230
}
@@ -293,11 +293,11 @@ internal open class DefaultGrpcExtension @Inject constructor(
293293

294294
private fun DefaultProtoSourceSet.correspondingMainSourceSetOrNull(): DefaultProtoSourceSet? {
295295
return when {
296-
name.endsWith("Main") -> {
296+
name.lowercase().endsWith("main") -> {
297297
null
298298
}
299299

300-
name.endsWith("Test") -> {
300+
name.lowercase().endsWith("test") -> {
301301
project.protoSourceSets.getByName(correspondingMainName()) as DefaultProtoSourceSet
302302
}
303303

gradle-plugin/src/main/kotlin/kotlinx/rpc/proto/DefaultProtoSourceSet.kt

Lines changed: 6 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,6 @@ internal open class DefaultProtoSourceSet @Inject constructor(
3838
internal val project: Project,
3939
override val name: String,
4040
) : ProtoSourceSet {
41-
val baseName: Property<String> = project.objects.property<String>()
4241
val languageSourceSets: ListProperty<Any> = project.objects.listProperty<Any>()
4342
val protocPlugins: ListProperty<String> = project.objects.listProperty<String>().convention(emptyList())
4443
val generateTask: Property<BufGenerateTask> = project.objects.property<BufGenerateTask>()
@@ -55,7 +54,7 @@ internal open class DefaultProtoSourceSet @Inject constructor(
5554
PROTO_SOURCE_DIRECTORY_NAME,
5655
"Proto sources",
5756
).apply {
58-
srcDirs(baseName.map { "src/$it/proto" })
57+
srcDirs("src/$name/proto")
5958
}
6059

6160
override fun proto(action: Action<SourceDirectorySet>) {
@@ -65,13 +64,11 @@ internal open class DefaultProtoSourceSet @Inject constructor(
6564

6665
internal fun Project.configureProtoExtensions(
6766
configure: Project.(
68-
languageSourceSetName: String,
6967
languageSourceSet: Any,
7068
protoSourceSet: DefaultProtoSourceSet,
7169
) -> Unit
7270
) {
7371
fun findOrCreateAndConfigure(languageSourceSetName: String, languageSourceSet: Any) {
74-
val protoName = languageSourceSetName.sourceSetToProtoName()
7572
val container = project.findOrCreate(PROTO_SOURCE_SETS) {
7673
val container = objects.domainObjectContainer(
7774
ProtoSourceSet::class.java,
@@ -83,9 +80,9 @@ internal fun Project.configureProtoExtensions(
8380
container
8481
}
8582

86-
val protoSourceSet = container.maybeCreate(protoName) as DefaultProtoSourceSet
83+
val protoSourceSet = container.maybeCreate(languageSourceSetName) as DefaultProtoSourceSet
8784

88-
configure(languageSourceSetName, languageSourceSet, protoSourceSet)
85+
configure(languageSourceSet, protoSourceSet)
8986
}
9087

9188
project.withKotlinJvmExtension {
@@ -113,23 +110,12 @@ internal fun Project.configureProtoExtensions(
113110
}
114111
}
115112

116-
private fun String.sourceSetToProtoName(): String {
117-
return when {
118-
this == "main" -> "protoMain"
119-
this == "test" -> "protoTest"
120-
endsWith("Main") -> "${removeSuffix("Main")}ProtoMain"
121-
endsWith("Test") -> "${removeSuffix("Test")}ProtoTest"
122-
else -> throw IllegalArgumentException("Unsupported source set name: $this")
123-
}
124-
}
125-
126113
internal fun Project.createProtoExtensions() {
127-
configureProtoExtensions { languageSourceSetName, languageSourceSet, sourceSet ->
128-
sourceSet.initExtension(languageSourceSetName, languageSourceSet)
114+
configureProtoExtensions { languageSourceSet, sourceSet ->
115+
sourceSet.initExtension(languageSourceSet)
129116
}
130117
}
131118

132-
private fun DefaultProtoSourceSet.initExtension(languageSourceSetName: String, languageSourceSet: Any) {
133-
baseName.set(languageSourceSetName)
119+
private fun DefaultProtoSourceSet.initExtension(languageSourceSet: Any) {
134120
this.languageSourceSets.add(languageSourceSet)
135121
}

protobuf-plugin/build.gradle.kts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ dependencies {
3333
}
3434

3535
protoSourceSets {
36-
protoTest {
36+
test {
3737
proto {
3838
exclude("exclude/**")
3939
}

0 commit comments

Comments
 (0)