Merge "Demote NullArgumentForNonNullParameter to a warning"
diff --git a/java/com/google/gerrit/server/change/AddReviewersOp.java b/java/com/google/gerrit/server/change/AddReviewersOp.java
index 6851004..43598e4 100644
--- a/java/com/google/gerrit/server/change/AddReviewersOp.java
+++ b/java/com/google/gerrit/server/change/AddReviewersOp.java
@@ -82,7 +82,7 @@
   private final Collection<Address> addresses;
   private final ReviewerState state;
   private final boolean forGroup;
-  private boolean allowDowngradeToCC = true;
+  private boolean allowDowngradeToCc = true;
 
   // Unlike addedCCs, addedReviewers is a PatchSetApproval because the ReviewerResult returned
   // via the REST API is supposed to include vote information.
@@ -119,8 +119,8 @@
     this.forGroup = forGroup;
   }
 
-  public void setAllowDowngradeToCC(boolean allowDowngradeToCC) {
-    this.allowDowngradeToCC = allowDowngradeToCC;
+  public void setAllowDowngradeToCc(boolean allowDowngradeToCc) {
+    this.allowDowngradeToCc = allowDowngradeToCc;
   }
 
   @Override
@@ -138,7 +138,7 @@
                 ctx.getNotes(),
                 ctx.getUpdate(change.currentPatchSetId()),
                 accountIds,
-                forGroup || !allowDowngradeToCC);
+                forGroup || !allowDowngradeToCc);
       } else {
         addedReviewers =
             approvalsUtil.addReviewers(
diff --git a/java/com/google/gerrit/server/change/ReviewerModifier.java b/java/com/google/gerrit/server/change/ReviewerModifier.java
index 68e7d90..8fdb888 100644
--- a/java/com/google/gerrit/server/change/ReviewerModifier.java
+++ b/java/com/google/gerrit/server/change/ReviewerModifier.java
@@ -136,7 +136,7 @@
      *
      * <p>If false, and the account is already a REVIEWER, the state will remain REVIEWER.
      */
-    public boolean allowDowngradeToCC = true;
+    public boolean allowDowngradeToCc = true;
   }
 
   public static InternalReviewerInput newReviewerInput(
@@ -171,7 +171,7 @@
     // Automatic addition of author/committer as CC is an implicit system action on push.
     // Preserve existing REVIEWER status so implicit auto-CC does not demote explicitly assigned
     // reviewers.
-    in.allowDowngradeToCC = false;
+    in.allowDowngradeToCc = false;
     return Optional.of(in);
   }
 
@@ -538,9 +538,8 @@
                 this.reviewersByEmail,
                 state(),
                 forGroup);
-        if (input instanceof InternalReviewerInput) {
-          ((AddReviewersOp) op)
-              .setAllowDowngradeToCC(((InternalReviewerInput) input).allowDowngradeToCC);
+        if (input instanceof InternalReviewerInput internalInput) {
+          ((AddReviewersOp) op).setAllowDowngradeToCc(internalInput.allowDowngradeToCc);
         }
       }
       this.exactMatchFound = exactMatchFound;
diff --git a/java/com/google/gerrit/server/git/WorkQueue.java b/java/com/google/gerrit/server/git/WorkQueue.java
index 6209854..2b3bdba 100644
--- a/java/com/google/gerrit/server/git/WorkQueue.java
+++ b/java/com/google/gerrit/server/git/WorkQueue.java
@@ -995,11 +995,11 @@
     private void setThreadName(String oldThreadName) {
       try {
         Thread.currentThread().setName(oldThreadName + "[" + this + "]");
-      } catch (Exception e) {
+      } catch (RuntimeException e) {
         logger.atWarning().withCause(e).log("Cannot describe task");
         try {
           Thread.currentThread().setName(oldThreadName + "[" + runnable.getClass().getName() + "]");
-        } catch (Exception e2) {
+        } catch (RuntimeException e2) {
           logger.atWarning().withCause(e2).log("Cannot get runnable class name");
           Thread.currentThread().setName(oldThreadName + "[unknown task]");
         }
diff --git a/javatests/com/google/gerrit/acceptance/pgm/MigrateLabelFunctionsToSubmitRequirementIT.java b/javatests/com/google/gerrit/acceptance/pgm/MigrateLabelFunctionsToSubmitRequirementIT.java
index 4e871bb..e695254 100644
--- a/javatests/com/google/gerrit/acceptance/pgm/MigrateLabelFunctionsToSubmitRequirementIT.java
+++ b/javatests/com/google/gerrit/acceptance/pgm/MigrateLabelFunctionsToSubmitRequirementIT.java
@@ -321,7 +321,7 @@
     assertThat(updateUI.existingSrsMismatchingWithMigration).isEqualTo(0);
 
     assertExistentSr(
-        /* srName */ "Foo",
+        /* srName= */ "Foo",
         /* applicabilityExpression= */ "branch:\"refs/heads/gerr\\\"it\"",
         /* submittabilityExpression= */ "label:Foo=MAX AND -label:Foo=MIN",
         /* canOverride= */ true);
@@ -343,7 +343,7 @@
     assertThat(updateUI.existingSrsMismatchingWithMigration).isEqualTo(0);
 
     assertExistentSr(
-        /* srName */ "Foo",
+        /* srName= */ "Foo",
         /* applicabilityExpression= */ "branch:\"refs/heads/gerr#it\"",
         /* submittabilityExpression= */ "label:Foo=MAX AND -label:Foo=MIN",
         /* canOverride= */ true);
@@ -365,7 +365,7 @@
     assertThat(updateUI.existingSrsMismatchingWithMigration).isEqualTo(0);
 
     assertExistentSr(
-        /* srName */ "Foo",
+        /* srName= */ "Foo",
         /* applicabilityExpression= */ "branch:^refs/heads/main-.*",
         /* submittabilityExpression= */ "label:Foo=MAX AND -label:Foo=MIN",
         /* canOverride= */ true);
@@ -387,7 +387,7 @@
     assertThat(updateUI.existingSrsMismatchingWithMigration).isEqualTo(0);
 
     assertExistentSr(
-        /* srName */ "Foo",
+        /* srName= */ "Foo",
         /* applicabilityExpression= */ "branch:^\\Qrefs/heads/release/\\E.*",
         /* submittabilityExpression= */ "label:Foo=MAX AND -label:Foo=MIN",
         /* canOverride= */ true);
diff --git a/javatests/com/google/gerrit/acceptance/server/project/ProjectWatchIT.java b/javatests/com/google/gerrit/acceptance/server/project/ProjectWatchIT.java
index 8de3382..2f85c88 100644
--- a/javatests/com/google/gerrit/acceptance/server/project/ProjectWatchIT.java
+++ b/javatests/com/google/gerrit/acceptance/server/project/ProjectWatchIT.java
@@ -27,11 +27,16 @@
 import com.google.gerrit.acceptance.testsuite.request.RequestScopeOperations;
 import com.google.gerrit.entities.AccountGroup;
 import com.google.gerrit.entities.Address;
+import com.google.gerrit.entities.BooleanProjectConfig;
 import com.google.gerrit.entities.NotifyConfig;
 import com.google.gerrit.entities.NotifyConfig.NotifyType;
 import com.google.gerrit.entities.Permission;
 import com.google.gerrit.entities.Project;
+import com.google.gerrit.extensions.api.changes.NotifyHandling;
 import com.google.gerrit.extensions.api.changes.ReviewInput;
+import com.google.gerrit.extensions.api.changes.ReviewerInput;
+import com.google.gerrit.extensions.client.InheritableBoolean;
+import com.google.gerrit.extensions.client.ReviewerState;
 import com.google.gerrit.extensions.common.ChangeInput;
 import com.google.gerrit.extensions.common.GroupInfo;
 import com.google.gerrit.testing.FakeEmailSender.Message;
@@ -768,7 +773,7 @@
     input.branch = "master";
     input.subject = "wip change";
     input.workInProgress = true;
-    input.notify = com.google.gerrit.extensions.api.changes.NotifyHandling.ALL;
+    input.notify = NotifyHandling.ALL;
     gApi.changes().create(input);
 
     assertThat(sender.getMessages()).hasSize(1);
@@ -783,8 +788,7 @@
           .updateProject(
               b ->
                   b.setBooleanConfig(
-                      com.google.gerrit.entities.BooleanProjectConfig.WORK_IN_PROGRESS_BY_DEFAULT,
-                      com.google.gerrit.extensions.client.InheritableBoolean.TRUE));
+                      BooleanProjectConfig.WORK_IN_PROGRESS_BY_DEFAULT, InheritableBoolean.TRUE));
       u.save();
     }
     requestScopeOperations.setApiUser(user.id());
@@ -824,10 +828,9 @@
     requestScopeOperations.setApiUser(user2.id());
     watch(watchedProject);
     requestScopeOperations.setApiUser(admin.id());
-    com.google.gerrit.extensions.api.changes.ReviewerInput ccInput =
-        new com.google.gerrit.extensions.api.changes.ReviewerInput();
+    ReviewerInput ccInput = new ReviewerInput();
     ccInput.reviewer = user2.email();
-    ccInput.state = com.google.gerrit.extensions.client.ReviewerState.CC;
+    ccInput.state = ReviewerState.CC;
     gApi.changes().id(changeId).addReviewer(ccInput);
     assertThat(sender.getMessages()).isEmpty();
   }