Merge branch 'stable-2.16'

* stable-2.16:
  Migrate to Flogger
  Format with google-java-format 1.7

Change-Id: I4f7ee61798fa21a6aad455062fb2f46cae9569d6
diff --git a/src/main/java/com/googlesource/gerrit/plugins/deleteproject/Configuration.java b/src/main/java/com/googlesource/gerrit/plugins/deleteproject/Configuration.java
index d99d1e2..a0592dd 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/deleteproject/Configuration.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/deleteproject/Configuration.java
@@ -19,6 +19,7 @@
 import static java.util.stream.Collectors.toList;
 
 import com.google.common.base.Strings;
+import com.google.common.flogger.FluentLogger;
 import com.google.gerrit.extensions.annotations.PluginData;
 import com.google.gerrit.extensions.annotations.PluginName;
 import com.google.gerrit.server.config.ConfigUtil;
@@ -33,12 +34,10 @@
 import java.util.Arrays;
 import java.util.List;
 import java.util.regex.Pattern;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
 
 @Singleton
 public class Configuration {
-  private static final Logger log = LoggerFactory.getLogger(Configuration.class);
+  private static final FluentLogger log = FluentLogger.forEnclosingClass();
   private static final String DELETED_PROJECTS_PARENT = "Deleted-Projects";
   private static final long DEFAULT_ARCHIVE_DURATION_DAYS = 180;
 
@@ -113,11 +112,9 @@
     try {
       return Files.createDirectories(Paths.get(configValue));
     } catch (Exception e) {
-      log.warn(
-          "Failed to create folder {}: {}; using default path: {}",
-          configValue,
-          e.getMessage(),
-          pluginData);
+      log.atWarning().log(
+          "Failed to create folder %s: %s; using default path: %s",
+          configValue, e.getMessage(), pluginData);
       return pluginData.toPath();
     }
   }
@@ -127,10 +124,9 @@
       return ConfigUtil.getTimeUnit(
           configValue, DAYS.toMillis(DEFAULT_ARCHIVE_DURATION_DAYS), MILLISECONDS);
     } catch (IllegalArgumentException e) {
-      log.warn(
-          "The configured archive duration is not valid: {}; using the default value: {} days",
-          e.getMessage(),
-          DEFAULT_ARCHIVE_DURATION_DAYS);
+      log.atWarning().log(
+          "The configured archive duration is not valid: %s; using the default value: %d days",
+          e.getMessage(), DEFAULT_ARCHIVE_DURATION_DAYS);
       return DAYS.toMillis(DEFAULT_ARCHIVE_DURATION_DAYS);
     }
   }
diff --git a/src/main/java/com/googlesource/gerrit/plugins/deleteproject/fs/ArchiveRepositoryRemover.java b/src/main/java/com/googlesource/gerrit/plugins/deleteproject/fs/ArchiveRepositoryRemover.java
index 4cbf83b..0b343c9 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/deleteproject/fs/ArchiveRepositoryRemover.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/deleteproject/fs/ArchiveRepositoryRemover.java
@@ -18,6 +18,7 @@
 import static java.util.concurrent.TimeUnit.MILLISECONDS;
 import static java.util.concurrent.TimeUnit.SECONDS;
 
+import com.google.common.flogger.FluentLogger;
 import com.google.common.io.MoreFiles;
 import com.google.gerrit.extensions.annotations.PluginName;
 import com.google.gerrit.extensions.events.LifecycleListener;
@@ -36,8 +37,6 @@
 import java.util.List;
 import java.util.concurrent.ScheduledFuture;
 import java.util.concurrent.TimeUnit;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
 
 @Singleton
 public class ArchiveRepositoryRemover implements LifecycleListener {
@@ -75,7 +74,7 @@
 }
 
 class RepositoryCleanupTask implements Runnable {
-  private static final Logger logger = LoggerFactory.getLogger(RepositoryCleanupTask.class);
+  private static final FluentLogger logger = FluentLogger.forEnclosingClass();
 
   private final Configuration config;
   private final String pluginName;
@@ -88,9 +87,9 @@
 
   @Override
   public void run() {
-    logger.info("Cleaning up expired git repositories...");
+    logger.atInfo().log("Cleaning up expired git repositories...");
     cleanUpOverdueRepositories();
-    logger.info("Cleaning up expired git repositories... Done");
+    logger.atInfo().log("Cleaning up expired git repositories... Done");
   }
 
   @Override
@@ -105,7 +104,8 @@
       try {
         MoreFiles.deleteRecursively(path, ALLOW_INSECURE);
       } catch (IOException e) {
-        logger.warn("Error trying to clean the archived git repository: {}", path, e);
+        logger.atWarning().withCause(e).log(
+            "Error trying to clean the archived git repository: %s", path);
       }
     }
   }
@@ -123,7 +123,8 @@
           files.add(repo.toPath());
         }
       } catch (IOException e) {
-        logger.warn("Error trying to get last modified time for file: {} ", repo.toPath(), e);
+        logger.atWarning().withCause(e).log(
+            "Error trying to get last modified time for file: %s", repo.toPath());
       }
     }
     return files;
diff --git a/src/main/java/com/googlesource/gerrit/plugins/deleteproject/fs/DeleteTrashFolders.java b/src/main/java/com/googlesource/gerrit/plugins/deleteproject/fs/DeleteTrashFolders.java
index bd63e1f..7b84951 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/deleteproject/fs/DeleteTrashFolders.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/deleteproject/fs/DeleteTrashFolders.java
@@ -17,6 +17,7 @@
 
 import com.google.common.annotations.VisibleForTesting;
 import com.google.common.collect.Sets;
+import com.google.common.flogger.FluentLogger;
 import com.google.common.io.MoreFiles;
 import com.google.gerrit.extensions.events.LifecycleListener;
 import com.google.gerrit.server.config.GerritServerConfig;
@@ -31,11 +32,9 @@
 import java.util.regex.Pattern;
 import java.util.stream.Stream;
 import org.eclipse.jgit.lib.Config;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
 
 public class DeleteTrashFolders implements LifecycleListener {
-  private static final Logger log = LoggerFactory.getLogger(DeleteTrashFolders.class);
+  private static final FluentLogger log = FluentLogger.forEnclosingClass();
 
   static class TrashFolderPredicate {
 
@@ -98,7 +97,7 @@
           .filter(TrashFolderPredicate::match)
           .forEach(this::recursivelyDelete);
     } catch (IOException e) {
-      log.error("Failed to evaluate {}", folder, e);
+      log.atSevere().withCause(e).log("Failed to evaluate %s", folder);
     }
   }
 
@@ -111,7 +110,7 @@
     try {
       MoreFiles.deleteRecursively(folder, ALLOW_INSECURE);
     } catch (IOException e) {
-      log.error("Failed to delete {}", folder, e);
+      log.atSevere().withCause(e).log("Failed to delete %s", folder);
     }
   }
 
diff --git a/src/main/java/com/googlesource/gerrit/plugins/deleteproject/fs/FilesystemDeleteHandler.java b/src/main/java/com/googlesource/gerrit/plugins/deleteproject/fs/FilesystemDeleteHandler.java
index 003f154..d8a4883 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/deleteproject/fs/FilesystemDeleteHandler.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/deleteproject/fs/FilesystemDeleteHandler.java
@@ -16,6 +16,7 @@
 
 import static com.google.common.io.RecursiveDeleteOption.ALLOW_INSECURE;
 
+import com.google.common.flogger.FluentLogger;
 import com.google.common.io.MoreFiles;
 import com.google.gerrit.extensions.api.changes.NotifyHandling;
 import com.google.gerrit.extensions.events.ProjectDeletedListener;
@@ -37,11 +38,9 @@
 import org.eclipse.jgit.errors.RepositoryNotFoundException;
 import org.eclipse.jgit.lib.Repository;
 import org.eclipse.jgit.lib.RepositoryCache;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
 
 public class FilesystemDeleteHandler {
-  private static final Logger log = LoggerFactory.getLogger(FilesystemDeleteHandler.class);
+  private static final FluentLogger log = FluentLogger.forEnclosingClass();
   private static final DateTimeFormatter FORMAT =
       DateTimeFormatter.ofPattern("YYYYMMddHHmmss").withZone(ZoneId.of("UTC"));
 
@@ -88,7 +87,7 @@
       FileUtils.copyDirectory(renamedProjectDir.toFile(), archive.toFile());
       MoreFiles.deleteRecursively(renamedProjectDir, ALLOW_INSECURE);
     } catch (IOException e) {
-      log.warn("Error trying to archive {}", renamedProjectDir, e);
+      log.atWarning().withCause(e).log("Error trying to archive %s", renamedProjectDir);
     }
   }
 
@@ -107,7 +106,7 @@
       recursivelyDeleteEmptyParents(repoPath.toFile().getParentFile(), basePath.toFile());
     } catch (IOException e) {
       // Only log if delete failed - repo already moved to trash.
-      log.warn("Error trying to delete {} or its parents", trash, e);
+      log.atWarning().withCause(e).log("Error trying to delete %s or its parents", trash);
     } finally {
       sendProjectDeletedEvent(projectName);
     }
@@ -163,7 +162,7 @@
       try {
         l.onProjectDeleted(event);
       } catch (RuntimeException e) {
-        log.warn("Failure in ProjectDeletedListener", e);
+        log.atWarning().withCause(e).log("Failure in ProjectDeletedListener");
       }
     }
   }