[Gradle] kgp-idea.serialize: Change naming schema from Idea* to IdeaKotlin*

KT-54825
This commit is contained in:
Sebastian Sellmair
2022-11-10 14:59:20 +01:00
committed by Space Team
parent 224a237385
commit 786adcaf3f
44 changed files with 281 additions and 282 deletions
@@ -10,17 +10,17 @@ package org.jetbrains.kotlin.gradle.idea.proto
import com.google.protobuf.ByteString
import org.jetbrains.kotlin.gradle.idea.proto.generated.IdeaExtrasProto
import org.jetbrains.kotlin.gradle.idea.proto.generated.ideaExtrasProto
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaExtrasSerializer
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaSerializationContext
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaKotlinExtrasSerializer
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaKotlinSerializationContext
import org.jetbrains.kotlin.tooling.core.*
@Suppress("unchecked_cast")
internal fun IdeaSerializationContext.IdeaExtrasProto(extras: Extras): IdeaExtrasProto {
internal fun IdeaKotlinSerializationContext.IdeaExtrasProto(extras: Extras): IdeaExtrasProto {
val context = this
return ideaExtrasProto {
extras.entries.forEach { (key, value) ->
val serializer = context.extrasSerializationExtension.serializer(key) ?: return@forEach
serializer as IdeaExtrasSerializer<Any>
serializer as IdeaKotlinExtrasSerializer<Any>
val serialized = runCatching { serializer.serialize(context, value) ?: return@forEach }.getOrElse { exception ->
logger.error("Failed to serialize $key, using ${serializer.javaClass.simpleName}", exception)
return@forEach
@@ -32,7 +32,7 @@ internal fun IdeaSerializationContext.IdeaExtrasProto(extras: Extras): IdeaExtra
}
@Suppress("unchecked_cast")
internal fun IdeaSerializationContext.Extras(proto: IdeaExtrasProto): MutableExtras {
internal fun IdeaKotlinSerializationContext.Extras(proto: IdeaExtrasProto): MutableExtras {
return proto.valuesMap.entries.mapNotNull { (keyString, value) ->
val key = Extras.Key.fromString(keyString) as Extras.Key<Any>
val serializer = extrasSerializationExtension.serializer(key) ?: return@mapNotNull null
@@ -13,25 +13,25 @@ import org.jetbrains.kotlin.gradle.idea.kpm.IdeaKpmProject
import org.jetbrains.kotlin.gradle.idea.proto.generated.kpm.IdeaKpmContainerProto
import org.jetbrains.kotlin.gradle.idea.proto.generated.kpm.IdeaKpmSchemaInfoProto
import org.jetbrains.kotlin.gradle.idea.proto.generated.kpm.ideaKpmContainerProto
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaSerializationContext
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaKotlinSerializationContext
import java.io.InputStream
import java.io.OutputStream
import java.nio.ByteBuffer
fun IdeaSerializationContext.IdeaKpmProject(data: ByteArray): IdeaKpmProject? {
fun IdeaKotlinSerializationContext.IdeaKpmProject(data: ByteArray): IdeaKpmProject? {
return IdeaKpmProject(data) { IdeaKpmContainerProto.parseFrom(data) }
}
fun IdeaSerializationContext.IdeaKpmProject(data: ByteBuffer): IdeaKpmProject? {
fun IdeaKotlinSerializationContext.IdeaKpmProject(data: ByteBuffer): IdeaKpmProject? {
return IdeaKpmProject(data) { IdeaKpmContainerProto.parseFrom(data) }
}
fun IdeaSerializationContext.IdeaKpmProject(stream: InputStream): IdeaKpmProject? {
fun IdeaKotlinSerializationContext.IdeaKpmProject(stream: InputStream): IdeaKpmProject? {
return IdeaKpmProject(stream) { IdeaKpmContainerProto.parseFrom(stream) }
}
internal fun <T> IdeaSerializationContext.IdeaKpmProject(data: T, proto: (T) -> IdeaKpmContainerProto): IdeaKpmProject? {
internal fun <T> IdeaKotlinSerializationContext.IdeaKpmProject(data: T, proto: (T) -> IdeaKpmContainerProto): IdeaKpmProject? {
val container = try {
proto(data)
} catch (e: InvalidProtocolBufferException) {
@@ -42,15 +42,15 @@ internal fun <T> IdeaSerializationContext.IdeaKpmProject(data: T, proto: (T) ->
return IdeaKpmProject(container)
}
fun IdeaKpmProject.toByteArray(context: IdeaSerializationContext): ByteArray {
fun IdeaKpmProject.toByteArray(context: IdeaKotlinSerializationContext): ByteArray {
return context.IdeaKpmContainerProto(this).toByteArray()
}
fun IdeaKpmProject.writeTo(output: OutputStream, context: IdeaSerializationContext) {
fun IdeaKpmProject.writeTo(output: OutputStream, context: IdeaKotlinSerializationContext) {
context.IdeaKpmContainerProto(this).writeDelimitedTo(output)
}
internal fun IdeaSerializationContext.IdeaKpmContainerProto(project: IdeaKpmProject): IdeaKpmContainerProto {
internal fun IdeaKotlinSerializationContext.IdeaKpmContainerProto(project: IdeaKpmProject): IdeaKpmContainerProto {
return ideaKpmContainerProto {
schemaVersionMajor = IdeaKpmProtoSchema.versionMajor
schemaVersionMinor = IdeaKpmProtoSchema.versionMinor
@@ -60,7 +60,7 @@ internal fun IdeaSerializationContext.IdeaKpmContainerProto(project: IdeaKpmProj
}
}
internal fun IdeaSerializationContext.IdeaKpmProject(proto: IdeaKpmContainerProto): IdeaKpmProject? {
internal fun IdeaKotlinSerializationContext.IdeaKpmProject(proto: IdeaKpmContainerProto): IdeaKpmProject? {
if (!proto.hasSchemaVersionMajor()) {
logger.error("Missing 'schema_version_major'", Throwable())
return null
@@ -11,10 +11,10 @@ import org.jetbrains.kotlin.gradle.idea.proto.Extras
import org.jetbrains.kotlin.gradle.idea.proto.IdeaExtrasProto
import org.jetbrains.kotlin.gradle.idea.proto.generated.kpm.IdeaKpmContentRootProto
import org.jetbrains.kotlin.gradle.idea.proto.generated.kpm.ideaKpmContentRootProto
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaSerializationContext
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaKotlinSerializationContext
import java.io.File
internal fun IdeaSerializationContext.IdeaKpmContentRootProto(sourceDirectory: IdeaKpmContentRoot): IdeaKpmContentRootProto {
internal fun IdeaKotlinSerializationContext.IdeaKpmContentRootProto(sourceDirectory: IdeaKpmContentRoot): IdeaKpmContentRootProto {
return ideaKpmContentRootProto {
absolutePath = sourceDirectory.file.absolutePath
type = sourceDirectory.type
@@ -22,7 +22,7 @@ internal fun IdeaSerializationContext.IdeaKpmContentRootProto(sourceDirectory: I
}
}
internal fun IdeaSerializationContext.IdeaKpmContentRoot(proto: IdeaKpmContentRootProto): IdeaKpmContentRoot {
internal fun IdeaKotlinSerializationContext.IdeaKpmContentRoot(proto: IdeaKpmContentRootProto): IdeaKpmContentRoot {
return IdeaKpmContentRootImpl(
file = File(proto.absolutePath),
type = proto.type,
@@ -30,10 +30,10 @@ internal fun IdeaSerializationContext.IdeaKpmContentRoot(proto: IdeaKpmContentRo
)
}
internal fun IdeaSerializationContext.IdeaKpmContentRoot(data: ByteArray): IdeaKpmContentRoot {
internal fun IdeaKotlinSerializationContext.IdeaKpmContentRoot(data: ByteArray): IdeaKpmContentRoot {
return IdeaKpmContentRoot(IdeaKpmContentRootProto.parseFrom(data))
}
internal fun IdeaKpmContentRoot.toByteArray(context: IdeaSerializationContext): ByteArray {
internal fun IdeaKpmContentRoot.toByteArray(context: IdeaKotlinSerializationContext): ByteArray {
return context.IdeaKpmContentRootProto(this).toByteArray()
}
@@ -14,9 +14,9 @@ import org.jetbrains.kotlin.gradle.idea.kpm.IdeaKpmUnresolvedBinaryDependency
import org.jetbrains.kotlin.gradle.idea.proto.generated.kpm.IdeaKpmDependencyProto
import org.jetbrains.kotlin.gradle.idea.proto.generated.kpm.IdeaKpmDependencyProto.DependencyCase
import org.jetbrains.kotlin.gradle.idea.proto.generated.kpm.ideaKpmDependencyProto
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaSerializationContext
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaKotlinSerializationContext
internal fun IdeaSerializationContext.IdeaKpmDependencyProto(dependency: IdeaKpmDependency): IdeaKpmDependencyProto {
internal fun IdeaKotlinSerializationContext.IdeaKpmDependencyProto(dependency: IdeaKpmDependency): IdeaKpmDependencyProto {
return ideaKpmDependencyProto {
when (dependency) {
is IdeaKpmResolvedBinaryDependency -> resolvedBinaryDependency = IdeaKpmResolvedBinaryDependencyProto(dependency)
@@ -26,7 +26,7 @@ internal fun IdeaSerializationContext.IdeaKpmDependencyProto(dependency: IdeaKpm
}
}
internal fun IdeaSerializationContext.IdeaKpmDependency(proto: IdeaKpmDependencyProto): IdeaKpmDependency? {
internal fun IdeaKotlinSerializationContext.IdeaKpmDependency(proto: IdeaKpmDependencyProto): IdeaKpmDependency? {
return when (proto.dependencyCase) {
DependencyCase.UNRESOLVED_BINARY_DEPENDENCY -> IdeaKpmUnresolvedBinaryDependency(proto.unresolvedBinaryDependency)
DependencyCase.RESOLVED_BINARY_DEPENDENCY -> IdeaKpmResolvedBinaryDependency(proto.resolvedBinaryDependency)
@@ -11,9 +11,9 @@ import org.jetbrains.kotlin.gradle.idea.proto.Extras
import org.jetbrains.kotlin.gradle.idea.proto.IdeaExtrasProto
import org.jetbrains.kotlin.gradle.idea.proto.generated.kpm.IdeaKpmFragmentProto
import org.jetbrains.kotlin.gradle.idea.proto.generated.kpm.ideaKpmFragmentProto
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaSerializationContext
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaKotlinSerializationContext
internal fun IdeaSerializationContext.IdeaKpmFragmentProto(fragment: IdeaKpmFragment): IdeaKpmFragmentProto {
internal fun IdeaKotlinSerializationContext.IdeaKpmFragmentProto(fragment: IdeaKpmFragment): IdeaKpmFragmentProto {
return ideaKpmFragmentProto {
coordinates = IdeaKpmFragmentCoordinatesProto(fragment.coordinates)
platforms.addAll(fragment.platforms.map { IdeaKpmPlatformProto(it) })
@@ -24,7 +24,7 @@ internal fun IdeaSerializationContext.IdeaKpmFragmentProto(fragment: IdeaKpmFrag
}
}
internal fun IdeaSerializationContext.IdeaKpmFragment(proto: IdeaKpmFragmentProto): IdeaKpmFragment {
internal fun IdeaKotlinSerializationContext.IdeaKpmFragment(proto: IdeaKpmFragmentProto): IdeaKpmFragment {
return IdeaKpmFragmentImpl(
coordinates = IdeaKpmFragmentCoordinates(proto.coordinates),
platforms = proto.platformsList.map { IdeaKpmPlatform(it) }.toSet(),
@@ -35,10 +35,10 @@ internal fun IdeaSerializationContext.IdeaKpmFragment(proto: IdeaKpmFragmentProt
)
}
internal fun IdeaSerializationContext.IdeaKpmFragment(data: ByteArray): IdeaKpmFragment {
internal fun IdeaKotlinSerializationContext.IdeaKpmFragment(data: ByteArray): IdeaKpmFragment {
return IdeaKpmFragment(IdeaKpmFragmentProto.parseFrom(data))
}
internal fun IdeaKpmFragment.toByteArray(context: IdeaSerializationContext): ByteArray {
internal fun IdeaKpmFragment.toByteArray(context: IdeaKotlinSerializationContext): ByteArray {
return context.IdeaKpmFragmentProto(this).toByteArray()
}
@@ -11,9 +11,9 @@ import org.jetbrains.kotlin.gradle.idea.proto.Extras
import org.jetbrains.kotlin.gradle.idea.proto.IdeaExtrasProto
import org.jetbrains.kotlin.gradle.idea.proto.generated.kpm.IdeaKpmFragmentDependencyProto
import org.jetbrains.kotlin.gradle.idea.proto.generated.kpm.ideaKpmFragmentDependencyProto
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaSerializationContext
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaKotlinSerializationContext
internal fun IdeaSerializationContext.IdeaKpmFragmentDependencyProto(dependency: IdeaKpmFragmentDependency): IdeaKpmFragmentDependencyProto {
internal fun IdeaKotlinSerializationContext.IdeaKpmFragmentDependencyProto(dependency: IdeaKpmFragmentDependency): IdeaKpmFragmentDependencyProto {
return ideaKpmFragmentDependencyProto {
type = when (dependency.type) {
IdeaKpmFragmentDependency.Type.Regular -> IdeaKpmFragmentDependencyProto.Type.REGULAR
@@ -26,7 +26,7 @@ internal fun IdeaSerializationContext.IdeaKpmFragmentDependencyProto(dependency:
}
}
internal fun IdeaSerializationContext.IdeaKpmFragmentDependency(proto: IdeaKpmFragmentDependencyProto): IdeaKpmFragmentDependency {
internal fun IdeaKotlinSerializationContext.IdeaKpmFragmentDependency(proto: IdeaKpmFragmentDependencyProto): IdeaKpmFragmentDependency {
return IdeaKpmFragmentDependencyImpl(
type = when (proto.type) {
IdeaKpmFragmentDependencyProto.Type.REGULAR -> IdeaKpmFragmentDependency.Type.Regular
@@ -39,10 +39,10 @@ internal fun IdeaSerializationContext.IdeaKpmFragmentDependency(proto: IdeaKpmFr
)
}
internal fun IdeaSerializationContext.IdeaKpmFragmentDependency(data: ByteArray): IdeaKpmFragmentDependency {
internal fun IdeaKotlinSerializationContext.IdeaKpmFragmentDependency(data: ByteArray): IdeaKpmFragmentDependency {
return IdeaKpmFragmentDependency(IdeaKpmFragmentDependencyProto.parseFrom(data))
}
internal fun IdeaKpmFragmentDependency.toByteArray(context: IdeaSerializationContext): ByteArray {
internal fun IdeaKpmFragmentDependency.toByteArray(context: IdeaKotlinSerializationContext): ByteArray {
return context.IdeaKpmFragmentDependencyProto(this).toByteArray()
}
@@ -10,9 +10,9 @@ import org.jetbrains.kotlin.gradle.idea.kpm.IdeaKpmModuleImpl
import org.jetbrains.kotlin.gradle.idea.kpm.IdeaKpmVariant
import org.jetbrains.kotlin.gradle.idea.proto.generated.kpm.IdeaKpmModuleProto
import org.jetbrains.kotlin.gradle.idea.proto.generated.kpm.ideaKpmModuleProto
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaSerializationContext
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaKotlinSerializationContext
internal fun IdeaSerializationContext.IdeaKpmModuleProto(module: IdeaKpmModule): IdeaKpmModuleProto {
internal fun IdeaKotlinSerializationContext.IdeaKpmModuleProto(module: IdeaKpmModule): IdeaKpmModuleProto {
return ideaKpmModuleProto {
coordinates = IdeaKpmModuleCoordinatesProto(module.coordinates)
fragments.addAll(module.fragments.filter { it !is IdeaKpmVariant }.map { IdeaKpmFragmentProto(it) })
@@ -20,17 +20,17 @@ internal fun IdeaSerializationContext.IdeaKpmModuleProto(module: IdeaKpmModule):
}
}
internal fun IdeaSerializationContext.IdeaKpmModule(proto: IdeaKpmModuleProto): IdeaKpmModule {
internal fun IdeaKotlinSerializationContext.IdeaKpmModule(proto: IdeaKpmModuleProto): IdeaKpmModule {
return IdeaKpmModuleImpl(
coordinates = IdeaKpmModuleCoordinates(proto.coordinates),
fragments = proto.fragmentsList.map { IdeaKpmFragment(it) } + proto.variantsList.map { IdeaKpmVariant(it) }
)
}
internal fun IdeaSerializationContext.IdeaKpmModule(data: ByteArray): IdeaKpmModule {
internal fun IdeaKotlinSerializationContext.IdeaKpmModule(data: ByteArray): IdeaKpmModule {
return IdeaKpmModule(IdeaKpmModuleProto.parseFrom(data))
}
internal fun IdeaKpmModule.toByteArray(context: IdeaSerializationContext): ByteArray {
internal fun IdeaKpmModule.toByteArray(context: IdeaKotlinSerializationContext): ByteArray {
return context.IdeaKpmModuleProto(this).toByteArray()
}
@@ -9,9 +9,9 @@ import org.jetbrains.kotlin.gradle.idea.kpm.*
import org.jetbrains.kotlin.gradle.idea.proto.Extras
import org.jetbrains.kotlin.gradle.idea.proto.IdeaExtrasProto
import org.jetbrains.kotlin.gradle.idea.proto.generated.kpm.*
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaSerializationContext
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaKotlinSerializationContext
internal fun IdeaSerializationContext.IdeaKpmPlatformProto(platform: IdeaKpmPlatform): IdeaKpmPlatformProto {
internal fun IdeaKotlinSerializationContext.IdeaKpmPlatformProto(platform: IdeaKpmPlatform): IdeaKpmPlatformProto {
return ideaKpmPlatformProto {
when (platform) {
is IdeaKpmJsPlatformImpl -> js = IdeaKpmJsPlatformProto(platform)
@@ -23,7 +23,7 @@ internal fun IdeaSerializationContext.IdeaKpmPlatformProto(platform: IdeaKpmPlat
}
}
internal fun IdeaSerializationContext.IdeaKpmPlatform(proto: IdeaKpmPlatformProto): IdeaKpmPlatform {
internal fun IdeaKotlinSerializationContext.IdeaKpmPlatform(proto: IdeaKpmPlatformProto): IdeaKpmPlatform {
return when (proto.platformCase) {
IdeaKpmPlatformProto.PlatformCase.JVM -> IdeaKpmJvmPlatform(proto.jvm)
IdeaKpmPlatformProto.PlatformCase.NATIVE -> IdeaKpmNativePlatform(proto.native)
@@ -36,116 +36,116 @@ internal fun IdeaSerializationContext.IdeaKpmPlatform(proto: IdeaKpmPlatformProt
/* Jvm */
internal fun IdeaSerializationContext.IdeaKpmJvmPlatformProto(platform: IdeaKpmJvmPlatform): IdeaKpmJvmPlatformProto {
internal fun IdeaKotlinSerializationContext.IdeaKpmJvmPlatformProto(platform: IdeaKpmJvmPlatform): IdeaKpmJvmPlatformProto {
return ideaKpmJvmPlatformProto {
if (platform.extras.isNotEmpty()) extras = IdeaExtrasProto(platform.extras)
jvmTarget = platform.jvmTarget
}
}
internal fun IdeaSerializationContext.IdeaKpmJvmPlatform(proto: IdeaKpmJvmPlatformProto): IdeaKpmJvmPlatform {
internal fun IdeaKotlinSerializationContext.IdeaKpmJvmPlatform(proto: IdeaKpmJvmPlatformProto): IdeaKpmJvmPlatform {
return IdeaKpmJvmPlatformImpl(
jvmTarget = proto.jvmTarget,
extras = Extras(proto.extras)
)
}
internal fun IdeaSerializationContext.IdeaKpmJvmPlatform(data: ByteArray): IdeaKpmJvmPlatform {
internal fun IdeaKotlinSerializationContext.IdeaKpmJvmPlatform(data: ByteArray): IdeaKpmJvmPlatform {
return IdeaKpmJvmPlatform(IdeaKpmJvmPlatformProto.parseFrom(data))
}
internal fun IdeaKpmJvmPlatform.toByteArray(context: IdeaSerializationContext): ByteArray {
internal fun IdeaKpmJvmPlatform.toByteArray(context: IdeaKotlinSerializationContext): ByteArray {
return context.IdeaKpmJvmPlatformProto(this).toByteArray()
}
/* Native */
internal fun IdeaSerializationContext.IdeaKpmNativePlatformProto(platform: IdeaKpmNativePlatform): IdeaKpmNativePlatformProto {
internal fun IdeaKotlinSerializationContext.IdeaKpmNativePlatformProto(platform: IdeaKpmNativePlatform): IdeaKpmNativePlatformProto {
return ideaKpmNativePlatformProto {
if (platform.extras.isNotEmpty()) extras = IdeaExtrasProto(platform.extras)
konanTarget = platform.konanTarget
}
}
internal fun IdeaSerializationContext.IdeaKpmNativePlatform(proto: IdeaKpmNativePlatformProto): IdeaKpmNativePlatform {
internal fun IdeaKotlinSerializationContext.IdeaKpmNativePlatform(proto: IdeaKpmNativePlatformProto): IdeaKpmNativePlatform {
return IdeaKpmNativePlatformImpl(
konanTarget = proto.konanTarget,
extras = Extras(proto.extras)
)
}
internal fun IdeaSerializationContext.IdeaKpmNativePlatform(data: ByteArray): IdeaKpmNativePlatform {
internal fun IdeaKotlinSerializationContext.IdeaKpmNativePlatform(data: ByteArray): IdeaKpmNativePlatform {
return IdeaKpmNativePlatform(IdeaKpmNativePlatformProto.parseFrom(data))
}
internal fun IdeaKpmNativePlatform.toByteArray(context: IdeaSerializationContext): ByteArray {
internal fun IdeaKpmNativePlatform.toByteArray(context: IdeaKotlinSerializationContext): ByteArray {
return context.IdeaKpmNativePlatformProto(this).toByteArray()
}
/* Js */
internal fun IdeaSerializationContext.IdeaKpmJsPlatformProto(platform: IdeaKpmJsPlatform): IdeaKpmJsPlatformProto {
internal fun IdeaKotlinSerializationContext.IdeaKpmJsPlatformProto(platform: IdeaKpmJsPlatform): IdeaKpmJsPlatformProto {
return ideaKpmJsPlatformProto {
if (platform.extras.isNotEmpty()) extras = IdeaExtrasProto(platform.extras)
isIr = platform.isIr
}
}
internal fun IdeaSerializationContext.IdeaKpmJsPlatform(proto: IdeaKpmJsPlatformProto): IdeaKpmJsPlatform {
internal fun IdeaKotlinSerializationContext.IdeaKpmJsPlatform(proto: IdeaKpmJsPlatformProto): IdeaKpmJsPlatform {
return IdeaKpmJsPlatformImpl(
isIr = proto.isIr,
extras = Extras(proto.extras)
)
}
internal fun IdeaSerializationContext.IdeaKpmJsPlatform(data: ByteArray): IdeaKpmJsPlatform {
internal fun IdeaKotlinSerializationContext.IdeaKpmJsPlatform(data: ByteArray): IdeaKpmJsPlatform {
return IdeaKpmJsPlatform(IdeaKpmJsPlatformProto.parseFrom(data))
}
internal fun IdeaKpmJsPlatform.toByteArray(context: IdeaSerializationContext): ByteArray {
internal fun IdeaKpmJsPlatform.toByteArray(context: IdeaKotlinSerializationContext): ByteArray {
return context.IdeaKpmJsPlatformProto(this).toByteArray()
}
/* Wasm */
internal fun IdeaSerializationContext.IdeaKpmWasmPlatformProto(platform: IdeaKpmWasmPlatform): IdeaKpmWasmPlatformProto {
internal fun IdeaKotlinSerializationContext.IdeaKpmWasmPlatformProto(platform: IdeaKpmWasmPlatform): IdeaKpmWasmPlatformProto {
return ideaKpmWasmPlatformProto {
if (platform.extras.isNotEmpty()) extras = IdeaExtrasProto(platform.extras)
}
}
internal fun IdeaSerializationContext.IdeaKpmWasmPlatform(proto: IdeaKpmWasmPlatformProto): IdeaKpmWasmPlatform {
internal fun IdeaKotlinSerializationContext.IdeaKpmWasmPlatform(proto: IdeaKpmWasmPlatformProto): IdeaKpmWasmPlatform {
return IdeaKpmWasmPlatformImpl(
extras = Extras(proto.extras)
)
}
internal fun IdeaSerializationContext.IdeaKpmWasmPlatform(data: ByteArray): IdeaKpmWasmPlatform {
internal fun IdeaKotlinSerializationContext.IdeaKpmWasmPlatform(data: ByteArray): IdeaKpmWasmPlatform {
return IdeaKpmWasmPlatform(IdeaKpmWasmPlatformProto.parseFrom(data))
}
internal fun IdeaKpmWasmPlatform.toByteArray(context: IdeaSerializationContext): ByteArray {
internal fun IdeaKpmWasmPlatform.toByteArray(context: IdeaKotlinSerializationContext): ByteArray {
return context.IdeaKpmWasmPlatformProto(this).toByteArray()
}
/* Unknown */
internal fun IdeaSerializationContext.IdeaKpmUnknownPlatformProto(platform: IdeaKpmUnknownPlatform): IdeaKpmUnknownPlatformProto {
internal fun IdeaKotlinSerializationContext.IdeaKpmUnknownPlatformProto(platform: IdeaKpmUnknownPlatform): IdeaKpmUnknownPlatformProto {
return ideaKpmUnknownPlatformProto {
if (platform.extras.isNotEmpty()) extras = IdeaExtrasProto(platform.extras)
}
}
internal fun IdeaSerializationContext.IdeaKpmUnknownPlatform(proto: IdeaKpmUnknownPlatformProto): IdeaKpmUnknownPlatform {
internal fun IdeaKotlinSerializationContext.IdeaKpmUnknownPlatform(proto: IdeaKpmUnknownPlatformProto): IdeaKpmUnknownPlatform {
return IdeaKpmUnknownPlatformImpl(
extras = Extras(proto.extras)
)
}
internal fun IdeaSerializationContext.IdeaKpmUnknownPlatform(data: ByteArray): IdeaKpmUnknownPlatform {
internal fun IdeaKotlinSerializationContext.IdeaKpmUnknownPlatform(data: ByteArray): IdeaKpmUnknownPlatform {
return IdeaKpmUnknownPlatform(IdeaKpmUnknownPlatformProto.parseFrom(data))
}
internal fun IdeaKpmUnknownPlatform.toByteArray(context: IdeaSerializationContext): ByteArray {
internal fun IdeaKpmUnknownPlatform.toByteArray(context: IdeaKotlinSerializationContext): ByteArray {
return context.IdeaKpmUnknownPlatformProto(this).toByteArray()
}
@@ -9,10 +9,10 @@ import org.jetbrains.kotlin.gradle.idea.kpm.IdeaKpmProject
import org.jetbrains.kotlin.gradle.idea.kpm.IdeaKpmProjectImpl
import org.jetbrains.kotlin.gradle.idea.proto.generated.kpm.IdeaKpmProjectProto
import org.jetbrains.kotlin.gradle.idea.proto.generated.kpm.ideaKpmProjectProto
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaSerializationContext
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaKotlinSerializationContext
import java.io.File
internal fun IdeaSerializationContext.IdeaKpmProjectProto(project: IdeaKpmProject): IdeaKpmProjectProto {
internal fun IdeaKotlinSerializationContext.IdeaKpmProjectProto(project: IdeaKpmProject): IdeaKpmProjectProto {
return ideaKpmProjectProto {
gradlePluginVersion = project.gradlePluginVersion
coreLibrariesVersion = project.coreLibrariesVersion
@@ -22,7 +22,7 @@ internal fun IdeaSerializationContext.IdeaKpmProjectProto(project: IdeaKpmProjec
}
}
internal fun IdeaSerializationContext.IdeaKpmProject(proto: IdeaKpmProjectProto): IdeaKpmProject {
internal fun IdeaKotlinSerializationContext.IdeaKpmProject(proto: IdeaKpmProjectProto): IdeaKpmProject {
return IdeaKpmProjectImpl(
gradlePluginVersion = proto.gradlePluginVersion,
coreLibrariesVersion = proto.coreLibrariesVersion,
@@ -11,10 +11,10 @@ import org.jetbrains.kotlin.gradle.idea.proto.Extras
import org.jetbrains.kotlin.gradle.idea.proto.IdeaExtrasProto
import org.jetbrains.kotlin.gradle.idea.proto.generated.kpm.IdeaKpmResolvedBinaryDependencyProto
import org.jetbrains.kotlin.gradle.idea.proto.generated.kpm.ideaKpmResolvedBinaryDependencyProto
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaSerializationContext
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaKotlinSerializationContext
import java.io.File
internal fun IdeaSerializationContext.IdeaKpmResolvedBinaryDependencyProto(
internal fun IdeaKotlinSerializationContext.IdeaKpmResolvedBinaryDependencyProto(
dependency: IdeaKpmResolvedBinaryDependency
): IdeaKpmResolvedBinaryDependencyProto {
return ideaKpmResolvedBinaryDependencyProto {
@@ -25,7 +25,7 @@ internal fun IdeaSerializationContext.IdeaKpmResolvedBinaryDependencyProto(
}
}
internal fun IdeaSerializationContext.IdeaKpmResolvedBinaryDependency(
internal fun IdeaKotlinSerializationContext.IdeaKpmResolvedBinaryDependency(
proto: IdeaKpmResolvedBinaryDependencyProto
): IdeaKpmResolvedBinaryDependency {
return IdeaKpmResolvedBinaryDependencyImpl(
@@ -36,10 +36,10 @@ internal fun IdeaSerializationContext.IdeaKpmResolvedBinaryDependency(
)
}
internal fun IdeaSerializationContext.IdeaKpmResolvedBinaryDependency(data: ByteArray): IdeaKpmResolvedBinaryDependency {
internal fun IdeaKotlinSerializationContext.IdeaKpmResolvedBinaryDependency(data: ByteArray): IdeaKpmResolvedBinaryDependency {
return IdeaKpmResolvedBinaryDependency(IdeaKpmResolvedBinaryDependencyProto.parseFrom(data))
}
internal fun IdeaKpmResolvedBinaryDependency.toByteArray(context: IdeaSerializationContext): ByteArray {
internal fun IdeaKpmResolvedBinaryDependency.toByteArray(context: IdeaKotlinSerializationContext): ByteArray {
return context.IdeaKpmResolvedBinaryDependencyProto(this).toByteArray()
}
@@ -11,9 +11,9 @@ import org.jetbrains.kotlin.gradle.idea.proto.Extras
import org.jetbrains.kotlin.gradle.idea.proto.IdeaExtrasProto
import org.jetbrains.kotlin.gradle.idea.proto.generated.kpm.IdeaKpmUnresolvedBinaryDependencyProto
import org.jetbrains.kotlin.gradle.idea.proto.generated.kpm.ideaKpmUnresolvedBinaryDependencyProto
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaSerializationContext
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaKotlinSerializationContext
internal fun IdeaSerializationContext.IdeaKpmUnresolvedBinaryDependencyProto(
internal fun IdeaKotlinSerializationContext.IdeaKpmUnresolvedBinaryDependencyProto(
dependency: IdeaKpmUnresolvedBinaryDependency
): IdeaKpmUnresolvedBinaryDependencyProto {
return ideaKpmUnresolvedBinaryDependencyProto {
@@ -23,7 +23,7 @@ internal fun IdeaSerializationContext.IdeaKpmUnresolvedBinaryDependencyProto(
}
}
internal fun IdeaSerializationContext.IdeaKpmUnresolvedBinaryDependency(proto: IdeaKpmUnresolvedBinaryDependencyProto): IdeaKpmUnresolvedBinaryDependency {
internal fun IdeaKotlinSerializationContext.IdeaKpmUnresolvedBinaryDependency(proto: IdeaKpmUnresolvedBinaryDependencyProto): IdeaKpmUnresolvedBinaryDependency {
return IdeaKpmUnresolvedBinaryDependencyImpl(
cause = if (proto.hasCause()) proto.cause else null,
coordinates = if (proto.hasCoordinates()) IdeaKpmBinaryCoordinates(proto.coordinates) else null,
@@ -31,10 +31,10 @@ internal fun IdeaSerializationContext.IdeaKpmUnresolvedBinaryDependency(proto: I
)
}
internal fun IdeaSerializationContext.IdeaKpmUnresolvedBinaryDependency(data: ByteArray): IdeaKpmUnresolvedBinaryDependency {
internal fun IdeaKotlinSerializationContext.IdeaKpmUnresolvedBinaryDependency(data: ByteArray): IdeaKpmUnresolvedBinaryDependency {
return IdeaKpmUnresolvedBinaryDependency(IdeaKpmUnresolvedBinaryDependencyProto.parseFrom(data))
}
internal fun IdeaKpmUnresolvedBinaryDependency.toByteArray(context: IdeaSerializationContext): ByteArray {
internal fun IdeaKpmUnresolvedBinaryDependency.toByteArray(context: IdeaKotlinSerializationContext): ByteArray {
return context.IdeaKpmUnresolvedBinaryDependencyProto(this).toByteArray()
}
@@ -9,10 +9,10 @@ import org.jetbrains.kotlin.gradle.idea.kpm.IdeaKpmVariant
import org.jetbrains.kotlin.gradle.idea.kpm.IdeaKpmVariantImpl
import org.jetbrains.kotlin.gradle.idea.proto.generated.kpm.IdeaKpmVariantProto
import org.jetbrains.kotlin.gradle.idea.proto.generated.kpm.ideaKpmVariantProto
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaSerializationContext
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaKotlinSerializationContext
internal fun IdeaSerializationContext.IdeaKpmVariantProto(variant: IdeaKpmVariant): IdeaKpmVariantProto {
internal fun IdeaKotlinSerializationContext.IdeaKpmVariantProto(variant: IdeaKpmVariant): IdeaKpmVariantProto {
return ideaKpmVariantProto {
fragment = IdeaKpmFragmentProto(variant)
variantAttributes.putAll(variant.variantAttributes)
@@ -21,7 +21,7 @@ internal fun IdeaSerializationContext.IdeaKpmVariantProto(variant: IdeaKpmVarian
}
}
internal fun IdeaSerializationContext.IdeaKpmVariant(proto: IdeaKpmVariantProto): IdeaKpmVariant {
internal fun IdeaKotlinSerializationContext.IdeaKpmVariant(proto: IdeaKpmVariantProto): IdeaKpmVariant {
return IdeaKpmVariantImpl(
fragment = IdeaKpmFragment(proto.fragment),
platform = IdeaKpmPlatform(proto.platform),
@@ -30,10 +30,10 @@ internal fun IdeaSerializationContext.IdeaKpmVariant(proto: IdeaKpmVariantProto)
)
}
internal fun IdeaSerializationContext.IdeaKpmVariant(data: ByteArray): IdeaKpmVariant {
internal fun IdeaKotlinSerializationContext.IdeaKpmVariant(data: ByteArray): IdeaKpmVariant {
return IdeaKpmVariant(IdeaKpmVariantProto.parseFrom(data))
}
internal fun IdeaKpmVariant.toByteArray(context: IdeaSerializationContext): ByteArray {
internal fun IdeaKpmVariant.toByteArray(context: IdeaKotlinSerializationContext): ByteArray {
return context.IdeaKpmVariantProto(this).toByteArray()
}
@@ -9,13 +9,13 @@ import com.google.protobuf.InvalidProtocolBufferException
import org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinDependencyProto
import org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinDependencyProto.DependencyCase
import org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.ideaKotlinDependencyProto
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaSerializationContext
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaKotlinSerializationContext
import org.jetbrains.kotlin.gradle.idea.tcs.IdeaKotlinDependency
import org.jetbrains.kotlin.gradle.idea.tcs.IdeaKotlinResolvedBinaryDependency
import org.jetbrains.kotlin.gradle.idea.tcs.IdeaKotlinSourceDependency
import org.jetbrains.kotlin.gradle.idea.tcs.IdeaKotlinUnresolvedBinaryDependency
internal fun IdeaSerializationContext.IdeaKotlinDependencyProto(dependency: IdeaKotlinDependency): IdeaKotlinDependencyProto {
internal fun IdeaKotlinSerializationContext.IdeaKotlinDependencyProto(dependency: IdeaKotlinDependency): IdeaKotlinDependencyProto {
return ideaKotlinDependencyProto {
when (dependency) {
is IdeaKotlinResolvedBinaryDependency -> resolvedBinaryDependency = IdeaKotlinResolvedBinaryDependencyProto(dependency)
@@ -25,7 +25,7 @@ internal fun IdeaSerializationContext.IdeaKotlinDependencyProto(dependency: Idea
}
}
internal fun IdeaSerializationContext.IdeaKotlinDependency(proto: IdeaKotlinDependencyProto): IdeaKotlinDependency? {
internal fun IdeaKotlinSerializationContext.IdeaKotlinDependency(proto: IdeaKotlinDependencyProto): IdeaKotlinDependency? {
return when (proto.dependencyCase) {
DependencyCase.SOURCE_DEPENDENCY -> IdeaKotlinSourceDependency(proto.sourceDependency)
DependencyCase.RESOLVED_BINARY_DEPENDENCY -> IdeaKotlinResolvedBinaryDependency(proto.resolvedBinaryDependency)
@@ -38,11 +38,11 @@ internal fun IdeaSerializationContext.IdeaKotlinDependency(proto: IdeaKotlinDepe
}
}
fun IdeaKotlinDependency.toByteArray(context: IdeaSerializationContext): ByteArray {
fun IdeaKotlinDependency.toByteArray(context: IdeaKotlinSerializationContext): ByteArray {
return context.IdeaKotlinDependencyProto(this).toByteArray()
}
fun IdeaSerializationContext.IdeaKotlinDependency(data: ByteArray): IdeaKotlinDependency? {
fun IdeaKotlinSerializationContext.IdeaKotlinDependency(data: ByteArray): IdeaKotlinDependency? {
return try {
val proto = IdeaKotlinDependencyProto.parseFrom(data)
IdeaKotlinDependency(proto)
@@ -9,12 +9,12 @@ import org.jetbrains.kotlin.gradle.idea.proto.Extras
import org.jetbrains.kotlin.gradle.idea.proto.IdeaExtrasProto
import org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinResolvedBinaryDependencyProto
import org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.ideaKotlinResolvedBinaryDependencyProto
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaSerializationContext
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaKotlinSerializationContext
import org.jetbrains.kotlin.gradle.idea.tcs.IdeaKotlinResolvedBinaryDependency
import org.jetbrains.kotlin.tooling.core.toMutableExtras
import java.io.File
internal fun IdeaSerializationContext.IdeaKotlinResolvedBinaryDependencyProto(
internal fun IdeaKotlinSerializationContext.IdeaKotlinResolvedBinaryDependencyProto(
dependency: IdeaKotlinResolvedBinaryDependency
): IdeaKotlinResolvedBinaryDependencyProto {
return ideaKotlinResolvedBinaryDependencyProto {
@@ -25,7 +25,7 @@ internal fun IdeaSerializationContext.IdeaKotlinResolvedBinaryDependencyProto(
}
}
internal fun IdeaSerializationContext.IdeaKotlinResolvedBinaryDependency(
internal fun IdeaKotlinSerializationContext.IdeaKotlinResolvedBinaryDependency(
proto: IdeaKotlinResolvedBinaryDependencyProto
): IdeaKotlinResolvedBinaryDependency {
return IdeaKotlinResolvedBinaryDependency(
@@ -9,11 +9,11 @@ import org.jetbrains.kotlin.gradle.idea.proto.Extras
import org.jetbrains.kotlin.gradle.idea.proto.IdeaExtrasProto
import org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinSourceDependencyProto
import org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.ideaKotlinSourceDependencyProto
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaSerializationContext
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaKotlinSerializationContext
import org.jetbrains.kotlin.gradle.idea.tcs.IdeaKotlinSourceDependency
import org.jetbrains.kotlin.tooling.core.toMutableExtras
internal fun IdeaSerializationContext.IdeaKotlinSourceDependencyProto(
internal fun IdeaKotlinSerializationContext.IdeaKotlinSourceDependencyProto(
dependency: IdeaKotlinSourceDependency
): IdeaKotlinSourceDependencyProto {
return ideaKotlinSourceDependencyProto {
@@ -27,7 +27,7 @@ internal fun IdeaSerializationContext.IdeaKotlinSourceDependencyProto(
}
}
internal fun IdeaSerializationContext.IdeaKotlinSourceDependency(
internal fun IdeaKotlinSerializationContext.IdeaKotlinSourceDependency(
proto: IdeaKotlinSourceDependencyProto
): IdeaKotlinSourceDependency {
return IdeaKotlinSourceDependency(
@@ -9,11 +9,11 @@ import org.jetbrains.kotlin.gradle.idea.proto.Extras
import org.jetbrains.kotlin.gradle.idea.proto.IdeaExtrasProto
import org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinUnresolvedBinaryDependencyProto
import org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.ideaKotlinUnresolvedBinaryDependencyProto
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaSerializationContext
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaKotlinSerializationContext
import org.jetbrains.kotlin.gradle.idea.tcs.IdeaKotlinUnresolvedBinaryDependency
import org.jetbrains.kotlin.tooling.core.toMutableExtras
internal fun IdeaSerializationContext.IdeaKotlinUnresolvedBinaryDependencyProto(
internal fun IdeaKotlinSerializationContext.IdeaKotlinUnresolvedBinaryDependencyProto(
dependency: IdeaKotlinUnresolvedBinaryDependency
): IdeaKotlinUnresolvedBinaryDependencyProto {
return ideaKotlinUnresolvedBinaryDependencyProto {
@@ -23,7 +23,7 @@ internal fun IdeaSerializationContext.IdeaKotlinUnresolvedBinaryDependencyProto(
}
}
internal fun IdeaSerializationContext.IdeaKotlinUnresolvedBinaryDependency(
internal fun IdeaKotlinSerializationContext.IdeaKotlinUnresolvedBinaryDependency(
proto: IdeaKotlinUnresolvedBinaryDependencyProto
): IdeaKotlinUnresolvedBinaryDependency {
return IdeaKotlinUnresolvedBinaryDependency(
@@ -5,14 +5,14 @@
package org.jetbrains.kotlin.gradle.idea.proto
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaSerializationContext
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaKotlinSerializationContext
import org.jetbrains.kotlin.gradle.idea.testFixtures.serialize.TestIdeaExtrasSerializationExtension
import org.jetbrains.kotlin.gradle.idea.testFixtures.serialize.TestIdeaSerializationLogger
import org.jetbrains.kotlin.gradle.idea.testFixtures.serialize.TestIdeaKotlinSerializationLogger
import kotlin.test.assertEquals
abstract class AbstractSerializationTest<T : Any> : IdeaSerializationContext {
abstract class AbstractSerializationTest<T : Any> : IdeaKotlinSerializationContext {
final override val logger = TestIdeaSerializationLogger()
final override val logger = TestIdeaKotlinSerializationLogger()
final override val extrasSerializationExtension = TestIdeaExtrasSerializationExtension
abstract fun serialize(value: T): ByteArray
@@ -8,17 +8,17 @@ package org.jetbrains.kotlin.gradle.idea.proto.kpm
import org.jetbrains.kotlin.gradle.idea.proto.generated.kpm.IdeaKpmSchemaInfoProto
import org.jetbrains.kotlin.gradle.idea.proto.generated.kpm.ideaKpmContainerProto
import org.jetbrains.kotlin.gradle.idea.proto.generated.kpm.ideaKpmSchemaInfoProto
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaSerializationContext
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaKotlinSerializationContext
import org.jetbrains.kotlin.gradle.idea.testFixtures.kpm.TestIdeaKpmInstances
import org.jetbrains.kotlin.gradle.idea.testFixtures.serialize.TestIdeaExtrasSerializationExtension
import org.jetbrains.kotlin.gradle.idea.testFixtures.serialize.TestIdeaSerializationLogger
import org.jetbrains.kotlin.gradle.idea.testFixtures.serialize.TestIdeaKotlinSerializationLogger
import kotlin.test.Test
import kotlin.test.assertEquals
import kotlin.test.assertNull
import kotlin.test.assertTrue
class ContainerTest : IdeaSerializationContext {
override val logger = TestIdeaSerializationLogger()
class ContainerTest : IdeaKotlinSerializationContext {
override val logger = TestIdeaKotlinSerializationLogger()
override val extrasSerializationExtension = TestIdeaExtrasSerializationExtension
@Test
@@ -6,7 +6,7 @@
package org.jetbrains.kotlin.gradle.idea.proto.tcs
import org.jetbrains.kotlin.gradle.idea.proto.AbstractSerializationTest
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaSerializationLogger
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaKotlinSerializationLogger
import org.jetbrains.kotlin.gradle.idea.tcs.IdeaKotlinDependency
import org.jetbrains.kotlin.gradle.idea.testFixtures.tcs.TestIdeaKotlinInstances
import kotlin.test.Test
@@ -40,7 +40,7 @@ class IdeaKotlinDependencySerializationTest : AbstractSerializationTest<IdeaKotl
assertNull(IdeaKotlinDependency(byteArrayOf()))
if (logger.reports.size != 1) fail("Expected exactly one report in logger. Found ${logger.reports}")
val report = logger.reports.first()
assertEquals(IdeaSerializationLogger.Severity.ERROR, report.severity)
assertEquals(IdeaKotlinSerializationLogger.Severity.ERROR, report.severity)
assertEquals("Dependency not set", report.message)
}
}