Fix Java code clarity and Error Prone warnings.

Change-Id: I04e66fc6ebdc227f8058d969a0f46aa1de46c0c5
diff --git a/java/com/google/gerrit/extensions/api/changes/ChangeApi.java b/java/com/google/gerrit/extensions/api/changes/ChangeApi.java
index 3b3a5fc..3364fc1 100644
--- a/java/com/google/gerrit/extensions/api/changes/ChangeApi.java
+++ b/java/com/google/gerrit/extensions/api/changes/ChangeApi.java
@@ -339,7 +339,7 @@
    * @return comments as a list; comments have the {@code revision} field set to indicate their
    *     patch set.
    * @throws RestApiException
-   * @deprecate Callers should use {@link #commentsRequest()} instead
+   * @deprecated Callers should use {@link #commentsRequest()} instead
    */
   @Deprecated
   default List<CommentInfo> commentsAsList() throws RestApiException {
@@ -351,7 +351,6 @@
    *
    * @return A {@link CommentsRequest} entity that can be used to retrieve the comments using the
    *     {@link CommentsRequest#get()} or {@link CommentsRequest#getAsList()}.
-   * @throws RestApiException
    */
   CommentsRequest commentsRequest() throws RestApiException;
 
@@ -429,7 +428,6 @@
      *
      * @return comments as a list; comments have the {@code revision} field set to indicate their
      *     patch set.
-     * @throws RestApiException
      */
     public abstract List<CommentInfo> getAsList() throws RestApiException;
 
diff --git a/java/com/google/gerrit/server/CommentContextLoader.java b/java/com/google/gerrit/server/CommentContextLoader.java
index 813dad7..7f84693 100644
--- a/java/com/google/gerrit/server/CommentContextLoader.java
+++ b/java/com/google/gerrit/server/CommentContextLoader.java
@@ -55,7 +55,7 @@
   }
 
   @Inject
-  public CommentContextLoader(GitRepositoryManager repoManager, @Assisted Project.NameKey project) {
+  CommentContextLoader(GitRepositoryManager repoManager, @Assisted Project.NameKey project) {
     this.repoManager = repoManager;
     this.project = project;
     this.candidates = new HashMap<>();
diff --git a/java/com/google/gerrit/server/restapi/change/ListChangeComments.java b/java/com/google/gerrit/server/restapi/change/ListChangeComments.java
index fec7bdc..e3b433c 100644
--- a/java/com/google/gerrit/server/restapi/change/ListChangeComments.java
+++ b/java/com/google/gerrit/server/restapi/change/ListChangeComments.java
@@ -26,7 +26,6 @@
 import com.google.gerrit.extensions.restapi.Response;
 import com.google.gerrit.extensions.restapi.RestReadView;
 import com.google.gerrit.server.ChangeMessagesUtil;
-import com.google.gerrit.server.CommentContextLoader;
 import com.google.gerrit.server.CommentsUtil;
 import com.google.gerrit.server.change.ChangeResource;
 import com.google.gerrit.server.permissions.PermissionBackendException;
@@ -42,7 +41,6 @@
   private final ChangeData.Factory changeDataFactory;
   private final Provider<CommentJson> commentJson;
   private final CommentsUtil commentsUtil;
-  private final CommentContextLoader.Factory commentContextFactory;
 
   private boolean includeContext;
 
@@ -62,13 +60,11 @@
       ChangeData.Factory changeDataFactory,
       Provider<CommentJson> commentJson,
       CommentsUtil commentsUtil,
-      ChangeMessagesUtil changeMessagesUtil,
-      CommentContextLoader.Factory commentContextFactory) {
+      ChangeMessagesUtil changeMessagesUtil) {
     this.changeDataFactory = changeDataFactory;
     this.commentJson = commentJson;
     this.commentsUtil = commentsUtil;
     this.changeMessagesUtil = changeMessagesUtil;
-    this.commentContextFactory = commentContextFactory;
   }
 
   @Override
diff --git a/java/com/google/gerrit/server/submit/ConfiguredSubscriptionGraphFactory.java b/java/com/google/gerrit/server/submit/ConfiguredSubscriptionGraphFactory.java
index d9ef03b..00e2443 100644
--- a/java/com/google/gerrit/server/submit/ConfiguredSubscriptionGraphFactory.java
+++ b/java/com/google/gerrit/server/submit/ConfiguredSubscriptionGraphFactory.java
@@ -23,7 +23,7 @@
 import org.eclipse.jgit.lib.Config;
 
 /**
- * Wrap a (@link {@link SubscriptionGraph.Factory} to honor the gerrit configuration.
+ * Wrap a {@link SubscriptionGraph.Factory} to honor the gerrit configuration.
  *
  * <p>If superproject subscriptions are disabled in the conf, return an empty graph.
  */
diff --git a/java/com/google/gerrit/server/submit/MergeOp.java b/java/com/google/gerrit/server/submit/MergeOp.java
index b304dd0..8d3324f 100644
--- a/java/com/google/gerrit/server/submit/MergeOp.java
+++ b/java/com/google/gerrit/server/submit/MergeOp.java
@@ -227,7 +227,6 @@
   private final Provider<InternalChangeQuery> queryProvider;
   private final SubmitStrategyFactory submitStrategyFactory;
   private final SubscriptionGraph.Factory subscriptionGraphFactory;
-  private final SubmoduleOp.Factory subOpFactory;
   private final SubmoduleCommits.Factory submoduleCommitsFactory;
   private final Provider<MergeOpRepoManager> ormProvider;
   private final NotifyResolver notifyResolver;
@@ -260,7 +259,6 @@
       SubmitStrategyFactory submitStrategyFactory,
       SubmoduleCommits.Factory submoduleCommitsFactory,
       SubscriptionGraph.Factory subscriptionGraphFactory,
-      SubmoduleOp.Factory subOpFactory,
       Provider<MergeOpRepoManager> ormProvider,
       NotifyResolver notifyResolver,
       TopicMetrics topicMetrics,
@@ -275,7 +273,6 @@
     this.submitStrategyFactory = submitStrategyFactory;
     this.submoduleCommitsFactory = submoduleCommitsFactory;
     this.subscriptionGraphFactory = subscriptionGraphFactory;
-    this.subOpFactory = subOpFactory;
     this.ormProvider = ormProvider;
     this.notifyResolver = notifyResolver;
     this.retryHelper = retryHelper;
@@ -754,7 +751,7 @@
     @Nullable
     abstract SubmitType submitType();
 
-    abstract Set<CodeReviewCommit> commits();
+    abstract ImmutableSet<CodeReviewCommit> commits();
   }
 
   private BranchBatch validateChangeList(OpenRepo or, Collection<ChangeData> submitted) {
@@ -869,7 +866,7 @@
       toSubmit.add(commit);
     }
     logger.atFine().log("Submitting on this run: %s", toSubmit);
-    return new AutoValue_MergeOp_BranchBatch(submitType, toSubmit);
+    return new AutoValue_MergeOp_BranchBatch(submitType, ImmutableSet.copyOf(toSubmit));
   }
 
   private SetMultimap<ObjectId, PatchSet.Id> getRevisions(OpenRepo or, Collection<ChangeData> cds) {
diff --git a/javatests/com/google/gerrit/acceptance/server/change/CommentsIT.java b/javatests/com/google/gerrit/acceptance/server/change/CommentsIT.java
index 72453fd..903ce1a 100644
--- a/javatests/com/google/gerrit/acceptance/server/change/CommentsIT.java
+++ b/javatests/com/google/gerrit/acceptance/server/change/CommentsIT.java
@@ -1775,7 +1775,7 @@
   }
 
   private void addComment(PushOneCommit.Result r, String message) throws Exception {
-    addComment(r, message, false, false, null, 1, null);
+    addComment(r, message, false, false, null, null, null);
   }
 
   private void addCommentOnLine(PushOneCommit.Result r, String message, int line) throws Exception {
@@ -1801,7 +1801,7 @@
       Boolean unresolved,
       String inReplyTo)
       throws Exception {
-    addComment(r, message, omitDuplicateComments, unresolved, inReplyTo, 1, null);
+    addComment(r, message, omitDuplicateComments, unresolved, inReplyTo, null, null);
   }
 
   private void addComment(
@@ -1814,7 +1814,7 @@
       Comment.Range range)
       throws Exception {
     CommentInput c = new CommentInput();
-    c.line = 1;
+    c.line = line == null ? 1 : line;
     c.message = message;
     c.path = FILE_NAME;
     c.unresolved = unresolved;
diff --git a/javatests/com/google/gerrit/server/submit/SubmoduleCommitsTest.java b/javatests/com/google/gerrit/server/submit/SubmoduleCommitsTest.java
index d41455e..313e697 100644
--- a/javatests/com/google/gerrit/server/submit/SubmoduleCommitsTest.java
+++ b/javatests/com/google/gerrit/server/submit/SubmoduleCommitsTest.java
@@ -18,7 +18,6 @@
 import static com.google.common.truth.Truth.assertWithMessage;
 import static com.google.common.truth.Truth8.assertThat;
 import static org.mockito.ArgumentMatchers.any;
-import static org.mockito.Mockito.mock;
 import static org.mockito.Mockito.when;
 
 import com.google.common.collect.ImmutableList;
@@ -53,8 +52,11 @@
 import org.eclipse.jgit.lib.Repository;
 import org.eclipse.jgit.revwalk.RevCommit;
 import org.eclipse.jgit.revwalk.RevWalk;
+import org.junit.Rule;
 import org.junit.Test;
 import org.mockito.Mock;
+import org.mockito.junit.MockitoJUnit;
+import org.mockito.junit.MockitoRule;
 
 public class SubmoduleCommitsTest {
 
@@ -67,8 +69,9 @@
   private InMemoryRepositoryManager repoManager = new InMemoryRepositoryManager();
   private MergeOpRepoManager mergeOpRepoManager;
 
-  @Mock ProjectCache mockProjectCache = mock(ProjectCache.class);
-  @Mock ProjectState mockProjectState = mock(ProjectState.class);
+  @Rule public final MockitoRule mockito = MockitoJUnit.rule();
+  @Mock private ProjectCache mockProjectCache;
+  @Mock private ProjectState mockProjectState;
 
   @Test
   public void createGitlinksCommit_subprojectMoved() throws Exception {