diff options
author | 2018-02-28 15:57:33 -0800 | |
---|---|---|
committer | 2018-02-28 16:00:01 -0800 | |
commit | 20f35b448b5d9d04ba366d74d6bf4c7100d91b63 (patch) | |
tree | 2bb57b821c5d13be9955e47c917133f7158a32f5 /src | |
parent | 6e65952aea9223ee1ca998198728200ad27d2bbb (diff) |
Deletes CODEC fields now that they are no longer needed.
PiperOrigin-RevId: 187397314
Diffstat (limited to 'src')
143 files changed, 126 insertions, 823 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/actions/ActionLookupData.java b/src/main/java/com/google/devtools/build/lib/actions/ActionLookupData.java index 9059267903..00aa65797f 100644 --- a/src/main/java/com/google/devtools/build/lib/actions/ActionLookupData.java +++ b/src/main/java/com/google/devtools/build/lib/actions/ActionLookupData.java @@ -18,7 +18,6 @@ import com.google.common.collect.Interner; import com.google.devtools.build.lib.actions.ActionLookupValue.ActionLookupKey; import com.google.devtools.build.lib.cmdline.Label; import com.google.devtools.build.lib.concurrent.BlazeInterners; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.skyframe.SkyFunctionName; import com.google.devtools.build.skyframe.SkyKey; @@ -28,7 +27,6 @@ import com.google.devtools.build.skyframe.SkyKey; public class ActionLookupData implements SkyKey { private static final Interner<ActionLookupData> INTERNER = BlazeInterners.newWeakInterner(); public static final SkyFunctionName NAME = SkyFunctionName.create("ACTION_EXECUTION"); - public static final ObjectCodec<ActionLookupData> CODEC = new ActionLookupData_AutoCodec(); private final ActionLookupKey actionLookupKey; private final int actionIndex; diff --git a/src/main/java/com/google/devtools/build/lib/actions/ActionOwner.java b/src/main/java/com/google/devtools/build/lib/actions/ActionOwner.java index caa1859d77..77c67a8121 100644 --- a/src/main/java/com/google/devtools/build/lib/actions/ActionOwner.java +++ b/src/main/java/com/google/devtools/build/lib/actions/ActionOwner.java @@ -21,7 +21,6 @@ import com.google.devtools.build.lib.cmdline.Label; import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable; import com.google.devtools.build.lib.events.Location; import com.google.devtools.build.lib.packages.AspectDescriptor; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import javax.annotation.Nullable; @@ -36,8 +35,6 @@ import javax.annotation.Nullable; @AutoCodec @Immutable public abstract class ActionOwner { - public static final ObjectCodec<ActionOwner> CODEC = new ActionOwner_AutoCodec(); - /** An action owner for special cases. Usage is strongly discouraged. */ public static final ActionOwner SYSTEM_ACTION_OWNER = ActionOwner.create( diff --git a/src/main/java/com/google/devtools/build/lib/actions/Artifact.java b/src/main/java/com/google/devtools/build/lib/actions/Artifact.java index 918c6b998c..f0eca50638 100644 --- a/src/main/java/com/google/devtools/build/lib/actions/Artifact.java +++ b/src/main/java/com/google/devtools/build/lib/actions/Artifact.java @@ -30,7 +30,6 @@ import com.google.devtools.build.lib.actions.ActionAnalysisMetadata.MiddlemanTyp import com.google.devtools.build.lib.cmdline.Label; import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable; import com.google.devtools.build.lib.shell.ShellUtils; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec.VisibleForSerialization; import com.google.devtools.build.lib.skylarkinterface.SkylarkCallable; @@ -118,8 +117,6 @@ public class Artifact Comparable<Object>, CommandLineItem { - public static final ObjectCodec<Artifact> CODEC = new Artifact_AutoCodec(); - /** Compares artifact according to their exec paths. Sorts null values first. */ @SuppressWarnings("ReferenceEquality") // "a == b" is an optimization public static final Comparator<Artifact> EXEC_PATH_COMPARATOR = @@ -448,10 +445,6 @@ public class Artifact @VisibleForTesting @AutoCodec public static final class SpecialArtifact extends Artifact { - - public static final ObjectCodec<SpecialArtifact> CODEC = - new Artifact_SpecialArtifact_AutoCodec(); - private final SpecialArtifactType type; @VisibleForSerialization @@ -509,9 +502,6 @@ public class Artifact @Immutable @AutoCodec public static final class TreeFileArtifact extends Artifact { - public static final ObjectCodec<TreeFileArtifact> CODEC = - new Artifact_TreeFileArtifact_AutoCodec(); - private final SpecialArtifact parentTreeArtifact; private final PathFragment parentRelativePath; diff --git a/src/main/java/com/google/devtools/build/lib/actions/ArtifactRoot.java b/src/main/java/com/google/devtools/build/lib/actions/ArtifactRoot.java index 0e32c867f9..a3abeb5131 100644 --- a/src/main/java/com/google/devtools/build/lib/actions/ArtifactRoot.java +++ b/src/main/java/com/google/devtools/build/lib/actions/ArtifactRoot.java @@ -17,7 +17,6 @@ package com.google.devtools.build.lib.actions; import com.google.common.base.Preconditions; import com.google.devtools.build.lib.cmdline.RepositoryName; import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec.VisibleForSerialization; import com.google.devtools.build.lib.skylarkinterface.SkylarkCallable; @@ -57,9 +56,6 @@ import java.util.Objects; @Immutable @AutoCodec public final class ArtifactRoot implements Comparable<ArtifactRoot>, Serializable, SkylarkValue { - - public static final ObjectCodec<ArtifactRoot> CODEC = new ArtifactRoot_AutoCodec(); - // This must always be consistent with Package.getSourceRoot; otherwise computing source roots // from exec paths does not work, which can break the action cache for input-discovering actions. public static ArtifactRoot computeSourceRoot(Root packageRoot, RepositoryName repository) { diff --git a/src/main/java/com/google/devtools/build/lib/actions/CommandLine.java b/src/main/java/com/google/devtools/build/lib/actions/CommandLine.java index 558644be51..114e7b0bb0 100644 --- a/src/main/java/com/google/devtools/build/lib/actions/CommandLine.java +++ b/src/main/java/com/google/devtools/build/lib/actions/CommandLine.java @@ -19,7 +19,6 @@ import com.google.common.collect.ImmutableList; import com.google.common.collect.Iterables; import com.google.devtools.build.lib.actions.Artifact.ArtifactExpander; import com.google.devtools.build.lib.collect.CollectionUtils; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec.VisibleForSerialization; import com.google.devtools.build.lib.util.Fingerprint; @@ -29,9 +28,6 @@ public abstract class CommandLine { @AutoCodec @VisibleForSerialization static class EmptyCommandLine extends CommandLine { - public static final ObjectCodec<EmptyCommandLine> CODEC = - new CommandLine_EmptyCommandLine_AutoCodec(); - @Override public Iterable<String> arguments() throws CommandLineExpansionException { return ImmutableList.of(); @@ -66,9 +62,6 @@ public abstract class CommandLine { @AutoCodec @VisibleForSerialization static class SimpleCommandLine extends CommandLine { - public static final ObjectCodec<SimpleCommandLine> CODEC = - new CommandLine_SimpleCommandLine_AutoCodec(); - private Iterable<String> args; SimpleCommandLine(Iterable<String> args) { @@ -90,9 +83,6 @@ public abstract class CommandLine { @AutoCodec @VisibleForSerialization static class PrefixedCommandLine extends CommandLine { - public static final ObjectCodec<PrefixedCommandLine> CODEC = - new CommandLine_PrefixedCommandLine_AutoCodec(); - private ImmutableList<String> executableArgs; private CommandLine commandLine; @@ -129,9 +119,6 @@ public abstract class CommandLine { @AutoCodec @VisibleForSerialization static class SuffixedCommandLine extends CommandLine { - public static final ObjectCodec<SuffixedCommandLine> CODEC = - new CommandLine_SuffixedCommandLine_AutoCodec(); - private ImmutableList<String> executableArgs; private CommandLine commandLine; diff --git a/src/main/java/com/google/devtools/build/lib/actions/MiddlemanAction.java b/src/main/java/com/google/devtools/build/lib/actions/MiddlemanAction.java index 70a659948e..15c500766c 100644 --- a/src/main/java/com/google/devtools/build/lib/actions/MiddlemanAction.java +++ b/src/main/java/com/google/devtools/build/lib/actions/MiddlemanAction.java @@ -18,7 +18,6 @@ import com.google.common.collect.ImmutableSet; import com.google.common.collect.Iterables; import com.google.devtools.build.lib.cmdline.Label; import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec.VisibleForSerialization; import com.google.devtools.build.lib.util.Fingerprint; @@ -31,8 +30,6 @@ import com.google.devtools.build.lib.util.Fingerprint; @Immutable @AutoCodec public final class MiddlemanAction extends AbstractAction { - public static final ObjectCodec<MiddlemanAction> CODEC = new MiddlemanAction_AutoCodec(); - public static final String MIDDLEMAN_MNEMONIC = "Middleman"; private final String description; private final MiddlemanType middlemanType; diff --git a/src/main/java/com/google/devtools/build/lib/analysis/BlazeDirectories.java b/src/main/java/com/google/devtools/build/lib/analysis/BlazeDirectories.java index 7445761c9f..02d7a2f8a1 100644 --- a/src/main/java/com/google/devtools/build/lib/analysis/BlazeDirectories.java +++ b/src/main/java/com/google/devtools/build/lib/analysis/BlazeDirectories.java @@ -18,7 +18,6 @@ import com.google.common.annotations.VisibleForTesting; import com.google.common.hash.HashCode; import com.google.devtools.build.lib.actions.ArtifactRoot; import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.util.StringCanonicalizer; import com.google.devtools.build.lib.vfs.Path; @@ -46,8 +45,6 @@ import java.util.Objects; @AutoCodec @Immutable public final class BlazeDirectories { - public static final ObjectCodec<BlazeDirectories> CODEC = new BlazeDirectories_AutoCodec(); - // Include directory name, relative to execRoot/blaze-out/configuration. public static final String RELATIVE_INCLUDE_DIR = StringCanonicalizer.intern("include"); @VisibleForTesting static final String DEFAULT_EXEC_ROOT = "default-exec-root"; diff --git a/src/main/java/com/google/devtools/build/lib/analysis/ExtraActionArtifactsProvider.java b/src/main/java/com/google/devtools/build/lib/analysis/ExtraActionArtifactsProvider.java index 4c86c6a819..1dd90cff3d 100644 --- a/src/main/java/com/google/devtools/build/lib/analysis/ExtraActionArtifactsProvider.java +++ b/src/main/java/com/google/devtools/build/lib/analysis/ExtraActionArtifactsProvider.java @@ -19,7 +19,6 @@ import com.google.devtools.build.lib.collect.nestedset.NestedSet; import com.google.devtools.build.lib.collect.nestedset.NestedSetBuilder; import com.google.devtools.build.lib.collect.nestedset.Order; import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec.VisibleForSerialization; @@ -27,9 +26,6 @@ import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec. @Immutable @AutoCodec public final class ExtraActionArtifactsProvider implements TransitiveInfoProvider { - public static final ObjectCodec<ExtraActionArtifactsProvider> CODEC = - new ExtraActionArtifactsProvider_AutoCodec(); - public static final ExtraActionArtifactsProvider EMPTY = new ExtraActionArtifactsProvider( NestedSetBuilder.<Artifact>emptySet(Order.STABLE_ORDER), diff --git a/src/main/java/com/google/devtools/build/lib/analysis/FileProvider.java b/src/main/java/com/google/devtools/build/lib/analysis/FileProvider.java index d1e28db822..b4035c0ba7 100644 --- a/src/main/java/com/google/devtools/build/lib/analysis/FileProvider.java +++ b/src/main/java/com/google/devtools/build/lib/analysis/FileProvider.java @@ -19,7 +19,6 @@ import com.google.devtools.build.lib.collect.nestedset.NestedSet; import com.google.devtools.build.lib.collect.nestedset.NestedSetBuilder; import com.google.devtools.build.lib.collect.nestedset.Order; import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.skylarkinterface.SkylarkCallable; import com.google.devtools.build.lib.skylarkinterface.SkylarkModule; @@ -38,8 +37,6 @@ import com.google.devtools.build.lib.skylarkinterface.SkylarkModuleCategory; ) @AutoCodec public final class FileProvider implements TransitiveInfoProvider { - public static final ObjectCodec<FileProvider> CODEC = new FileProvider_AutoCodec(); - public static final FileProvider EMPTY = new FileProvider(NestedSetBuilder.<Artifact>emptySet(Order.STABLE_ORDER)); diff --git a/src/main/java/com/google/devtools/build/lib/analysis/FilesToRunProvider.java b/src/main/java/com/google/devtools/build/lib/analysis/FilesToRunProvider.java index 09c5c48f7d..8a72fd069f 100644 --- a/src/main/java/com/google/devtools/build/lib/analysis/FilesToRunProvider.java +++ b/src/main/java/com/google/devtools/build/lib/analysis/FilesToRunProvider.java @@ -21,7 +21,6 @@ import com.google.devtools.build.lib.collect.nestedset.NestedSet; import com.google.devtools.build.lib.collect.nestedset.NestedSetBuilder; import com.google.devtools.build.lib.collect.nestedset.Order; import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.skylarkinterface.SkylarkCallable; import com.google.devtools.build.lib.skylarkinterface.SkylarkModule; @@ -33,8 +32,6 @@ import javax.annotation.Nullable; @SkylarkModule(name = "FilesToRunProvider", doc = "", category = SkylarkModuleCategory.PROVIDER) @AutoCodec public final class FilesToRunProvider implements TransitiveInfoProvider { - public static final ObjectCodec<FilesToRunProvider> CODEC = new FilesToRunProvider_AutoCodec(); - /** The name of the field in Skylark used to access this class. */ public static final String SKYLARK_NAME = "files_to_run"; diff --git a/src/main/java/com/google/devtools/build/lib/analysis/LanguageDependentFragment.java b/src/main/java/com/google/devtools/build/lib/analysis/LanguageDependentFragment.java index 56c22f1f6f..61ea948c1e 100644 --- a/src/main/java/com/google/devtools/build/lib/analysis/LanguageDependentFragment.java +++ b/src/main/java/com/google/devtools/build/lib/analysis/LanguageDependentFragment.java @@ -18,7 +18,6 @@ import com.google.common.collect.ImmutableSet; import com.google.devtools.build.lib.analysis.configuredtargets.RuleConfiguredTarget.Mode; import com.google.devtools.build.lib.cmdline.Label; import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import java.util.Objects; @@ -36,9 +35,6 @@ import java.util.Objects; @Immutable @AutoCodec public final class LanguageDependentFragment implements TransitiveInfoProvider { - public static final ObjectCodec<LanguageDependentFragment> CODEC = new - LanguageDependentFragment_AutoCodec(); - /** * A language that can be supported by a multi-language configured target. * @@ -47,9 +43,6 @@ public final class LanguageDependentFragment implements TransitiveInfoProvider { */ @AutoCodec public static final class LibraryLanguage { - public static final ObjectCodec<LibraryLanguage> CODEC = - new LanguageDependentFragment_LibraryLanguage_AutoCodec(); - private final String displayName; @AutoCodec.Instantiator diff --git a/src/main/java/com/google/devtools/build/lib/analysis/LicensesProvider.java b/src/main/java/com/google/devtools/build/lib/analysis/LicensesProvider.java index 57272bda9f..d8bb39c754 100644 --- a/src/main/java/com/google/devtools/build/lib/analysis/LicensesProvider.java +++ b/src/main/java/com/google/devtools/build/lib/analysis/LicensesProvider.java @@ -19,7 +19,6 @@ import com.google.devtools.build.lib.analysis.config.BuildConfiguration; import com.google.devtools.build.lib.cmdline.Label; import com.google.devtools.build.lib.collect.nestedset.NestedSet; import com.google.devtools.build.lib.packages.License; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import java.util.Objects; @@ -46,9 +45,6 @@ public interface LicensesProvider extends TransitiveInfoProvider { /** License association for a particular target. */ @AutoCodec final class TargetLicense { - public static final ObjectCodec<TargetLicense> CODEC = - new LicensesProvider_TargetLicense_AutoCodec(); - private final Label label; private final License license; diff --git a/src/main/java/com/google/devtools/build/lib/analysis/LicensesProviderImpl.java b/src/main/java/com/google/devtools/build/lib/analysis/LicensesProviderImpl.java index 7229aec1c8..bab0beae80 100644 --- a/src/main/java/com/google/devtools/build/lib/analysis/LicensesProviderImpl.java +++ b/src/main/java/com/google/devtools/build/lib/analysis/LicensesProviderImpl.java @@ -24,16 +24,12 @@ import com.google.devtools.build.lib.packages.Attribute; import com.google.devtools.build.lib.packages.AttributeMap; import com.google.devtools.build.lib.packages.License; import com.google.devtools.build.lib.packages.Rule; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; /** A {@link ConfiguredTarget} that has licensed targets in its transitive closure. */ @Immutable @AutoCodec public final class LicensesProviderImpl implements LicensesProvider { - public static final ObjectCodec<LicensesProviderImpl> CODEC = - new LicensesProviderImpl_AutoCodec(); - public static final LicensesProvider EMPTY = new LicensesProviderImpl(NestedSetBuilder.<TargetLicense>emptySet(Order.LINK_ORDER), null); diff --git a/src/main/java/com/google/devtools/build/lib/analysis/MiddlemanProvider.java b/src/main/java/com/google/devtools/build/lib/analysis/MiddlemanProvider.java index 452c26bfae..dd07880ecf 100644 --- a/src/main/java/com/google/devtools/build/lib/analysis/MiddlemanProvider.java +++ b/src/main/java/com/google/devtools/build/lib/analysis/MiddlemanProvider.java @@ -16,15 +16,12 @@ package com.google.devtools.build.lib.analysis; import com.google.devtools.build.lib.actions.Artifact; import com.google.devtools.build.lib.collect.nestedset.NestedSet; import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; /** A provider class that supplies an aggregating middleman to the targets that depend on it. */ @Immutable @AutoCodec public final class MiddlemanProvider implements TransitiveInfoProvider { - public static final ObjectCodec<MiddlemanProvider> CODEC = new MiddlemanProvider_AutoCodec(); - private final NestedSet<Artifact> middlemanArtifact; @AutoCodec.Instantiator diff --git a/src/main/java/com/google/devtools/build/lib/analysis/OutputGroupInfo.java b/src/main/java/com/google/devtools/build/lib/analysis/OutputGroupInfo.java index 9561c91229..7990d37d56 100644 --- a/src/main/java/com/google/devtools/build/lib/analysis/OutputGroupInfo.java +++ b/src/main/java/com/google/devtools/build/lib/analysis/OutputGroupInfo.java @@ -31,7 +31,6 @@ import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable; import com.google.devtools.build.lib.events.Location; import com.google.devtools.build.lib.packages.NativeInfo; import com.google.devtools.build.lib.packages.NativeProvider; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.syntax.EvalException; import com.google.devtools.build.lib.syntax.EvalUtils; @@ -62,8 +61,6 @@ import javax.annotation.Nullable; @AutoCodec public final class OutputGroupInfo extends NativeInfo implements SkylarkIndexable, Iterable<String> { - public static ObjectCodec<OutputGroupInfo> CODEC = new OutputGroupInfo_AutoCodec(); - public static final String SKYLARK_NAME = "output_groups"; public static NativeProvider<OutputGroupInfo> SKYLARK_CONSTRUCTOR = new Constructor(); diff --git a/src/main/java/com/google/devtools/build/lib/analysis/PlatformConfiguration.java b/src/main/java/com/google/devtools/build/lib/analysis/PlatformConfiguration.java index fb051b542a..fefc871457 100644 --- a/src/main/java/com/google/devtools/build/lib/analysis/PlatformConfiguration.java +++ b/src/main/java/com/google/devtools/build/lib/analysis/PlatformConfiguration.java @@ -18,7 +18,6 @@ import com.google.common.collect.ImmutableList; import com.google.devtools.build.lib.analysis.config.BuildConfiguration; import com.google.devtools.build.lib.cmdline.Label; import com.google.devtools.build.lib.concurrent.ThreadSafety; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.skylarkinterface.SkylarkCallable; import com.google.devtools.build.lib.skylarkinterface.SkylarkModule; @@ -34,9 +33,6 @@ import java.util.List; category = SkylarkModuleCategory.CONFIGURATION_FRAGMENT ) public class PlatformConfiguration extends BuildConfiguration.Fragment { - public static final ObjectCodec<PlatformConfiguration> CODEC = - new PlatformConfiguration_AutoCodec(); - private final Label hostPlatform; private final ImmutableList<Label> extraExecutionPlatforms; private final ImmutableList<Label> targetPlatforms; diff --git a/src/main/java/com/google/devtools/build/lib/analysis/PlatformOptions.java b/src/main/java/com/google/devtools/build/lib/analysis/PlatformOptions.java index 51bfd8a15d..688e418fc4 100644 --- a/src/main/java/com/google/devtools/build/lib/analysis/PlatformOptions.java +++ b/src/main/java/com/google/devtools/build/lib/analysis/PlatformOptions.java @@ -19,7 +19,6 @@ import com.google.devtools.build.lib.analysis.config.BuildConfiguration; import com.google.devtools.build.lib.analysis.config.BuildConfiguration.LabelListConverter; import com.google.devtools.build.lib.analysis.config.FragmentOptions; import com.google.devtools.build.lib.cmdline.Label; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.common.options.Option; import com.google.devtools.common.options.OptionDocumentationCategory; @@ -29,8 +28,6 @@ import java.util.List; /** Command-line options for platform-related configuration. */ @AutoCodec(strategy = AutoCodec.Strategy.PUBLIC_FIELDS) public class PlatformOptions extends FragmentOptions { - public static final ObjectCodec<PlatformOptions> CODEC = new PlatformOptions_AutoCodec(); - @Option( name = "host_platform", oldName = "experimental_host_platform", diff --git a/src/main/java/com/google/devtools/build/lib/analysis/Runfiles.java b/src/main/java/com/google/devtools/build/lib/analysis/Runfiles.java index a1f02fa415..78cb3c08ec 100644 --- a/src/main/java/com/google/devtools/build/lib/analysis/Runfiles.java +++ b/src/main/java/com/google/devtools/build/lib/analysis/Runfiles.java @@ -31,7 +31,6 @@ import com.google.devtools.build.lib.events.EventHandler; import com.google.devtools.build.lib.events.EventKind; import com.google.devtools.build.lib.events.Location; import com.google.devtools.build.lib.packages.BuildType; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec.VisibleForSerialization; import com.google.devtools.build.lib.skylarkinterface.SkylarkCallable; @@ -80,9 +79,8 @@ public final class Runfiles { } }; - @VisibleForSerialization - static class DummyEmptyFilesSupplier implements EmptyFilesSupplier { - @AutoCodec public static final DummyEmptyFilesSupplier INSTANCE = new DummyEmptyFilesSupplier(); + private static class DummyEmptyFilesSupplier implements EmptyFilesSupplier { + private DummyEmptyFilesSupplier() {} @Override public Iterable<PathFragment> getExtraPaths(Set<PathFragment> manifestPaths) { @@ -90,8 +88,8 @@ public final class Runfiles { } } - private static final EmptyFilesSupplier DUMMY_EMPTY_FILES_SUPPLIER = - DummyEmptyFilesSupplier.INSTANCE; + @AutoCodec @AutoCodec.VisibleForSerialization + static final EmptyFilesSupplier DUMMY_EMPTY_FILES_SUPPLIER = new DummyEmptyFilesSupplier(); private static final Function<Artifact, PathFragment> GET_ROOT_RELATIVE_PATH = new Function<Artifact, PathFragment>() { @@ -141,8 +139,6 @@ public final class Runfiles { @AutoCodec @VisibleForSerialization static final class SymlinkEntry implements SkylarkValue { - public static final ObjectCodec<SymlinkEntry> CODEC = new Runfiles_SymlinkEntry_AutoCodec(); - private final PathFragment path; private final Artifact artifact; @@ -272,9 +268,6 @@ public final class Runfiles { */ @AutoCodec public static class PruningManifest { - public static final ObjectCodec<PruningManifest> CODEC = - new Runfiles_PruningManifest_AutoCodec(); - private final NestedSet<Artifact> candidateRunfiles; private final Artifact manifestFile; diff --git a/src/main/java/com/google/devtools/build/lib/analysis/RunfilesProvider.java b/src/main/java/com/google/devtools/build/lib/analysis/RunfilesProvider.java index 07abf15ac8..0a10859841 100644 --- a/src/main/java/com/google/devtools/build/lib/analysis/RunfilesProvider.java +++ b/src/main/java/com/google/devtools/build/lib/analysis/RunfilesProvider.java @@ -15,7 +15,6 @@ package com.google.devtools.build.lib.analysis; import com.google.common.base.Function; import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec.VisibleForSerialization; @@ -29,8 +28,6 @@ import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec. @Immutable @AutoCodec public final class RunfilesProvider implements TransitiveInfoProvider { - public static final ObjectCodec<RunfilesProvider> CODEC = new RunfilesProvider_AutoCodec(); - private final Runfiles defaultRunfiles; private final Runfiles dataRunfiles; diff --git a/src/main/java/com/google/devtools/build/lib/analysis/RunfilesSupport.java b/src/main/java/com/google/devtools/build/lib/analysis/RunfilesSupport.java index a077039f26..02a9119e66 100644 --- a/src/main/java/com/google/devtools/build/lib/analysis/RunfilesSupport.java +++ b/src/main/java/com/google/devtools/build/lib/analysis/RunfilesSupport.java @@ -27,7 +27,6 @@ import com.google.devtools.build.lib.analysis.configuredtargets.RuleConfiguredTa import com.google.devtools.build.lib.collect.nestedset.NestedSetBuilder; import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable; import com.google.devtools.build.lib.packages.TargetUtils; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec.VisibleForSerialization; import com.google.devtools.build.lib.syntax.Type; @@ -73,8 +72,6 @@ import javax.annotation.Nullable; @Immutable @AutoCodec public final class RunfilesSupport { - public static final ObjectCodec<RunfilesSupport> CODEC = new RunfilesSupport_AutoCodec(); - private static final String RUNFILES_DIR_EXT = ".runfiles"; private final Runfiles runfiles; diff --git a/src/main/java/com/google/devtools/build/lib/analysis/ServerDirectories.java b/src/main/java/com/google/devtools/build/lib/analysis/ServerDirectories.java index 9b25f7a997..5f3d650c64 100644 --- a/src/main/java/com/google/devtools/build/lib/analysis/ServerDirectories.java +++ b/src/main/java/com/google/devtools/build/lib/analysis/ServerDirectories.java @@ -19,7 +19,6 @@ import com.google.common.base.Strings; import com.google.common.hash.HashCode; import com.google.common.hash.Hashing; import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.vfs.Path; import java.util.Objects; @@ -32,8 +31,6 @@ import javax.annotation.Nullable; @AutoCodec @Immutable public final class ServerDirectories { - public static final ObjectCodec<ServerDirectories> CODEC = new ServerDirectories_AutoCodec(); - /** Top-level user output directory; used, e.g., as default location for caches. */ private final Path outputUserRoot; /** Where Blaze gets unpacked. */ diff --git a/src/main/java/com/google/devtools/build/lib/analysis/TemplateVariableInfo.java b/src/main/java/com/google/devtools/build/lib/analysis/TemplateVariableInfo.java index 99db61de8c..8a32b7b5af 100644 --- a/src/main/java/com/google/devtools/build/lib/analysis/TemplateVariableInfo.java +++ b/src/main/java/com/google/devtools/build/lib/analysis/TemplateVariableInfo.java @@ -18,7 +18,6 @@ import com.google.common.collect.ImmutableMap; import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable; import com.google.devtools.build.lib.packages.NativeInfo; import com.google.devtools.build.lib.packages.NativeProvider; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.skylarkinterface.SkylarkCallable; import com.google.devtools.build.lib.skylarkinterface.SkylarkModule; @@ -28,9 +27,6 @@ import com.google.devtools.build.lib.skylarkinterface.SkylarkModule; @Immutable @AutoCodec public final class TemplateVariableInfo extends NativeInfo { - public static final ObjectCodec<TemplateVariableInfo> CODEC = - new TemplateVariableInfo_AutoCodec(); - public static final String SKYLARK_NAME = "TemplateVariableInfo"; public static final NativeProvider<TemplateVariableInfo> PROVIDER = diff --git a/src/main/java/com/google/devtools/build/lib/analysis/TopLevelArtifactContext.java b/src/main/java/com/google/devtools/build/lib/analysis/TopLevelArtifactContext.java index b67636c084..f6192f03b6 100644 --- a/src/main/java/com/google/devtools/build/lib/analysis/TopLevelArtifactContext.java +++ b/src/main/java/com/google/devtools/build/lib/analysis/TopLevelArtifactContext.java @@ -16,7 +16,6 @@ package com.google.devtools.build.lib.analysis; import com.google.common.collect.ImmutableSortedSet; import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import java.util.Objects; import java.util.Set; @@ -25,9 +24,6 @@ import java.util.Set; @Immutable @AutoCodec public final class TopLevelArtifactContext { - public static final ObjectCodec<TopLevelArtifactContext> CODEC = - new TopLevelArtifactContext_AutoCodec(); - private final boolean runTestsExclusively; private final ImmutableSortedSet<String> outputGroups; diff --git a/src/main/java/com/google/devtools/build/lib/analysis/VisibilityProviderImpl.java b/src/main/java/com/google/devtools/build/lib/analysis/VisibilityProviderImpl.java index 270c92b4cb..a47093b46f 100644 --- a/src/main/java/com/google/devtools/build/lib/analysis/VisibilityProviderImpl.java +++ b/src/main/java/com/google/devtools/build/lib/analysis/VisibilityProviderImpl.java @@ -17,15 +17,12 @@ package com.google.devtools.build.lib.analysis; import com.google.devtools.build.lib.collect.nestedset.NestedSet; import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable; import com.google.devtools.build.lib.packages.PackageSpecification.PackageGroupContents; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; /** Visibility provider implementation. */ @Immutable @AutoCodec public final class VisibilityProviderImpl implements VisibilityProvider { - public static ObjectCodec<VisibilityProviderImpl> CODEC = new VisibilityProviderImpl_AutoCodec(); - private final NestedSet<PackageGroupContents> visibility; public VisibilityProviderImpl(NestedSet<PackageGroupContents> visibility) { diff --git a/src/main/java/com/google/devtools/build/lib/analysis/buildinfo/BuildInfoFactory.java b/src/main/java/com/google/devtools/build/lib/analysis/buildinfo/BuildInfoFactory.java index 635c1b51dd..e5f0141887 100644 --- a/src/main/java/com/google/devtools/build/lib/analysis/buildinfo/BuildInfoFactory.java +++ b/src/main/java/com/google/devtools/build/lib/analysis/buildinfo/BuildInfoFactory.java @@ -17,7 +17,6 @@ import com.google.devtools.build.lib.actions.Artifact; import com.google.devtools.build.lib.actions.ArtifactRoot; import com.google.devtools.build.lib.analysis.config.BuildConfiguration; import com.google.devtools.build.lib.cmdline.RepositoryName; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.vfs.PathFragment; import java.io.Serializable; @@ -58,8 +57,6 @@ public interface BuildInfoFactory extends Serializable { */ @AutoCodec final class BuildInfoKey { - public static final ObjectCodec<BuildInfoKey> CODEC = - new BuildInfoFactory_BuildInfoKey_AutoCodec(); private final String name; public BuildInfoKey(String name) { 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 64ba290c29..f9f3c40bc6 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 @@ -119,8 +119,6 @@ import javax.annotation.Nullable; + "depend on it and not targets that it depends on." ) public class BuildConfiguration implements BuildConfigurationInterface { - public static final ObjectCodec<BuildConfiguration> CODEC = new BuildConfigurationCodec(); - /** * Sorts fragments by class name. This produces a stable order which, e.g., facilitates consistent * output from buildMnemonic. @@ -415,8 +413,6 @@ public class BuildConfiguration implements BuildConfigurationInterface { */ @AutoCodec(strategy = AutoCodec.Strategy.PUBLIC_FIELDS) public static class Options extends FragmentOptions implements Cloneable { - public static final ObjectCodec<Options> CODEC = new BuildConfiguration_Options_AutoCodec(); - @Option( name = "experimental_separate_genfiles_directory", defaultValue = "true", @@ -2112,19 +2108,19 @@ public class BuildConfiguration implements BuildConfigurationInterface { BuildConfiguration obj, CodedOutputStream codedOut) throws SerializationException, IOException { - BlazeDirectories.CODEC.serialize(context, obj.directories, codedOut); + context.serialize(obj.directories, codedOut); codedOut.writeInt32NoTag(obj.fragments.size()); for (Fragment fragment : obj.fragments.values()) { context.serialize(fragment, codedOut); } - BuildOptions.CODEC.serialize(context, obj.buildOptions, codedOut); + context.serialize(obj.buildOptions, codedOut); StringCodecs.asciiOptimized().serialize(context, obj.repositoryName, codedOut); } @Override public BuildConfiguration deserialize(DeserializationContext context, CodedInputStream codedIn) throws SerializationException, IOException { - BlazeDirectories blazeDirectories = BlazeDirectories.CODEC.deserialize(context, codedIn); + BlazeDirectories blazeDirectories = context.deserialize(codedIn); int length = codedIn.readInt32(); ImmutableSortedMap.Builder<Class<? extends Fragment>, Fragment> builder = new ImmutableSortedMap.Builder<>(lexicalFragmentSorter); @@ -2132,7 +2128,7 @@ public class BuildConfiguration implements BuildConfigurationInterface { Fragment fragment = context.deserialize(codedIn); builder.put(fragment.getClass(), fragment); } - BuildOptions options = BuildOptions.CODEC.deserialize(context, codedIn); + BuildOptions options = context.deserialize(codedIn); String repositoryName = StringCodecs.asciiOptimized().deserialize(context, codedIn); return new BuildConfiguration(blazeDirectories, builder.build(), options, repositoryName); } diff --git a/src/main/java/com/google/devtools/build/lib/analysis/config/BuildOptions.java b/src/main/java/com/google/devtools/build/lib/analysis/config/BuildOptions.java index df99dc6aa0..7383fdfe08 100644 --- a/src/main/java/com/google/devtools/build/lib/analysis/config/BuildOptions.java +++ b/src/main/java/com/google/devtools/build/lib/analysis/config/BuildOptions.java @@ -55,8 +55,6 @@ import javax.annotation.Nullable; * Stores the command-line options from a set of configuration fragments. */ public final class BuildOptions implements Cloneable, Serializable { - public static final ObjectCodec<BuildOptions> CODEC = new BuildOptionsCodec(); - private static final Comparator<Class<? extends FragmentOptions>> lexicalFragmentOptionsComparator = Comparator.comparing(Class::getName); diff --git a/src/main/java/com/google/devtools/build/lib/analysis/config/ConfigMatchingProvider.java b/src/main/java/com/google/devtools/build/lib/analysis/config/ConfigMatchingProvider.java index 832f39f605..a9b23bc458 100644 --- a/src/main/java/com/google/devtools/build/lib/analysis/config/ConfigMatchingProvider.java +++ b/src/main/java/com/google/devtools/build/lib/analysis/config/ConfigMatchingProvider.java @@ -19,7 +19,6 @@ import com.google.common.collect.ImmutableSet; import com.google.devtools.build.lib.analysis.TransitiveInfoProvider; import com.google.devtools.build.lib.cmdline.Label; import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import java.util.Map; import java.util.Set; @@ -34,9 +33,6 @@ import java.util.Set; @Immutable @AutoCodec public final class ConfigMatchingProvider implements TransitiveInfoProvider { - public static final ObjectCodec<ConfigMatchingProvider> CODEC = - new ConfigMatchingProvider_AutoCodec(); - private final Label label; private final ImmutableMultimap<String, String> settingsMap; private final Map<Label, String> flagSettingsMap; diff --git a/src/main/java/com/google/devtools/build/lib/analysis/config/PerLabelOptions.java b/src/main/java/com/google/devtools/build/lib/analysis/config/PerLabelOptions.java index 078d8ccd80..217389d807 100644 --- a/src/main/java/com/google/devtools/build/lib/analysis/config/PerLabelOptions.java +++ b/src/main/java/com/google/devtools/build/lib/analysis/config/PerLabelOptions.java @@ -17,7 +17,6 @@ package com.google.devtools.build.lib.analysis.config; import com.google.common.collect.ImmutableList; import com.google.devtools.build.lib.actions.Artifact; import com.google.devtools.build.lib.cmdline.Label; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.util.RegexFilter; import com.google.devtools.build.lib.util.RegexFilter.RegexFilterConverter; @@ -34,8 +33,6 @@ import java.util.Objects; */ @AutoCodec public class PerLabelOptions implements Serializable { - public static final ObjectCodec<PerLabelOptions> CODEC = new PerLabelOptions_AutoCodec(); - /** The filter used to match labels */ private final RegexFilter regexFilter; diff --git a/src/main/java/com/google/devtools/build/lib/analysis/config/RunUnderConverter.java b/src/main/java/com/google/devtools/build/lib/analysis/config/RunUnderConverter.java index a09a1ce8df..51f1d84f2f 100644 --- a/src/main/java/com/google/devtools/build/lib/analysis/config/RunUnderConverter.java +++ b/src/main/java/com/google/devtools/build/lib/analysis/config/RunUnderConverter.java @@ -18,7 +18,6 @@ import com.google.devtools.build.lib.cmdline.Label; import com.google.devtools.build.lib.cmdline.LabelSyntaxException; import com.google.devtools.build.lib.shell.ShellUtils; import com.google.devtools.build.lib.shell.ShellUtils.TokenizationException; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.common.options.Converter; import com.google.devtools.common.options.OptionsParsingException; @@ -58,9 +57,6 @@ public class RunUnderConverter implements Converter<RunUnder> { @AutoCodec static final class RunUnderLabel implements RunUnder { - public static final ObjectCodec<RunUnderLabel> CODEC = - new RunUnderConverter_RunUnderLabel_AutoCodec(); - private final String input; private final Label runUnderLabel; private final ImmutableList<String> runUnderList; @@ -119,9 +115,6 @@ public class RunUnderConverter implements Converter<RunUnder> { @AutoCodec static final class RunUnderCommand implements RunUnder { - public static final ObjectCodec<RunUnderCommand> CODEC = - new RunUnderConverter_RunUnderCommand_AutoCodec(); - private final String input; private final String runUnderCommand; private final ImmutableList<String> runUnderList; diff --git a/src/main/java/com/google/devtools/build/lib/analysis/platform/ConstraintSettingInfo.java b/src/main/java/com/google/devtools/build/lib/analysis/platform/ConstraintSettingInfo.java index c2661ad986..16fa28af09 100644 --- a/src/main/java/com/google/devtools/build/lib/analysis/platform/ConstraintSettingInfo.java +++ b/src/main/java/com/google/devtools/build/lib/analysis/platform/ConstraintSettingInfo.java @@ -20,7 +20,6 @@ import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable; import com.google.devtools.build.lib.events.Location; import com.google.devtools.build.lib.packages.NativeInfo; import com.google.devtools.build.lib.packages.NativeProvider; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec.VisibleForSerialization; import com.google.devtools.build.lib.skylarkinterface.SkylarkCallable; @@ -39,9 +38,6 @@ import com.google.devtools.build.lib.syntax.SkylarkType; @Immutable @AutoCodec public class ConstraintSettingInfo extends NativeInfo { - public static final ObjectCodec<ConstraintSettingInfo> CODEC = - new ConstraintSettingInfo_AutoCodec(); - /** Name used in Skylark for accessing this provider. */ public static final String SKYLARK_NAME = "ConstraintSettingInfo"; diff --git a/src/main/java/com/google/devtools/build/lib/analysis/platform/ConstraintValueInfo.java b/src/main/java/com/google/devtools/build/lib/analysis/platform/ConstraintValueInfo.java index 3a00932a55..febe3e7e84 100644 --- a/src/main/java/com/google/devtools/build/lib/analysis/platform/ConstraintValueInfo.java +++ b/src/main/java/com/google/devtools/build/lib/analysis/platform/ConstraintValueInfo.java @@ -20,7 +20,6 @@ import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable; import com.google.devtools.build.lib.events.Location; import com.google.devtools.build.lib.packages.NativeInfo; import com.google.devtools.build.lib.packages.NativeProvider; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec.VisibleForSerialization; import com.google.devtools.build.lib.skylarkinterface.SkylarkCallable; @@ -39,8 +38,6 @@ import com.google.devtools.build.lib.syntax.SkylarkType; @Immutable @AutoCodec public class ConstraintValueInfo extends NativeInfo { - public static final ObjectCodec<ConstraintValueInfo> CODEC = new ConstraintValueInfo_AutoCodec(); - /** Name used in Skylark for accessing this provider. */ public static final String SKYLARK_NAME = "ConstraintValueInfo"; diff --git a/src/main/java/com/google/devtools/build/lib/analysis/platform/DeclaredToolchainInfo.java b/src/main/java/com/google/devtools/build/lib/analysis/platform/DeclaredToolchainInfo.java index 8d0b4d7f39..b72b8894c9 100644 --- a/src/main/java/com/google/devtools/build/lib/analysis/platform/DeclaredToolchainInfo.java +++ b/src/main/java/com/google/devtools/build/lib/analysis/platform/DeclaredToolchainInfo.java @@ -18,7 +18,6 @@ import com.google.auto.value.AutoValue; import com.google.common.collect.ImmutableList; import com.google.devtools.build.lib.analysis.TransitiveInfoProvider; import com.google.devtools.build.lib.cmdline.Label; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; /** @@ -30,9 +29,6 @@ import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; @AutoValue @AutoCodec public abstract class DeclaredToolchainInfo implements TransitiveInfoProvider { - public static final ObjectCodec<DeclaredToolchainInfo> CODEC = - new DeclaredToolchainInfo_AutoCodec(); - /** * The type of the toolchain being declared. This will be a label of a toolchain_type() target. */ diff --git a/src/main/java/com/google/devtools/build/lib/analysis/platform/PlatformInfo.java b/src/main/java/com/google/devtools/build/lib/analysis/platform/PlatformInfo.java index 90c8217a0c..c70690b7e2 100644 --- a/src/main/java/com/google/devtools/build/lib/analysis/platform/PlatformInfo.java +++ b/src/main/java/com/google/devtools/build/lib/analysis/platform/PlatformInfo.java @@ -29,7 +29,6 @@ import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable; import com.google.devtools.build.lib.events.Location; import com.google.devtools.build.lib.packages.NativeInfo; import com.google.devtools.build.lib.packages.NativeProvider; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec.VisibleForSerialization; import com.google.devtools.build.lib.skylarkinterface.SkylarkCallable; @@ -54,8 +53,6 @@ import javax.annotation.Nullable; @Immutable @AutoCodec public class PlatformInfo extends NativeInfo { - public static final ObjectCodec<PlatformInfo> CODEC = new PlatformInfo_AutoCodec(); - /** Name used in Skylark for accessing this provider. */ public static final String SKYLARK_NAME = "PlatformInfo"; diff --git a/src/main/java/com/google/devtools/build/lib/analysis/test/InstrumentedFilesProviderImpl.java b/src/main/java/com/google/devtools/build/lib/analysis/test/InstrumentedFilesProviderImpl.java index ab8f51ef0b..46cbc7f316 100644 --- a/src/main/java/com/google/devtools/build/lib/analysis/test/InstrumentedFilesProviderImpl.java +++ b/src/main/java/com/google/devtools/build/lib/analysis/test/InstrumentedFilesProviderImpl.java @@ -17,16 +17,12 @@ import com.google.devtools.build.lib.actions.Artifact; import com.google.devtools.build.lib.collect.nestedset.NestedSet; import com.google.devtools.build.lib.collect.nestedset.NestedSetBuilder; import com.google.devtools.build.lib.collect.nestedset.Order; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.util.Pair; /** An implementation class for the InstrumentedFilesProvider interface. */ @AutoCodec public final class InstrumentedFilesProviderImpl implements InstrumentedFilesProvider { - public static ObjectCodec<InstrumentedFilesProviderImpl> CODEC = - new InstrumentedFilesProviderImpl_AutoCodec(); - public static final InstrumentedFilesProvider EMPTY = new InstrumentedFilesProviderImpl( NestedSetBuilder.<Artifact>emptySet(Order.STABLE_ORDER), diff --git a/src/main/java/com/google/devtools/build/lib/analysis/test/TestConfiguration.java b/src/main/java/com/google/devtools/build/lib/analysis/test/TestConfiguration.java index e210a1effd..1aa0706b65 100644 --- a/src/main/java/com/google/devtools/build/lib/analysis/test/TestConfiguration.java +++ b/src/main/java/com/google/devtools/build/lib/analysis/test/TestConfiguration.java @@ -27,7 +27,6 @@ import com.google.devtools.build.lib.analysis.config.PerLabelOptions; import com.google.devtools.build.lib.cmdline.Label; import com.google.devtools.build.lib.events.Event; import com.google.devtools.build.lib.events.EventHandler; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.util.RegexFilter; import com.google.devtools.common.options.Option; @@ -41,14 +40,9 @@ import java.util.List; /** Test-related options. */ @AutoCodec public class TestConfiguration extends Fragment { - public static final ObjectCodec<TestConfiguration> CODEC = new TestConfiguration_AutoCodec(); - /** Command-line options. */ @AutoCodec(strategy = AutoCodec.Strategy.PUBLIC_FIELDS) public static class TestOptions extends FragmentOptions { - public static final ObjectCodec<TestOptions> CODEC = - new TestConfiguration_TestOptions_AutoCodec(); - @Option( name = "test_filter", allowMultiple = false, diff --git a/src/main/java/com/google/devtools/build/lib/bazel/rules/BazelConfiguration.java b/src/main/java/com/google/devtools/build/lib/bazel/rules/BazelConfiguration.java index a29c105d03..828493050b 100644 --- a/src/main/java/com/google/devtools/build/lib/bazel/rules/BazelConfiguration.java +++ b/src/main/java/com/google/devtools/build/lib/bazel/rules/BazelConfiguration.java @@ -24,7 +24,6 @@ import com.google.devtools.build.lib.analysis.config.ConfigurationFragmentFactor import com.google.devtools.build.lib.analysis.config.FragmentOptions; import com.google.devtools.build.lib.analysis.config.InvalidConfigurationException; import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.util.OS; import com.google.devtools.build.lib.util.OptionsUtils.PathFragmentConverter; @@ -39,13 +38,9 @@ import javax.annotation.Nullable; @AutoCodec @Immutable public class BazelConfiguration extends Fragment { - public static final ObjectCodec<BazelConfiguration> CODEC = new BazelConfiguration_AutoCodec(); - /** Command-line options. */ @AutoCodec(strategy = AutoCodec.Strategy.PUBLIC_FIELDS) public static class Options extends FragmentOptions { - public static final ObjectCodec<Options> CODEC = new BazelConfiguration_Options_AutoCodec(); - @Option( name = "experimental_strict_action_env", defaultValue = "false", diff --git a/src/main/java/com/google/devtools/build/lib/bazel/rules/cpp/BazelCppSemantics.java b/src/main/java/com/google/devtools/build/lib/bazel/rules/cpp/BazelCppSemantics.java index 92041255eb..23ea2a39ed 100644 --- a/src/main/java/com/google/devtools/build/lib/bazel/rules/cpp/BazelCppSemantics.java +++ b/src/main/java/com/google/devtools/build/lib/bazel/rules/cpp/BazelCppSemantics.java @@ -26,15 +26,11 @@ import com.google.devtools.build.lib.rules.cpp.CppConfiguration; import com.google.devtools.build.lib.rules.cpp.CppConfiguration.HeadersCheckingMode; import com.google.devtools.build.lib.rules.cpp.IncludeProcessing; import com.google.devtools.build.lib.rules.cpp.NoProcessing; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; -import com.google.devtools.build.lib.skyframe.serialization.SingletonCodec; +import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; /** C++ compilation semantics. */ public class BazelCppSemantics implements AspectLegalCppSemantics { - public static final BazelCppSemantics INSTANCE = new BazelCppSemantics(); - - public static final ObjectCodec<BazelCppSemantics> CODEC = - SingletonCodec.of(INSTANCE, "BazelCppSemantics"); + @AutoCodec public static final BazelCppSemantics INSTANCE = new BazelCppSemantics(); private final IncludeProcessing includeProcessing; diff --git a/src/main/java/com/google/devtools/build/lib/bazel/rules/java/BazelJavaSemantics.java b/src/main/java/com/google/devtools/build/lib/bazel/rules/java/BazelJavaSemantics.java index 21f5ae5c55..b66a6ce029 100644 --- a/src/main/java/com/google/devtools/build/lib/bazel/rules/java/BazelJavaSemantics.java +++ b/src/main/java/com/google/devtools/build/lib/bazel/rules/java/BazelJavaSemantics.java @@ -62,8 +62,7 @@ import com.google.devtools.build.lib.rules.java.JavaSourceJarsProvider; import com.google.devtools.build.lib.rules.java.JavaTargetAttributes; import com.google.devtools.build.lib.rules.java.JavaUtil; import com.google.devtools.build.lib.rules.java.proto.GeneratedExtensionRegistryProvider; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; -import com.google.devtools.build.lib.skyframe.serialization.SingletonCodec; +import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.syntax.Type; import com.google.devtools.build.lib.util.OS; import com.google.devtools.build.lib.util.ShellEscaper; @@ -80,10 +79,7 @@ import javax.annotation.Nullable; */ public class BazelJavaSemantics implements JavaSemantics { - public static final BazelJavaSemantics INSTANCE = new BazelJavaSemantics(); - - public static final ObjectCodec<BazelJavaSemantics> CODEC = - SingletonCodec.of(INSTANCE, "BazelJavaSemantics"); + @AutoCodec public static final BazelJavaSemantics INSTANCE = new BazelJavaSemantics(); private static final Template STUB_SCRIPT = Template.forResource(BazelJavaSemantics.class, "java_stub_template.txt"); diff --git a/src/main/java/com/google/devtools/build/lib/bazel/rules/python/BazelPythonConfiguration.java b/src/main/java/com/google/devtools/build/lib/bazel/rules/python/BazelPythonConfiguration.java index a6ff6b086b..bba2bd93db 100644 --- a/src/main/java/com/google/devtools/build/lib/bazel/rules/python/BazelPythonConfiguration.java +++ b/src/main/java/com/google/devtools/build/lib/bazel/rules/python/BazelPythonConfiguration.java @@ -25,7 +25,6 @@ import com.google.devtools.build.lib.analysis.config.FragmentOptions; import com.google.devtools.build.lib.analysis.config.InvalidConfigurationException; import com.google.devtools.build.lib.cmdline.Label; import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.util.OS; import com.google.devtools.build.lib.vfs.PathFragment; @@ -39,9 +38,6 @@ import com.google.devtools.common.options.OptionMetadataTag; @AutoCodec @Immutable public class BazelPythonConfiguration extends BuildConfiguration.Fragment { - public static final ObjectCodec<BazelPythonConfiguration> CODEC = - new BazelPythonConfiguration_AutoCodec(); - /** * A path converter for python3 path */ @@ -63,9 +59,6 @@ public class BazelPythonConfiguration extends BuildConfiguration.Fragment { /** Bazel-specific Python configuration options. */ @AutoCodec(strategy = AutoCodec.Strategy.PUBLIC_FIELDS) public static final class Options extends FragmentOptions { - public static final ObjectCodec<Options> CODEC = - new BazelPythonConfiguration_Options_AutoCodec(); - @Option( name = "python2_path", defaultValue = "python", diff --git a/src/main/java/com/google/devtools/build/lib/cmdline/Label.java b/src/main/java/com/google/devtools/build/lib/cmdline/Label.java index 5adb947940..f271ea6c8b 100644 --- a/src/main/java/com/google/devtools/build/lib/cmdline/Label.java +++ b/src/main/java/com/google/devtools/build/lib/cmdline/Label.java @@ -22,6 +22,7 @@ import com.google.devtools.build.lib.cmdline.LabelValidator.BadLabelException; import com.google.devtools.build.lib.concurrent.BlazeInterners; import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable; import com.google.devtools.build.lib.concurrent.ThreadSafety.ThreadSafe; +import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.skylarkinterface.Param; import com.google.devtools.build.lib.skylarkinterface.SkylarkCallable; import com.google.devtools.build.lib.skylarkinterface.SkylarkModule; @@ -51,6 +52,7 @@ import javax.annotation.Nullable; category = SkylarkModuleCategory.BUILTIN, doc = "A BUILD target identifier." ) +@AutoCodec @Immutable @ThreadSafe public final class Label @@ -81,8 +83,6 @@ public final class Label public static final SkyFunctionName TRANSITIVE_TRAVERSAL = SkyFunctionName.create("TRANSITIVE_TRAVERSAL"); - public static final LabelCodec CODEC = LabelCodec.INSTANCE; - private static final Interner<Label> LABEL_INTERNER = BlazeInterners.newWeakInterner(); /** @@ -185,10 +185,11 @@ public final class Label * Similar factory to above, but does not perform target name validation. * * <p>Only call this method if you know what you're doing; in particular, don't call it on - * arbitrary {@code targetName} inputs + * arbitrary {@code name} inputs */ - public static Label createUnvalidated(PackageIdentifier packageId, String targetName) { - return LABEL_INTERNER.intern(new Label(packageId, targetName)); + @AutoCodec.Instantiator + public static Label createUnvalidated(PackageIdentifier packageIdentifier, String name) { + return LABEL_INTERNER.intern(new Label(packageIdentifier, name)); } /** @@ -290,7 +291,7 @@ public final class Label return new LabelSerializationProxy(getUnambiguousCanonicalForm()); } - private void readObject(ObjectInputStream stream) throws InvalidObjectException { + private void readObject(ObjectInputStream unusedStream) throws InvalidObjectException { throw new InvalidObjectException("Serialization is allowed only by proxy"); } diff --git a/src/main/java/com/google/devtools/build/lib/cmdline/LabelCodec.java b/src/main/java/com/google/devtools/build/lib/cmdline/LabelCodec.java deleted file mode 100644 index 4153d5ecc2..0000000000 --- a/src/main/java/com/google/devtools/build/lib/cmdline/LabelCodec.java +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2017 The Bazel Authors. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package com.google.devtools.build.lib.cmdline; - -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.skyframe.serialization.strings.StringCodecs; -import com.google.protobuf.CodedInputStream; -import com.google.protobuf.CodedOutputStream; -import java.io.IOException; - -/** Custom serialization logic for {@link Label}s. */ -public class LabelCodec implements ObjectCodec<Label> { - public static final LabelCodec INSTANCE = new LabelCodec(); - - // TODO(michajlo): Share single instance of package id codec among all the codecs. - private final PackageIdentifierCodec packageIdCodec = new PackageIdentifierCodec(); - private final ObjectCodec<String> stringCodec = StringCodecs.asciiOptimized(); - - @Override - public Class<Label> getEncodedClass() { - return Label.class; - } - - @Override - public void serialize(SerializationContext context, Label label, CodedOutputStream codedOut) - throws IOException, SerializationException { - packageIdCodec.serialize(context, label.getPackageIdentifier(), codedOut); - stringCodec.serialize(context, label.getName(), codedOut); - } - - @Override - public Label deserialize(DeserializationContext context, CodedInputStream codedIn) - throws SerializationException, IOException { - PackageIdentifier packageId = packageIdCodec.deserialize(context, codedIn); - String name = stringCodec.deserialize(context, codedIn); - return Label.createUnvalidated(packageId, name); - } -} diff --git a/src/main/java/com/google/devtools/build/lib/cmdline/PackageIdentifier.java b/src/main/java/com/google/devtools/build/lib/cmdline/PackageIdentifier.java index fdf574f560..d8bf3bf91c 100644 --- a/src/main/java/com/google/devtools/build/lib/cmdline/PackageIdentifier.java +++ b/src/main/java/com/google/devtools/build/lib/cmdline/PackageIdentifier.java @@ -18,7 +18,7 @@ import com.google.common.base.Preconditions; import com.google.common.collect.ComparisonChain; import com.google.common.collect.Interner; import com.google.devtools.build.lib.concurrent.BlazeInterners; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; +import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.skylarkinterface.SkylarkPrinter; import com.google.devtools.build.lib.skylarkinterface.SkylarkValue; import com.google.devtools.build.lib.vfs.PathFragment; @@ -33,12 +33,10 @@ import javax.annotation.concurrent.Immutable; * the workspace name "". Other repositories can be named in the WORKSPACE file. These workspaces * are prefixed by {@literal @}. */ +@AutoCodec @Immutable public final class PackageIdentifier implements Comparable<PackageIdentifier>, Serializable, SkylarkValue { - - public static final ObjectCodec<PackageIdentifier> CODEC = new PackageIdentifierCodec(); - private static final Interner<PackageIdentifier> INTERNER = BlazeInterners.newWeakInterner(); public static PackageIdentifier create(String repository, PathFragment pkgName) @@ -46,6 +44,7 @@ public final class PackageIdentifier return create(RepositoryName.create(repository), pkgName); } + @AutoCodec.Instantiator public static PackageIdentifier create(RepositoryName repository, PathFragment pkgName) { return INTERNER.intern(new PackageIdentifier(repository, pkgName)); } diff --git a/src/main/java/com/google/devtools/build/lib/cmdline/PackageIdentifierCodec.java b/src/main/java/com/google/devtools/build/lib/cmdline/PackageIdentifierCodec.java deleted file mode 100644 index 1dcb78f06f..0000000000 --- a/src/main/java/com/google/devtools/build/lib/cmdline/PackageIdentifierCodec.java +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2017 The Bazel Authors. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package com.google.devtools.build.lib.cmdline; - -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.vfs.PathFragment; -import com.google.protobuf.CodedInputStream; -import com.google.protobuf.CodedOutputStream; -import java.io.IOException; - -/** Custom serialization logic for {@link PackageIdentifier}s. */ -public class PackageIdentifierCodec implements ObjectCodec<PackageIdentifier> { - - private final RepositoryNameCodec repoNameCodec = new RepositoryNameCodec(); - - @Override - public Class<PackageIdentifier> getEncodedClass() { - return PackageIdentifier.class; - } - - @Override - public void serialize( - SerializationContext context, PackageIdentifier pkgId, CodedOutputStream codedOut) - throws IOException, SerializationException { - repoNameCodec.serialize(context, pkgId.getRepository(), codedOut); - PathFragment.CODEC.serialize(context, pkgId.getPackageFragment(), codedOut); - } - - @Override - public PackageIdentifier deserialize(DeserializationContext context, CodedInputStream codedIn) - throws IOException, SerializationException { - RepositoryName repoName = repoNameCodec.deserialize(context, codedIn); - PathFragment pathFragment = PathFragment.CODEC.deserialize(context, codedIn); - return PackageIdentifier.create(repoName, pathFragment); - } -} diff --git a/src/main/java/com/google/devtools/build/lib/packages/AspectDescriptor.java b/src/main/java/com/google/devtools/build/lib/packages/AspectDescriptor.java index 3d4058d248..0c2a9dfa59 100644 --- a/src/main/java/com/google/devtools/build/lib/packages/AspectDescriptor.java +++ b/src/main/java/com/google/devtools/build/lib/packages/AspectDescriptor.java @@ -16,7 +16,6 @@ package com.google.devtools.build.lib.packages; import com.google.common.collect.ImmutableMultimap; import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.protobuf.TextFormat; import java.util.Map.Entry; @@ -30,8 +29,6 @@ import java.util.Objects; @Immutable @AutoCodec public final class AspectDescriptor { - public static final ObjectCodec<AspectDescriptor> CODEC = new AspectDescriptor_AutoCodec(); - private final AspectClass aspectClass; private final AspectParameters aspectParameters; diff --git a/src/main/java/com/google/devtools/build/lib/packages/AspectParameters.java b/src/main/java/com/google/devtools/build/lib/packages/AspectParameters.java index fe4dcd177e..8a6e87298f 100644 --- a/src/main/java/com/google/devtools/build/lib/packages/AspectParameters.java +++ b/src/main/java/com/google/devtools/build/lib/packages/AspectParameters.java @@ -18,7 +18,6 @@ import static com.google.common.collect.Iterables.getOnlyElement; import com.google.common.collect.ImmutableCollection; import com.google.common.collect.ImmutableMultimap; import com.google.common.collect.Multimap; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import java.util.Objects; @@ -28,8 +27,6 @@ import java.util.Objects; */ @AutoCodec public final class AspectParameters { - public static final ObjectCodec<AspectParameters> CODEC = new AspectParameters_AutoCodec(); - private final ImmutableMultimap<String, String> attributes; private AspectParameters(Multimap<String, String> attributes) { diff --git a/src/main/java/com/google/devtools/build/lib/packages/License.java b/src/main/java/com/google/devtools/build/lib/packages/License.java index de63c5ee3c..3a35baa3c9 100644 --- a/src/main/java/com/google/devtools/build/lib/packages/License.java +++ b/src/main/java/com/google/devtools/build/lib/packages/License.java @@ -27,7 +27,6 @@ import com.google.devtools.build.lib.concurrent.ThreadSafety.ThreadSafe; import com.google.devtools.build.lib.events.Event; import com.google.devtools.build.lib.events.EventHandler; import com.google.devtools.build.lib.events.Location; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec.VisibleForSerialization; import java.util.Collection; @@ -41,8 +40,6 @@ import java.util.Set; @ThreadSafe @AutoCodec public final class License { - public static final ObjectCodec<License> CODEC = new License_AutoCodec(); - private final ImmutableSet<LicenseType> licenseTypes; private final ImmutableSet<Label> exceptions; 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 7a8b121ae8..9db519ed26 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 @@ -71,8 +71,6 @@ import javax.annotation.Nullable; */ @SuppressWarnings("JavaLangClash") public class Package { - public static final ObjectCodec<Package> CODEC = new PackageCodec(); - /** * Common superclass for all name-conflict exceptions. */ @@ -1581,7 +1579,8 @@ public class Package { } /** Package codec implementation. */ - private static final class PackageCodec implements ObjectCodec<Package> { + @VisibleForTesting + static final class PackageCodec implements ObjectCodec<Package> { @Override public Class<Package> getEncodedClass() { return Package.class; diff --git a/src/main/java/com/google/devtools/build/lib/packages/PackageSpecification.java b/src/main/java/com/google/devtools/build/lib/packages/PackageSpecification.java index f01efeb8b0..ec71a368c1 100644 --- a/src/main/java/com/google/devtools/build/lib/packages/PackageSpecification.java +++ b/src/main/java/com/google/devtools/build/lib/packages/PackageSpecification.java @@ -20,7 +20,6 @@ import com.google.devtools.build.lib.cmdline.LabelSyntaxException; import com.google.devtools.build.lib.cmdline.PackageIdentifier; import com.google.devtools.build.lib.cmdline.RepositoryName; import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec.VisibleForSerialization; import com.google.devtools.build.lib.vfs.PathFragment; @@ -165,9 +164,6 @@ public abstract class PackageSpecification { @AutoCodec @VisibleForSerialization static class SinglePackage extends PackageSpecification { - public static final ObjectCodec<SinglePackage> CODEC = - new PackageSpecification_SinglePackage_AutoCodec(); - private PackageIdentifier singlePackageName; @VisibleForSerialization @@ -211,9 +207,6 @@ public abstract class PackageSpecification { @AutoCodec @VisibleForSerialization static class AllPackagesBeneath extends PackageSpecification { - public static final ObjectCodec<AllPackagesBeneath> CODEC = - new PackageSpecification_AllPackagesBeneath_AutoCodec(); - private PackageIdentifier prefix; @VisibleForSerialization @@ -262,9 +255,6 @@ public abstract class PackageSpecification { @AutoCodec @VisibleForSerialization static class NegativePackageSpecification extends PackageSpecification { - public static final ObjectCodec<NegativePackageSpecification> CODEC = - new PackageSpecification_NegativePackageSpecification_AutoCodec(); - private final PackageSpecification delegate; NegativePackageSpecification(PackageSpecification delegate) { @@ -309,9 +299,6 @@ public abstract class PackageSpecification { @AutoCodec @VisibleForSerialization static class AllPackages extends PackageSpecification { - public static final ObjectCodec<AllPackages> CODEC = - new PackageSpecification_AllPackages_AutoCodec(); - private static final PackageSpecification EVERYTHING = new AllPackages(); @Override @@ -354,9 +341,6 @@ public abstract class PackageSpecification { @Immutable @AutoCodec public static final class PackageGroupContents { - public static final ObjectCodec<PackageGroupContents> CODEC = - new PackageSpecification_PackageGroupContents_AutoCodec(); - private final ImmutableList<PackageSpecification> packageSpecifications; @VisibleForSerialization diff --git a/src/main/java/com/google/devtools/build/lib/packages/SkylarkAspectClass.java b/src/main/java/com/google/devtools/build/lib/packages/SkylarkAspectClass.java index 2ba805c9c3..810280b29e 100644 --- a/src/main/java/com/google/devtools/build/lib/packages/SkylarkAspectClass.java +++ b/src/main/java/com/google/devtools/build/lib/packages/SkylarkAspectClass.java @@ -16,7 +16,6 @@ package com.google.devtools.build.lib.packages; import com.google.devtools.build.lib.cmdline.Label; import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import java.util.Objects; @@ -24,8 +23,6 @@ import java.util.Objects; @AutoCodec @Immutable public final class SkylarkAspectClass implements AspectClass { - public static final ObjectCodec<SkylarkAspectClass> CODEC = new SkylarkAspectClass_AutoCodec(); - private final Label extensionLabel; private final String exportedName; diff --git a/src/main/java/com/google/devtools/build/lib/pkgcache/TestFilter.java b/src/main/java/com/google/devtools/build/lib/pkgcache/TestFilter.java index d3aa9db71d..1af54a0458 100644 --- a/src/main/java/com/google/devtools/build/lib/pkgcache/TestFilter.java +++ b/src/main/java/com/google/devtools/build/lib/pkgcache/TestFilter.java @@ -23,7 +23,6 @@ import com.google.devtools.build.lib.packages.Target; import com.google.devtools.build.lib.packages.TargetUtils; import com.google.devtools.build.lib.packages.TestSize; import com.google.devtools.build.lib.packages.TestTimeout; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import java.util.HashSet; import java.util.List; @@ -39,8 +38,6 @@ import javax.annotation.Nullable; */ @AutoCodec public final class TestFilter implements com.google.common.base.Predicate<Target> { - public static final ObjectCodec<TestFilter> CODEC = new TestFilter_AutoCodec(); - private static final Predicate<Target> ALWAYS_TRUE = (t) -> true; /** Convert the options into a test filter. */ diff --git a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidConfiguration.java b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidConfiguration.java index ceaf10cc9b..e5a0ab7af6 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidConfiguration.java +++ b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidConfiguration.java @@ -39,7 +39,6 @@ import com.google.devtools.build.lib.rules.android.AndroidConfiguration.AndroidA import com.google.devtools.build.lib.rules.cpp.CppConfiguration.DynamicMode; import com.google.devtools.build.lib.rules.cpp.CppOptions.DynamicModeConverter; import com.google.devtools.build.lib.rules.cpp.CppOptions.LibcTopLabelConverter; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.skylarkinterface.SkylarkModule; import com.google.devtools.build.lib.skylarkinterface.SkylarkModuleCategory; @@ -61,9 +60,6 @@ import javax.annotation.Nullable; ) @Immutable public class AndroidConfiguration extends BuildConfiguration.Fragment { - public static final ObjectCodec<AndroidConfiguration> CODEC = - new AndroidConfiguration_AutoCodec(); - /** * Converter for {@link * com.google.devtools.build.lib.rules.android.AndroidConfiguration.ConfigurationDistinguisher} @@ -267,8 +263,6 @@ public class AndroidConfiguration extends BuildConfiguration.Fragment { /** Android configuration options. */ @AutoCodec(strategy = AutoCodec.Strategy.PUBLIC_FIELDS) public static class Options extends FragmentOptions { - public static final ObjectCodec<Options> CODEC = new AndroidConfiguration_Options_AutoCodec(); - @Option( name = "Android configuration distinguisher", defaultValue = "MAIN", diff --git a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidLocalTestConfiguration.java b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidLocalTestConfiguration.java index 69e96e5d4c..6cb3ea1ab1 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidLocalTestConfiguration.java +++ b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidLocalTestConfiguration.java @@ -23,7 +23,6 @@ import com.google.devtools.build.lib.analysis.config.ConfigurationFragmentFactor import com.google.devtools.build.lib.analysis.config.FragmentOptions; import com.google.devtools.build.lib.analysis.config.InvalidConfigurationException; import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec.Strategy; import com.google.devtools.common.options.Option; @@ -35,15 +34,9 @@ import javax.annotation.Nullable; @AutoCodec @Immutable public class AndroidLocalTestConfiguration extends BuildConfiguration.Fragment { - public static final ObjectCodec<AndroidLocalTestConfiguration> CODEC = - new AndroidLocalTestConfiguration_AutoCodec(); - /** android_local_test specific options */ @AutoCodec(strategy = Strategy.PUBLIC_FIELDS) public static final class Options extends FragmentOptions { - public static final ObjectCodec<Options> CODEC = - new AndroidLocalTestConfiguration_Options_AutoCodec(); - @Option( name = "experimental_android_local_test_binary_resources", defaultValue = "false", diff --git a/src/main/java/com/google/devtools/build/lib/rules/android/ResourceFilterFactory.java b/src/main/java/com/google/devtools/build/lib/rules/android/ResourceFilterFactory.java index 419c6042ac..cf25d972cf 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/android/ResourceFilterFactory.java +++ b/src/main/java/com/google/devtools/build/lib/rules/android/ResourceFilterFactory.java @@ -35,7 +35,6 @@ import com.google.devtools.build.lib.packages.AttributeMap; import com.google.devtools.build.lib.packages.RuleClass.ConfiguredTargetFactory.RuleErrorException; import com.google.devtools.build.lib.packages.RuleErrorConsumer; import com.google.devtools.build.lib.rules.android.AndroidConfiguration.AndroidAaptVersion; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.syntax.Type; import com.google.devtools.common.options.EnumConverter; @@ -62,9 +61,6 @@ public class ResourceFilterFactory { public static final String RESOURCE_CONFIGURATION_FILTERS_NAME = "resource_configuration_filters"; public static final String DENSITIES_NAME = "densities"; - public static final ObjectCodec<ResourceFilterFactory> CODEC = - new ResourceFilterFactory_AutoCodec(); - /** * Locales used for pseudolocation. * diff --git a/src/main/java/com/google/devtools/build/lib/rules/apple/AppleCommandLineOptions.java b/src/main/java/com/google/devtools/build/lib/rules/apple/AppleCommandLineOptions.java index bd7a0b78d8..09d8bfb14c 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/apple/AppleCommandLineOptions.java +++ b/src/main/java/com/google/devtools/build/lib/rules/apple/AppleCommandLineOptions.java @@ -25,7 +25,6 @@ import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable; import com.google.devtools.build.lib.rules.apple.AppleConfiguration.ConfigurationDistinguisher; import com.google.devtools.build.lib.rules.apple.ApplePlatform.PlatformType; import com.google.devtools.build.lib.skyframe.serialization.DeserializationContext; -import com.google.devtools.build.lib.skyframe.serialization.EnumCodec; 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; @@ -486,8 +485,6 @@ public class AppleCommandLineOptions extends FragmentOptions { super(AppleBitcodeMode.class, "apple bitcode mode"); } } - - static final EnumCodec<AppleBitcodeMode> CODEC = new EnumCodec<>(AppleBitcodeMode.class); } @Override @@ -512,12 +509,12 @@ public class AppleCommandLineOptions extends FragmentOptions { void serialize(SerializationContext context, CodedOutputStream out) throws IOException, SerializationException { - CODEC.serialize(context, this, out); + context.serialize(this, out); } static AppleCommandLineOptions deserialize(DeserializationContext context, CodedInputStream in) throws IOException, SerializationException { - return CODEC.deserialize(context, in); + return context.deserialize(in); } /** Converter for the Apple configuration distinguisher. */ diff --git a/src/main/java/com/google/devtools/build/lib/rules/apple/AppleConfiguration.java b/src/main/java/com/google/devtools/build/lib/rules/apple/AppleConfiguration.java index eaccc1eff9..55b9b01a1e 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/apple/AppleConfiguration.java +++ b/src/main/java/com/google/devtools/build/lib/rules/apple/AppleConfiguration.java @@ -31,8 +31,6 @@ import com.google.devtools.build.lib.cmdline.Label; import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable; import com.google.devtools.build.lib.rules.apple.AppleCommandLineOptions.AppleBitcodeMode; import com.google.devtools.build.lib.rules.apple.ApplePlatform.PlatformType; -import com.google.devtools.build.lib.skyframe.serialization.EnumCodec; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.skylarkinterface.SkylarkCallable; import com.google.devtools.build.lib.skylarkinterface.SkylarkModule; @@ -50,8 +48,6 @@ import javax.annotation.Nullable; ) @Immutable public class AppleConfiguration extends BuildConfiguration.Fragment { - public static final ObjectCodec<AppleConfiguration> CODEC = new AppleConfiguration_AutoCodec(); - /** * Environment variable name for the xcode version. The value of this environment variable should * be set to the version (for example, "7.2") of xcode to use when invoking part of the apple @@ -568,8 +564,5 @@ public class AppleConfiguration extends BuildConfiguration.Fragment { public String getFileSystemName() { return fileSystemName; } - - static final EnumCodec<ConfigurationDistinguisher> CODEC = - new EnumCodec<>(ConfigurationDistinguisher.class); } } diff --git a/src/main/java/com/google/devtools/build/lib/rules/apple/ApplePlatform.java b/src/main/java/com/google/devtools/build/lib/rules/apple/ApplePlatform.java index 0a446da63c..cc8fb96b30 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/apple/ApplePlatform.java +++ b/src/main/java/com/google/devtools/build/lib/rules/apple/ApplePlatform.java @@ -22,7 +22,6 @@ import com.google.devtools.build.lib.packages.Info; import com.google.devtools.build.lib.packages.NativeProvider; import com.google.devtools.build.lib.packages.Provider; import com.google.devtools.build.lib.packages.SkylarkInfo; -import com.google.devtools.build.lib.skyframe.serialization.EnumCodec; import com.google.devtools.build.lib.skylarkinterface.SkylarkCallable; import com.google.devtools.build.lib.skylarkinterface.SkylarkModule; import com.google.devtools.build.lib.skylarkinterface.SkylarkModuleCategory; @@ -315,7 +314,5 @@ public enum ApplePlatform implements SkylarkValue { public void repr(SkylarkPrinter printer) { printer.append(toString()); } - - static final EnumCodec<PlatformType> CODEC = new EnumCodec<>(PlatformType.class); } } diff --git a/src/main/java/com/google/devtools/build/lib/rules/apple/swift/SwiftCommandLineOptions.java b/src/main/java/com/google/devtools/build/lib/rules/apple/swift/SwiftCommandLineOptions.java index 505838754d..12bf90edad 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/apple/swift/SwiftCommandLineOptions.java +++ b/src/main/java/com/google/devtools/build/lib/rules/apple/swift/SwiftCommandLineOptions.java @@ -15,7 +15,6 @@ package com.google.devtools.build.lib.rules.apple.swift; import com.google.devtools.build.lib.analysis.config.FragmentOptions; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.common.options.Option; import com.google.devtools.common.options.OptionDocumentationCategory; @@ -25,9 +24,6 @@ import java.util.List; /** Command-line options for building with Swift tools. */ @AutoCodec(strategy = AutoCodec.Strategy.PUBLIC_FIELDS) public class SwiftCommandLineOptions extends FragmentOptions { - public static final ObjectCodec<SwiftCommandLineOptions> CODEC = - new SwiftCommandLineOptions_AutoCodec(); - @Option( name = "swiftcopt", allowMultiple = true, diff --git a/src/main/java/com/google/devtools/build/lib/rules/apple/swift/SwiftConfiguration.java b/src/main/java/com/google/devtools/build/lib/rules/apple/swift/SwiftConfiguration.java index 06976f3f5b..5794bcd558 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/apple/swift/SwiftConfiguration.java +++ b/src/main/java/com/google/devtools/build/lib/rules/apple/swift/SwiftConfiguration.java @@ -23,7 +23,6 @@ import com.google.devtools.build.lib.analysis.config.ConfigurationFragmentFactor import com.google.devtools.build.lib.analysis.config.FragmentOptions; import com.google.devtools.build.lib.analysis.config.InvalidConfigurationException; import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.skylarkinterface.SkylarkCallable; import com.google.devtools.build.lib.skylarkinterface.SkylarkModule; @@ -41,8 +40,6 @@ import com.google.devtools.build.lib.skylarkinterface.SkylarkModuleCategory; ) @Immutable public class SwiftConfiguration extends BuildConfiguration.Fragment { - public static final ObjectCodec<SwiftConfiguration> CODEC = new SwiftConfiguration_AutoCodec(); - private final boolean enableWholeModuleOptimization; private final ImmutableList<String> copts; diff --git a/src/main/java/com/google/devtools/build/lib/rules/config/ConfigFeatureFlagConfiguration.java b/src/main/java/com/google/devtools/build/lib/rules/config/ConfigFeatureFlagConfiguration.java index 8ff00a46d7..0103056d0b 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/config/ConfigFeatureFlagConfiguration.java +++ b/src/main/java/com/google/devtools/build/lib/rules/config/ConfigFeatureFlagConfiguration.java @@ -25,7 +25,6 @@ import com.google.devtools.build.lib.analysis.config.ConfigurationEnvironment; import com.google.devtools.build.lib.analysis.config.ConfigurationFragmentFactory; import com.google.devtools.build.lib.analysis.config.FragmentOptions; import com.google.devtools.build.lib.cmdline.Label; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.common.options.Converter; import com.google.devtools.common.options.Option; @@ -43,9 +42,6 @@ import javax.annotation.Nullable; */ @AutoCodec public final class ConfigFeatureFlagConfiguration extends BuildConfiguration.Fragment { - public static final ObjectCodec<ConfigFeatureFlagConfiguration> CODEC = - new ConfigFeatureFlagConfiguration_AutoCodec(); - /** A converter used by the flag options which always returns an empty map, ignoring input. */ public static final class EmptyImmutableSortedMapConverter implements Converter<ImmutableSortedMap<Label, String>> { @@ -63,9 +59,6 @@ public final class ConfigFeatureFlagConfiguration extends BuildConfiguration.Fra /** The options fragment which defines {@link ConfigFeatureFlagConfiguration}. */ @AutoCodec(strategy = AutoCodec.Strategy.PUBLIC_FIELDS) public static final class Options extends FragmentOptions { - public static final ObjectCodec<Options> CODEC = - new ConfigFeatureFlagConfiguration_Options_AutoCodec(); - /** The mapping from config_feature_flag rules to their values. */ @Option( name = "config_feature_flag values (private)", diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/CcCommon.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/CcCommon.java index d03fbecf15..ac9abc2321 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/cpp/CcCommon.java +++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/CcCommon.java @@ -51,7 +51,6 @@ import com.google.devtools.build.lib.rules.cpp.CppConfiguration.DynamicMode; import com.google.devtools.build.lib.rules.cpp.CppConfiguration.HeadersCheckingMode; import com.google.devtools.build.lib.rules.cpp.FdoSupport.FdoMode; import com.google.devtools.build.lib.shell.ShellUtils; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec.VisibleForSerialization; import com.google.devtools.build.lib.syntax.Type; @@ -404,8 +403,6 @@ public final class CcCommon { /** A filter that removes copts from a c++ compile action according to a nocopts regex. */ @AutoCodec static class CoptsFilter { - public static final ObjectCodec<CoptsFilter> CODEC = new CcCommon_CoptsFilter_AutoCodec(); - private final Pattern noCoptsPattern; private final boolean allPasses; diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/CcCompilationInfo.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/CcCompilationInfo.java index aa600274b4..c51a781f63 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/cpp/CcCompilationInfo.java +++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/CcCompilationInfo.java @@ -30,7 +30,6 @@ import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable; import com.google.devtools.build.lib.packages.NativeInfo; import com.google.devtools.build.lib.packages.NativeProvider; import com.google.devtools.build.lib.rules.cpp.CppHelper.PregreppedHeader; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec.VisibleForSerialization; import com.google.devtools.build.lib.vfs.PathFragment; @@ -48,8 +47,6 @@ import javax.annotation.Nullable; @Immutable @AutoCodec public final class CcCompilationInfo extends NativeInfo { - public static final ObjectCodec<CcCompilationInfo> CODEC = new CcCompilationInfo_AutoCodec(); - public static final NativeProvider<CcCompilationInfo> PROVIDER = new NativeProvider<CcCompilationInfo>(CcCompilationInfo.class, "CcCompilationInfo") {}; @@ -359,9 +356,6 @@ public final class CcCompilationInfo extends NativeInfo { @AutoCodec @VisibleForSerialization static class CommandLineCcCompilationInfo { - public static final ObjectCodec<CommandLineCcCompilationInfo> CODEC = - new CcCompilationInfo_CommandLineCcCompilationInfo_AutoCodec(); - private final ImmutableList<PathFragment> includeDirs; private final ImmutableList<PathFragment> quoteIncludeDirs; private final ImmutableList<PathFragment> systemIncludeDirs; @@ -765,9 +759,6 @@ public final class CcCompilationInfo extends NativeInfo { @Immutable @AutoCodec public static final class ModuleInfo { - public static final ObjectCodec<ModuleInfo> CODEC = - new CcCompilationInfo_ModuleInfo_AutoCodec(); - /** * The module built for this context. If null, then no module is being compiled for this * context. @@ -901,9 +892,6 @@ public final class CcCompilationInfo extends NativeInfo { @Immutable @AutoCodec public static final class TransitiveModuleHeaders { - public static final ObjectCodec<TransitiveModuleHeaders> CODEC = - new CcCompilationInfo_TransitiveModuleHeaders_AutoCodec(); - /** * The module that we are calculating information for. */ diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/CcExecutionDynamicLibrariesProvider.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/CcExecutionDynamicLibrariesProvider.java index e8fd432458..6ae1acf65e 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/cpp/CcExecutionDynamicLibrariesProvider.java +++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/CcExecutionDynamicLibrariesProvider.java @@ -19,16 +19,12 @@ import com.google.devtools.build.lib.collect.nestedset.NestedSet; import com.google.devtools.build.lib.collect.nestedset.NestedSetBuilder; import com.google.devtools.build.lib.collect.nestedset.Order; import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; /** A target that provides the execution-time dynamic libraries of a C++ rule. */ @Immutable @AutoCodec public final class CcExecutionDynamicLibrariesProvider implements TransitiveInfoProvider { - public static final ObjectCodec<CcExecutionDynamicLibrariesProvider> CODEC = - new CcExecutionDynamicLibrariesProvider_AutoCodec(); - public static final CcExecutionDynamicLibrariesProvider EMPTY = new CcExecutionDynamicLibrariesProvider( NestedSetBuilder.<Artifact>emptySet(Order.STABLE_ORDER)); diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/CcLinkParams.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/CcLinkParams.java index 81b304f55f..731357c4cd 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/cpp/CcLinkParams.java +++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/CcLinkParams.java @@ -27,7 +27,6 @@ import com.google.devtools.build.lib.collect.nestedset.NestedSetBuilder; import com.google.devtools.build.lib.collect.nestedset.Order; import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable; import com.google.devtools.build.lib.rules.cpp.LinkerInputs.LibraryToLink; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec.VisibleForSerialization; import java.util.Collection; @@ -45,8 +44,6 @@ import javax.annotation.Nullable; */ @AutoCodec public final class CcLinkParams { - public static final ObjectCodec<CcLinkParams> CODEC = new CcLinkParams_AutoCodec(); - /** * A list of link options contributed by a single configured target. * @@ -398,8 +395,6 @@ public final class CcLinkParams { */ @AutoCodec public static final class Linkstamp { - public static final ObjectCodec<Linkstamp> CODEC = new CcLinkParams_Linkstamp_AutoCodec(); - private final Artifact artifact; private final NestedSet<Artifact> declaredIncludeSrcs; diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/CcLinkParamsInfo.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/CcLinkParamsInfo.java index 3c5554d66e..eb8b78847b 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/cpp/CcLinkParamsInfo.java +++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/CcLinkParamsInfo.java @@ -21,7 +21,6 @@ import com.google.devtools.build.lib.packages.NativeInfo; import com.google.devtools.build.lib.packages.NativeProvider; import com.google.devtools.build.lib.rules.cpp.CcLinkParams.Builder; import com.google.devtools.build.lib.rules.cpp.CcLinkParamsStore.CcLinkParamsStoreImpl; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec.VisibleForSerialization; @@ -29,8 +28,6 @@ import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec. @Immutable @AutoCodec public final class CcLinkParamsInfo extends NativeInfo { - public static final ObjectCodec<CcLinkParamsInfo> CODEC = new CcLinkParamsInfo_AutoCodec(); - public static final NativeProvider<CcLinkParamsInfo> PROVIDER = new NativeProvider<CcLinkParamsInfo>(CcLinkParamsInfo.class, "link_params") {}; public static final Function<TransitiveInfoCollection, CcLinkParamsStore> TO_LINK_PARAMS = @@ -54,9 +51,6 @@ public final class CcLinkParamsInfo extends NativeInfo { @AutoCodec @VisibleForSerialization static class CcLinkParamsInfoCollection extends CcLinkParamsStore { - public static final ObjectCodec<CcLinkParamsInfoCollection> CODEC = - new CcLinkParamsInfo_CcLinkParamsInfoCollection_AutoCodec(); - private final Iterable<CcLinkParamsInfo> providers; CcLinkParamsInfoCollection(Iterable<CcLinkParamsInfo> providers) { diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/CcNativeLibraryProvider.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/CcNativeLibraryProvider.java index e8f757fc71..b88be07d17 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/cpp/CcNativeLibraryProvider.java +++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/CcNativeLibraryProvider.java @@ -17,7 +17,6 @@ package com.google.devtools.build.lib.rules.cpp; import com.google.devtools.build.lib.analysis.TransitiveInfoProvider; import com.google.devtools.build.lib.collect.nestedset.NestedSet; import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; /** @@ -27,9 +26,6 @@ import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; @Immutable @AutoCodec public final class CcNativeLibraryProvider implements TransitiveInfoProvider { - public static final ObjectCodec<CcNativeLibraryProvider> CODEC = - new CcNativeLibraryProvider_AutoCodec(); - private final NestedSet<LinkerInput> transitiveCcNativeLibraries; public CcNativeLibraryProvider(NestedSet<LinkerInput> transitiveCcNativeLibraries) { diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/CcToolchainFeatures.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/CcToolchainFeatures.java index 5664286168..a63712ee65 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/cpp/CcToolchainFeatures.java +++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/CcToolchainFeatures.java @@ -38,7 +38,6 @@ import com.google.devtools.build.lib.analysis.RuleContext; import com.google.devtools.build.lib.analysis.config.InvalidConfigurationException; import com.google.devtools.build.lib.collect.nestedset.NestedSet; import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec.VisibleForSerialization; import com.google.devtools.build.lib.util.Pair; @@ -131,10 +130,6 @@ public class CcToolchainFeatures implements Serializable { @AutoCodec @VisibleForSerialization static class StringLiteralChunk implements StringChunk, Serializable { - - public static final ObjectCodec<StringLiteralChunk> CODEC = - new CcToolchainFeatures_StringLiteralChunk_AutoCodec(); - private final String text; @VisibleForSerialization @@ -169,9 +164,6 @@ public class CcToolchainFeatures implements Serializable { @Immutable @AutoCodec static class VariableChunk implements StringChunk, Serializable { - public static final ObjectCodec<VariableChunk> CODEC = - new CcToolchainFeatures_VariableChunk_AutoCodec(); - private final String variableName; @VisibleForSerialization @@ -346,9 +338,6 @@ public class CcToolchainFeatures implements Serializable { @AutoCodec @VisibleForSerialization static class Flag implements Serializable, Expandable { - - public static final ObjectCodec<Flag> CODEC = new CcToolchainFeatures_Flag_AutoCodec(); - private final ImmutableList<StringChunk> chunks; @VisibleForSerialization @@ -397,9 +386,6 @@ public class CcToolchainFeatures implements Serializable { @AutoCodec @VisibleForSerialization static class SingleChunkFlag implements Serializable, Expandable { - public static final ObjectCodec<SingleChunkFlag> CODEC = - new CcToolchainFeatures_Flag_SingleChunkFlag_AutoCodec(); - private final StringChunk chunk; @VisibleForSerialization @@ -439,9 +425,6 @@ public class CcToolchainFeatures implements Serializable { @AutoCodec @VisibleForSerialization static class EnvEntry implements Serializable { - - public static final ObjectCodec<EnvEntry> CODEC = new CcToolchainFeatures_EnvEntry_AutoCodec(); - private final String key; private final ImmutableList<StringChunk> valueChunks; @@ -493,10 +476,6 @@ public class CcToolchainFeatures implements Serializable { @AutoCodec @VisibleForSerialization static class VariableWithValue { - - public static final ObjectCodec<VariableWithValue> CODEC = - new CcToolchainFeatures_VariableWithValue_AutoCodec(); - public final String variable; public final String value; @@ -514,10 +493,6 @@ public class CcToolchainFeatures implements Serializable { @AutoCodec @VisibleForSerialization static class FlagGroup implements Serializable, Expandable { - - public static final ObjectCodec<FlagGroup> CODEC = - new CcToolchainFeatures_FlagGroup_AutoCodec(); - private final ImmutableList<Expandable> expandables; private String iterateOverVariable; private final ImmutableSet<String> expandIfAllAvailable; @@ -709,14 +684,11 @@ public class CcToolchainFeatures implements Serializable { @AutoCodec @VisibleForSerialization static class FlagSet implements Serializable { - - public static final ObjectCodec<FlagSet> CODEC = new CcToolchainFeatures_FlagSet_AutoCodec(); - private final ImmutableSet<String> actions; private final ImmutableSet<String> expandIfAllAvailable; private final ImmutableSet<CToolchain.WithFeatureSet> withFeatureSets; private final ImmutableList<FlagGroup> flagGroups; - + private FlagSet(CToolchain.FlagSet flagSet) throws InvalidConfigurationException { this(flagSet, ImmutableSet.copyOf(flagSet.getActionList())); } @@ -795,9 +767,6 @@ public class CcToolchainFeatures implements Serializable { @AutoCodec @VisibleForSerialization static class EnvSet implements Serializable { - - public static final ObjectCodec<EnvSet> CODEC = new CcToolchainFeatures_EnvSet_AutoCodec(); - private final ImmutableSet<String> actions; private final ImmutableList<EnvEntry> envEntries; private final ImmutableSet<CToolchain.WithFeatureSet> withFeatureSets; @@ -882,9 +851,6 @@ public class CcToolchainFeatures implements Serializable { @AutoCodec @VisibleForSerialization static class Feature implements Serializable, CrosstoolSelectable { - - public static final ObjectCodec<Feature> CODEC = new CcToolchainFeatures_Feature_AutoCodec(); - private final String name; private final ImmutableList<FlagSet> flagSets; private final ImmutableList<EnvSet> envSets; @@ -1017,10 +983,6 @@ public class CcToolchainFeatures implements Serializable { @Immutable @AutoCodec static class ActionConfig implements Serializable, CrosstoolSelectable { - - public static final ObjectCodec<ActionConfig> CODEC = - new CcToolchainFeatures_ActionConfig_AutoCodec(); - public static final String FLAG_SET_WITH_ACTION_ERROR = "action_config %s specifies actions. An action_config's flag sets automatically apply " + "to the configured action. Thus, you must not specify action lists in an " @@ -1166,9 +1128,6 @@ public class CcToolchainFeatures implements Serializable { @Immutable @AutoCodec public static class Variables { - public static final ObjectCodec<Variables> CODEC = - new CcToolchainFeatures_Variables_AutoCodec(); - /** An empty variables instance. */ public static final Variables EMPTY = new Variables.Builder().build(); @@ -1376,9 +1335,6 @@ public class CcToolchainFeatures implements Serializable { @AutoCodec @VisibleForSerialization static final class LazyStringSequence extends VariableValueAdapter { - public static final ObjectCodec<LazyStringSequence> CODEC = - new CcToolchainFeatures_Variables_LazyStringSequence_AutoCodec(); - private final Supplier<ImmutableList<String>> supplier; @VisibleForSerialization @@ -1414,9 +1370,6 @@ public class CcToolchainFeatures implements Serializable { @Immutable @AutoCodec public static class LibraryToLinkValue extends VariableValueAdapter { - public static final ObjectCodec<LibraryToLinkValue> CODEC = - new CcToolchainFeatures_Variables_LibraryToLinkValue_AutoCodec(); - public static final String OBJECT_FILES_FIELD_NAME = "object_files"; public static final String NAME_FIELD_NAME = "name"; public static final String TYPE_FIELD_NAME = "type"; @@ -1548,9 +1501,6 @@ public class CcToolchainFeatures implements Serializable { @AutoCodec @VisibleForSerialization static final class Sequence extends VariableValueAdapter { - public static final ObjectCodec<Sequence> CODEC = - new CcToolchainFeatures_Variables_Sequence_AutoCodec(); - private static final String SEQUENCE_VARIABLE_TYPE_NAME = "sequence"; private final ImmutableList<VariableValue> values; @@ -1584,9 +1534,6 @@ public class CcToolchainFeatures implements Serializable { @AutoCodec @VisibleForSerialization static final class StructureSequence extends VariableValueAdapter { - public static final ObjectCodec<StructureSequence> CODEC = - new CcToolchainFeatures_Variables_StructureSequence_AutoCodec(); - private final ImmutableList<ImmutableMap<String, VariableValue>> values; @VisibleForSerialization @@ -1623,9 +1570,6 @@ public class CcToolchainFeatures implements Serializable { @Immutable @AutoCodec static final class StringSequence extends VariableValueAdapter { - public static final ObjectCodec<StringSequence> CODEC = - new CcToolchainFeatures_Variables_StringSequence_AutoCodec(); - private final Iterable<String> values; public StringSequence(Iterable<String> values) { @@ -1661,9 +1605,6 @@ public class CcToolchainFeatures implements Serializable { @AutoCodec @VisibleForSerialization static final class StructureValue extends VariableValueAdapter { - public static final ObjectCodec<StructureValue> CODEC = - new CcToolchainFeatures_Variables_StructureValue_AutoCodec(); - private static final String STRUCTURE_VARIABLE_TYPE_NAME = "structure"; private final ImmutableMap<String, VariableValue> value; @@ -1701,9 +1642,6 @@ public class CcToolchainFeatures implements Serializable { @AutoCodec @VisibleForSerialization static final class StringValue extends VariableValueAdapter { - public static final ObjectCodec<StringValue> CODEC = - new CcToolchainFeatures_Variables_StringValue_AutoCodec(); - private static final String STRING_VARIABLE_TYPE_NAME = "string"; private final String value; @@ -1737,9 +1675,6 @@ public class CcToolchainFeatures implements Serializable { @Immutable @AutoCodec static final class IntegerValue extends VariableValueAdapter { - public static final ObjectCodec<IntegerValue> CODEC = - new CcToolchainFeatures_Variables_IntegerValue_AutoCodec(); - private static final String INTEGER_VALUE_TYPE_NAME = "integer"; private final int value; @@ -2087,14 +2022,10 @@ public class CcToolchainFeatures implements Serializable { @Immutable @AutoCodec public static class FeatureConfiguration { - - public static final ObjectCodec<FeatureConfiguration> CODEC = - new CcToolchainFeatures_FeatureConfiguration_AutoCodec(); - private final ImmutableSet<String> enabledFeatureNames; private final ImmutableList<Feature> enabledFeatures; private final ImmutableSet<String> enabledActionConfigActionNames; - + private final ImmutableMap<String, ActionConfig> actionConfigByActionName; /** @@ -2114,7 +2045,7 @@ public class CcToolchainFeatures implements Serializable { ImmutableSet<String> enabledActionConfigActionNames, ImmutableMap<String, ActionConfig> actionConfigByActionName) { this.enabledFeatures = enabledFeatures; - + this.actionConfigByActionName = actionConfigByActionName; ImmutableSet.Builder<String> featureBuilder = ImmutableSet.builder(); for (Feature feature : enabledFeatures) { @@ -2123,7 +2054,7 @@ public class CcToolchainFeatures implements Serializable { this.enabledFeatureNames = featureBuilder.build(); this.enabledActionConfigActionNames = enabledActionConfigActionNames; } - + /** * @return whether the given {@code feature} is enabled. */ @@ -2196,7 +2127,7 @@ public class CcToolchainFeatures implements Serializable { } return envBuilder.build(); } - + /** * Returns a given action's tool under this FeatureConfiguration. */ @@ -2237,7 +2168,7 @@ public class CcToolchainFeatures implements Serializable { /** All artifact name patterns defined in this feature configuration. */ private final ImmutableList<ArtifactNamePattern> artifactNamePatterns; - + /** * All features and action configs in the order in which they were specified in the configuration. * diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/CompileCommandLine.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/CompileCommandLine.java index 76d9e47223..af40a0b39f 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/cpp/CompileCommandLine.java +++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/CompileCommandLine.java @@ -21,7 +21,6 @@ import com.google.devtools.build.lib.rules.cpp.CcCommon.CoptsFilter; import com.google.devtools.build.lib.rules.cpp.CcToolchainFeatures.FeatureConfiguration; import com.google.devtools.build.lib.rules.cpp.CcToolchainFeatures.Variables; import com.google.devtools.build.lib.rules.cpp.CppCompileAction.DotdFile; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec.VisibleForSerialization; import com.google.devtools.build.lib.util.Pair; @@ -34,8 +33,6 @@ import javax.annotation.Nullable; /** The compile command line for the C++ compile action. */ @AutoCodec public final class CompileCommandLine { - public static final ObjectCodec<CompileCommandLine> CODEC = new CompileCommandLine_AutoCodec(); - private final Artifact sourceFile; private final CoptsFilter coptsFilter; private final FeatureConfiguration featureConfiguration; diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/CppCompileAction.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/CppCompileAction.java index 236439e93c..256b459afd 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/cpp/CppCompileAction.java +++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/CppCompileAction.java @@ -57,7 +57,6 @@ import com.google.devtools.build.lib.rules.cpp.CcCommon.CoptsFilter; import com.google.devtools.build.lib.rules.cpp.CcToolchainFeatures.FeatureConfiguration; import com.google.devtools.build.lib.rules.cpp.CppCompileActionContext.Reply; import com.google.devtools.build.lib.rules.cpp.CppHelper.PregreppedHeader; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec.VisibleForSerialization; import com.google.devtools.build.lib.util.DependencySet; @@ -90,8 +89,6 @@ import javax.annotation.Nullable; @ThreadCompatible public class CppCompileAction extends AbstractAction implements IncludeScannable, ExecutionInfoSpecifier, CommandAction { - public static final ObjectCodec<CppCompileAction> CODEC = new CppCompileAction_AutoCodec(); - private static final PathFragment BUILD_PATH_FRAGMENT = PathFragment.create("BUILD"); private static final int VALIDATION_DEBUG = 0; // 0==none, 1==warns/errors, 2==all @@ -1401,8 +1398,6 @@ public class CppCompileAction extends AbstractAction */ @AutoCodec public static class DotdFile { - public static final ObjectCodec<DotdFile> CODEC = new CppCompileAction_DotdFile_AutoCodec(); - private final Artifact artifact; private final PathFragment execPath; diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/CppConfiguration.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/CppConfiguration.java index e0b1e53a0b..75f123b677 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/cpp/CppConfiguration.java +++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/CppConfiguration.java @@ -41,7 +41,6 @@ import com.google.devtools.build.lib.rules.cpp.CppConfigurationLoader.CppConfigu import com.google.devtools.build.lib.rules.cpp.CrosstoolConfigurationLoader.CrosstoolFile; import com.google.devtools.build.lib.rules.cpp.transitions.ContextCollectorOwnerTransition; import com.google.devtools.build.lib.rules.cpp.transitions.DisableLipoTransition; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.skylarkinterface.SkylarkCallable; import com.google.devtools.build.lib.skylarkinterface.SkylarkModule; @@ -67,8 +66,6 @@ import javax.annotation.Nullable; ) @Immutable public final class CppConfiguration extends BuildConfiguration.Fragment { - public static final ObjectCodec<CppConfiguration> CODEC = new CppConfiguration_AutoCodec(); - /** * String indicating a Mac system, for example when used in a crosstool configuration's host or * target system name. diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/CppDebugFileProvider.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/CppDebugFileProvider.java index 4afbd08be9..5b1ec70bd3 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/cpp/CppDebugFileProvider.java +++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/CppDebugFileProvider.java @@ -17,7 +17,6 @@ import com.google.devtools.build.lib.actions.Artifact; import com.google.devtools.build.lib.analysis.TransitiveInfoProvider; import com.google.devtools.build.lib.collect.nestedset.NestedSet; import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; /** @@ -27,9 +26,6 @@ import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; @Immutable @AutoCodec public final class CppDebugFileProvider implements TransitiveInfoProvider { - public static final ObjectCodec<CppDebugFileProvider> CODEC = - new CppDebugFileProvider_AutoCodec(); - private final NestedSet<Artifact> transitiveDwoFiles; private final NestedSet<Artifact> transitivePicDwoFiles; diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/CppDebugPackageProvider.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/CppDebugPackageProvider.java index 03f666e48b..31d3f9d81f 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/cpp/CppDebugPackageProvider.java +++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/CppDebugPackageProvider.java @@ -19,7 +19,6 @@ import com.google.devtools.build.lib.actions.Artifact; import com.google.devtools.build.lib.analysis.TransitiveInfoProvider; import com.google.devtools.build.lib.cmdline.Label; import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import javax.annotation.Nullable; @@ -30,9 +29,6 @@ import javax.annotation.Nullable; @Immutable @AutoCodec public final class CppDebugPackageProvider implements TransitiveInfoProvider { - public static final ObjectCodec<CppDebugPackageProvider> CODEC = - new CppDebugPackageProvider_AutoCodec(); - private final Label targetLabel; private final Artifact strippedArtifact; private final Artifact unstrippedArtifact; diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/CppHelper.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/CppHelper.java index be411909f5..0aa8e4de93 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/cpp/CppHelper.java +++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/CppHelper.java @@ -65,7 +65,6 @@ import com.google.devtools.build.lib.rules.cpp.CcToolchainFeatures.Variables; import com.google.devtools.build.lib.rules.cpp.CppConfiguration.DynamicMode; import com.google.devtools.build.lib.rules.cpp.Link.LinkTargetType; import com.google.devtools.build.lib.shell.ShellUtils; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.syntax.Type; import com.google.devtools.build.lib.util.FileTypeSet; @@ -574,9 +573,6 @@ public class CppHelper { @AutoCodec @AutoValue abstract static class PregreppedHeader { - public static final ObjectCodec<PregreppedHeader> CODEC = - new CppHelper_PregreppedHeader_AutoCodec(); - @AutoCodec.Instantiator static PregreppedHeader create(Artifact originalHeader, Artifact greppedHeader) { return new AutoValue_CppHelper_PregreppedHeader(originalHeader, greppedHeader); diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/CppModuleMap.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/CppModuleMap.java index 1e158882ac..ac13b850a6 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/cpp/CppModuleMap.java +++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/CppModuleMap.java @@ -16,7 +16,6 @@ package com.google.devtools.build.lib.rules.cpp; import com.google.common.base.Optional; import com.google.devtools.build.lib.actions.Artifact; import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec.VisibleForSerialization; @@ -24,8 +23,6 @@ import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec. @Immutable @AutoCodec public final class CppModuleMap { - public static final ObjectCodec<CppModuleMap> CODEC = new CppModuleMap_AutoCodec(); - // NOTE: If you add a field here, you'll likely need to update CppModuleMapAction.computeKey(). private final Artifact artifact; private final String name; diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/CppOptions.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/CppOptions.java index 54ee2a97f1..d193589a2d 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/cpp/CppOptions.java +++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/CppOptions.java @@ -25,7 +25,6 @@ import com.google.devtools.build.lib.cmdline.Label; import com.google.devtools.build.lib.cmdline.LabelSyntaxException; import com.google.devtools.build.lib.rules.cpp.CppConfiguration.DynamicMode; import com.google.devtools.build.lib.rules.cpp.CppConfiguration.StripMode; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.util.OS; import com.google.devtools.build.lib.util.OptionsUtils; @@ -47,8 +46,6 @@ import javax.annotation.Nullable; /** Command-line options for C++. */ @AutoCodec(strategy = AutoCodec.Strategy.PUBLIC_FIELDS) public class CppOptions extends FragmentOptions { - public static final ObjectCodec<CppOptions> CODEC = new CppOptions_AutoCodec(); - /** * Converts a comma-separated list of compilation mode settings to a properly typed List. */ diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/CppRunfilesProvider.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/CppRunfilesProvider.java index e5f48e04df..9eccbf6b99 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/cpp/CppRunfilesProvider.java +++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/CppRunfilesProvider.java @@ -19,7 +19,6 @@ import com.google.devtools.build.lib.analysis.Runfiles; import com.google.devtools.build.lib.analysis.TransitiveInfoCollection; import com.google.devtools.build.lib.analysis.TransitiveInfoProvider; import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; /** @@ -31,7 +30,6 @@ import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; @Immutable @AutoCodec public final class CppRunfilesProvider implements TransitiveInfoProvider { - public static final ObjectCodec<CppRunfilesProvider> CODEC = new CppRunfilesProvider_AutoCodec(); private final Runfiles staticRunfiles; private final Runfiles sharedRunfiles; diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/CppToolchainInfo.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/CppToolchainInfo.java index 91f95020b8..4eb49ed6af 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/cpp/CppToolchainInfo.java +++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/CppToolchainInfo.java @@ -29,7 +29,6 @@ import com.google.devtools.build.lib.cmdline.LabelSyntaxException; import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable; import com.google.devtools.build.lib.rules.cpp.CppActionConfigs.CppPlatform; import com.google.devtools.build.lib.rules.cpp.CppConfiguration.Tool; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.vfs.PathFragment; import com.google.devtools.build.lib.view.config.crosstool.CrosstoolConfig; @@ -59,8 +58,6 @@ import java.util.Set; @AutoCodec @Immutable public final class CppToolchainInfo { - public static final ObjectCodec<CppToolchainInfo> CODEC = new CppToolchainInfo_AutoCodec(); - private CToolchain toolchain; private final PathFragment crosstoolTopPathFragment; private final String toolchainIdentifier; diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/CrosstoolConfigurationLoader.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/CrosstoolConfigurationLoader.java index 07e722a0d7..a57dd7312b 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/cpp/CrosstoolConfigurationLoader.java +++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/CrosstoolConfigurationLoader.java @@ -31,7 +31,6 @@ import com.google.devtools.build.lib.packages.NonconfigurableAttributeMapper; import com.google.devtools.build.lib.packages.Package; import com.google.devtools.build.lib.packages.Rule; import com.google.devtools.build.lib.packages.Target; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.syntax.Type; import com.google.devtools.build.lib.util.Fingerprint; @@ -70,9 +69,6 @@ public class CrosstoolConfigurationLoader { /** A class that holds the results of reading a CROSSTOOL file. */ @AutoCodec public static class CrosstoolFile { - public static final ObjectCodec<CrosstoolFile> CODEC = - new CrosstoolConfigurationLoader_CrosstoolFile_AutoCodec(); - private final String location; private final CrosstoolConfig.CrosstoolRelease proto; private final String md5; diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/ExtraLinkTimeLibraries.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/ExtraLinkTimeLibraries.java index 4684a7d6e7..8b1c729c06 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/cpp/ExtraLinkTimeLibraries.java +++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/ExtraLinkTimeLibraries.java @@ -15,7 +15,6 @@ package com.google.devtools.build.lib.rules.cpp; import com.google.common.collect.Lists; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec.VisibleForSerialization; import java.util.Collection; @@ -31,9 +30,6 @@ import java.util.Map; */ @AutoCodec public final class ExtraLinkTimeLibraries { - public static final ObjectCodec<ExtraLinkTimeLibraries> CODEC = - new ExtraLinkTimeLibraries_AutoCodec(); - /** * We can have multiple different kinds of lists of libraries to include * at link time. We map from the class type to an actual instance. diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/FdoSupportProvider.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/FdoSupportProvider.java index 4050422836..72715f02ba 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/cpp/FdoSupportProvider.java +++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/FdoSupportProvider.java @@ -17,7 +17,6 @@ import com.google.common.collect.ImmutableMap; import com.google.devtools.build.lib.actions.Artifact; import com.google.devtools.build.lib.analysis.TransitiveInfoProvider; import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.vfs.PathFragment; @@ -28,8 +27,6 @@ import com.google.devtools.build.lib.vfs.PathFragment; @Immutable @AutoCodec public class FdoSupportProvider implements TransitiveInfoProvider { - public static final ObjectCodec<FdoSupportProvider> CODEC = new FdoSupportProvider_AutoCodec(); - private final FdoSupport fdoSupport; private final Artifact profileArtifact; private final ImmutableMap<PathFragment, Artifact> gcdaArtifacts; diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/FdoSupportValue.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/FdoSupportValue.java index da8c79d761..7938c99f62 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/cpp/FdoSupportValue.java +++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/FdoSupportValue.java @@ -17,7 +17,6 @@ import com.google.common.collect.Interner; import com.google.devtools.build.lib.concurrent.BlazeInterners; import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable; import com.google.devtools.build.lib.rules.cpp.FdoSupport.FdoMode; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.vfs.Path; import com.google.devtools.build.lib.vfs.PathFragment; @@ -45,7 +44,6 @@ public class FdoSupportValue implements SkyValue { @AutoCodec public static class Key implements SkyKey { private static final Interner<Key> interner = BlazeInterners.newWeakInterner(); - public static final ObjectCodec<Key> CODEC = new FdoSupportValue_Key_AutoCodec(); private final LipoMode lipoMode; private final Path fdoZip; diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/FlagList.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/FlagList.java index ef992520b9..976914135c 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/cpp/FlagList.java +++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/FlagList.java @@ -18,7 +18,6 @@ import com.google.common.annotations.VisibleForTesting; import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableSet; import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.view.config.crosstool.CrosstoolConfig.CToolchain; import java.io.Serializable; @@ -28,14 +27,10 @@ import java.util.List; @AutoCodec @Immutable public class FlagList implements Serializable { - public static final ObjectCodec<FlagList> CODEC = new FlagList_AutoCodec(); - /** Represents an optional flag that can be toggled using the package features mechanism. */ @AutoCodec @Immutable static class OptionalFlag implements Serializable { - public static final ObjectCodec<OptionalFlag> CODEC = new FlagList_OptionalFlag_AutoCodec(); - private final String name; private final ImmutableList<String> flags; diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/LinkerInputs.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/LinkerInputs.java index 8625cf6cd9..a71c384a0f 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/cpp/LinkerInputs.java +++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/LinkerInputs.java @@ -20,7 +20,6 @@ import com.google.common.collect.Iterables; import com.google.devtools.build.lib.actions.Artifact; import com.google.devtools.build.lib.collect.CollectionUtils; import com.google.devtools.build.lib.concurrent.ThreadSafety; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec.VisibleForSerialization; @@ -35,9 +34,6 @@ public abstract class LinkerInputs { @ThreadSafety.Immutable @AutoCodec public static class SimpleLinkerInput implements LinkerInput { - public static final ObjectCodec<SimpleLinkerInput> CODEC = - new LinkerInputs_SimpleLinkerInput_AutoCodec(); - private final Artifact artifact; private final ArtifactCategory category; @@ -175,9 +171,6 @@ public abstract class LinkerInputs { @ThreadSafety.Immutable @AutoCodec public static class SolibLibraryToLink implements LibraryToLink { - public static final ObjectCodec<SolibLibraryToLink> CODEC = - new LinkerInputs_SolibLibraryToLink_AutoCodec(); - private final Artifact solibSymlinkArtifact; private final Artifact libraryArtifact; private final String libraryIdentifier; @@ -278,9 +271,6 @@ public abstract class LinkerInputs { @AutoCodec @VisibleForSerialization static class CompoundLibraryToLink implements LibraryToLink { - public static final ObjectCodec<CompoundLibraryToLink> CODEC = - new LinkerInputs_CompoundLibraryToLink_AutoCodec(); - private final Artifact libraryArtifact; private final ArtifactCategory category; private final String libraryIdentifier; diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/LipoContextProvider.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/LipoContextProvider.java index 26541d624c..bf3771718e 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/cpp/LipoContextProvider.java +++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/LipoContextProvider.java @@ -17,7 +17,6 @@ import com.google.common.collect.ImmutableMap; import com.google.devtools.build.lib.actions.Artifact; import com.google.devtools.build.lib.analysis.TransitiveInfoProvider; import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.vfs.PathFragment; import java.util.Map; @@ -34,8 +33,6 @@ import java.util.Map; @Immutable @AutoCodec public final class LipoContextProvider implements TransitiveInfoProvider { - public static final ObjectCodec<LipoContextProvider> CODEC = new LipoContextProvider_AutoCodec(); - private final CcCompilationInfo ccCompilationInfo; private final ImmutableMap<Artifact, IncludeScannable> includeScannables; diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/LtoBackendArtifacts.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/LtoBackendArtifacts.java index 2dc2996484..cb26f91b43 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/cpp/LtoBackendArtifacts.java +++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/LtoBackendArtifacts.java @@ -22,7 +22,6 @@ import com.google.devtools.build.lib.analysis.config.BuildConfiguration; import com.google.devtools.build.lib.rules.cpp.CcToolchainFeatures.FeatureConfiguration; import com.google.devtools.build.lib.rules.cpp.CcToolchainFeatures.Variables; import com.google.devtools.build.lib.rules.cpp.CppConfiguration.Tool; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec.VisibleForSerialization; import com.google.devtools.build.lib.vfs.FileSystemUtils; @@ -54,8 +53,6 @@ import java.util.Map; */ @AutoCodec public final class LtoBackendArtifacts { - public static final ObjectCodec<LtoBackendArtifacts> CODEC = new LtoBackendArtifacts_AutoCodec(); - // A file containing mapping of symbol => bitcode file containing the symbol. private final Artifact index; diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/TransitiveLipoInfoProvider.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/TransitiveLipoInfoProvider.java index 650f3eda53..e07ce2e95f 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/cpp/TransitiveLipoInfoProvider.java +++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/TransitiveLipoInfoProvider.java @@ -19,7 +19,6 @@ import com.google.devtools.build.lib.collect.nestedset.NestedSet; import com.google.devtools.build.lib.collect.nestedset.NestedSetBuilder; import com.google.devtools.build.lib.collect.nestedset.Order; import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; /** @@ -32,9 +31,6 @@ import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; @Immutable @AutoCodec public final class TransitiveLipoInfoProvider implements TransitiveInfoProvider { - public static final ObjectCodec<TransitiveLipoInfoProvider> CODEC = - new TransitiveLipoInfoProvider_AutoCodec(); - public static final String LIPO_CONTEXT_COLLECTOR = ":lipo_context_collector"; public static final TransitiveLipoInfoProvider EMPTY = new TransitiveLipoInfoProvider( diff --git a/src/main/java/com/google/devtools/build/lib/rules/filegroup/FilegroupPathProvider.java b/src/main/java/com/google/devtools/build/lib/rules/filegroup/FilegroupPathProvider.java index 35447dc223..53566f3cad 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/filegroup/FilegroupPathProvider.java +++ b/src/main/java/com/google/devtools/build/lib/rules/filegroup/FilegroupPathProvider.java @@ -16,7 +16,6 @@ package com.google.devtools.build.lib.rules.filegroup; import com.google.devtools.build.lib.analysis.TransitiveInfoProvider; import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.vfs.PathFragment; @@ -24,9 +23,6 @@ import com.google.devtools.build.lib.vfs.PathFragment; @Immutable @AutoCodec public final class FilegroupPathProvider implements TransitiveInfoProvider { - public static final ObjectCodec<FilegroupPathProvider> CODEC = - new FilegroupPathProvider_AutoCodec(); - private final PathFragment pathFragment; @AutoCodec.Instantiator diff --git a/src/main/java/com/google/devtools/build/lib/rules/java/JavaConfiguration.java b/src/main/java/com/google/devtools/build/lib/rules/java/JavaConfiguration.java index e81118d36a..2d1eb2e0ec 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/java/JavaConfiguration.java +++ b/src/main/java/com/google/devtools/build/lib/rules/java/JavaConfiguration.java @@ -28,7 +28,6 @@ import com.google.devtools.build.lib.cmdline.LabelSyntaxException; import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable; import com.google.devtools.build.lib.events.Event; import com.google.devtools.build.lib.events.EventHandler; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.skylarkinterface.SkylarkCallable; import com.google.devtools.build.lib.skylarkinterface.SkylarkModule; @@ -47,8 +46,6 @@ import javax.annotation.Nullable; category = SkylarkModuleCategory.CONFIGURATION_FRAGMENT ) public final class JavaConfiguration extends Fragment { - public static final ObjectCodec<JavaConfiguration> CODEC = new JavaConfiguration_AutoCodec(); - /** Values for the --java_classpath option */ public enum JavaClasspathMode { /** Use full transitive classpaths, the default behavior. */ diff --git a/src/main/java/com/google/devtools/build/lib/rules/java/JavaOptions.java b/src/main/java/com/google/devtools/build/lib/rules/java/JavaOptions.java index e9c6fb2bb1..3e9484d7e2 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/java/JavaOptions.java +++ b/src/main/java/com/google/devtools/build/lib/rules/java/JavaOptions.java @@ -25,7 +25,6 @@ import com.google.devtools.build.lib.cmdline.Label; import com.google.devtools.build.lib.rules.java.JavaConfiguration.JavaClasspathMode; import com.google.devtools.build.lib.rules.java.JavaConfiguration.JavaOptimizationMode; import com.google.devtools.build.lib.rules.java.JavaConfiguration.OneVersionEnforcementLevel; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.common.options.EnumConverter; import com.google.devtools.common.options.Option; @@ -41,8 +40,6 @@ import java.util.Set; /** Command-line options for building Java targets */ @AutoCodec(strategy = AutoCodec.Strategy.PUBLIC_FIELDS) public class JavaOptions extends FragmentOptions { - public static final ObjectCodec<JavaOptions> CODEC = new JavaOptions_AutoCodec(); - /** Converter for the --java_classpath option. */ public static class JavaClasspathModeConverter extends EnumConverter<JavaClasspathMode> { public JavaClasspathModeConverter() { diff --git a/src/main/java/com/google/devtools/build/lib/rules/java/JavaRuntimeInfo.java b/src/main/java/com/google/devtools/build/lib/rules/java/JavaRuntimeInfo.java index dba496bb4d..0e8c1b6e89 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/java/JavaRuntimeInfo.java +++ b/src/main/java/com/google/devtools/build/lib/rules/java/JavaRuntimeInfo.java @@ -24,7 +24,6 @@ import com.google.devtools.build.lib.packages.BuildType; import com.google.devtools.build.lib.packages.NativeInfo; import com.google.devtools.build.lib.packages.NativeProvider; import com.google.devtools.build.lib.packages.RuleErrorConsumer; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec.VisibleForSerialization; import com.google.devtools.build.lib.skylarkinterface.SkylarkCallable; @@ -37,8 +36,6 @@ import javax.annotation.Nullable; @Immutable @AutoCodec public class JavaRuntimeInfo extends NativeInfo { - public static final ObjectCodec<JavaRuntimeInfo> CODEC = new JavaRuntimeInfo_AutoCodec(); - public static final String SKYLARK_NAME = "JavaRuntimeInfo"; public static final NativeProvider<JavaRuntimeInfo> PROVIDER = diff --git a/src/main/java/com/google/devtools/build/lib/rules/java/JavaRuntimeToolchainInfo.java b/src/main/java/com/google/devtools/build/lib/rules/java/JavaRuntimeToolchainInfo.java index e44bdac30d..855dd0c27a 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/java/JavaRuntimeToolchainInfo.java +++ b/src/main/java/com/google/devtools/build/lib/rules/java/JavaRuntimeToolchainInfo.java @@ -18,7 +18,6 @@ import com.google.common.collect.ImmutableMap; import com.google.devtools.build.lib.analysis.platform.ToolchainInfo; import com.google.devtools.build.lib.concurrent.ThreadSafety; import com.google.devtools.build.lib.events.Location; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; /** @@ -28,8 +27,6 @@ import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; @ThreadSafety.Immutable @AutoCodec public final class JavaRuntimeToolchainInfo extends ToolchainInfo { - public static final ObjectCodec<JavaRuntimeToolchainInfo> CODEC = - new JavaRuntimeToolchainInfo_AutoCodec(); private final JavaRuntimeInfo javaRuntime; @AutoCodec.Instantiator diff --git a/src/main/java/com/google/devtools/build/lib/rules/objc/HeaderThinning.java b/src/main/java/com/google/devtools/build/lib/rules/objc/HeaderThinning.java index 3291a405f4..418cfd4010 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/objc/HeaderThinning.java +++ b/src/main/java/com/google/devtools/build/lib/rules/objc/HeaderThinning.java @@ -24,7 +24,6 @@ import com.google.devtools.build.lib.collect.nestedset.NestedSet; import com.google.devtools.build.lib.rules.cpp.CppCompileAction; import com.google.devtools.build.lib.rules.cpp.IncludeProcessing; import com.google.devtools.build.lib.rules.cpp.IncludeScanner.IncludeScannerSupplier; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.vfs.FileSystemUtils; import com.google.devtools.build.lib.vfs.PathFragment; @@ -46,8 +45,6 @@ import javax.annotation.Nullable; */ @AutoCodec public class HeaderThinning implements IncludeProcessing { - public static final ObjectCodec<HeaderThinning> CODEC = new HeaderThinning_AutoCodec(); - private final Iterable<Artifact> potentialInputs; public HeaderThinning(Iterable<Artifact> potentialInputs) { diff --git a/src/main/java/com/google/devtools/build/lib/rules/objc/J2ObjcCommandLineOptions.java b/src/main/java/com/google/devtools/build/lib/rules/objc/J2ObjcCommandLineOptions.java index ba28c3657e..2e0b812387 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/objc/J2ObjcCommandLineOptions.java +++ b/src/main/java/com/google/devtools/build/lib/rules/objc/J2ObjcCommandLineOptions.java @@ -17,7 +17,6 @@ package com.google.devtools.build.lib.rules.objc; import com.google.devtools.build.lib.analysis.config.BuildConfiguration.LabelConverter; import com.google.devtools.build.lib.analysis.config.FragmentOptions; import com.google.devtools.build.lib.cmdline.Label; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.common.options.Converters; import com.google.devtools.common.options.Option; @@ -31,9 +30,6 @@ import java.util.List; */ @AutoCodec(strategy = AutoCodec.Strategy.PUBLIC_FIELDS) public class J2ObjcCommandLineOptions extends FragmentOptions { - public static final ObjectCodec<J2ObjcCommandLineOptions> CODEC = - new J2ObjcCommandLineOptions_AutoCodec(); - @Option( name = "j2objc_translation_flags", converter = Converters.CommaSeparatedOptionListConverter.class, diff --git a/src/main/java/com/google/devtools/build/lib/rules/objc/J2ObjcConfiguration.java b/src/main/java/com/google/devtools/build/lib/rules/objc/J2ObjcConfiguration.java index 582453b982..d71ce599c9 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/objc/J2ObjcConfiguration.java +++ b/src/main/java/com/google/devtools/build/lib/rules/objc/J2ObjcConfiguration.java @@ -27,7 +27,6 @@ import com.google.devtools.build.lib.cmdline.Label; import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable; import com.google.devtools.build.lib.events.Event; import com.google.devtools.build.lib.events.EventHandler; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import java.util.Collections; import java.util.List; @@ -40,8 +39,6 @@ import java.util.List; @AutoCodec @Immutable public class J2ObjcConfiguration extends Fragment { - public static final ObjectCodec<J2ObjcConfiguration> CODEC = new J2ObjcConfiguration_AutoCodec(); - /** * Always-on flags for J2ObjC translation. These flags are always used when invoking the J2ObjC * transpiler, and cannot be overridden by user-specified flags in {@link diff --git a/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcCommandLineOptions.java b/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcCommandLineOptions.java index c836e345fe..e7e5a1639d 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcCommandLineOptions.java +++ b/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcCommandLineOptions.java @@ -19,7 +19,6 @@ import com.google.devtools.build.lib.analysis.config.FragmentOptions; import com.google.devtools.build.lib.cmdline.Label; import com.google.devtools.build.lib.rules.apple.DottedVersion; import com.google.devtools.build.lib.rules.apple.DottedVersionConverter; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.common.options.Converters.CommaSeparatedOptionListConverter; import com.google.devtools.common.options.Option; @@ -31,9 +30,6 @@ import java.util.List; /** Command-line options for building Objective-C targets. */ @AutoCodec(strategy = AutoCodec.Strategy.PUBLIC_FIELDS) public class ObjcCommandLineOptions extends FragmentOptions { - public static final ObjectCodec<ObjcCommandLineOptions> CODEC = - new ObjcCommandLineOptions_AutoCodec(); - @Option( name = "ios_simulator_version", defaultValue = "9.3", diff --git a/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcConfiguration.java b/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcConfiguration.java index d95e40ca7c..b5d532a100 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcConfiguration.java +++ b/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcConfiguration.java @@ -24,7 +24,6 @@ import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable; import com.google.devtools.build.lib.rules.apple.ApplePlatform.PlatformType; import com.google.devtools.build.lib.rules.apple.DottedVersion; import com.google.devtools.build.lib.rules.cpp.HeaderDiscovery; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.skylarkinterface.SkylarkCallable; import com.google.devtools.build.lib.skylarkinterface.SkylarkModule; @@ -40,8 +39,6 @@ import javax.annotation.Nullable; ) @Immutable public class ObjcConfiguration extends BuildConfiguration.Fragment { - public static final ObjectCodec<ObjcConfiguration> CODEC = new ObjcConfiguration_AutoCodec(); - @VisibleForTesting static final ImmutableList<String> DBG_COPTS = ImmutableList.of("-O0", "-DDEBUG=1", "-fstack-protector", "-fstack-protector-all", "-g"); diff --git a/src/main/java/com/google/devtools/build/lib/rules/proto/ProtoConfiguration.java b/src/main/java/com/google/devtools/build/lib/rules/proto/ProtoConfiguration.java index 2838f3a6c1..1e2db33d31 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/proto/ProtoConfiguration.java +++ b/src/main/java/com/google/devtools/build/lib/rules/proto/ProtoConfiguration.java @@ -26,7 +26,6 @@ import com.google.devtools.build.lib.analysis.config.FragmentOptions; import com.google.devtools.build.lib.analysis.config.InvalidConfigurationException; import com.google.devtools.build.lib.cmdline.Label; import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.skylarkinterface.SkylarkModule; import com.google.devtools.build.lib.skylarkinterface.SkylarkModuleCategory; @@ -48,13 +47,9 @@ import java.util.List; doc = "A configuration fragment representing protocol buffers." ) public class ProtoConfiguration extends Fragment { - public static final ObjectCodec<ProtoConfiguration> CODEC = new ProtoConfiguration_AutoCodec(); - /** Command line options. */ @AutoCodec(strategy = AutoCodec.Strategy.PUBLIC_FIELDS) public static class Options extends FragmentOptions { - public static final ObjectCodec<Options> CODEC = new ProtoConfiguration_Options_AutoCodec(); - @Option( name = "protocopt", allowMultiple = true, diff --git a/src/main/java/com/google/devtools/build/lib/rules/python/PythonConfiguration.java b/src/main/java/com/google/devtools/build/lib/rules/python/PythonConfiguration.java index f8ac8bc2c3..b152c7a745 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/python/PythonConfiguration.java +++ b/src/main/java/com/google/devtools/build/lib/rules/python/PythonConfiguration.java @@ -20,7 +20,6 @@ import com.google.devtools.build.lib.analysis.config.BuildOptions; import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable; import com.google.devtools.build.lib.events.Event; import com.google.devtools.build.lib.events.EventHandler; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.util.OS; import com.google.devtools.common.options.TriState; @@ -34,8 +33,6 @@ import java.util.List; @AutoCodec @Immutable public class PythonConfiguration extends BuildConfiguration.Fragment { - public static final ObjectCodec<PythonConfiguration> CODEC = new PythonConfiguration_AutoCodec(); - private final boolean ignorePythonVersionAttribute; private final PythonVersion defaultPythonVersion; private final TriState buildPythonZip; diff --git a/src/main/java/com/google/devtools/build/lib/rules/python/PythonOptions.java b/src/main/java/com/google/devtools/build/lib/rules/python/PythonOptions.java index b730513300..8138485d47 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/python/PythonOptions.java +++ b/src/main/java/com/google/devtools/build/lib/rules/python/PythonOptions.java @@ -14,7 +14,6 @@ package com.google.devtools.build.lib.rules.python; import com.google.devtools.build.lib.analysis.config.FragmentOptions; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.common.options.EnumConverter; import com.google.devtools.common.options.Option; @@ -25,8 +24,6 @@ import com.google.devtools.common.options.TriState; /** Python-related command-line options. */ @AutoCodec(strategy = AutoCodec.Strategy.PUBLIC_FIELDS) public class PythonOptions extends FragmentOptions { - public static final ObjectCodec<PythonOptions> CODEC = new PythonOptions_AutoCodec(); - /** * Converter for the --force_python option. */ diff --git a/src/main/java/com/google/devtools/build/lib/rules/python/PythonUtils.java b/src/main/java/com/google/devtools/build/lib/rules/python/PythonUtils.java index 6d443cdbb2..39d88abd99 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/python/PythonUtils.java +++ b/src/main/java/com/google/devtools/build/lib/rules/python/PythonUtils.java @@ -22,7 +22,6 @@ import com.google.devtools.build.lib.analysis.Runfiles; import com.google.devtools.build.lib.analysis.actions.CustomCommandLine; import com.google.devtools.build.lib.analysis.actions.SpawnAction; import com.google.devtools.build.lib.analysis.configuredtargets.RuleConfiguredTarget; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.util.FileType; import com.google.devtools.build.lib.vfs.PathFragment; @@ -42,9 +41,6 @@ public final class PythonUtils { @AutoCodec static class GetInitPyFiles implements Runfiles.EmptyFilesSupplier { - public static final ObjectCodec<GetInitPyFiles> CODEC = - new PythonUtils_GetInitPyFiles_AutoCodec(); - @Override public Iterable<PathFragment> getExtraPaths(Set<PathFragment> manifestPaths) { return getInitPyFiles(manifestPaths); diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/ActionTemplateExpansionValue.java b/src/main/java/com/google/devtools/build/lib/skyframe/ActionTemplateExpansionValue.java index 0536e8200a..dd60938de0 100644 --- a/src/main/java/com/google/devtools/build/lib/skyframe/ActionTemplateExpansionValue.java +++ b/src/main/java/com/google/devtools/build/lib/skyframe/ActionTemplateExpansionValue.java @@ -19,7 +19,6 @@ import com.google.devtools.build.lib.actions.ActionLookupValue; import com.google.devtools.build.lib.actions.Actions.GeneratingActions; import com.google.devtools.build.lib.cmdline.Label; import com.google.devtools.build.lib.concurrent.BlazeInterners; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.skyframe.SkyFunctionName; @@ -38,8 +37,6 @@ public final class ActionTemplateExpansionValue extends ActionLookupValue { @AutoCodec static final class ActionTemplateExpansionKey extends ActionLookupKey { - static final ObjectCodec<ActionTemplateExpansionKey> CODEC = - new ActionTemplateExpansionValue_ActionTemplateExpansionKey_AutoCodec(); private static final Interner<ActionTemplateExpansionKey> interner = BlazeInterners.newWeakInterner(); diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/ArtifactSkyKey.java b/src/main/java/com/google/devtools/build/lib/skyframe/ArtifactSkyKey.java index 96b8d1666f..20d9e97bb5 100644 --- a/src/main/java/com/google/devtools/build/lib/skyframe/ArtifactSkyKey.java +++ b/src/main/java/com/google/devtools/build/lib/skyframe/ArtifactSkyKey.java @@ -21,7 +21,6 @@ import com.google.common.collect.Iterables; import com.google.devtools.build.lib.actions.Artifact; import com.google.devtools.build.lib.concurrent.BlazeInterners; import com.google.devtools.build.lib.concurrent.ThreadSafety; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.skyframe.SkyFunctionName; import com.google.devtools.build.skyframe.SkyKey; @@ -56,7 +55,6 @@ import java.util.Collection; @AutoCodec public class ArtifactSkyKey implements SkyKey { private static final Interner<ArtifactSkyKey> INTERNER = BlazeInterners.newWeakInterner(); - public static final ObjectCodec<ArtifactSkyKey> CODEC = new ArtifactSkyKey_AutoCodec(); private static final Function<Artifact, SkyKey> TO_MANDATORY_KEY = artifact -> key(artifact, true); private static final Function<ArtifactSkyKey, Artifact> TO_ARTIFACT = ArtifactSkyKey::getArtifact; diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/AspectValue.java b/src/main/java/com/google/devtools/build/lib/skyframe/AspectValue.java index 73ce2489c1..08c8c06895 100644 --- a/src/main/java/com/google/devtools/build/lib/skyframe/AspectValue.java +++ b/src/main/java/com/google/devtools/build/lib/skyframe/AspectValue.java @@ -34,7 +34,6 @@ import com.google.devtools.build.lib.packages.AspectParameters; import com.google.devtools.build.lib.packages.Package; import com.google.devtools.build.lib.skyframe.BuildConfigurationValue.Key; import com.google.devtools.build.lib.skyframe.ConfiguredTargetKey.KeyAndHost; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.syntax.SkylarkImport; import com.google.devtools.build.skyframe.SkyFunctionName; @@ -55,7 +54,6 @@ public final class AspectValue extends ActionLookupValue { /** A base class for a key representing an aspect applied to a particular target. */ @AutoCodec public static class AspectKey extends AspectValueKey { - public static final ObjectCodec<AspectKey> CODEC = new AspectValue_AspectKey_AutoCodec(); private final Label label; private final ImmutableList<AspectKey> baseKeys; private final BuildConfigurationValue.Key aspectConfigurationKey; @@ -274,8 +272,6 @@ public final class AspectValue extends ActionLookupValue { /** An {@link AspectKey} for an aspect in the host configuration. */ static class HostAspectKey extends AspectKey { - static final ObjectCodec<AspectKey> CODEC = AspectKey.CODEC; - private HostAspectKey( Label label, Key aspectConfigurationKey, diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/BuildConfigurationValue.java b/src/main/java/com/google/devtools/build/lib/skyframe/BuildConfigurationValue.java index b2e7ee3286..b445cc0a2b 100644 --- a/src/main/java/com/google/devtools/build/lib/skyframe/BuildConfigurationValue.java +++ b/src/main/java/com/google/devtools/build/lib/skyframe/BuildConfigurationValue.java @@ -44,9 +44,6 @@ import java.util.Set; @AutoCodec @ThreadSafe public class BuildConfigurationValue implements SkyValue { - public static final ObjectCodec<BuildConfigurationValue> CODEC = - new BuildConfigurationValue_AutoCodec(); - private static final Interner<Key> keyInterner = BlazeInterners.newWeakInterner(); private final BuildConfiguration configuration; @@ -81,8 +78,6 @@ public class BuildConfigurationValue implements SkyValue { /** {@link SkyKey} for {@link BuildConfigurationValue}. */ @VisibleForSerialization public static final class Key implements SkyKey, Serializable { - public static final ObjectCodec<Key> CODEC = new Codec(); - private final FragmentClassSet fragments; private final BuildOptions buildOptions; // If hashCode really is -1, we'll recompute it from scratch each time. Oh well. @@ -136,7 +131,7 @@ public class BuildConfigurationValue implements SkyValue { @Override public void serialize(SerializationContext context, Key obj, CodedOutputStream codedOut) throws SerializationException, IOException { - BuildOptions.CODEC.serialize(context, obj.buildOptions, codedOut); + context.serialize(obj.buildOptions, codedOut); codedOut.writeInt32NoTag(obj.fragments.fragmentClasses().size()); for (Class<? extends BuildConfiguration.Fragment> fragment : obj.fragments.fragmentClasses()) { @@ -148,7 +143,7 @@ public class BuildConfigurationValue implements SkyValue { @SuppressWarnings("unchecked") // Class<? extends...> cast public Key deserialize(DeserializationContext context, CodedInputStream codedIn) throws SerializationException, IOException { - BuildOptions buildOptions = BuildOptions.CODEC.deserialize(context, codedIn); + BuildOptions buildOptions = context.deserialize(codedIn); int fragmentsSize = codedIn.readInt32(); ImmutableSortedSet.Builder<Class<? extends BuildConfiguration.Fragment>> fragmentsBuilder = ImmutableSortedSet.orderedBy(BuildConfiguration.lexicalFragmentSorter); diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/BuildInfoCollectionValue.java b/src/main/java/com/google/devtools/build/lib/skyframe/BuildInfoCollectionValue.java index 7d3fe847eb..485a6a7dcc 100644 --- a/src/main/java/com/google/devtools/build/lib/skyframe/BuildInfoCollectionValue.java +++ b/src/main/java/com/google/devtools/build/lib/skyframe/BuildInfoCollectionValue.java @@ -22,7 +22,6 @@ import com.google.devtools.build.lib.analysis.buildinfo.BuildInfoFactory; import com.google.devtools.build.lib.analysis.config.BuildConfiguration; import com.google.devtools.build.lib.cmdline.Label; import com.google.devtools.build.lib.concurrent.BlazeInterners; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.skyframe.SkyFunctionName; import java.util.Objects; @@ -61,8 +60,6 @@ public class BuildInfoCollectionValue extends ActionLookupValue { public static class BuildInfoKeyAndConfig extends ActionLookupKey { private static final Interner<BuildInfoKeyAndConfig> keyInterner = BlazeInterners.newWeakInterner(); - public static final ObjectCodec<BuildInfoKeyAndConfig> CODEC = - new BuildInfoCollectionValue_BuildInfoKeyAndConfig_AutoCodec(); private final BuildInfoFactory.BuildInfoKey infoKey; private final BuildConfigurationValue.Key configKey; diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/ConfigurationFragmentValue.java b/src/main/java/com/google/devtools/build/lib/skyframe/ConfigurationFragmentValue.java index 19d5ba3152..94c73f9f67 100644 --- a/src/main/java/com/google/devtools/build/lib/skyframe/ConfigurationFragmentValue.java +++ b/src/main/java/com/google/devtools/build/lib/skyframe/ConfigurationFragmentValue.java @@ -44,9 +44,6 @@ import javax.annotation.Nullable; @ThreadSafe @AutoCodec public class ConfigurationFragmentValue implements SkyValue { - public static final ObjectCodec<ConfigurationFragmentValue> CODEC = - new ConfigurationFragmentValue_AutoCodec(); - @Nullable private final BuildConfiguration.Fragment fragment; @@ -75,8 +72,6 @@ public class ConfigurationFragmentValue implements SkyValue { public static final class ConfigurationFragmentKey implements SkyKey { private static Interner<ConfigurationFragmentKey> interner = BlazeInterners.newWeakInterner(); - public static final ObjectCodec<ConfigurationFragmentKey> CODEC = new Codec(); - private final BuildOptions buildOptions; private final String checksum; private final Class<? extends Fragment> fragmentType; @@ -140,7 +135,7 @@ public class ConfigurationFragmentValue implements SkyValue { public void serialize( SerializationContext context, ConfigurationFragmentKey obj, CodedOutputStream codedOut) throws SerializationException, IOException { - BuildOptions.CODEC.serialize(context, obj.buildOptions, codedOut); + context.serialize(obj.buildOptions, codedOut); StringCodecs.asciiOptimized().serialize(context, obj.fragmentType.getName(), codedOut); } @@ -152,7 +147,7 @@ public class ConfigurationFragmentValue implements SkyValue { try { return of( - BuildOptions.CODEC.deserialize(context, codedIn), + context.deserialize(codedIn), (Class<? extends Fragment>) Class.forName(StringCodecs.asciiOptimized().deserialize(context, codedIn))); } catch (ClassNotFoundException e) { diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/ConfiguredTargetKey.java b/src/main/java/com/google/devtools/build/lib/skyframe/ConfiguredTargetKey.java index ab1655f353..f9489794cc 100644 --- a/src/main/java/com/google/devtools/build/lib/skyframe/ConfiguredTargetKey.java +++ b/src/main/java/com/google/devtools/build/lib/skyframe/ConfiguredTargetKey.java @@ -22,7 +22,6 @@ import com.google.devtools.build.lib.analysis.ConfiguredTarget; import com.google.devtools.build.lib.analysis.config.BuildConfiguration; import com.google.devtools.build.lib.cmdline.Label; import com.google.devtools.build.lib.concurrent.BlazeInterners; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.skyframe.SkyFunctionName; import java.util.Objects; @@ -34,8 +33,6 @@ import javax.annotation.Nullable; */ @AutoCodec public class ConfiguredTargetKey extends ActionLookupKey { - public static final ObjectCodec<ConfiguredTargetKey> CODEC = new ConfiguredTargetKey_AutoCodec(); - private final Label label; @Nullable private final BuildConfigurationValue.Key configurationKey; @@ -172,8 +169,6 @@ public class ConfiguredTargetKey extends ActionLookupKey { } static class HostConfiguredTargetKey extends ConfiguredTargetKey { - public static final ObjectCodec<ConfiguredTargetKey> CODEC = ConfiguredTargetKey.CODEC; - private HostConfiguredTargetKey( Label label, @Nullable BuildConfigurationValue.Key configurationKey) { super(label, configurationKey); diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/GlobDescriptor.java b/src/main/java/com/google/devtools/build/lib/skyframe/GlobDescriptor.java index 4b20998b0e..f64d451c9e 100644 --- a/src/main/java/com/google/devtools/build/lib/skyframe/GlobDescriptor.java +++ b/src/main/java/com/google/devtools/build/lib/skyframe/GlobDescriptor.java @@ -18,7 +18,6 @@ import com.google.common.collect.Interner; import com.google.devtools.build.lib.cmdline.PackageIdentifier; import com.google.devtools.build.lib.concurrent.BlazeInterners; import com.google.devtools.build.lib.concurrent.ThreadSafety.ThreadSafe; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.util.StringCanonicalizer; import com.google.devtools.build.lib.vfs.PathFragment; @@ -39,8 +38,6 @@ public final class GlobDescriptor implements SkyKey { private static final Interner<GlobDescriptor> interner = BlazeInterners.newWeakInterner(); - public static final ObjectCodec<GlobDescriptor> CODEC = new GlobDescriptor_AutoCodec(); - /** * Returns interned instance based on the parameters. * diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/PackageValue.java b/src/main/java/com/google/devtools/build/lib/skyframe/PackageValue.java index 96304a1080..0314de623d 100644 --- a/src/main/java/com/google/devtools/build/lib/skyframe/PackageValue.java +++ b/src/main/java/com/google/devtools/build/lib/skyframe/PackageValue.java @@ -19,7 +19,6 @@ import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable; import com.google.devtools.build.lib.concurrent.ThreadSafety.ThreadSafe; import com.google.devtools.build.lib.packages.BuildFileContainsErrorsException; import com.google.devtools.build.lib.packages.Package; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.skyframe.LegacySkyKey; import com.google.devtools.build.skyframe.NotComparableSkyValue; @@ -32,8 +31,6 @@ import java.util.List; @Immutable @ThreadSafe public class PackageValue implements NotComparableSkyValue { - public static final ObjectCodec<PackageValue> CODEC = new PackageValue_AutoCodec(); - private final Package pkg; public PackageValue(Package pkg) { diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/PrepareDepsOfTargetsUnderDirectoryValue.java b/src/main/java/com/google/devtools/build/lib/skyframe/PrepareDepsOfTargetsUnderDirectoryValue.java index ef2e04b24e..0dcbe302e5 100644 --- a/src/main/java/com/google/devtools/build/lib/skyframe/PrepareDepsOfTargetsUnderDirectoryValue.java +++ b/src/main/java/com/google/devtools/build/lib/skyframe/PrepareDepsOfTargetsUnderDirectoryValue.java @@ -21,7 +21,6 @@ import com.google.devtools.build.lib.concurrent.ThreadSafety.ThreadSafe; import com.google.devtools.build.lib.pkgcache.FilteringPolicies; import com.google.devtools.build.lib.pkgcache.FilteringPolicy; import com.google.devtools.build.lib.skyframe.RecursivePkgValue.RecursivePkgKey; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.vfs.PathFragment; import com.google.devtools.build.lib.vfs.RootedPath; @@ -75,9 +74,6 @@ public final class PrepareDepsOfTargetsUnderDirectoryValue implements SkyValue { */ @AutoCodec public static final class PrepareDepsOfTargetsUnderDirectoryKey implements Serializable { - public static final ObjectCodec<PrepareDepsOfTargetsUnderDirectoryKey> CODEC = - new PrepareDepsOfTargetsUnderDirectoryValue_PrepareDepsOfTargetsUnderDirectoryKey_AutoCodec(); - private final RecursivePkgKey recursivePkgKey; private final FilteringPolicy filteringPolicy; diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/RecursivePkgValue.java b/src/main/java/com/google/devtools/build/lib/skyframe/RecursivePkgValue.java index 59b1201831..d71cfcbba9 100644 --- a/src/main/java/com/google/devtools/build/lib/skyframe/RecursivePkgValue.java +++ b/src/main/java/com/google/devtools/build/lib/skyframe/RecursivePkgValue.java @@ -21,7 +21,6 @@ import com.google.devtools.build.lib.collect.nestedset.NestedSetBuilder; import com.google.devtools.build.lib.collect.nestedset.Order; import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable; import com.google.devtools.build.lib.concurrent.ThreadSafety.ThreadSafe; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.vfs.PathFragment; import com.google.devtools.build.lib.vfs.RootedPath; @@ -38,6 +37,7 @@ import java.util.Objects; @Immutable @ThreadSafe public class RecursivePkgValue implements SkyValue { + @AutoCodec static final RecursivePkgValue EMPTY = new RecursivePkgValue(NestedSetBuilder.<String>emptySet(Order.STABLE_ORDER)); @@ -80,9 +80,6 @@ public class RecursivePkgValue implements SkyValue { @AutoCodec @ThreadSafe public static final class RecursivePkgKey implements Serializable { - public static final ObjectCodec<RecursivePkgKey> CODEC = - new RecursivePkgValue_RecursivePkgKey_AutoCodec(); - private final RepositoryName repositoryName; private final RootedPath rootedPath; private final ImmutableSet<PathFragment> excludedPaths; diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/RegisteredToolchainsValue.java b/src/main/java/com/google/devtools/build/lib/skyframe/RegisteredToolchainsValue.java index 538a99059a..1f6023d5dd 100644 --- a/src/main/java/com/google/devtools/build/lib/skyframe/RegisteredToolchainsValue.java +++ b/src/main/java/com/google/devtools/build/lib/skyframe/RegisteredToolchainsValue.java @@ -19,7 +19,6 @@ import com.google.common.collect.ImmutableList; import com.google.common.collect.Interner; import com.google.devtools.build.lib.analysis.platform.DeclaredToolchainInfo; import com.google.devtools.build.lib.concurrent.BlazeInterners; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.skyframe.SkyFunctionName; import com.google.devtools.build.skyframe.SkyKey; @@ -39,11 +38,8 @@ public abstract class RegisteredToolchainsValue implements SkyValue { /** A {@link SkyKey} for {@code RegisteredToolchainsValue}. */ @AutoCodec - @AutoCodec.VisibleForSerialization - // TODO(shahan): Reduce visibility and remove CODEC field once unneeded. - public static class Key implements SkyKey { + static class Key implements SkyKey { private static final Interner<Key> interners = BlazeInterners.newWeakInterner(); - public static final ObjectCodec<Key> CODEC = new RegisteredToolchainsValue_Key_AutoCodec(); private final BuildConfigurationValue.Key configurationKey; diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/TargetCompletionValue.java b/src/main/java/com/google/devtools/build/lib/skyframe/TargetCompletionValue.java index 9765dd112b..a62196bc1b 100644 --- a/src/main/java/com/google/devtools/build/lib/skyframe/TargetCompletionValue.java +++ b/src/main/java/com/google/devtools/build/lib/skyframe/TargetCompletionValue.java @@ -18,7 +18,6 @@ import com.google.common.base.Function; import com.google.common.collect.Iterables; import com.google.devtools.build.lib.analysis.ConfiguredTarget; import com.google.devtools.build.lib.analysis.TopLevelArtifactContext; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.skyframe.SkyFunctionName; import com.google.devtools.build.skyframe.SkyKey; @@ -65,13 +64,9 @@ public class TargetCompletionValue implements SkyValue { /** {@link SkyKey} for {@link TargetCompletionValue}. */ @AutoCodec @AutoValue - @AutoCodec.VisibleForSerialization - public abstract static class TargetCompletionKey implements SkyKey { - public static final ObjectCodec<TargetCompletionKey> CODEC = - new TargetCompletionValue_TargetCompletionKey_AutoCodec(); - + abstract static class TargetCompletionKey implements SkyKey { @AutoCodec.Instantiator - public static TargetCompletionKey create( + static TargetCompletionKey create( ConfiguredTargetKey configuredTargetKey, TopLevelArtifactContext topLevelArtifactContext, boolean willTest) { diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/TargetPatternPhaseValue.java b/src/main/java/com/google/devtools/build/lib/skyframe/TargetPatternPhaseValue.java index cc7e84db78..6e24906e52 100644 --- a/src/main/java/com/google/devtools/build/lib/skyframe/TargetPatternPhaseValue.java +++ b/src/main/java/com/google/devtools/build/lib/skyframe/TargetPatternPhaseValue.java @@ -23,7 +23,6 @@ import com.google.devtools.build.lib.packages.Target; import com.google.devtools.build.lib.pkgcache.LoadingResult; import com.google.devtools.build.lib.pkgcache.TestFilter; import com.google.devtools.build.lib.skyframe.serialization.NotSerializableRuntimeException; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec.VisibleForSerialization; import com.google.devtools.build.skyframe.SkyFunctionName; @@ -158,9 +157,6 @@ public final class TargetPatternPhaseValue implements SkyValue { @VisibleForSerialization @AutoCodec public static final class TargetPatternPhaseKey implements SkyKey, Serializable { - public static final ObjectCodec<TargetPatternPhaseKey> CODEC = - new TargetPatternPhaseValue_TargetPatternPhaseKey_AutoCodec(); - private final ImmutableList<String> targetPatterns; private final String offset; private final boolean compileOneDependency; diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/TestSuiteExpansionValue.java b/src/main/java/com/google/devtools/build/lib/skyframe/TestSuiteExpansionValue.java index a4a41cb1ea..d32af1a9b0 100644 --- a/src/main/java/com/google/devtools/build/lib/skyframe/TestSuiteExpansionValue.java +++ b/src/main/java/com/google/devtools/build/lib/skyframe/TestSuiteExpansionValue.java @@ -23,7 +23,6 @@ import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable; import com.google.devtools.build.lib.concurrent.ThreadSafety.ThreadSafe; import com.google.devtools.build.lib.packages.Target; import com.google.devtools.build.lib.skyframe.serialization.NotSerializableRuntimeException; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.skyframe.SkyFunctionName; import com.google.devtools.build.skyframe.SkyKey; @@ -79,9 +78,6 @@ public final class TestSuiteExpansionValue implements SkyValue { @AutoCodec @ThreadSafe static final class TestSuiteExpansionKey implements SkyKey { - public static final ObjectCodec<TestSuiteExpansionKey> CODEC = - new TestSuiteExpansionValue_TestSuiteExpansionKey_AutoCodec(); - private final ImmutableSortedSet<Label> targets; public TestSuiteExpansionKey(ImmutableSortedSet<Label> targets) { diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/serialization/testutils/SerializationTester.java b/src/main/java/com/google/devtools/build/lib/skyframe/serialization/testutils/SerializationTester.java index ee45a822c1..d165c6cb6e 100644 --- a/src/main/java/com/google/devtools/build/lib/skyframe/serialization/testutils/SerializationTester.java +++ b/src/main/java/com/google/devtools/build/lib/skyframe/serialization/testutils/SerializationTester.java @@ -62,8 +62,12 @@ public class SerializationTester { private int repetitions = 1; public SerializationTester(Object... subjects) { - Preconditions.checkArgument(subjects.length > 0); - this.subjects = ImmutableList.copyOf(subjects); + this(ImmutableList.copyOf(subjects)); + } + + public SerializationTester(ImmutableList<Object> subjects) { + Preconditions.checkArgument(!subjects.isEmpty()); + this.subjects = subjects; this.dependenciesBuilder = ImmutableMap.builder(); } @@ -73,7 +77,8 @@ public class SerializationTester { } @SuppressWarnings("rawtypes") - public SerializationTester setVerificationFunction(VerificationFunction verificationFunction) { + public <T> SerializationTester setVerificationFunction( + VerificationFunction<T> verificationFunction) { this.verificationFunction = verificationFunction; return this; } diff --git a/src/main/java/com/google/devtools/build/lib/syntax/Lexer.java b/src/main/java/com/google/devtools/build/lib/syntax/Lexer.java index 7e3b731d6f..5f80c418cf 100644 --- a/src/main/java/com/google/devtools/build/lib/syntax/Lexer.java +++ b/src/main/java/com/google/devtools/build/lib/syntax/Lexer.java @@ -23,7 +23,6 @@ import com.google.devtools.build.lib.events.EventHandler; import com.google.devtools.build.lib.events.Location; import com.google.devtools.build.lib.profiler.Profiler; import com.google.devtools.build.lib.profiler.ProfilerTask; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.util.Pair; import com.google.devtools.build.lib.vfs.PathFragment; @@ -167,8 +166,6 @@ public final class Lexer { @AutoCodec @Immutable static final class LexerLocation extends Location { - public static final ObjectCodec<LexerLocation> CODEC = new Lexer_LexerLocation_AutoCodec(); - private final LineNumberTable lineNumberTable; LexerLocation(LineNumberTable lineNumberTable, int startOffset, int endOffset) { diff --git a/src/main/java/com/google/devtools/build/lib/syntax/LineNumberTable.java b/src/main/java/com/google/devtools/build/lib/syntax/LineNumberTable.java index 49e793a5b5..276b5df2ca 100644 --- a/src/main/java/com/google/devtools/build/lib/syntax/LineNumberTable.java +++ b/src/main/java/com/google/devtools/build/lib/syntax/LineNumberTable.java @@ -16,7 +16,6 @@ package com.google.devtools.build.lib.syntax; import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable; import com.google.devtools.build.lib.events.Location.LineAndColumn; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.util.Pair; import com.google.devtools.build.lib.vfs.PathFragment; @@ -32,8 +31,6 @@ import java.util.Objects; @AutoCodec @Immutable public class LineNumberTable implements Serializable { - public static final ObjectCodec<LineNumberTable> CODEC = new LineNumberTable_AutoCodec(); - /** A mapping from line number (line >= 1) to character offset into the file. */ private final int[] linestart; diff --git a/src/main/java/com/google/devtools/build/lib/syntax/SkylarkImports.java b/src/main/java/com/google/devtools/build/lib/syntax/SkylarkImports.java index 26fc565930..dc08f4a19a 100644 --- a/src/main/java/com/google/devtools/build/lib/syntax/SkylarkImports.java +++ b/src/main/java/com/google/devtools/build/lib/syntax/SkylarkImports.java @@ -18,7 +18,6 @@ import com.google.devtools.build.lib.cmdline.Label; import com.google.devtools.build.lib.cmdline.LabelSyntaxException; import com.google.devtools.build.lib.cmdline.LabelValidator; import com.google.devtools.build.lib.cmdline.PackageIdentifier; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec.VisibleForSerialization; import com.google.devtools.build.lib.vfs.PathFragment; @@ -86,9 +85,6 @@ public class SkylarkImports { @VisibleForSerialization @AutoCodec static final class AbsolutePathImport extends SkylarkImportImpl { - static final ObjectCodec<AbsolutePathImport> CODEC = - new SkylarkImports_AbsolutePathImport_AutoCodec(); - private final PathFragment importPath; @VisibleForSerialization @@ -122,9 +118,6 @@ public class SkylarkImports { @VisibleForSerialization @AutoCodec static final class RelativePathImport extends SkylarkImportImpl { - static final ObjectCodec<RelativePathImport> CODEC = - new SkylarkImports_RelativePathImport_AutoCodec(); - private final String importFile; @VisibleForSerialization @@ -160,9 +153,6 @@ public class SkylarkImports { @VisibleForSerialization @AutoCodec static final class AbsoluteLabelImport extends SkylarkImportImpl { - static final ObjectCodec<AbsoluteLabelImport> CODEC = - new SkylarkImports_AbsoluteLabelImport_AutoCodec(); - private final Label importLabel; @VisibleForSerialization @@ -188,9 +178,6 @@ public class SkylarkImports { @VisibleForSerialization @AutoCodec static final class RelativeLabelImport extends SkylarkImportImpl { - static final ObjectCodec<RelativeLabelImport> CODEC = - new SkylarkImports_RelativeLabelImport_AutoCodec(); - private final String importTarget; @VisibleForSerialization diff --git a/src/main/java/com/google/devtools/build/lib/util/RegexFilter.java b/src/main/java/com/google/devtools/build/lib/util/RegexFilter.java index c64ea5157e..efd47414d2 100644 --- a/src/main/java/com/google/devtools/build/lib/util/RegexFilter.java +++ b/src/main/java/com/google/devtools/build/lib/util/RegexFilter.java @@ -16,7 +16,6 @@ package com.google.devtools.build.lib.util; import com.google.common.base.Joiner; import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.common.options.Converter; import com.google.devtools.common.options.OptionsParsingException; @@ -37,8 +36,6 @@ import javax.annotation.Nullable; @AutoCodec @Immutable public final class RegexFilter { - public static final ObjectCodec<RegexFilter> CODEC = new RegexFilter_AutoCodec(); - // Null inclusion or exclusion pattern means those patterns are not used. @Nullable private final Pattern inclusionPattern; @Nullable private final Pattern exclusionPattern; diff --git a/src/main/java/com/google/devtools/build/lib/vfs/Path.java b/src/main/java/com/google/devtools/build/lib/vfs/Path.java index b4542ecd83..af2b1c7322 100644 --- a/src/main/java/com/google/devtools/build/lib/vfs/Path.java +++ b/src/main/java/com/google/devtools/build/lib/vfs/Path.java @@ -61,8 +61,6 @@ import javax.annotation.Nullable; @ThreadSafe public class Path implements Comparable<Path>, Serializable, SkylarkPrintable, FileType.HasFileType { - public static final ObjectCodec<Path> CODEC = new Codec(); - private static FileSystem fileSystemForSerialization; /** diff --git a/src/main/java/com/google/devtools/build/lib/vfs/PathFragment.java b/src/main/java/com/google/devtools/build/lib/vfs/PathFragment.java index 9f70919046..72699a1db3 100644 --- a/src/main/java/com/google/devtools/build/lib/vfs/PathFragment.java +++ b/src/main/java/com/google/devtools/build/lib/vfs/PathFragment.java @@ -66,8 +66,6 @@ public final class PathFragment private final String path; private final int driveStrLength; // 0 for relative paths, 1 on Unix, 3 on Windows - public static final ObjectCodec<PathFragment> CODEC = new PathFragmentCodec(); - /** Creates a new normalized path fragment. */ public static PathFragment create(String path) { int normalizationLevel = OS.needsToNormalize(path); diff --git a/src/main/java/com/google/devtools/build/lib/vfs/Root.java b/src/main/java/com/google/devtools/build/lib/vfs/Root.java index c23dbeb7d0..b39eb2e48c 100644 --- a/src/main/java/com/google/devtools/build/lib/vfs/Root.java +++ b/src/main/java/com/google/devtools/build/lib/vfs/Root.java @@ -35,8 +35,6 @@ import javax.annotation.Nullable; */ public abstract class Root implements Comparable<Root>, Serializable { - public static final ObjectCodec<Root> CODEC = new RootCodec(); - /** Constructs a root from a path. */ public static Root fromPath(Path path) { return new PathRoot(path); diff --git a/src/main/java/com/google/devtools/build/lib/vfs/RootedPath.java b/src/main/java/com/google/devtools/build/lib/vfs/RootedPath.java index bbc89a96d9..aa7a1f4fe9 100644 --- a/src/main/java/com/google/devtools/build/lib/vfs/RootedPath.java +++ b/src/main/java/com/google/devtools/build/lib/vfs/RootedPath.java @@ -14,7 +14,6 @@ package com.google.devtools.build.lib.vfs; import com.google.common.base.Preconditions; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import java.io.Serializable; import java.util.Objects; @@ -31,9 +30,6 @@ import java.util.Objects; */ @AutoCodec public class RootedPath implements Serializable { - - public static final ObjectCodec<RootedPath> CODEC = new RootedPath_AutoCodec(); - private final Root root; private final PathFragment rootRelativePath; diff --git a/src/test/java/com/google/devtools/build/lib/actions/ArtifactTest.java b/src/test/java/com/google/devtools/build/lib/actions/ArtifactTest.java index 13cdbc7c0f..26efc19f44 100644 --- a/src/test/java/com/google/devtools/build/lib/actions/ArtifactTest.java +++ b/src/test/java/com/google/devtools/build/lib/actions/ArtifactTest.java @@ -25,7 +25,7 @@ import com.google.devtools.build.lib.actions.util.LabelArtifactOwner; import com.google.devtools.build.lib.cmdline.Label; import com.google.devtools.build.lib.rules.cpp.CppFileTypes; import com.google.devtools.build.lib.rules.java.JavaSemantics; -import com.google.devtools.build.lib.skyframe.serialization.testutils.ObjectCodecTester; +import com.google.devtools.build.lib.skyframe.serialization.testutils.SerializationTester; import com.google.devtools.build.lib.testutil.MoreAsserts; import com.google.devtools.build.lib.testutil.Scratch; import com.google.devtools.build.lib.vfs.FileSystem; @@ -336,8 +336,7 @@ public class ArtifactTest { @Test public void testCodec() throws Exception { - ObjectCodecTester.newBuilder(Artifact.CODEC) - .addSubjects( + new SerializationTester( new Artifact(PathFragment.create("src/a"), rootDir), new Artifact( PathFragment.create("src/b"), ArtifactRoot.asSourceRoot(Root.fromPath(execDir))), @@ -347,7 +346,7 @@ public class ArtifactTest { PathFragment.create("src/c"), new LabelArtifactOwner(Label.parseAbsoluteUnchecked("//foo:bar")))) .addDependency(FileSystem.class, scratch.getFileSystem()) - .buildAndRunTests(); + .runTests(); } @Test diff --git a/src/test/java/com/google/devtools/build/lib/actions/util/LabelArtifactOwner.java b/src/test/java/com/google/devtools/build/lib/actions/util/LabelArtifactOwner.java index 0d24177180..5fc60fd37a 100644 --- a/src/test/java/com/google/devtools/build/lib/actions/util/LabelArtifactOwner.java +++ b/src/test/java/com/google/devtools/build/lib/actions/util/LabelArtifactOwner.java @@ -16,7 +16,6 @@ package com.google.devtools.build.lib.actions.util; import com.google.common.annotations.VisibleForTesting; import com.google.devtools.build.lib.actions.ArtifactOwner; import com.google.devtools.build.lib.cmdline.Label; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import java.util.Objects; @@ -24,9 +23,6 @@ import java.util.Objects; @VisibleForTesting @AutoCodec public class LabelArtifactOwner implements ArtifactOwner { - - public static final ObjectCodec<LabelArtifactOwner> CODEC = new LabelArtifactOwner_AutoCodec(); - private final Label label; @VisibleForTesting diff --git a/src/test/java/com/google/devtools/build/lib/analysis/BlazeDirectoriesTest.java b/src/test/java/com/google/devtools/build/lib/analysis/BlazeDirectoriesTest.java index 930a2a5730..36024e5695 100644 --- a/src/test/java/com/google/devtools/build/lib/analysis/BlazeDirectoriesTest.java +++ b/src/test/java/com/google/devtools/build/lib/analysis/BlazeDirectoriesTest.java @@ -16,7 +16,7 @@ package com.google.devtools.build.lib.analysis; import static com.google.common.truth.Truth.assertThat; import com.google.devtools.build.lib.skyframe.serialization.testutils.FsUtils; -import com.google.devtools.build.lib.skyframe.serialization.testutils.ObjectCodecTester; +import com.google.devtools.build.lib.skyframe.serialization.testutils.SerializationTester; import com.google.devtools.build.lib.testutil.FoundationTestCase; import com.google.devtools.build.lib.vfs.FileSystem; import com.google.devtools.build.lib.vfs.Path; @@ -57,8 +57,7 @@ public class BlazeDirectoriesTest extends FoundationTestCase { @Test public void testCodec() throws Exception { - ObjectCodecTester.newBuilder(BlazeDirectories.CODEC) - .addSubjects( + new SerializationTester( new BlazeDirectories( new ServerDirectories( FsUtils.TEST_FILESYSTEM.getPath("/install_base"), @@ -82,6 +81,6 @@ public class BlazeDirectoriesTest extends FoundationTestCase { FsUtils.TEST_FILESYSTEM.getPath("/workspace"), "Bazel")) .addDependency(FileSystem.class, FsUtils.TEST_FILESYSTEM) - .buildAndRunTests(); + .runTests(); } } diff --git a/src/test/java/com/google/devtools/build/lib/analysis/LateBoundSplitUtil.java b/src/test/java/com/google/devtools/build/lib/analysis/LateBoundSplitUtil.java index c5bfa97a43..bf6f9025ea 100644 --- a/src/test/java/com/google/devtools/build/lib/analysis/LateBoundSplitUtil.java +++ b/src/test/java/com/google/devtools/build/lib/analysis/LateBoundSplitUtil.java @@ -29,7 +29,6 @@ import com.google.devtools.build.lib.analysis.util.MockRule; import com.google.devtools.build.lib.cmdline.Label; import com.google.devtools.build.lib.packages.Attribute; import com.google.devtools.build.lib.packages.BuildType; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.testutil.TestRuleClassProvider; import com.google.devtools.build.lib.util.FileTypeSet; @@ -44,9 +43,6 @@ public class LateBoundSplitUtil { /** A custom {@link FragmentOptions} with the option to be split. */ @AutoCodec(strategy = AutoCodec.Strategy.PUBLIC_FIELDS) public static class TestOptions extends FragmentOptions { // public for options loader - public static final ObjectCodec<TestOptions> CODEC = - new LateBoundSplitUtil_TestOptions_AutoCodec(); - @Option( name = "foo", documentationCategory = OptionDocumentationCategory.UNDOCUMENTED, @@ -71,8 +67,6 @@ public class LateBoundSplitUtil { /** The {@link BuildConfiguration.Fragment} that contains the options. */ @AutoCodec static class TestFragment extends BuildConfiguration.Fragment { - public static final ObjectCodec<TestFragment> CODEC = - new LateBoundSplitUtil_TestFragment_AutoCodec(); } /** diff --git a/src/test/java/com/google/devtools/build/lib/analysis/TestConfigFragments.java b/src/test/java/com/google/devtools/build/lib/analysis/TestConfigFragments.java index ac9629c376..dbede30426 100644 --- a/src/test/java/com/google/devtools/build/lib/analysis/TestConfigFragments.java +++ b/src/test/java/com/google/devtools/build/lib/analysis/TestConfigFragments.java @@ -23,7 +23,6 @@ import com.google.devtools.build.lib.analysis.config.FragmentOptions; import com.google.devtools.build.lib.analysis.config.InvalidConfigurationException; import com.google.devtools.build.lib.analysis.config.transitions.PatchTransition; import com.google.devtools.build.lib.packages.Target; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec.VisibleForSerialization; @@ -86,9 +85,6 @@ public class TestConfigFragments { @AutoCodec static class Hook1Fragment extends BuildConfiguration.Fragment { - public static final ObjectCodec<Hook1Fragment> CODEC = - new TestConfigFragments_Hook1Fragment_AutoCodec(); - @Override public PatchTransition topLevelConfigurationHook(Target toTarget) { return new HostCpuTransition("CONFIG HOOK 1"); @@ -106,9 +102,6 @@ public class TestConfigFragments { */ @AutoCodec static class Hook2Fragment extends BuildConfiguration.Fragment { - public static final ObjectCodec<Hook2Fragment> CODEC = - new TestConfigFragments_Hook2Fragment_AutoCodec(); - @Override public PatchTransition topLevelConfigurationHook(Target toTarget) { return new HostCpuTransition("CONFIG HOOK 2"); diff --git a/src/test/java/com/google/devtools/build/lib/analysis/config/BuildConfigurationTest.java b/src/test/java/com/google/devtools/build/lib/analysis/config/BuildConfigurationTest.java index 26b1d1eec6..3df4923ea0 100644 --- a/src/test/java/com/google/devtools/build/lib/analysis/config/BuildConfigurationTest.java +++ b/src/test/java/com/google/devtools/build/lib/analysis/config/BuildConfigurationTest.java @@ -29,7 +29,7 @@ import com.google.devtools.build.lib.packages.NoSuchTargetException; import com.google.devtools.build.lib.rules.cpp.CppConfiguration; import com.google.devtools.build.lib.rules.java.JavaConfiguration; import com.google.devtools.build.lib.rules.objc.J2ObjcConfiguration; -import com.google.devtools.build.lib.skyframe.serialization.testutils.ObjectCodecTester; +import com.google.devtools.build.lib.skyframe.serialization.testutils.SerializationTester; import com.google.devtools.build.lib.vfs.FileSystem; import com.google.devtools.common.options.Options; import java.util.Map; @@ -430,8 +430,7 @@ public class BuildConfigurationTest extends ConfigurationTestCase { @Test public void testCodec() throws Exception { - ObjectCodecTester.newBuilder(BuildConfiguration.CODEC) - .addSubjects( + new SerializationTester( create(), create("--cpu=piii"), create("--javacopt=foo"), @@ -452,8 +451,8 @@ public class BuildConfigurationTest extends ConfigurationTestCase { "--define", "#a=pounda")) .addDependency(FileSystem.class, getScratch().getFileSystem()) - .verificationFunction(BuildConfigurationTest::verifyDeserialized) - .buildAndRunTests(); + .setVerificationFunction(BuildConfigurationTest::verifyDeserialized) + .runTests(); } /** diff --git a/src/test/java/com/google/devtools/build/lib/exec/MiddlemanActionTest.java b/src/test/java/com/google/devtools/build/lib/exec/MiddlemanActionTest.java index 42a9a1ffaa..5c176fe733 100644 --- a/src/test/java/com/google/devtools/build/lib/exec/MiddlemanActionTest.java +++ b/src/test/java/com/google/devtools/build/lib/exec/MiddlemanActionTest.java @@ -26,7 +26,7 @@ import com.google.devtools.build.lib.actions.MiddlemanFactory; import com.google.devtools.build.lib.analysis.util.AnalysisTestUtil; import com.google.devtools.build.lib.analysis.util.BuildViewTestCase; import com.google.devtools.build.lib.cmdline.RepositoryName; -import com.google.devtools.build.lib.skyframe.serialization.testutils.ObjectCodecTester; +import com.google.devtools.build.lib.skyframe.serialization.testutils.SerializationTester; import com.google.devtools.build.lib.testutil.Suite; import com.google.devtools.build.lib.testutil.TestSpec; import com.google.devtools.build.lib.vfs.FileSystem; @@ -140,16 +140,16 @@ public class MiddlemanActionTest extends BuildViewTestCase { @Test public void testCodec() throws Exception { - ObjectCodecTester.newBuilder(MiddlemanAction.CODEC) - .addSubjects((MiddlemanAction) getGeneratingAction(middle)) + new SerializationTester(getGeneratingAction(middle)) .addDependency(FileSystem.class, scratch.getFileSystem()) - .verificationFunction( - (first, second) -> { - assertThat(first.getActionType()).isEqualTo(second.getActionType()); - assertThat(first.getInputs()).isEqualTo(second.getInputs()); - assertThat(first.getOutputs()).isEqualTo(second.getOutputs()); - assertThat(first.getOwner()).isEqualTo(second.getOwner()); - }) - .buildAndRunTests(); + .setVerificationFunction(MiddlemanActionTest::verifyEquivalent) + .runTests(); + } + + private static void verifyEquivalent(MiddlemanAction first, MiddlemanAction second) { + assertThat(first.getActionType()).isEqualTo(second.getActionType()); + assertThat(first.getInputs()).isEqualTo(second.getInputs()); + assertThat(first.getOutputs()).isEqualTo(second.getOutputs()); + assertThat(first.getOwner()).isEqualTo(second.getOwner()); } } diff --git a/src/test/java/com/google/devtools/build/lib/rules/apple/AppleConfigurationSerializationTest.java b/src/test/java/com/google/devtools/build/lib/rules/apple/AppleConfigurationSerializationTest.java index 1de930eecd..e79ae57585 100644 --- a/src/test/java/com/google/devtools/build/lib/rules/apple/AppleConfigurationSerializationTest.java +++ b/src/test/java/com/google/devtools/build/lib/rules/apple/AppleConfigurationSerializationTest.java @@ -17,20 +17,22 @@ package com.google.devtools.build.lib.rules.apple; import com.google.common.collect.ImmutableList; import com.google.devtools.build.lib.analysis.config.BuildOptions; import com.google.devtools.build.lib.cmdline.Label; -import com.google.devtools.build.lib.skyframe.serialization.testutils.AbstractObjectCodecTest; +import com.google.devtools.build.lib.skyframe.serialization.testutils.SerializationTester; import com.google.devtools.common.options.OptionsParsingException; +import org.junit.Test; import org.junit.runner.RunWith; import org.junit.runners.JUnit4; /** Tests for serialization of {@link AppleConfiguration}. */ @RunWith(JUnit4.class) -public class AppleConfigurationSerializationTest - extends AbstractObjectCodecTest<AppleConfiguration> { - public AppleConfigurationSerializationTest() { - super(AppleConfiguration.CODEC, subject()); +public class AppleConfigurationSerializationTest { + + @Test + public void testCodec() throws Exception { + new SerializationTester(getSubjects()).runTests(); } - private static AppleConfiguration[] subject() { + private static ImmutableList<AppleConfiguration> getSubjects() { AppleCommandLineOptions firstOptions = new AppleCommandLineOptions(); firstOptions.mandatoryMinimumVersion = false; firstOptions.iosSdkVersion = DottedVersion.fromString("2.0"); @@ -59,15 +61,12 @@ public class AppleConfigurationSerializationTest firstOptions.targetUsesAppleCrosstool = true; firstOptions.xcodeVersion = "1.0"; try { - return new AppleConfiguration[] { - new AppleConfiguration( - firstOptions, - "iosCpuArg"), - AppleConfiguration.create( - BuildOptions.of(ImmutableList.of(AppleCommandLineOptions.class)) - .get(AppleCommandLineOptions.class), - "another cpu") - }; + return ImmutableList.of( + new AppleConfiguration(firstOptions, "iosCpuArg"), + AppleConfiguration.create( + BuildOptions.of(ImmutableList.of(AppleCommandLineOptions.class)) + .get(AppleCommandLineOptions.class), + "another cpu")); } catch (OptionsParsingException e) { throw new IllegalStateException(e); } diff --git a/src/test/java/com/google/devtools/build/lib/rules/config/ConfigSettingTest.java b/src/test/java/com/google/devtools/build/lib/rules/config/ConfigSettingTest.java index cfedf7bc91..985cc4a2cb 100644 --- a/src/test/java/com/google/devtools/build/lib/rules/config/ConfigSettingTest.java +++ b/src/test/java/com/google/devtools/build/lib/rules/config/ConfigSettingTest.java @@ -28,7 +28,6 @@ import com.google.devtools.build.lib.analysis.config.InvalidConfigurationExcepti import com.google.devtools.build.lib.analysis.util.BuildViewTestCase; import com.google.devtools.build.lib.cmdline.Label; import com.google.devtools.build.lib.packages.Rule; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.testutil.TestConstants; import com.google.devtools.build.lib.testutil.TestRuleClassProvider; @@ -50,9 +49,6 @@ public class ConfigSettingTest extends BuildViewTestCase { /** Test option that has its null default overridden by its fragment. */ @AutoCodec(strategy = AutoCodec.Strategy.PUBLIC_FIELDS) public static class LateBoundTestOptions extends FragmentOptions { - public static final ObjectCodec<LateBoundTestOptions> CODEC = - new ConfigSettingTest_LateBoundTestOptions_AutoCodec(); - public LateBoundTestOptions() {} @Option( @@ -66,9 +62,6 @@ public class ConfigSettingTest extends BuildViewTestCase { @AutoCodec static class LateBoundTestOptionsFragment extends BuildConfiguration.Fragment { - public static final ObjectCodec<LateBoundTestOptionsFragment> CODEC = - new ConfigSettingTest_LateBoundTestOptionsFragment_AutoCodec(); - @Override public Map<String, Object> lateBoundOptionDefaults() { return ImmutableMap.<String, Object>of("opt_with_default", "overridden"); @@ -96,9 +89,6 @@ public class ConfigSettingTest extends BuildViewTestCase { /** Test option which is private. */ @AutoCodec(strategy = AutoCodec.Strategy.PUBLIC_FIELDS) public static class InternalTestOptions extends FragmentOptions { - public static final ObjectCodec<InternalTestOptions> CODEC = - new ConfigSettingTest_InternalTestOptions_AutoCodec(); - public InternalTestOptions() {} @Option( @@ -113,8 +103,6 @@ public class ConfigSettingTest extends BuildViewTestCase { @AutoCodec static class InternalTestOptionsFragment extends BuildConfiguration.Fragment { - public static final ObjectCodec<InternalTestOptionsFragment> CODEC = - new ConfigSettingTest_InternalTestOptionsFragment_AutoCodec(); } private static class InternalTestOptionsLoader implements ConfigurationFragmentFactory { diff --git a/src/test/java/com/google/devtools/build/lib/rules/cpp/CcToolchainFeaturesTest.java b/src/test/java/com/google/devtools/build/lib/rules/cpp/CcToolchainFeaturesTest.java index d9a2422853..a857be4d72 100644 --- a/src/test/java/com/google/devtools/build/lib/rules/cpp/CcToolchainFeaturesTest.java +++ b/src/test/java/com/google/devtools/build/lib/rules/cpp/CcToolchainFeaturesTest.java @@ -34,7 +34,7 @@ import com.google.devtools.build.lib.rules.cpp.CcToolchainFeatures.Variables.Str import com.google.devtools.build.lib.rules.cpp.CcToolchainFeatures.Variables.StructureBuilder; import com.google.devtools.build.lib.rules.cpp.CcToolchainFeatures.Variables.VariableValue; import com.google.devtools.build.lib.rules.cpp.CcToolchainFeatures.Variables.VariableValueBuilder; -import com.google.devtools.build.lib.skyframe.serialization.testutils.ObjectCodecTester; +import com.google.devtools.build.lib.skyframe.serialization.testutils.SerializationTester; import com.google.devtools.build.lib.testutil.TestUtils; import com.google.devtools.build.lib.vfs.PathFragment; import com.google.devtools.build.lib.view.config.crosstool.CrosstoolConfig.CToolchain; @@ -142,9 +142,8 @@ public class CcToolchainFeaturesTest { "}") .getFeatureConfiguration(ImmutableSet.of("a")); - ObjectCodecTester.newBuilder(FeatureConfiguration.CODEC) - .addSubjects(emptyConfiguration, emptyFeatures, featuresWithFlags, featureWithEnvSet) - .buildAndRunTests(); + new SerializationTester(emptyConfiguration, emptyFeatures, featuresWithFlags, featureWithEnvSet) + .runTests(); } @Test diff --git a/src/test/java/com/google/devtools/build/lib/rules/cpp/MockCppSemantics.java b/src/test/java/com/google/devtools/build/lib/rules/cpp/MockCppSemantics.java index 2e2befec2f..cc268eb805 100644 --- a/src/test/java/com/google/devtools/build/lib/rules/cpp/MockCppSemantics.java +++ b/src/test/java/com/google/devtools/build/lib/rules/cpp/MockCppSemantics.java @@ -22,8 +22,7 @@ import com.google.devtools.build.lib.collect.nestedset.Order; import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable; import com.google.devtools.build.lib.rules.cpp.CcCompilationInfo.Builder; import com.google.devtools.build.lib.rules.cpp.CppConfiguration.HeadersCheckingMode; -import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; -import com.google.devtools.build.lib.skyframe.serialization.SingletonCodec; +import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; /** * Null-object like {@link CppSemantics} implementation. Only to be used in tests that don't depend @@ -31,10 +30,7 @@ import com.google.devtools.build.lib.skyframe.serialization.SingletonCodec; */ @Immutable public final class MockCppSemantics implements CppSemantics { - public static final MockCppSemantics INSTANCE = new MockCppSemantics(); - - public static final ObjectCodec<MockCppSemantics> CODEC = - SingletonCodec.of(INSTANCE, "MockCppSemantics"); + @AutoCodec public static final MockCppSemantics INSTANCE = new MockCppSemantics(); private MockCppSemantics() {} diff --git a/src/test/java/com/google/devtools/build/lib/skyframe/GlobDescriptorTest.java b/src/test/java/com/google/devtools/build/lib/skyframe/GlobDescriptorTest.java index d5174c53ba..eb62a85133 100644 --- a/src/test/java/com/google/devtools/build/lib/skyframe/GlobDescriptorTest.java +++ b/src/test/java/com/google/devtools/build/lib/skyframe/GlobDescriptorTest.java @@ -18,7 +18,7 @@ import static com.google.common.truth.Truth.assertThat; import com.google.devtools.build.lib.cmdline.LabelSyntaxException; import com.google.devtools.build.lib.cmdline.PackageIdentifier; import com.google.devtools.build.lib.skyframe.serialization.testutils.FsUtils; -import com.google.devtools.build.lib.skyframe.serialization.testutils.ObjectCodecTester; +import com.google.devtools.build.lib.skyframe.serialization.testutils.SerializationTester; import com.google.devtools.build.lib.vfs.FileSystem; import com.google.devtools.build.lib.vfs.PathFragment; import com.google.devtools.build.lib.vfs.Root; @@ -32,8 +32,7 @@ public class GlobDescriptorTest { @Test public void testSerialization() throws Exception { - ObjectCodecTester.newBuilder(GlobDescriptor.CODEC) - .addSubjects( + new SerializationTester( GlobDescriptor.create( PackageIdentifier.create("@foo", PathFragment.create("//bar")), Root.fromPath(FsUtils.TEST_FILESYSTEM.getPath("/packageRoot")), @@ -47,8 +46,12 @@ public class GlobDescriptorTest { "pattern", /*excludeDirs=*/ true)) .addDependency(FileSystem.class, FsUtils.TEST_FILESYSTEM) - .verificationFunction((orig, deserialized) -> assertThat(deserialized).isSameAs(orig)) - .buildAndRunTests(); + .setVerificationFunction(GlobDescriptorTest::verifyEquivalent) + .runTests(); + } + + private static void verifyEquivalent(GlobDescriptor orig, GlobDescriptor deserialized) { + assertThat(deserialized).isSameAs(orig); } @Test diff --git a/src/test/java/com/google/devtools/build/lib/skyframe/TreeArtifactBuildTest.java b/src/test/java/com/google/devtools/build/lib/skyframe/TreeArtifactBuildTest.java index b15782c030..a7b460261d 100644 --- a/src/test/java/com/google/devtools/build/lib/skyframe/TreeArtifactBuildTest.java +++ b/src/test/java/com/google/devtools/build/lib/skyframe/TreeArtifactBuildTest.java @@ -50,7 +50,7 @@ import com.google.devtools.build.lib.analysis.actions.SpawnActionTemplate; import com.google.devtools.build.lib.events.Event; import com.google.devtools.build.lib.events.EventKind; import com.google.devtools.build.lib.events.StoredEventHandler; -import com.google.devtools.build.lib.skyframe.serialization.testutils.ObjectCodecTester; +import com.google.devtools.build.lib.skyframe.serialization.testutils.SerializationTester; import com.google.devtools.build.lib.testutil.TestUtils; import com.google.devtools.build.lib.vfs.FileStatus; import com.google.devtools.build.lib.vfs.FileSystem; @@ -115,10 +115,9 @@ public class TreeArtifactBuildTest extends TimestampBuilderTestCase { @Test public void testCodec() throws Exception { - ObjectCodecTester.newBuilder(Artifact.CODEC) - .addSubjects(outOne, outOneFileOne) + new SerializationTester(outOne, outOneFileOne) .addDependency(FileSystem.class, scratch.getFileSystem()) - .buildAndRunTests(); + .runTests(); } /** Simple smoke test. If this isn't passing, something is very wrong... */ diff --git a/src/test/java/com/google/devtools/build/lib/skyframe/serialization/LabelCodecTest.java b/src/test/java/com/google/devtools/build/lib/skyframe/serialization/LabelCodecTest.java index b2a2d49619..745ad95edc 100644 --- a/src/test/java/com/google/devtools/build/lib/skyframe/serialization/LabelCodecTest.java +++ b/src/test/java/com/google/devtools/build/lib/skyframe/serialization/LabelCodecTest.java @@ -15,17 +15,17 @@ package com.google.devtools.build.lib.skyframe.serialization; import com.google.devtools.build.lib.cmdline.Label; -import com.google.devtools.build.lib.cmdline.LabelCodec; -import com.google.devtools.build.lib.cmdline.LabelSyntaxException; -import com.google.devtools.build.lib.skyframe.serialization.testutils.AbstractObjectCodecTest; +import com.google.devtools.build.lib.skyframe.serialization.testutils.SerializationTester; +import org.junit.Test; import org.junit.runner.RunWith; import org.junit.runners.JUnit4; -/** Basic tests for {@link LabelCodec}. */ +/** Basic tests for {@link Label}'s codec. */ @RunWith(JUnit4.class) -public class LabelCodecTest extends AbstractObjectCodecTest<Label> { +public class LabelCodecTest { - public LabelCodecTest() throws LabelSyntaxException { - super(new LabelCodec(), Label.parseAbsolute("//foo/bar:baz")); + @Test + public void testCodec() throws Exception { + new SerializationTester(Label.parseAbsolute("//foo/bar:baz")).runTests(); } } diff --git a/src/test/java/com/google/devtools/build/lib/skyframe/serialization/PackageIdentifierCodecTest.java b/src/test/java/com/google/devtools/build/lib/skyframe/serialization/PackageIdentifierCodecTest.java index a9c9ff7449..7556177cf3 100644 --- a/src/test/java/com/google/devtools/build/lib/skyframe/serialization/PackageIdentifierCodecTest.java +++ b/src/test/java/com/google/devtools/build/lib/skyframe/serialization/PackageIdentifierCodecTest.java @@ -15,18 +15,19 @@ package com.google.devtools.build.lib.skyframe.serialization; import com.google.devtools.build.lib.cmdline.PackageIdentifier; -import com.google.devtools.build.lib.cmdline.PackageIdentifierCodec; -import com.google.devtools.build.lib.skyframe.serialization.testutils.AbstractObjectCodecTest; +import com.google.devtools.build.lib.skyframe.serialization.testutils.SerializationTester; import com.google.devtools.build.lib.vfs.PathFragment; +import org.junit.Test; import org.junit.runner.RunWith; import org.junit.runners.JUnit4; -/** Basic tests for {@link PackageIdentifierCodec}. */ +/** Basic tests for {@link PackageIdentifier}'s codec. */ @RunWith(JUnit4.class) -public class PackageIdentifierCodecTest extends AbstractObjectCodecTest<PackageIdentifier> { +public class PackageIdentifierCodecTest { - public PackageIdentifierCodecTest() throws Exception { - super( - new PackageIdentifierCodec(), PackageIdentifier.create("@foo", PathFragment.create("bar"))); + @Test + public void testCodec() throws Exception { + new SerializationTester(PackageIdentifier.create("@foo", PathFragment.create("bar"))) + .runTests(); } } diff --git a/src/test/java/com/google/devtools/build/lib/syntax/LineNumberTableTest.java b/src/test/java/com/google/devtools/build/lib/syntax/LineNumberTableTest.java index df45f896d6..38f2957688 100644 --- a/src/test/java/com/google/devtools/build/lib/syntax/LineNumberTableTest.java +++ b/src/test/java/com/google/devtools/build/lib/syntax/LineNumberTableTest.java @@ -16,7 +16,7 @@ package com.google.devtools.build.lib.syntax; import static com.google.common.truth.Truth.assertThat; import com.google.devtools.build.lib.events.Location.LineAndColumn; -import com.google.devtools.build.lib.skyframe.serialization.testutils.ObjectCodecTester; +import com.google.devtools.build.lib.skyframe.serialization.testutils.SerializationTester; import com.google.devtools.build.lib.util.Pair; import com.google.devtools.build.lib.vfs.PathFragment; import org.junit.Test; @@ -86,8 +86,7 @@ public class LineNumberTableTest { @Test public void testCodec() throws Exception { - ObjectCodecTester.newBuilder(LineNumberTable.CODEC) - .addSubjects( + new SerializationTester( create( "#\n" + "#line 67 \"/foo\"\n" @@ -96,6 +95,6 @@ public class LineNumberTableTest { + "#line 23 \"/ba.r\"\n" + "vardef(x,y)\n"), create("\ntwo\nthree\n\nfive\n")) - .buildAndRunTests(); + .runTests(); } } diff --git a/src/test/java/com/google/devtools/build/lib/util/RegexFilterTest.java b/src/test/java/com/google/devtools/build/lib/util/RegexFilterTest.java index f74e28b757..2325487593 100644 --- a/src/test/java/com/google/devtools/build/lib/util/RegexFilterTest.java +++ b/src/test/java/com/google/devtools/build/lib/util/RegexFilterTest.java @@ -19,7 +19,7 @@ import static org.junit.Assert.fail; import com.google.common.collect.ImmutableList; import com.google.common.testing.EqualsTester; -import com.google.devtools.build.lib.skyframe.serialization.testutils.ObjectCodecTester; +import com.google.devtools.build.lib.skyframe.serialization.testutils.SerializationTester; import com.google.devtools.common.options.OptionsParsingException; import org.junit.Test; import org.junit.runner.RunWith; @@ -149,8 +149,7 @@ public class RegexFilterTest { @Test public void codec() throws Exception { - ObjectCodecTester.newBuilder(RegexFilter.CODEC) - .addSubjects( + new SerializationTester( ImmutableList.of( "", "a/b,+^c,_test$", @@ -160,6 +159,6 @@ public class RegexFilterTest { .stream() .map(RegexFilterTest::safeCreateFilter) .collect(toImmutableList())) - .buildAndRunTests(); + .runTests(); } } diff --git a/src/test/java/com/google/devtools/build/lib/vfs/PathFragmentTest.java b/src/test/java/com/google/devtools/build/lib/vfs/PathFragmentTest.java index 9470604fb9..6122aba283 100644 --- a/src/test/java/com/google/devtools/build/lib/vfs/PathFragmentTest.java +++ b/src/test/java/com/google/devtools/build/lib/vfs/PathFragmentTest.java @@ -21,7 +21,7 @@ import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableSet; import com.google.common.collect.Lists; import com.google.common.testing.EqualsTester; -import com.google.devtools.build.lib.skyframe.serialization.testutils.ObjectCodecTester; +import com.google.devtools.build.lib.skyframe.serialization.testutils.SerializationTester; import com.google.devtools.build.lib.testutil.MoreAsserts; import com.google.devtools.build.lib.testutil.TestUtils; import com.google.devtools.build.lib.vfs.inmemoryfs.InMemoryFileSystem; @@ -546,13 +546,12 @@ public class PathFragmentTest { @Test public void testCodec() throws Exception { - ObjectCodecTester.newBuilder(PathFragment.CODEC) - .addSubjects( + new SerializationTester( ImmutableList.of("", "a", "/foo", "foo/bar/baz", "/a/path/fragment/with/lots/of/parts") .stream() .map(PathFragment::create) .collect(toImmutableList())) - .buildAndRunTests(); + .runTests(); } @Test diff --git a/src/test/java/com/google/devtools/build/lib/vfs/RootTest.java b/src/test/java/com/google/devtools/build/lib/vfs/RootTest.java index 3588b381cb..dd0f611b1a 100644 --- a/src/test/java/com/google/devtools/build/lib/vfs/RootTest.java +++ b/src/test/java/com/google/devtools/build/lib/vfs/RootTest.java @@ -18,7 +18,7 @@ import static com.google.common.truth.Truth.assertThat; import com.google.common.collect.Lists; import com.google.common.testing.EqualsTester; import com.google.devtools.build.lib.clock.BlazeClock; -import com.google.devtools.build.lib.skyframe.serialization.testutils.ObjectCodecTester; +import com.google.devtools.build.lib.skyframe.serialization.testutils.SerializationTester; import com.google.devtools.build.lib.testutil.MoreAsserts; import com.google.devtools.build.lib.vfs.inmemoryfs.InMemoryFileSystem; import java.util.Comparator; @@ -97,10 +97,8 @@ public class RootTest { @Test public void testSerialization() throws Exception { - ObjectCodecTester.newBuilder(Root.CODEC) - .addSubjects(Root.absoluteRoot(fs), Root.fromPath(fs.getPath("/foo"))) + new SerializationTester(Root.absoluteRoot(fs), Root.fromPath(fs.getPath("/foo"))) .addDependency(FileSystem.class, fs) - .skipBadDataTest() - .buildAndRunTests(); + .runTests(); } } |