diff --git a/src/main/java/com/google/devtools/build/lib/bazel/bzlmod/LockFileModuleExtension.java b/src/main/java/com/google/devtools/build/lib/bazel/bzlmod/LockFileModuleExtension.java index 36cad282465055..1b5eb71d60c35b 100644 --- a/src/main/java/com/google/devtools/build/lib/bazel/bzlmod/LockFileModuleExtension.java +++ b/src/main/java/com/google/devtools/build/lib/bazel/bzlmod/LockFileModuleExtension.java @@ -29,6 +29,13 @@ @GenerateTypeAdapter public abstract class LockFileModuleExtension implements Postable { + public static Builder builder() { + return new AutoValue_LockFileModuleExtension.Builder() + // TODO(salmasamy) can be removed when updating lockfile version + .setEnvVariables(ImmutableMap.of()) + .setAccumulatedFileDigests(ImmutableMap.of()); + } + @SuppressWarnings("mutable") public abstract byte[] getBzlTransitiveDigest(); @@ -38,12 +45,20 @@ public abstract class LockFileModuleExtension implements Postable { public abstract ImmutableMap getGeneratedRepoSpecs(); - public static LockFileModuleExtension create( - byte[] transitiveDigest, - ImmutableMap accumulatedFileDigests, - ImmutableMap envVariables, - ImmutableMap generatedRepoSpecs) { - return new AutoValue_LockFileModuleExtension( - transitiveDigest, accumulatedFileDigests, envVariables, generatedRepoSpecs); + public abstract Builder toBuilder(); + + /** Builder type for {@link LockFileModuleExtension}. */ + @AutoValue.Builder + public abstract static class Builder { + + public abstract Builder setBzlTransitiveDigest(byte[] digest); + + public abstract Builder setAccumulatedFileDigests(ImmutableMap value); + + public abstract Builder setEnvVariables(ImmutableMap value); + + public abstract Builder setGeneratedRepoSpecs(ImmutableMap value); + + public abstract LockFileModuleExtension build(); } } diff --git a/src/main/java/com/google/devtools/build/lib/bazel/bzlmod/SingleExtensionEvalFunction.java b/src/main/java/com/google/devtools/build/lib/bazel/bzlmod/SingleExtensionEvalFunction.java index 6714d12c4f2544..7f56efc2340aa4 100644 --- a/src/main/java/com/google/devtools/build/lib/bazel/bzlmod/SingleExtensionEvalFunction.java +++ b/src/main/java/com/google/devtools/build/lib/bazel/bzlmod/SingleExtensionEvalFunction.java @@ -198,11 +198,12 @@ public SkyValue compute(SkyKey skyKey, Environment env) .post( ModuleExtensionResolutionEvent.create( extensionId, - LockFileModuleExtension.create( - bzlTransitiveDigest, - moduleExtensionResult.getAccumulatedFileDigests(), - extensionEnvVars, - generatedRepoSpecs))); + LockFileModuleExtension.builder() + .setBzlTransitiveDigest(bzlTransitiveDigest) + .setAccumulatedFileDigests(moduleExtensionResult.getAccumulatedFileDigests()) + .setEnvVariables(extensionEnvVars) + .setGeneratedRepoSpecs(generatedRepoSpecs) + .build())); } return createSingleExtentionValue(generatedRepoSpecs, usagesValue); }