Updating SingleJarActionBuilder.createSourceJarAction to take NestedSet for sources rather than ImmutableList.

RELNOTES: None
PiperOrigin-RevId: 231877095
diff --git a/src/main/java/com/google/devtools/build/lib/rules/java/JavaBinary.java b/src/main/java/com/google/devtools/build/lib/rules/java/JavaBinary.java
index 50305f1..988be2b 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/java/JavaBinary.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/java/JavaBinary.java
@@ -315,7 +315,7 @@
     SingleJarActionBuilder.createSourceJarAction(
         ruleContext,
         semantics,
-        ImmutableList.of(),
+        NestedSetBuilder.<Artifact>emptySet(Order.STABLE_ORDER),
         transitiveSourceJars,
         ruleContext.getImplicitOutputArtifact(JavaSemantics.JAVA_BINARY_DEPLOY_SOURCE_JAR));
 
diff --git a/src/main/java/com/google/devtools/build/lib/rules/java/JavaCompilationHelper.java b/src/main/java/com/google/devtools/build/lib/rules/java/JavaCompilationHelper.java
index 9d41fd9..551f9db 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/java/JavaCompilationHelper.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/java/JavaCompilationHelper.java
@@ -677,7 +677,7 @@
         ruleContext,
         ruleContext,
         semantics,
-        attributes.getSourceFiles(),
+        NestedSetBuilder.<Artifact>wrap(Order.STABLE_ORDER, attributes.getSourceFiles()),
         resourceJars.build(),
         outputJar,
         javaToolchainProvider,
@@ -692,7 +692,11 @@
       resourceJars.add(gensrcJar);
     }
     SingleJarActionBuilder.createSourceJarAction(
-        ruleContext, semantics, attributes.getSourceFiles(), resourceJars.build(), outputJar);
+        ruleContext,
+        semantics,
+        NestedSetBuilder.<Artifact>wrap(Order.STABLE_ORDER, attributes.getSourceFiles()),
+        resourceJars.build(),
+        outputJar);
   }
 
   /**
diff --git a/src/main/java/com/google/devtools/build/lib/rules/java/JavaInfoBuildHelper.java b/src/main/java/com/google/devtools/build/lib/rules/java/JavaInfoBuildHelper.java
index d89f5d4..b30c6c9 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/java/JavaInfoBuildHelper.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/java/JavaInfoBuildHelper.java
@@ -277,8 +277,8 @@
         actionRegistry,
         actions.getActionConstructionContext(),
         javaSemantics,
-        ImmutableList.copyOf(sourceFiles),
-        NestedSetBuilder.<Artifact>stableOrder().addAll(sourceJars).build(),
+        NestedSetBuilder.<Artifact>wrap(Order.STABLE_ORDER, sourceFiles),
+        NestedSetBuilder.<Artifact>wrap(Order.STABLE_ORDER, sourceJars),
         outputSrcJar,
         javaToolchainProvider,
         javaRuntimeInfo);
diff --git a/src/main/java/com/google/devtools/build/lib/rules/java/SingleJarActionBuilder.java b/src/main/java/com/google/devtools/build/lib/rules/java/SingleJarActionBuilder.java
index 10e7d6d..3d258ea 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/java/SingleJarActionBuilder.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/java/SingleJarActionBuilder.java
@@ -16,7 +16,6 @@
 import static java.util.Objects.requireNonNull;
 
 import com.google.common.base.Preconditions;
-import com.google.common.collect.ImmutableCollection;
 import com.google.common.collect.ImmutableList;
 import com.google.devtools.build.lib.actions.ActionRegistry;
 import com.google.devtools.build.lib.actions.Artifact;
@@ -31,6 +30,8 @@
 import com.google.devtools.build.lib.analysis.actions.CustomCommandLine.VectorArg;
 import com.google.devtools.build.lib.analysis.actions.SpawnAction;
 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.autocodec.AutoCodec;
 import java.util.function.Consumer;
@@ -76,7 +77,7 @@
   public static void createSourceJarAction(
       RuleContext ruleContext,
       JavaSemantics semantics,
-      ImmutableCollection<Artifact> resources,
+      NestedSet<Artifact> resources,
       NestedSet<Artifact> resourceJars,
       Artifact outputJar) {
     createSourceJarAction(
@@ -105,7 +106,7 @@
       ActionRegistry actionRegistry,
       ActionConstructionContext actionConstructionContext,
       JavaSemantics semantics,
-      ImmutableCollection<Artifact> resources,
+      NestedSet<Artifact> resources,
       NestedSet<Artifact> resourceJars,
       Artifact outputJar,
       JavaToolchainProvider toolchainProvider,
@@ -147,7 +148,10 @@
             .addInputs(jars)
             .addCommandLine(
                 sourceJarCommandLine(
-                    output, /* semantics= */ null, /* resources= */ ImmutableList.of(), jars),
+                    output,
+                    /* semantics= */ null,
+                    /* resources= */ NestedSetBuilder.<Artifact>emptySet(Order.STABLE_ORDER),
+                    jars),
                 ParamFileInfo.builder(ParameterFileType.SHELL_QUOTED).setUseAlways(true).build())
             .setProgressMessage("Building singlejar jar %s", output.prettyPrint())
             .setMnemonic("JavaSingleJar");
@@ -157,7 +161,7 @@
   private static CommandLine sourceJarCommandLine(
       Artifact outputJar,
       JavaSemantics semantics,
-      ImmutableCollection<Artifact> resources,
+      NestedSet<Artifact> resources,
       NestedSet<Artifact> resourceJars) {
     CustomCommandLine.Builder args = CustomCommandLine.builder();
     args.addExecPath("--output", outputJar);