Minor, inline ClassData#read & PackageData#read to single usage

This commit is contained in:
Alexander Udalov
2015-09-21 16:26:38 +03:00
parent 4a8d2b73d3
commit f9ba7f6880
3 changed files with 19 additions and 40 deletions
@@ -19,6 +19,9 @@ package org.jetbrains.kotlin.serialization.jvm
import com.google.protobuf.ExtensionRegistryLite
import org.jetbrains.kotlin.serialization.ClassData
import org.jetbrains.kotlin.serialization.PackageData
import org.jetbrains.kotlin.serialization.ProtoBuf
import org.jetbrains.kotlin.serialization.deserialization.NameResolver
import java.io.ByteArrayInputStream
public object JvmProtoBufUtil {
public val EXTENSION_REGISTRY: ExtensionRegistryLite = run {
@@ -28,14 +31,26 @@ public object JvmProtoBufUtil {
}
@JvmStatic
public fun readClassDataFrom(encodedData: Array<String>): ClassData = readClassDataFrom(BitEncoding.decodeBytes(encodedData))
public fun readClassDataFrom(data: Array<String>): ClassData =
readClassDataFrom(BitEncoding.decodeBytes(data))
@JvmStatic
public fun readClassDataFrom(data: ByteArray): ClassData = ClassData.read(data, EXTENSION_REGISTRY)
public fun readClassDataFrom(bytes: ByteArray): ClassData {
val input = ByteArrayInputStream(bytes)
val nameResolver = NameResolver.read(input)
val classProto = ProtoBuf.Class.parseFrom(input, EXTENSION_REGISTRY)
return ClassData(nameResolver, classProto)
}
@JvmStatic
public fun readPackageDataFrom(encodedData: Array<String>): PackageData = readPackageDataFrom(BitEncoding.decodeBytes(encodedData))
public fun readPackageDataFrom(data: Array<String>): PackageData =
readPackageDataFrom(BitEncoding.decodeBytes(data))
@JvmStatic
public fun readPackageDataFrom(data: ByteArray): PackageData = PackageData.read(data, EXTENSION_REGISTRY)
public fun readPackageDataFrom(bytes: ByteArray): PackageData {
val input = ByteArrayInputStream(bytes)
val nameResolver = NameResolver.read(input)
val packageProto = ProtoBuf.Package.parseFrom(input, EXTENSION_REGISTRY)
return PackageData(nameResolver, packageProto)
}
}
@@ -16,28 +16,10 @@
package org.jetbrains.kotlin.serialization;
import com.google.protobuf.ExtensionRegistryLite;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.kotlin.serialization.deserialization.NameResolver;
import org.jetbrains.kotlin.utils.UtilsPackage;
import java.io.ByteArrayInputStream;
import java.io.IOException;
public final class ClassData {
@NotNull
public static ClassData read(@NotNull byte[] bytes, @NotNull ExtensionRegistryLite registry) {
try {
ByteArrayInputStream in = new ByteArrayInputStream(bytes);
NameResolver nameResolver = NameResolver.read(in);
ProtoBuf.Class classProto = ProtoBuf.Class.parseFrom(in, registry);
return new ClassData(nameResolver, classProto);
}
catch (IOException e) {
throw UtilsPackage.rethrow(e);
}
}
private final NameResolver nameResolver;
private final ProtoBuf.Class classProto;
@@ -16,28 +16,10 @@
package org.jetbrains.kotlin.serialization;
import com.google.protobuf.ExtensionRegistryLite;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.kotlin.serialization.deserialization.NameResolver;
import org.jetbrains.kotlin.utils.UtilsPackage;
import java.io.ByteArrayInputStream;
import java.io.IOException;
public final class PackageData {
@NotNull
public static PackageData read(@NotNull byte[] bytes, @NotNull ExtensionRegistryLite registry) {
try {
ByteArrayInputStream in = new ByteArrayInputStream(bytes);
NameResolver nameResolver = NameResolver.read(in);
ProtoBuf.Package packageProto = ProtoBuf.Package.parseFrom(in, registry);
return new PackageData(nameResolver, packageProto);
}
catch (IOException e) {
throw UtilsPackage.rethrow(e);
}
}
private final NameResolver nameResolver;
private final ProtoBuf.Package packageProto;