aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/analysis/config/BuildConfiguration.java
diff options
context:
space:
mode:
authorGravatar shahan <shahan@google.com>2018-02-13 10:08:47 -0800
committerGravatar Copybara-Service <copybara-piper@google.com>2018-02-13 10:10:14 -0800
commitfae34b9ee464186c628c313eebced9e89d8146f6 (patch)
tree55d6392acc16aa3c87ada027bf0d92c366c551cc /src/main/java/com/google/devtools/build/lib/analysis/config/BuildConfiguration.java
parenta3339c8ca2e824757afe698f591770f4232af530 (diff)
Replaces InjectingObjectCodec with dependencies threaded through (Des|S)erializationContext.
PiperOrigin-RevId: 185547740
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/analysis/config/BuildConfiguration.java')
-rw-r--r--src/main/java/com/google/devtools/build/lib/analysis/config/BuildConfiguration.java26
1 files changed, 9 insertions, 17 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/config/BuildConfiguration.java b/src/main/java/com/google/devtools/build/lib/analysis/config/BuildConfiguration.java
index abeec41caa..59c5badf37 100644
--- a/src/main/java/com/google/devtools/build/lib/analysis/config/BuildConfiguration.java
+++ b/src/main/java/com/google/devtools/build/lib/analysis/config/BuildConfiguration.java
@@ -54,7 +54,6 @@ import com.google.devtools.build.lib.events.EventHandler;
import com.google.devtools.build.lib.packages.RuleClassProvider;
import com.google.devtools.build.lib.packages.Target;
import com.google.devtools.build.lib.skyframe.serialization.DeserializationContext;
-import com.google.devtools.build.lib.skyframe.serialization.InjectingObjectCodec;
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;
@@ -66,7 +65,6 @@ import com.google.devtools.build.lib.skylarkinterface.SkylarkModuleCategory;
import com.google.devtools.build.lib.util.Fingerprint;
import com.google.devtools.build.lib.util.OS;
import com.google.devtools.build.lib.util.RegexFilter;
-import com.google.devtools.build.lib.vfs.FileSystemProvider;
import com.google.devtools.build.lib.vfs.Path;
import com.google.devtools.build.lib.vfs.PathFragment;
import com.google.devtools.common.options.Converter;
@@ -122,8 +120,7 @@ import javax.annotation.Nullable;
+ "depend on it and not targets that it depends on."
)
public class BuildConfiguration implements BuildConfigurationInterface {
- public static final InjectingObjectCodec<BuildConfiguration, FileSystemProvider> CODEC =
- new BuildConfigurationCodec();
+ public static final ObjectCodec<BuildConfiguration> CODEC = new BuildConfigurationCodec();
/**
* Sorts fragments by class name. This produces a stable order which, e.g., facilitates consistent
@@ -142,10 +139,9 @@ public class BuildConfiguration implements BuildConfigurationInterface {
* declare {@link ImmutableList} signatures on their interfaces vs. {@link List}). This is because
* fragment instances may be shared across configurations.
*/
- @AutoCodec(strategy = AutoCodec.Strategy.POLYMORPHIC, dependency = FileSystemProvider.class)
+ @AutoCodec(strategy = AutoCodec.Strategy.POLYMORPHIC)
public abstract static class Fragment {
- public static final InjectingObjectCodec<Fragment, FileSystemProvider> CODEC =
- new BuildConfiguration_Fragment_AutoCodec();
+ public static final ObjectCodec<Fragment> CODEC = new BuildConfiguration_Fragment_AutoCodec();
/**
* Validates the options for this Fragment. Issues warnings for the
@@ -2182,8 +2178,7 @@ public class BuildConfiguration implements BuildConfigurationInterface {
return GenericBuildEvent.protoChaining(this).setConfiguration(builder.build()).build();
}
- private static class BuildConfigurationCodec
- implements InjectingObjectCodec<BuildConfiguration, FileSystemProvider> {
+ private static class BuildConfigurationCodec implements ObjectCodec<BuildConfiguration> {
@Override
public Class<BuildConfiguration> getEncodedClass() {
return BuildConfiguration.class;
@@ -2191,31 +2186,28 @@ public class BuildConfiguration implements BuildConfigurationInterface {
@Override
public void serialize(
- FileSystemProvider fsProvider,
SerializationContext context,
BuildConfiguration obj,
CodedOutputStream codedOut)
throws SerializationException, IOException {
- BlazeDirectories.CODEC.serialize(fsProvider, context, obj.directories, codedOut);
+ BlazeDirectories.CODEC.serialize(context, obj.directories, codedOut);
codedOut.writeInt32NoTag(obj.fragments.size());
for (Fragment fragment : obj.fragments.values()) {
- Fragment.CODEC.serialize(fsProvider, context, fragment, codedOut);
+ Fragment.CODEC.serialize(context, fragment, codedOut);
}
BuildOptions.CODEC.serialize(context, obj.buildOptions, codedOut);
StringCodecs.asciiOptimized().serialize(context, obj.repositoryName, codedOut);
}
@Override
- public BuildConfiguration deserialize(
- FileSystemProvider fsProvider, DeserializationContext context, CodedInputStream codedIn)
+ public BuildConfiguration deserialize(DeserializationContext context, CodedInputStream codedIn)
throws SerializationException, IOException {
- BlazeDirectories blazeDirectories =
- BlazeDirectories.CODEC.deserialize(fsProvider, context, codedIn);
+ BlazeDirectories blazeDirectories = BlazeDirectories.CODEC.deserialize(context, codedIn);
int length = codedIn.readInt32();
ImmutableSortedMap.Builder<Class<? extends Fragment>, Fragment> builder =
new ImmutableSortedMap.Builder<>(lexicalFragmentSorter);
for (int i = 0; i < length; ++i) {
- Fragment fragment = Fragment.CODEC.deserialize(fsProvider, context, codedIn);
+ Fragment fragment = Fragment.CODEC.deserialize(context, codedIn);
builder.put(fragment.getClass(), fragment);
}
BuildOptions options = BuildOptions.CODEC.deserialize(context, codedIn);