From 095a34198d3efbd3c4ebde8f6aff9b39c649b324 Mon Sep 17 00:00:00 2001 From: michajlo Date: Tue, 13 Feb 2018 16:45:05 -0800 Subject: Thread {Des,S}erializationContext through Package serialization interface PiperOrigin-RevId: 185609826 --- .../java/com/google/devtools/build/lib/packages/Package.java | 10 ++++++---- .../build/lib/packages/PackageDeserializerInterface.java | 3 ++- .../build/lib/packages/PackageSerializerInterface.java | 3 ++- 3 files changed, 10 insertions(+), 6 deletions(-) (limited to 'src/main/java') diff --git a/src/main/java/com/google/devtools/build/lib/packages/Package.java b/src/main/java/com/google/devtools/build/lib/packages/Package.java index 648343c6da..0f11326fc4 100644 --- a/src/main/java/com/google/devtools/build/lib/packages/Package.java +++ b/src/main/java/com/google/devtools/build/lib/packages/Package.java @@ -35,7 +35,9 @@ import com.google.devtools.build.lib.events.ExtendedEventHandler.Postable; import com.google.devtools.build.lib.events.Location; import com.google.devtools.build.lib.packages.AttributeMap.AcceptsLabelAttribute; import com.google.devtools.build.lib.packages.License.DistributionType; +import com.google.devtools.build.lib.skyframe.serialization.DeserializationContext; import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; +import com.google.devtools.build.lib.skyframe.serialization.SerializationContext; import com.google.devtools.build.lib.skyframe.serialization.SerializationException; import com.google.devtools.build.lib.syntax.SkylarkSemantics; import com.google.devtools.build.lib.util.SpellChecker; @@ -1582,22 +1584,22 @@ public class Package { @Override public void serialize( - com.google.devtools.build.lib.skyframe.serialization.SerializationContext context, + SerializationContext context, Package input, CodedOutputStream codedOut) throws IOException, SerializationException { PackageCodecDependencies codecDeps = context.getDependency(PackageCodecDependencies.class); - codecDeps.getPackageSerializer().serialize(input, codedOut); + codecDeps.getPackageSerializer().serialize(context, input, codedOut); } @Override public Package deserialize( - com.google.devtools.build.lib.skyframe.serialization.DeserializationContext context, + DeserializationContext context, CodedInputStream codedIn) throws SerializationException, IOException { PackageCodecDependencies codecDeps = context.getDependency(PackageCodecDependencies.class); try { - return codecDeps.getPackageDeserializer().deserialize(codedIn); + return codecDeps.getPackageDeserializer().deserialize(context, codedIn); } catch (PackageDeserializationException e) { throw new SerializationException("Failed to deserialize Package", e); } catch (InterruptedException e) { diff --git a/src/main/java/com/google/devtools/build/lib/packages/PackageDeserializerInterface.java b/src/main/java/com/google/devtools/build/lib/packages/PackageDeserializerInterface.java index ea74a4d682..afdfac048a 100644 --- a/src/main/java/com/google/devtools/build/lib/packages/PackageDeserializerInterface.java +++ b/src/main/java/com/google/devtools/build/lib/packages/PackageDeserializerInterface.java @@ -14,6 +14,7 @@ package com.google.devtools.build.lib.packages; +import com.google.devtools.build.lib.skyframe.serialization.DeserializationContext; import com.google.protobuf.CodedInputStream; import java.io.IOException; @@ -34,6 +35,6 @@ public interface PackageDeserializerInterface { * @throws IOException on failures reading from {@code codedIn} * @throws InterruptedException */ - Package deserialize(CodedInputStream codedIn) + Package deserialize(DeserializationContext context, CodedInputStream codedIn) throws PackageDeserializationException, IOException, InterruptedException; } diff --git a/src/main/java/com/google/devtools/build/lib/packages/PackageSerializerInterface.java b/src/main/java/com/google/devtools/build/lib/packages/PackageSerializerInterface.java index a06e454a5d..6463fcac08 100644 --- a/src/main/java/com/google/devtools/build/lib/packages/PackageSerializerInterface.java +++ b/src/main/java/com/google/devtools/build/lib/packages/PackageSerializerInterface.java @@ -14,6 +14,7 @@ package com.google.devtools.build.lib.packages; +import com.google.devtools.build.lib.skyframe.serialization.SerializationContext; import com.google.devtools.build.lib.skyframe.serialization.SerializationException; import com.google.protobuf.CodedOutputStream; import java.io.IOException; @@ -32,6 +33,6 @@ public interface PackageSerializerInterface { * @param codedOut the stream to write {@code pkg}'s serialized representation to * @throws IOException on failure writing to {@code codedOut} */ - void serialize(Package pkg, CodedOutputStream codedOut) + void serialize(SerializationContext context, Package pkg, CodedOutputStream codedOut) throws SerializationException, IOException; } -- cgit v1.2.3