[Gradle] kgp-idea.serialize: Change naming schema from Idea* to IdeaKotlin*
KT-54825
This commit is contained in:
committed by
Space Team
parent
224a237385
commit
786adcaf3f
+5
-5
@@ -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
|
||||
|
||||
+9
-9
@@ -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
|
||||
|
||||
+5
-5
@@ -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()
|
||||
}
|
||||
|
||||
+3
-3
@@ -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)
|
||||
|
||||
+5
-5
@@ -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()
|
||||
}
|
||||
|
||||
+5
-5
@@ -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()
|
||||
}
|
||||
|
||||
+5
-5
@@ -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()
|
||||
}
|
||||
|
||||
+23
-23
@@ -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()
|
||||
}
|
||||
|
||||
+3
-3
@@ -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,
|
||||
|
||||
+5
-5
@@ -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()
|
||||
}
|
||||
|
||||
+5
-5
@@ -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()
|
||||
}
|
||||
|
||||
+5
-5
@@ -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()
|
||||
}
|
||||
|
||||
+5
-5
@@ -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)
|
||||
|
||||
+3
-3
@@ -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(
|
||||
|
||||
+3
-3
@@ -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(
|
||||
|
||||
+3
-3
@@ -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(
|
||||
|
||||
+4
-4
@@ -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
|
||||
|
||||
+4
-4
@@ -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
|
||||
|
||||
+2
-2
@@ -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)
|
||||
}
|
||||
}
|
||||
|
||||
-46
@@ -1,46 +0,0 @@
|
||||
/*
|
||||
* Copyright 2010-2022 JetBrains s.r.o. and Kotlin Programming Language contributors.
|
||||
* Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
|
||||
*/
|
||||
|
||||
package org.jetbrains.kotlin.gradle.idea.serialize
|
||||
|
||||
import org.jetbrains.kotlin.tooling.core.Extras
|
||||
|
||||
interface IdeaExtrasSerializationExtension {
|
||||
fun <T : Any> serializer(key: Extras.Key<T>): IdeaExtrasSerializer<T>?
|
||||
|
||||
object Empty : IdeaExtrasSerializationExtension {
|
||||
override fun <T : Any> serializer(key: Extras.Key<T>): IdeaExtrasSerializer<T>? = null
|
||||
}
|
||||
}
|
||||
|
||||
interface IdeaExtrasSerializationExtensionBuilder {
|
||||
fun <T : Any> register(key: Extras.Key<T>, serializer: IdeaExtrasSerializer<T>)
|
||||
}
|
||||
|
||||
fun IdeaExtrasSerializationExtension(
|
||||
builder: IdeaExtrasSerializationExtensionBuilder.() -> Unit
|
||||
): IdeaExtrasSerializationExtension {
|
||||
return IdeaExtrasSerializationExtensionImpl(
|
||||
IdeaExtrasSerializationExtensionBuilderImpl().apply(builder).serializers
|
||||
)
|
||||
}
|
||||
|
||||
private class IdeaExtrasSerializationExtensionBuilderImpl : IdeaExtrasSerializationExtensionBuilder {
|
||||
val serializers = mutableMapOf<Extras.Key<*>, IdeaExtrasSerializer<*>>()
|
||||
|
||||
override fun <T : Any> register(key: Extras.Key<T>, serializer: IdeaExtrasSerializer<T>) {
|
||||
serializers[key] = serializer
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
private class IdeaExtrasSerializationExtensionImpl(
|
||||
private val map: Map<Extras.Key<*>, IdeaExtrasSerializer<*>>
|
||||
) : IdeaExtrasSerializationExtension {
|
||||
override fun <T : Any> serializer(key: Extras.Key<T>): IdeaExtrasSerializer<T>? {
|
||||
@Suppress("unchecked_cast")
|
||||
return map[key] as? IdeaExtrasSerializer<T>
|
||||
}
|
||||
}
|
||||
-27
@@ -1,27 +0,0 @@
|
||||
/*
|
||||
* Copyright 2010-2022 JetBrains s.r.o. and Kotlin Programming Language contributors.
|
||||
* Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
|
||||
*/
|
||||
|
||||
package org.jetbrains.kotlin.gradle.idea.serialize
|
||||
|
||||
import kotlin.reflect.KClass
|
||||
|
||||
|
||||
interface IdeaExtrasSerializer<T : Any> {
|
||||
fun serialize(context: IdeaSerializationContext, value: T): ByteArray?
|
||||
fun deserialize(context: IdeaSerializationContext, data: ByteArray): T?
|
||||
|
||||
companion object {
|
||||
/**
|
||||
* Returns a [IdeaExtrasSerializer] based upon [java.io.Serializable]
|
||||
*/
|
||||
fun <T : Any> javaIoSerializable(clazz: KClass<T>): IdeaExtrasSerializer<T> {
|
||||
return IdeaJavaIoSerializableExtrasSerializer(clazz)
|
||||
}
|
||||
|
||||
inline fun <reified T : Any> javaIoSerializable(): IdeaExtrasSerializer<T> {
|
||||
return javaIoSerializable(T::class)
|
||||
}
|
||||
}
|
||||
}
|
||||
+45
@@ -0,0 +1,45 @@
|
||||
/*
|
||||
* Copyright 2010-2022 JetBrains s.r.o. and Kotlin Programming Language contributors.
|
||||
* Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
|
||||
*/
|
||||
|
||||
package org.jetbrains.kotlin.gradle.idea.serialize
|
||||
|
||||
import org.jetbrains.kotlin.tooling.core.Extras
|
||||
|
||||
interface IdeaKotlinExtrasSerializationExtension {
|
||||
fun <T : Any> serializer(key: Extras.Key<T>): IdeaKotlinExtrasSerializer<T>?
|
||||
|
||||
object Empty : IdeaKotlinExtrasSerializationExtension {
|
||||
override fun <T : Any> serializer(key: Extras.Key<T>): IdeaKotlinExtrasSerializer<T>? = null
|
||||
}
|
||||
}
|
||||
|
||||
interface IdeaKotlinExtrasSerializationExtensionBuilder {
|
||||
fun <T : Any> register(key: Extras.Key<T>, serializer: IdeaKotlinExtrasSerializer<T>)
|
||||
}
|
||||
|
||||
fun IdeaKotlinExtrasSerializationExtension(
|
||||
builder: IdeaKotlinExtrasSerializationExtensionBuilder.() -> Unit
|
||||
): IdeaKotlinExtrasSerializationExtension {
|
||||
return IdeaKotlinExtrasSerializationExtensionImpl(
|
||||
IdeaKotlinExtrasSerializationExtensionBuilderImpl().apply(builder).serializers
|
||||
)
|
||||
}
|
||||
|
||||
private class IdeaKotlinExtrasSerializationExtensionBuilderImpl : IdeaKotlinExtrasSerializationExtensionBuilder {
|
||||
val serializers = mutableMapOf<Extras.Key<*>, IdeaKotlinExtrasSerializer<*>>()
|
||||
|
||||
override fun <T : Any> register(key: Extras.Key<T>, serializer: IdeaKotlinExtrasSerializer<T>) {
|
||||
serializers[key] = serializer
|
||||
}
|
||||
}
|
||||
|
||||
private class IdeaKotlinExtrasSerializationExtensionImpl(
|
||||
private val map: Map<Extras.Key<*>, IdeaKotlinExtrasSerializer<*>>
|
||||
) : IdeaKotlinExtrasSerializationExtension {
|
||||
override fun <T : Any> serializer(key: Extras.Key<T>): IdeaKotlinExtrasSerializer<T>? {
|
||||
@Suppress("unchecked_cast")
|
||||
return map[key] as? IdeaKotlinExtrasSerializer<T>
|
||||
}
|
||||
}
|
||||
+27
@@ -0,0 +1,27 @@
|
||||
/*
|
||||
* Copyright 2010-2022 JetBrains s.r.o. and Kotlin Programming Language contributors.
|
||||
* Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
|
||||
*/
|
||||
|
||||
package org.jetbrains.kotlin.gradle.idea.serialize
|
||||
|
||||
import kotlin.reflect.KClass
|
||||
|
||||
|
||||
interface IdeaKotlinExtrasSerializer<T : Any> {
|
||||
fun serialize(context: IdeaKotlinSerializationContext, value: T): ByteArray?
|
||||
fun deserialize(context: IdeaKotlinSerializationContext, data: ByteArray): T?
|
||||
|
||||
companion object {
|
||||
/**
|
||||
* Returns a [IdeaKotlinExtrasSerializer] based upon [java.io.Serializable]
|
||||
*/
|
||||
fun <T : Any> javaIoSerializable(clazz: KClass<T>): IdeaKotlinExtrasSerializer<T> {
|
||||
return IdeaKotlinJavaIoSerializableExtrasSerializer(clazz)
|
||||
}
|
||||
|
||||
inline fun <reified T : Any> javaIoSerializable(): IdeaKotlinExtrasSerializer<T> {
|
||||
return javaIoSerializable(T::class)
|
||||
}
|
||||
}
|
||||
}
|
||||
+4
-4
@@ -11,11 +11,11 @@ import java.io.ObjectInputStream
|
||||
import java.io.ObjectOutputStream
|
||||
import kotlin.reflect.KClass
|
||||
|
||||
internal class IdeaJavaIoSerializableExtrasSerializer<T : Any>(
|
||||
internal class IdeaKotlinJavaIoSerializableExtrasSerializer<T : Any>(
|
||||
private val clazz: KClass<T>
|
||||
) : IdeaExtrasSerializer<T> {
|
||||
) : IdeaKotlinExtrasSerializer<T> {
|
||||
|
||||
override fun serialize(context: IdeaSerializationContext, value: T): ByteArray? {
|
||||
override fun serialize(context: IdeaKotlinSerializationContext, value: T): ByteArray? {
|
||||
return try {
|
||||
ByteArrayOutputStream().use { byteArrayOutputStream ->
|
||||
ObjectOutputStream(byteArrayOutputStream).use { oos -> oos.writeObject(value) }
|
||||
@@ -27,7 +27,7 @@ internal class IdeaJavaIoSerializableExtrasSerializer<T : Any>(
|
||||
}
|
||||
}
|
||||
|
||||
override fun deserialize(context: IdeaSerializationContext, data: ByteArray): T? {
|
||||
override fun deserialize(context: IdeaKotlinSerializationContext, data: ByteArray): T? {
|
||||
return try {
|
||||
ObjectInputStream(ByteArrayInputStream(data)).use { stream -> clazz.java.cast(stream.readObject()) }
|
||||
} catch (t: Throwable) {
|
||||
+3
-3
@@ -5,7 +5,7 @@
|
||||
|
||||
package org.jetbrains.kotlin.gradle.idea.serialize
|
||||
|
||||
interface IdeaSerializationContext {
|
||||
val logger: IdeaSerializationLogger
|
||||
val extrasSerializationExtension: IdeaExtrasSerializationExtension
|
||||
interface IdeaKotlinSerializationContext {
|
||||
val logger: IdeaKotlinSerializationLogger
|
||||
val extrasSerializationExtension: IdeaKotlinExtrasSerializationExtension
|
||||
}
|
||||
+2
-2
@@ -5,7 +5,7 @@
|
||||
|
||||
package org.jetbrains.kotlin.gradle.idea.serialize
|
||||
|
||||
interface IdeaSerializationLogger {
|
||||
interface IdeaKotlinSerializationLogger {
|
||||
enum class Severity {
|
||||
WARNING,
|
||||
ERROR,
|
||||
@@ -15,7 +15,7 @@ interface IdeaSerializationLogger {
|
||||
fun warn(message: String, cause: Throwable? = null) = report(Severity.WARNING, message, cause)
|
||||
fun error(message: String, cause: Throwable? = null) = report(Severity.ERROR, message, cause)
|
||||
|
||||
object None : IdeaSerializationLogger {
|
||||
object None : IdeaKotlinSerializationLogger {
|
||||
override fun report(severity: Severity, message: String, cause: Throwable?) = Unit
|
||||
}
|
||||
}
|
||||
+1
-1
@@ -24,4 +24,4 @@ data class IdeaKotlinSourceDependency(
|
||||
internal companion object {
|
||||
const val serialVersionUID = 0L
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+10
-10
@@ -5,7 +5,7 @@
|
||||
|
||||
package org.jetbrains.kotlin.gradle.idea.serialize
|
||||
|
||||
import org.jetbrains.kotlin.gradle.idea.testFixtures.serialize.TestIdeaSerializationContext
|
||||
import org.jetbrains.kotlin.gradle.idea.testFixtures.serialize.TestIdeaKotlinSerializationContext
|
||||
import org.jetbrains.kotlin.tooling.core.withLinearClosure
|
||||
import org.junit.Test
|
||||
import java.io.Serializable
|
||||
@@ -18,8 +18,8 @@ class IdeaJavaIoSerializableExtrasSerializerTest {
|
||||
|
||||
@Test
|
||||
fun `serialize - deserialize - String`() {
|
||||
val context = TestIdeaSerializationContext()
|
||||
val serializer = IdeaExtrasSerializer.javaIoSerializable<String>()
|
||||
val context = TestIdeaKotlinSerializationContext()
|
||||
val serializer = IdeaKotlinExtrasSerializer.javaIoSerializable<String>()
|
||||
val binary = assertNotNull(
|
||||
serializer.serialize(context, "Sunny Cash"),
|
||||
"Failed to serialize: ${context.logger.reports}"
|
||||
@@ -34,12 +34,12 @@ class IdeaJavaIoSerializableExtrasSerializerTest {
|
||||
fun `serialize - deserialize - non serializable object`() {
|
||||
class ThisIsNotSerializable
|
||||
|
||||
val context = TestIdeaSerializationContext()
|
||||
val serializer = IdeaExtrasSerializer.javaIoSerializable<ThisIsNotSerializable>()
|
||||
val context = TestIdeaKotlinSerializationContext()
|
||||
val serializer = IdeaKotlinExtrasSerializer.javaIoSerializable<ThisIsNotSerializable>()
|
||||
assertNull(serializer.serialize(context, ThisIsNotSerializable()), "Expected null return value for non serializable object")
|
||||
|
||||
val serializationFailureReportsCount = context.logger.reports.count { report ->
|
||||
report.message.startsWith(IdeaJavaIoSerializableExtrasSerializer.ErrorMessages.SERIALIZATION_FAILURE)
|
||||
report.message.startsWith(IdeaKotlinJavaIoSerializableExtrasSerializer.ErrorMessages.SERIALIZATION_FAILURE)
|
||||
}
|
||||
|
||||
assertEquals(
|
||||
@@ -58,8 +58,8 @@ class IdeaJavaIoSerializableExtrasSerializerTest {
|
||||
fun readResolve(): Any = throw exception
|
||||
}
|
||||
|
||||
val context = TestIdeaSerializationContext()
|
||||
val serializer = IdeaExtrasSerializer.javaIoSerializable<NotDeserializable>()
|
||||
val context = TestIdeaKotlinSerializationContext()
|
||||
val serializer = IdeaKotlinExtrasSerializer.javaIoSerializable<NotDeserializable>()
|
||||
val binary = assertNotNull(serializer.serialize(context, NotDeserializable()))
|
||||
assertNull(serializer.deserialize(context, binary))
|
||||
|
||||
@@ -72,8 +72,8 @@ class IdeaJavaIoSerializableExtrasSerializerTest {
|
||||
val reportMessage = assertNotNull(report.message, "Expected message in issue report")
|
||||
|
||||
assertTrue(
|
||||
reportMessage.startsWith(IdeaJavaIoSerializableExtrasSerializer.ErrorMessages.DESERIALIZATION_FAILURE),
|
||||
"Expected issue report to start with ${IdeaJavaIoSerializableExtrasSerializer.ErrorMessages.DESERIALIZATION_FAILURE}"
|
||||
reportMessage.startsWith(IdeaKotlinJavaIoSerializableExtrasSerializer.ErrorMessages.DESERIALIZATION_FAILURE),
|
||||
"Expected issue report to start with ${IdeaKotlinJavaIoSerializableExtrasSerializer.ErrorMessages.DESERIALIZATION_FAILURE}"
|
||||
)
|
||||
|
||||
|
||||
|
||||
+2
-2
@@ -6,7 +6,7 @@
|
||||
package org.jetbrains.kotlin.gradle.idea.testUtils
|
||||
|
||||
import org.jetbrains.kotlin.gradle.idea.kpm.IdeaKpmProject
|
||||
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaSerializationLogger
|
||||
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaKotlinSerializationLogger
|
||||
import org.jetbrains.kotlin.gradle.idea.testFixtures.kpm.TestIdeaKpmClassLoaderProjectSerializer
|
||||
import java.io.File
|
||||
import java.net.URLClassLoader
|
||||
@@ -49,7 +49,7 @@ fun deserializeIdeaKpmProjectWithBackwardsCompatibleClasses(project: ByteArray):
|
||||
)
|
||||
|
||||
assertEquals(
|
||||
0, serializer.reports.count { it.severity > IdeaSerializationLogger.Severity.WARNING },
|
||||
0, serializer.reports.count { it.severity > IdeaKotlinSerializationLogger.Severity.WARNING },
|
||||
"Expected no severe deserialization reports. Found ${serializer.reports}"
|
||||
)
|
||||
|
||||
|
||||
+6
-6
@@ -8,8 +8,8 @@ package org.jetbrains.kotlin.gradle.idea.testFixtures.kpm
|
||||
import org.jetbrains.kotlin.gradle.idea.kpm.IdeaKpmProject
|
||||
import org.jetbrains.kotlin.gradle.idea.proto.kpm.IdeaKpmProject
|
||||
import org.jetbrains.kotlin.gradle.idea.proto.kpm.toByteArray
|
||||
import org.jetbrains.kotlin.gradle.idea.testFixtures.serialize.TestIdeaSerializationContext
|
||||
import org.jetbrains.kotlin.gradle.idea.testFixtures.serialize.TestIdeaSerializationLogger
|
||||
import org.jetbrains.kotlin.gradle.idea.testFixtures.serialize.TestIdeaKotlinSerializationContext
|
||||
import org.jetbrains.kotlin.gradle.idea.testFixtures.serialize.TestIdeaKotlinSerializationLogger
|
||||
import org.jetbrains.kotlin.gradle.idea.testFixtures.utils.copy
|
||||
import org.jetbrains.kotlin.tooling.core.UnsafeApi
|
||||
import java.lang.reflect.InvocationHandler
|
||||
@@ -44,12 +44,12 @@ fun TestIdeaKpmClassLoaderProjectSerializer(classLoader: ClassLoader): TestIdeaK
|
||||
|
||||
/**
|
||||
* Test Util to serialize / deserialize [IdeaKpmProject] within a dedicated ClassLoader.
|
||||
* The serialization context used will be [TestIdeaSerializationContext]. Note, that this context
|
||||
* The serialization context used will be [TestIdeaKotlinSerializationContext]. Note, that this context
|
||||
* might also depend on the version shipped by the specified [ClassLoader].
|
||||
*/
|
||||
interface TestIdeaKpmClassLoaderProjectSerializer {
|
||||
val classLoader: ClassLoader
|
||||
val reports: List<TestIdeaSerializationLogger.Report>
|
||||
val reports: List<TestIdeaKotlinSerializationLogger.Report>
|
||||
fun serialize(project: Any): ByteArray
|
||||
fun deserialize(data: ByteArray): Any?
|
||||
}
|
||||
@@ -58,9 +58,9 @@ interface TestIdeaKpmClassLoaderProjectSerializer {
|
||||
internal class TestIdeaKpmProtoClassLoaderProjectSerializer(
|
||||
override val classLoader: ClassLoader
|
||||
) : TestIdeaKpmClassLoaderProjectSerializer {
|
||||
private val context = TestIdeaSerializationContext()
|
||||
private val context = TestIdeaKotlinSerializationContext()
|
||||
|
||||
override val reports: List<TestIdeaSerializationLogger.Report>
|
||||
override val reports: List<TestIdeaKotlinSerializationLogger.Report>
|
||||
get() = context.logger.reports
|
||||
|
||||
override fun serialize(project: Any): ByteArray {
|
||||
|
||||
+8
-8
@@ -5,23 +5,23 @@
|
||||
|
||||
package org.jetbrains.kotlin.gradle.idea.testFixtures.serialize
|
||||
|
||||
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaExtrasSerializationExtension
|
||||
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaExtrasSerializer
|
||||
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaKotlinExtrasSerializationExtension
|
||||
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaKotlinExtrasSerializer
|
||||
import org.jetbrains.kotlin.tooling.core.Extras
|
||||
import org.jetbrains.kotlin.tooling.core.extrasKeyOf
|
||||
import org.jetbrains.kotlin.tooling.core.extrasTypeOf
|
||||
|
||||
@Suppress("UNCHECKED_CAST")
|
||||
object TestIdeaExtrasSerializationExtension : IdeaExtrasSerializationExtension {
|
||||
object TestIdeaExtrasSerializationExtension : IdeaKotlinExtrasSerializationExtension {
|
||||
|
||||
val ignoredStringKey = extrasKeyOf<String>("ignored")
|
||||
val anySerializableKey = extrasKeyOf<Any>("serializable")
|
||||
|
||||
override fun <T : Any> serializer(key: Extras.Key<T>): IdeaExtrasSerializer<T>? = when {
|
||||
override fun <T : Any> serializer(key: Extras.Key<T>): IdeaKotlinExtrasSerializer<T>? = when {
|
||||
key == ignoredStringKey -> null
|
||||
key == anySerializableKey -> IdeaExtrasSerializer.javaIoSerializable<Any>()
|
||||
key.type == extrasTypeOf<String>() -> TestIdeaStringExtrasSerializer
|
||||
key.type == extrasTypeOf<Int>() -> TestIdeaIntExtrasSerializer
|
||||
key == anySerializableKey -> IdeaKotlinExtrasSerializer.javaIoSerializable<Any>()
|
||||
key.type == extrasTypeOf<String>() -> TestIdeaStringKotlinExtrasSerializer
|
||||
key.type == extrasTypeOf<Int>() -> TestIdeaIntKotlinExtrasSerializer
|
||||
else -> null
|
||||
} as? IdeaExtrasSerializer<T>
|
||||
} as? IdeaKotlinExtrasSerializer<T>
|
||||
}
|
||||
|
||||
+5
-5
@@ -5,16 +5,16 @@
|
||||
|
||||
package org.jetbrains.kotlin.gradle.idea.testFixtures.serialize
|
||||
|
||||
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 java.nio.ByteBuffer
|
||||
|
||||
object TestIdeaIntExtrasSerializer : IdeaExtrasSerializer<Int> {
|
||||
override fun serialize(context: IdeaSerializationContext, value: Int): ByteArray {
|
||||
object TestIdeaIntKotlinExtrasSerializer : IdeaKotlinExtrasSerializer<Int> {
|
||||
override fun serialize(context: IdeaKotlinSerializationContext, value: Int): ByteArray {
|
||||
return ByteBuffer.allocate(Int.SIZE_BYTES).putInt(value).array()
|
||||
}
|
||||
|
||||
override fun deserialize(context: IdeaSerializationContext, data: ByteArray): Int {
|
||||
override fun deserialize(context: IdeaKotlinSerializationContext, data: ByteArray): Int {
|
||||
return ByteBuffer.wrap(data).int
|
||||
}
|
||||
}
|
||||
+3
-3
@@ -5,9 +5,9 @@
|
||||
|
||||
package org.jetbrains.kotlin.gradle.idea.testFixtures.serialize
|
||||
|
||||
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaSerializationContext
|
||||
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaKotlinSerializationContext
|
||||
|
||||
class TestIdeaSerializationContext : IdeaSerializationContext {
|
||||
override val logger = TestIdeaSerializationLogger()
|
||||
class TestIdeaKotlinSerializationContext : IdeaKotlinSerializationContext {
|
||||
override val logger = TestIdeaKotlinSerializationLogger()
|
||||
override val extrasSerializationExtension = TestIdeaExtrasSerializationExtension
|
||||
}
|
||||
+3
-3
@@ -5,11 +5,11 @@
|
||||
|
||||
package org.jetbrains.kotlin.gradle.idea.testFixtures.serialize
|
||||
|
||||
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaSerializationLogger
|
||||
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaSerializationLogger.Severity
|
||||
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaKotlinSerializationLogger
|
||||
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaKotlinSerializationLogger.Severity
|
||||
import java.io.Serializable
|
||||
|
||||
class TestIdeaSerializationLogger : IdeaSerializationLogger {
|
||||
class TestIdeaKotlinSerializationLogger : IdeaKotlinSerializationLogger {
|
||||
data class Report(
|
||||
val severity: Severity,
|
||||
val message: String,
|
||||
-14
@@ -1,14 +0,0 @@
|
||||
/*
|
||||
* Copyright 2010-2022 JetBrains s.r.o. and Kotlin Programming Language contributors.
|
||||
* Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
|
||||
*/
|
||||
|
||||
package org.jetbrains.kotlin.gradle.idea.testFixtures.serialize
|
||||
|
||||
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaExtrasSerializer
|
||||
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaSerializationContext
|
||||
|
||||
object TestIdeaStringExtrasSerializer : IdeaExtrasSerializer<String> {
|
||||
override fun serialize(context: IdeaSerializationContext, value: String): ByteArray = value.encodeToByteArray()
|
||||
override fun deserialize(context: IdeaSerializationContext, data: ByteArray) = data.decodeToString()
|
||||
}
|
||||
+14
@@ -0,0 +1,14 @@
|
||||
/*
|
||||
* Copyright 2010-2022 JetBrains s.r.o. and Kotlin Programming Language contributors.
|
||||
* Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
|
||||
*/
|
||||
|
||||
package org.jetbrains.kotlin.gradle.idea.testFixtures.serialize
|
||||
|
||||
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaKotlinExtrasSerializer
|
||||
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaKotlinSerializationContext
|
||||
|
||||
object TestIdeaStringKotlinExtrasSerializer : IdeaKotlinExtrasSerializer<String> {
|
||||
override fun serialize(context: IdeaKotlinSerializationContext, value: String): ByteArray = value.encodeToByteArray()
|
||||
override fun deserialize(context: IdeaKotlinSerializationContext, data: ByteArray) = data.decodeToString()
|
||||
}
|
||||
+2
-2
@@ -11,7 +11,7 @@ package org.jetbrains.kotlin.gradle.android
|
||||
import com.android.build.gradle.AppExtension
|
||||
import com.android.build.gradle.LibraryExtension
|
||||
import org.gradle.kotlin.dsl.findByType
|
||||
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaExtrasSerializer
|
||||
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaKotlinExtrasSerializer
|
||||
import org.jetbrains.kotlin.gradle.kpm.external.ExternalVariantApi
|
||||
import org.jetbrains.kotlin.gradle.kpm.external.ideaKpmProjectModelBuilder
|
||||
import org.jetbrains.kotlin.gradle.kpm.external.project
|
||||
@@ -34,6 +34,6 @@ fun KotlinPm20ProjectExtension.androidPrototype() {
|
||||
setupIdeaKpmFragmentDependencyResolver()
|
||||
|
||||
ideaKpmProjectModelBuilder.registerExtrasSerializationExtension {
|
||||
register(androidDslKey, IdeaExtrasSerializer.javaIoSerializable())
|
||||
register(androidDslKey, IdeaKotlinExtrasSerializer.javaIoSerializable())
|
||||
}
|
||||
}
|
||||
|
||||
+7
-7
@@ -5,9 +5,9 @@ package org.jetbrains.kotlin.gradle.kpm.idea
|
||||
import org.jetbrains.kotlin.compilerRunner.konanHome
|
||||
import org.jetbrains.kotlin.gradle.idea.kpm.IdeaKpmProject
|
||||
import org.jetbrains.kotlin.gradle.idea.kpm.IdeaKpmProjectImpl
|
||||
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaExtrasSerializationExtension
|
||||
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaExtrasSerializationExtensionBuilder
|
||||
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaSerializationContext
|
||||
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaKotlinExtrasSerializationExtension
|
||||
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaKotlinExtrasSerializationExtensionBuilder
|
||||
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaKotlinSerializationContext
|
||||
import org.jetbrains.kotlin.gradle.kpm.external.ExternalVariantApi
|
||||
import org.jetbrains.kotlin.gradle.kpm.idea.IdeaKpmProjectModelBuilder.DependencyResolutionLevel.Default
|
||||
import org.jetbrains.kotlin.gradle.kpm.idea.IdeaKpmProjectModelBuilder.DependencyResolutionLevel.Overwrite
|
||||
@@ -133,10 +133,10 @@ interface IdeaKpmProjectModelBuilder {
|
||||
|
||||
@ExternalVariantApi
|
||||
fun registerExtrasSerializationExtension(
|
||||
extension: IdeaExtrasSerializationExtension
|
||||
extension: IdeaKotlinExtrasSerializationExtension
|
||||
)
|
||||
|
||||
fun buildSerializationContext(): IdeaSerializationContext
|
||||
fun buildSerializationContext(): IdeaKotlinSerializationContext
|
||||
|
||||
fun buildIdeaKpmProject(): IdeaKpmProject
|
||||
|
||||
@@ -171,7 +171,7 @@ operator fun FragmentConstraint.not() = FragmentConstraint { fragment ->
|
||||
|
||||
@ExternalVariantApi
|
||||
fun IdeaKpmProjectModelBuilder.registerExtrasSerializationExtension(
|
||||
builder: IdeaExtrasSerializationExtensionBuilder.() -> Unit
|
||||
builder: IdeaKotlinExtrasSerializationExtensionBuilder.() -> Unit
|
||||
) {
|
||||
registerExtrasSerializationExtension(IdeaExtrasSerializationExtension(builder))
|
||||
registerExtrasSerializationExtension(IdeaKotlinExtrasSerializationExtension(builder))
|
||||
}
|
||||
|
||||
+5
-5
@@ -12,8 +12,8 @@ import org.gradle.tooling.provider.model.ToolingModelBuilder
|
||||
import org.jetbrains.kotlin.gradle.idea.kpm.IdeaKpmProject
|
||||
import org.jetbrains.kotlin.gradle.idea.kpm.IdeaKpmProjectContainer
|
||||
import org.jetbrains.kotlin.gradle.idea.proto.kpm.toByteArray
|
||||
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaExtrasSerializationExtension
|
||||
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaSerializationContext
|
||||
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaKotlinExtrasSerializationExtension
|
||||
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaKotlinSerializationContext
|
||||
import org.jetbrains.kotlin.gradle.kpm.external.ExternalVariantApi
|
||||
import org.jetbrains.kotlin.gradle.kpm.idea.IdeaKpmProjectModelBuilder.*
|
||||
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.KotlinPm20ProjectExtension
|
||||
@@ -48,7 +48,7 @@ internal class IdeaKpmProjectModelBuilderImpl @UnsafeApi("Use factory methods in
|
||||
private val registeredDependencyResolvers = mutableListOf<RegisteredDependencyResolver>()
|
||||
private val registeredDependencyTransformers = mutableListOf<RegisteredDependencyTransformer>()
|
||||
private val registeredDependencyEffects = mutableListOf<RegisteredDependencyEffect>()
|
||||
private val registeredExtrasSerializationExtensions = mutableListOf<IdeaExtrasSerializationExtension>()
|
||||
private val registeredExtrasSerializationExtensions = mutableListOf<IdeaKotlinExtrasSerializationExtension>()
|
||||
|
||||
override fun registerDependencyResolver(
|
||||
resolver: IdeaKpmDependencyResolver,
|
||||
@@ -81,12 +81,12 @@ internal class IdeaKpmProjectModelBuilderImpl @UnsafeApi("Use factory methods in
|
||||
}
|
||||
|
||||
override fun registerExtrasSerializationExtension(
|
||||
extension: IdeaExtrasSerializationExtension
|
||||
extension: IdeaKotlinExtrasSerializationExtension
|
||||
) {
|
||||
registeredExtrasSerializationExtensions.add(extension)
|
||||
}
|
||||
|
||||
override fun buildSerializationContext(): IdeaSerializationContext {
|
||||
override fun buildSerializationContext(): IdeaKotlinSerializationContext {
|
||||
return IdeaSerializationContext(
|
||||
logger = extension.project.logger,
|
||||
extrasSerializationExtensions = registeredExtrasSerializationExtensions.toList()
|
||||
|
||||
+18
-18
@@ -6,32 +6,32 @@
|
||||
package org.jetbrains.kotlin.gradle.kpm.idea
|
||||
|
||||
import org.gradle.api.logging.Logger
|
||||
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaExtrasSerializationExtension
|
||||
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaExtrasSerializer
|
||||
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaSerializationContext
|
||||
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaSerializationLogger
|
||||
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaKotlinExtrasSerializer
|
||||
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaKotlinExtrasSerializationExtension
|
||||
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaKotlinSerializationContext
|
||||
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaKotlinSerializationLogger
|
||||
import org.jetbrains.kotlin.tooling.core.Extras
|
||||
|
||||
internal fun IdeaSerializationContext(
|
||||
logger: Logger, extrasSerializationExtensions: List<IdeaExtrasSerializationExtension>
|
||||
): IdeaSerializationContext {
|
||||
return IdeaSerializationContextImpl(
|
||||
logger: Logger, extrasSerializationExtensions: List<IdeaKotlinExtrasSerializationExtension>
|
||||
): IdeaKotlinSerializationContext {
|
||||
return IdeaKotlinSerializationContextImpl(
|
||||
extrasSerializationExtension = IdeaKpmCompositeExtrasSerializationExtension(logger, extrasSerializationExtensions),
|
||||
logger = IdeaKpmSerializationLoggerImpl(logger)
|
||||
)
|
||||
}
|
||||
|
||||
private class IdeaSerializationContextImpl(
|
||||
override val extrasSerializationExtension: IdeaExtrasSerializationExtension,
|
||||
override val logger: IdeaSerializationLogger
|
||||
) : IdeaSerializationContext
|
||||
private class IdeaKotlinSerializationContextImpl(
|
||||
override val extrasSerializationExtension: IdeaKotlinExtrasSerializationExtension,
|
||||
override val logger: IdeaKotlinSerializationLogger
|
||||
) : IdeaKotlinSerializationContext
|
||||
|
||||
/* Simple composite implementation, reporting conflicting extensions */
|
||||
private class IdeaKpmCompositeExtrasSerializationExtension(
|
||||
private val logger: Logger,
|
||||
private val extensions: List<IdeaExtrasSerializationExtension>
|
||||
) : IdeaExtrasSerializationExtension {
|
||||
override fun <T : Any> serializer(key: Extras.Key<T>): IdeaExtrasSerializer<T>? {
|
||||
private val extensions: List<IdeaKotlinExtrasSerializationExtension>
|
||||
) : IdeaKotlinExtrasSerializationExtension {
|
||||
override fun <T : Any> serializer(key: Extras.Key<T>): IdeaKotlinExtrasSerializer<T>? {
|
||||
val serializers = extensions.mapNotNull { it.serializer(key) }
|
||||
|
||||
if (serializers.size == 1) {
|
||||
@@ -50,12 +50,12 @@ private class IdeaKpmCompositeExtrasSerializationExtension(
|
||||
/* Simple Gradle logger based implementation */
|
||||
private class IdeaKpmSerializationLoggerImpl(
|
||||
private val logger: Logger,
|
||||
) : IdeaSerializationLogger {
|
||||
override fun report(severity: IdeaSerializationLogger.Severity, message: String, cause: Throwable?) {
|
||||
) : IdeaKotlinSerializationLogger {
|
||||
override fun report(severity: IdeaKotlinSerializationLogger.Severity, message: String, cause: Throwable?) {
|
||||
val text = "[KPM] Serialization: $message"
|
||||
when (severity) {
|
||||
IdeaSerializationLogger.Severity.WARNING -> logger.warn(text, cause)
|
||||
IdeaSerializationLogger.Severity.ERROR -> logger.error(text, cause)
|
||||
IdeaKotlinSerializationLogger.Severity.WARNING -> logger.warn(text, cause)
|
||||
IdeaKotlinSerializationLogger.Severity.ERROR -> logger.error(text, cause)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+2
-2
@@ -7,7 +7,7 @@
|
||||
|
||||
package org.jetbrains.kotlin.gradle.kpm.idea
|
||||
|
||||
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaExtrasSerializer
|
||||
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaKotlinExtrasSerializer
|
||||
import org.jetbrains.kotlin.gradle.kpm.external.ExternalVariantApi
|
||||
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.GradleKpmFragmentGranularMetadataResolverFactory
|
||||
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.KotlinPm20ProjectExtension
|
||||
@@ -99,6 +99,6 @@ internal fun IdeaKpmProjectModelBuilder.Companion.default(
|
||||
|
||||
registerExtrasSerializationExtension {
|
||||
/* For transporting debugging breadcrumbs into the ide */
|
||||
register(kotlinDebugKey, IdeaExtrasSerializer.javaIoSerializable())
|
||||
register(kotlinDebugKey, IdeaKotlinExtrasSerializer.javaIoSerializable())
|
||||
}
|
||||
}
|
||||
|
||||
+5
-5
@@ -9,8 +9,8 @@ package org.jetbrains.kotlin.gradle.plugin.ide
|
||||
import org.gradle.api.Project
|
||||
import org.jetbrains.kotlin.gradle.ExternalKotlinTargetApi
|
||||
import org.jetbrains.kotlin.gradle.dsl.multiplatformExtension
|
||||
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaExtrasSerializationExtension
|
||||
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaExtrasSerializationExtensionBuilder
|
||||
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaKotlinExtrasSerializationExtension
|
||||
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaKotlinExtrasSerializationExtensionBuilder
|
||||
import org.jetbrains.kotlin.gradle.idea.tcs.IdeaKotlinDependency
|
||||
import org.jetbrains.kotlin.gradle.plugin.KotlinSourceSet
|
||||
import org.jetbrains.kotlin.gradle.plugin.extraProperties
|
||||
@@ -58,7 +58,7 @@ interface IdeMultiplatformImport {
|
||||
|
||||
@ExternalKotlinTargetApi
|
||||
fun registerExtrasSerializationExtension(
|
||||
extension: IdeaExtrasSerializationExtension
|
||||
extension: IdeaKotlinExtrasSerializationExtension
|
||||
)
|
||||
|
||||
/**
|
||||
@@ -156,7 +156,7 @@ internal val Project.kotlinIdeMultiplatformImport: IdeMultiplatformImport get()
|
||||
|
||||
@ExternalKotlinTargetApi
|
||||
fun IdeMultiplatformImport.registerExtrasSerializationExtension(
|
||||
builder: IdeaExtrasSerializationExtensionBuilder.() -> Unit
|
||||
builder: IdeaKotlinExtrasSerializationExtensionBuilder.() -> Unit
|
||||
) {
|
||||
registerExtrasSerializationExtension(IdeaExtrasSerializationExtension(builder))
|
||||
registerExtrasSerializationExtension(IdeaKotlinExtrasSerializationExtension(builder))
|
||||
}
|
||||
|
||||
+2
-2
@@ -6,7 +6,7 @@
|
||||
package org.jetbrains.kotlin.gradle.plugin.ide
|
||||
|
||||
import org.jetbrains.kotlin.gradle.dsl.KotlinMultiplatformExtension
|
||||
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaExtrasSerializer
|
||||
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaKotlinExtrasSerializer
|
||||
import org.jetbrains.kotlin.gradle.kpm.idea.kotlinDebugKey
|
||||
import org.jetbrains.kotlin.gradle.plugin.ide.dependencyResolvers.IdeDependsOnDependencyResolver
|
||||
import org.jetbrains.kotlin.gradle.plugin.ide.dependencyResolvers.IdeTransformedMetadataDependencyResolver
|
||||
@@ -29,7 +29,7 @@ fun IdeMultiplatformImport(extension: KotlinMultiplatformExtension): IdeMultipla
|
||||
)
|
||||
|
||||
registerExtrasSerializationExtension {
|
||||
register(kotlinDebugKey, IdeaExtrasSerializer.javaIoSerializable())
|
||||
register(kotlinDebugKey, IdeaKotlinExtrasSerializer.javaIoSerializable())
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+5
-5
@@ -8,8 +8,8 @@ package org.jetbrains.kotlin.gradle.plugin.ide
|
||||
import org.jetbrains.kotlin.gradle.ExternalKotlinTargetApi
|
||||
import org.jetbrains.kotlin.gradle.dsl.KotlinMultiplatformExtension
|
||||
import org.jetbrains.kotlin.gradle.idea.proto.tcs.toByteArray
|
||||
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaExtrasSerializationExtension
|
||||
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaSerializationContext
|
||||
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaKotlinExtrasSerializationExtension
|
||||
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaKotlinSerializationContext
|
||||
import org.jetbrains.kotlin.gradle.idea.tcs.IdeaKotlinDependency
|
||||
import org.jetbrains.kotlin.gradle.kpm.idea.IdeaSerializationContext
|
||||
import org.jetbrains.kotlin.gradle.plugin.KotlinSourceSet
|
||||
@@ -64,7 +64,7 @@ internal class IdeMultiplatformImportImpl(
|
||||
private val registeredDependencyResolvers = mutableListOf<RegisteredDependencyResolver>()
|
||||
private val registeredDependencyTransformers = mutableListOf<RegisteredDependencyTransformer>()
|
||||
private val registeredDependencyEffects = mutableListOf<RegisteredDependencyEffect>()
|
||||
private val registeredExtrasSerializationExtensions = mutableListOf<IdeaExtrasSerializationExtension>()
|
||||
private val registeredExtrasSerializationExtensions = mutableListOf<IdeaKotlinExtrasSerializationExtension>()
|
||||
|
||||
@ExternalKotlinTargetApi
|
||||
override fun registerDependencyResolver(
|
||||
@@ -97,7 +97,7 @@ internal class IdeMultiplatformImportImpl(
|
||||
}
|
||||
|
||||
@ExternalKotlinTargetApi
|
||||
override fun registerExtrasSerializationExtension(extension: IdeaExtrasSerializationExtension) {
|
||||
override fun registerExtrasSerializationExtension(extension: IdeaKotlinExtrasSerializationExtension) {
|
||||
registeredExtrasSerializationExtensions.add(extension)
|
||||
}
|
||||
|
||||
@@ -149,7 +149,7 @@ internal class IdeMultiplatformImportImpl(
|
||||
.forEach { it.effect(sourceSet, dependencies) }
|
||||
}
|
||||
|
||||
private fun createSerializationContext(): IdeaSerializationContext {
|
||||
private fun createSerializationContext(): IdeaKotlinSerializationContext {
|
||||
return IdeaSerializationContext(
|
||||
logger = extension.project.logger,
|
||||
extrasSerializationExtensions = registeredExtrasSerializationExtensions.toList()
|
||||
|
||||
Reference in New Issue
Block a user