diff --git a/src/main/java/com/googlesource/gerrit/plugins/websession/flatfile/FlatFileWebSessionCache.java b/src/main/java/com/googlesource/gerrit/plugins/websession/flatfile/FlatFileWebSessionCache.java
index 333edb0..eefdd86 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/websession/flatfile/FlatFileWebSessionCache.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/websession/flatfile/FlatFileWebSessionCache.java
@@ -25,7 +25,6 @@
 import com.google.inject.Inject;
 import com.google.inject.Singleton;
 
-import org.eclipse.jgit.lib.Config;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -66,7 +65,7 @@
 
   @Override
   public ConcurrentMap<String, Val> asMap() {
-    ConcurrentMap<String, Val> map = new ConcurrentHashMap<String, Val>();
+    ConcurrentMap<String, Val> map = new ConcurrentHashMap<>();
     File[] files = dir.listFiles();
     if (files == null) {
       return map;
@@ -102,7 +101,7 @@
   @Override
   public ImmutableMap<String, Val> getAllPresent(Iterable<?> keys) {
     ImmutableMap.Builder<String, Val> mapBuilder =
-        new ImmutableMap.Builder<String, Val>();
+        new ImmutableMap.Builder<>();
     for (Object key : keys) {
       Val v = getIfPresent(key);
       if (v != null) {
