Document GarbageCollection classes
Change-Id: I7f6bf464d62e7151b5c2fbc5ea4e58dd7ad3a2ae
diff --git a/java/com/google/gerrit/common/data/GarbageCollectionResult.java b/java/com/google/gerrit/common/data/GarbageCollectionResult.java
index 5ed0158..5e3601e 100644
--- a/java/com/google/gerrit/common/data/GarbageCollectionResult.java
+++ b/java/com/google/gerrit/common/data/GarbageCollectionResult.java
@@ -18,6 +18,7 @@
import java.util.ArrayList;
import java.util.List;
+/** A list of errors occurred during GC. */
public class GarbageCollectionResult {
protected List<Error> errors;
diff --git a/java/com/google/gerrit/server/git/GarbageCollection.java b/java/com/google/gerrit/server/git/GarbageCollection.java
index 090d439..9b52f48 100644
--- a/java/com/google/gerrit/server/git/GarbageCollection.java
+++ b/java/com/google/gerrit/server/git/GarbageCollection.java
@@ -16,6 +16,7 @@
import com.google.common.collect.Sets;
import com.google.common.flogger.FluentLogger;
+import com.google.gerrit.common.Nullable;
import com.google.gerrit.common.data.GarbageCollectionResult;
import com.google.gerrit.entities.Project;
import com.google.gerrit.extensions.events.GarbageCollectorListener;
@@ -37,6 +38,7 @@
import org.eclipse.jgit.lib.TextProgressMonitor;
import org.eclipse.jgit.storage.pack.PackConfig;
+/** Serial execution of GC on a list of repositories. */
public class GarbageCollection {
private static final FluentLogger logger = FluentLogger.forEnclosingClass();
@@ -69,8 +71,9 @@
return run(projectNames, gcConfig.isAggressive(), writer);
}
+ /** Runs GC on the given projects, serially. Progress is written to writer if non-null. */
public GarbageCollectionResult run(
- List<Project.NameKey> projectNames, boolean aggressive, PrintWriter writer) {
+ List<Project.NameKey> projectNames, boolean aggressive, @Nullable PrintWriter writer) {
GarbageCollectionResult result = new GarbageCollectionResult();
Set<Project.NameKey> projectsToGc = gcQueue.addAll(projectNames);
for (Project.NameKey projectName :
diff --git a/java/com/google/gerrit/server/git/GarbageCollectionQueue.java b/java/com/google/gerrit/server/git/GarbageCollectionQueue.java
index e3a923b..5df9ab5 100644
--- a/java/com/google/gerrit/server/git/GarbageCollectionQueue.java
+++ b/java/com/google/gerrit/server/git/GarbageCollectionQueue.java
@@ -21,6 +21,7 @@
import java.util.HashSet;
import java.util.Set;
+/** A thread-safe list of projects scheduled for GC. */
@Singleton
public class GarbageCollectionQueue {
private final Set<Project.NameKey> projectsScheduledForGc = new HashSet<>();
diff --git a/java/com/google/gerrit/server/restapi/project/GarbageCollect.java b/java/com/google/gerrit/server/restapi/project/GarbageCollect.java
index 25a2c90..c5423e6 100644
--- a/java/com/google/gerrit/server/restapi/project/GarbageCollect.java
+++ b/java/com/google/gerrit/server/restapi/project/GarbageCollect.java
@@ -43,6 +43,7 @@
import java.util.Collections;
import java.util.Optional;
+/** REST endpoint that executes GC on a project. */
@RequiresCapability(GlobalCapability.RUN_GC)
@Singleton
public class GarbageCollect