Update Guava and fix new warnings

Use java.util.Objects methods where recommended, and replace usages of
MoreObjects.* with static imports to save characters.

Change-Id: I66962e0676120625e3ec3930b7cd547ec503fc84
diff --git a/gitiles-dev/src/main/java/com/google/gitiles/dev/DevServer.java b/gitiles-dev/src/main/java/com/google/gitiles/dev/DevServer.java
index 5b0f5e8..6d49d4e 100644
--- a/gitiles-dev/src/main/java/com/google/gitiles/dev/DevServer.java
+++ b/gitiles-dev/src/main/java/com/google/gitiles/dev/DevServer.java
@@ -14,9 +14,9 @@
 
 package com.google.gitiles.dev;
 
+import static com.google.common.base.MoreObjects.firstNonNull;
 import static com.google.gitiles.GitilesServlet.STATIC_PREFIX;
 
-import com.google.common.base.Objects;
 import com.google.gitiles.DebugRenderer;
 import com.google.gitiles.GitilesServlet;
 import com.google.gitiles.PathServlet;
@@ -191,7 +191,7 @@
             Arrays.asList(cfg.getStringList("gitiles", null, "customTemplates")),
             new File(sourceRoot, "gitiles-servlet/src/main/resources/com/google/gitiles/templates")
                 .getPath(),
-            Objects.firstNonNull(cfg.getString("gitiles", null, "siteTitle"), "Gitiles")),
+            firstNonNull(cfg.getString("gitiles", null, "siteTitle"), "Gitiles")),
         null, null, null, null, null, null, null);
 
     ServletContextHandler handler = new ServletContextHandler();
diff --git a/gitiles-servlet/src/main/java/com/google/gitiles/BaseServlet.java b/gitiles-servlet/src/main/java/com/google/gitiles/BaseServlet.java
index 39f0adb..6cc6e11 100644
--- a/gitiles-servlet/src/main/java/com/google/gitiles/BaseServlet.java
+++ b/gitiles-servlet/src/main/java/com/google/gitiles/BaseServlet.java
@@ -14,6 +14,7 @@
 
 package com.google.gitiles;
 
+import static com.google.common.base.MoreObjects.firstNonNull;
 import static com.google.gitiles.FormatType.DEFAULT;
 import static com.google.gitiles.FormatType.HTML;
 import static com.google.gitiles.FormatType.JSON;
@@ -23,7 +24,6 @@
 import static javax.servlet.http.HttpServletResponse.SC_NOT_FOUND;
 import static javax.servlet.http.HttpServletResponse.SC_OK;
 
-import com.google.common.base.Objects;
 import com.google.common.base.Strings;
 import com.google.common.collect.ImmutableMap;
 import com.google.common.collect.Maps;
@@ -78,7 +78,7 @@
   }
 
   public static boolean isStreamingResponse(HttpServletRequest req) {
-    return Objects.firstNonNull((Boolean) req.getAttribute(STREAMING_ATTRIBUTE), false);
+    return firstNonNull((Boolean) req.getAttribute(STREAMING_ATTRIBUTE), false);
   }
 
   protected static ArchiveFormat getArchiveFormat(GitilesAccess access) throws IOException {
diff --git a/gitiles-servlet/src/main/java/com/google/gitiles/CommitData.java b/gitiles-servlet/src/main/java/com/google/gitiles/CommitData.java
index 74d0422..b968d89 100644
--- a/gitiles-servlet/src/main/java/com/google/gitiles/CommitData.java
+++ b/gitiles-servlet/src/main/java/com/google/gitiles/CommitData.java
@@ -14,11 +14,11 @@
 
 package com.google.gitiles;
 
+import static com.google.common.base.MoreObjects.firstNonNull;
 import static com.google.common.base.Preconditions.checkNotNull;
 import static com.google.common.base.Preconditions.checkState;
 
 import com.google.common.base.Function;
-import com.google.common.base.Objects;
 import com.google.common.base.Predicate;
 import com.google.common.collect.FluentIterable;
 import com.google.common.collect.ImmutableSet;
@@ -191,7 +191,7 @@
       if (refsById == null) {
         refsById = repo.getAllRefsByPeeledObjectId();
       }
-      return FluentIterable.from(Objects.firstNonNull(refsById.get(id), ImmutableSet.<Ref> of()))
+      return FluentIterable.from(firstNonNull(refsById.get(id), ImmutableSet.<Ref> of()))
         .filter(new Predicate<Ref>() {
           @Override
           public boolean apply(Ref ref) {
diff --git a/gitiles-servlet/src/main/java/com/google/gitiles/GitilesFilter.java b/gitiles-servlet/src/main/java/com/google/gitiles/GitilesFilter.java
index c02d55b..3d548b0 100644
--- a/gitiles-servlet/src/main/java/com/google/gitiles/GitilesFilter.java
+++ b/gitiles-servlet/src/main/java/com/google/gitiles/GitilesFilter.java
@@ -14,13 +14,13 @@
 
 package com.google.gitiles;
 
+import static com.google.common.base.MoreObjects.firstNonNull;
 import static com.google.common.base.Preconditions.checkNotNull;
 import static com.google.common.base.Preconditions.checkState;
 import static com.google.gitiles.GitilesServlet.STATIC_PREFIX;
 import static com.google.gitiles.ViewFilter.getRegexGroup;
 
 import com.google.common.annotations.VisibleForTesting;
-import com.google.common.base.Objects;
 import com.google.common.collect.FluentIterable;
 import com.google.common.collect.ImmutableMap;
 import com.google.common.collect.LinkedListMultimap;
@@ -331,7 +331,7 @@
           FluentIterable.from(Arrays.asList(
                 config.getStringList("gitiles", null, "customTemplates")))
               .transform(new FileUrlMapper()),
-          Objects.firstNonNull(config.getString("gitiles", null, "siteTitle"), "Gitiles"));
+          firstNonNull(config.getString("gitiles", null, "siteTitle"), "Gitiles"));
     }
   }
 
diff --git a/gitiles-servlet/src/main/java/com/google/gitiles/GitilesView.java b/gitiles-servlet/src/main/java/com/google/gitiles/GitilesView.java
index 6165979..eb0e4dc 100644
--- a/gitiles-servlet/src/main/java/com/google/gitiles/GitilesView.java
+++ b/gitiles-servlet/src/main/java/com/google/gitiles/GitilesView.java
@@ -14,6 +14,8 @@
 
 package com.google.gitiles;
 
+import static com.google.common.base.MoreObjects.firstNonNull;
+import static com.google.common.base.MoreObjects.toStringHelper;
 import static com.google.common.base.Preconditions.checkArgument;
 import static com.google.common.base.Preconditions.checkNotNull;
 import static com.google.common.base.Preconditions.checkState;
@@ -21,8 +23,7 @@
 import static java.nio.charset.StandardCharsets.UTF_8;
 
 import com.google.common.annotations.VisibleForTesting;
-import com.google.common.base.Objects;
-import com.google.common.base.Objects.ToStringHelper;
+import com.google.common.base.MoreObjects.ToStringHelper;
 import com.google.common.base.Strings;
 import com.google.common.collect.ImmutableList;
 import com.google.common.collect.ImmutableMap;
@@ -199,7 +200,7 @@
         case LOG:
           break;
         default:
-          revision = Objects.firstNonNull(revision, Revision.NULL);
+          revision = firstNonNull(revision, Revision.NULL);
           checkState(revision == Revision.NULL, "cannot set old revision on %s view", type);
           break;
       }
@@ -455,8 +456,8 @@
     this.hostName = hostName;
     this.servletPath = servletPath;
     this.repositoryName = repositoryName;
-    this.revision = Objects.firstNonNull(revision, Revision.NULL);
-    this.oldRevision = Objects.firstNonNull(oldRevision, Revision.NULL);
+    this.revision = firstNonNull(revision, Revision.NULL);
+    this.oldRevision = firstNonNull(oldRevision, Revision.NULL);
     this.path = path;
     this.extension = extension;
     this.params = Multimaps.unmodifiableListMultimap(params);
@@ -533,7 +534,7 @@
 
   @Override
   public String toString() {
-    ToStringHelper b = Objects.toStringHelper(type.toString())
+    ToStringHelper b = toStringHelper(type.toString())
         .omitNullValues()
         .add("host", hostName)
         .add("servlet", servletPath)
@@ -578,7 +579,7 @@
         if (path != null) {
           url.append('/').append(path);
         }
-        url.append(Objects.firstNonNull(extension, DEFAULT_ARCHIVE_EXTENSION));
+        url.append(firstNonNull(extension, DEFAULT_ARCHIVE_EXTENSION));
         break;
       case PATH:
         url.append(repositoryName).append("/+/").append(revision.getName()).append('/')
diff --git a/gitiles-servlet/src/main/java/com/google/gitiles/GitwebRedirectFilter.java b/gitiles-servlet/src/main/java/com/google/gitiles/GitwebRedirectFilter.java
index 4eafffa..99f4c5d 100644
--- a/gitiles-servlet/src/main/java/com/google/gitiles/GitwebRedirectFilter.java
+++ b/gitiles-servlet/src/main/java/com/google/gitiles/GitwebRedirectFilter.java
@@ -14,13 +14,13 @@
 
 package com.google.gitiles;
 
+import static com.google.common.base.MoreObjects.firstNonNull;
 import static com.google.common.base.Preconditions.checkNotNull;
 import static com.google.common.net.HttpHeaders.LOCATION;
 import static java.nio.charset.StandardCharsets.UTF_8;
 import static javax.servlet.http.HttpServletResponse.SC_GONE;
 import static javax.servlet.http.HttpServletResponse.SC_MOVED_PERMANENTLY;
 
-import com.google.common.base.Objects;
 import com.google.common.base.Splitter;
 import com.google.common.base.Strings;
 import com.google.common.collect.ImmutableList;
@@ -96,11 +96,10 @@
     } else if (("commit".equals(action) || "tag".equals(action)) && hash != null) {
       view = GitilesView.revision().setRevision(hash);
     } else if ("log".equals(action) || "shortlog".equals(action)) {
-      view = GitilesView.log()
-          .setRevision(Objects.firstNonNull(hash, Revision.HEAD));
+      view = GitilesView.log().setRevision(firstNonNull(hash, Revision.HEAD));
     } else if ("tree".equals(action)) {
       view = GitilesView.path()
-          .setRevision(Objects.firstNonNull(hashBase, Revision.HEAD))
+          .setRevision(firstNonNull(hashBase, Revision.HEAD))
           .setPathPart(path);
     } else if (("blob".equals(action) || "blob_plain".equals(action))
         && hashBase != null && !path.isEmpty()) {
@@ -109,7 +108,7 @@
           .setPathPart(path);
     } else if ("commitdiff".equals(action) && hash != null) {
       view = GitilesView.diff()
-          .setOldRevision(Objects.firstNonNull(hashParent, Revision.NULL))
+          .setOldRevision(firstNonNull(hashParent, Revision.NULL))
           .setRevision(hash)
           .setPathPart("");
     } else if ("blobdiff".equals(action) && !path.isEmpty()
@@ -120,7 +119,7 @@
           .setPathPart(path);
     } else if ("history".equals(action) && !path.isEmpty()) {
       view = GitilesView.log()
-          .setRevision(Objects.firstNonNull(hashBase, Revision.HEAD))
+          .setRevision(firstNonNull(hashBase, Revision.HEAD))
           .setPathPart(path);
     } else {
       // Gitiles does not provide an RSS feed (a=rss,atom,opml)
diff --git a/gitiles-servlet/src/main/java/com/google/gitiles/LogSoyData.java b/gitiles-servlet/src/main/java/com/google/gitiles/LogSoyData.java
index 6bb64b4..244bbc8 100644
--- a/gitiles-servlet/src/main/java/com/google/gitiles/LogSoyData.java
+++ b/gitiles-servlet/src/main/java/com/google/gitiles/LogSoyData.java
@@ -14,9 +14,9 @@
 
 package com.google.gitiles;
 
+import static com.google.common.base.MoreObjects.firstNonNull;
 import static com.google.common.base.Preconditions.checkNotNull;
 
-import com.google.common.base.Objects;
 import com.google.common.collect.ImmutableMap;
 import com.google.common.collect.ImmutableSet;
 import com.google.common.collect.Maps;
@@ -55,7 +55,7 @@
     this.pretty = checkNotNull(pretty);
     Config config = access.getConfig();
     fields = config.getBoolean("logFormat", pretty, "verbose", false) ? VERBOSE_FIELDS : FIELDS;
-    variant = Objects.firstNonNull(config.getString("logFormat", pretty, "variant"), pretty);
+    variant = firstNonNull(config.getString("logFormat", pretty, "variant"), pretty);
   }
 
   public void renderStreaming(Paginator paginator, @Nullable String revision, Renderer renderer,
diff --git a/gitiles-servlet/src/main/java/com/google/gitiles/Revision.java b/gitiles-servlet/src/main/java/com/google/gitiles/Revision.java
index 54c72fa..b388e36 100644
--- a/gitiles-servlet/src/main/java/com/google/gitiles/Revision.java
+++ b/gitiles-servlet/src/main/java/com/google/gitiles/Revision.java
@@ -14,12 +14,13 @@
 
 package com.google.gitiles;
 
+import static com.google.common.base.MoreObjects.toStringHelper;
 import static com.google.common.base.Preconditions.checkArgument;
+import static java.util.Objects.hash;
 import static org.eclipse.jgit.lib.Constants.OBJ_BAD;
 import static org.eclipse.jgit.lib.Constants.OBJ_TAG;
 
 import com.google.common.annotations.VisibleForTesting;
-import com.google.common.base.Objects;
 
 import org.eclipse.jgit.errors.MissingObjectException;
 import org.eclipse.jgit.lib.AbbreviatedObjectId;
@@ -29,6 +30,7 @@
 import org.eclipse.jgit.revwalk.RevWalk;
 
 import java.io.IOException;
+import java.util.Objects;
 
 /**
  * Object encapsulating a single revision as seen by Gitiles.
@@ -121,23 +123,23 @@
   public boolean equals(Object o) {
     if (o instanceof Revision) {
       Revision r = (Revision) o;
-      return Objects.equal(name, r.name)
-          && Objects.equal(id, r.id)
-          && Objects.equal(type, r.type)
-          && Objects.equal(peeledId, r.peeledId)
-          && Objects.equal(peeledType, r.peeledType);
+      return Objects.equals(name, r.name)
+          && Objects.equals(id, r.id)
+          && Objects.equals(type, r.type)
+          && Objects.equals(peeledId, r.peeledId)
+          && Objects.equals(peeledType, r.peeledType);
     }
     return false;
   }
 
   @Override
   public int hashCode() {
-    return Objects.hashCode(name, id, type, peeledId, peeledType);
+    return hash(name, id, type, peeledId, peeledType);
   }
 
   @Override
   public String toString() {
-    return Objects.toStringHelper(this)
+    return toStringHelper(this)
         .omitNullValues()
         .add("name", name)
         .add("id", id != null ? id.getName() : null)
diff --git a/gitiles-servlet/src/main/java/com/google/gitiles/RevisionParser.java b/gitiles-servlet/src/main/java/com/google/gitiles/RevisionParser.java
index a1cdafc..fb876b0 100644
--- a/gitiles-servlet/src/main/java/com/google/gitiles/RevisionParser.java
+++ b/gitiles-servlet/src/main/java/com/google/gitiles/RevisionParser.java
@@ -14,11 +14,12 @@
 
 package com.google.gitiles;
 
+import static com.google.common.base.MoreObjects.toStringHelper;
 import static com.google.common.base.Preconditions.checkNotNull;
+import static java.util.Objects.hash;
 
 import com.google.common.annotations.VisibleForTesting;
 import com.google.common.base.CharMatcher;
-import com.google.common.base.Objects;
 import com.google.common.base.Splitter;
 
 import org.eclipse.jgit.errors.AmbiguousObjectException;
@@ -32,6 +33,7 @@
 import org.eclipse.jgit.revwalk.RevWalk;
 
 import java.io.IOException;
+import java.util.Objects;
 
 /** Object to parse revisions out of Gitiles paths. */
 class RevisionParser {
@@ -70,21 +72,21 @@
     public boolean equals(Object o) {
       if (o instanceof Result) {
         Result r = (Result) o;
-        return Objects.equal(revision, r.revision)
-            && Objects.equal(oldRevision, r.oldRevision)
-            && Objects.equal(path, r.path);
+        return Objects.equals(revision, r.revision)
+            && Objects.equals(oldRevision, r.oldRevision)
+            && Objects.equals(path, r.path);
       }
       return false;
     }
 
     @Override
     public int hashCode() {
-      return Objects.hashCode(revision, oldRevision, path);
+      return hash(revision, oldRevision, path);
     }
 
     @Override
     public String toString() {
-      return Objects.toStringHelper(this)
+      return toStringHelper(this)
           .omitNullValues()
           .add("revision", revision.getName())
           .add("oldRevision", oldRevision != null ? oldRevision.getName() : null)
diff --git a/gitiles-servlet/src/main/java/com/google/gitiles/VisibilityCache.java b/gitiles-servlet/src/main/java/com/google/gitiles/VisibilityCache.java
index 3886f29..a11d7b2 100644
--- a/gitiles-servlet/src/main/java/com/google/gitiles/VisibilityCache.java
+++ b/gitiles-servlet/src/main/java/com/google/gitiles/VisibilityCache.java
@@ -14,14 +14,15 @@
 
 package com.google.gitiles;
 
+import static com.google.common.base.MoreObjects.toStringHelper;
 import static com.google.common.base.Preconditions.checkNotNull;
 import static com.google.common.base.Predicates.not;
 import static com.google.common.collect.Collections2.filter;
+import static java.util.Objects.hash;
 import static org.eclipse.jgit.lib.Constants.R_HEADS;
 import static org.eclipse.jgit.lib.Constants.R_TAGS;
 
 import com.google.common.base.Function;
-import com.google.common.base.Objects;
 import com.google.common.base.Predicate;
 import com.google.common.base.Predicates;
 import com.google.common.base.Throwables;
@@ -43,6 +44,7 @@
 import java.io.IOException;
 import java.util.Arrays;
 import java.util.Collection;
+import java.util.Objects;
 import java.util.concurrent.Callable;
 import java.util.concurrent.ExecutionException;
 import java.util.concurrent.TimeUnit;
@@ -64,21 +66,21 @@
     public boolean equals(Object o) {
       if (o instanceof Key) {
         Key k = (Key) o;
-        return Objects.equal(user, k.user)
-            && Objects.equal(repositoryName, k.repositoryName)
-            && Objects.equal(objectId, k.objectId);
+        return Objects.equals(user, k.user)
+            && Objects.equals(repositoryName, k.repositoryName)
+            && Objects.equals(objectId, k.objectId);
       }
       return false;
     }
 
     @Override
     public int hashCode() {
-      return Objects.hashCode(user, repositoryName, objectId);
+      return hash(user, repositoryName, objectId);
     }
 
     @Override
     public String toString() {
-      return Objects.toStringHelper(this)
+      return toStringHelper(this)
         .add("user", user)
         .add("repositoryName", repositoryName)
         .add("objectId", objectId)
diff --git a/gitiles-servlet/src/main/java/com/google/gitiles/blame/BlameCacheImpl.java b/gitiles-servlet/src/main/java/com/google/gitiles/blame/BlameCacheImpl.java
index 50b2d8f..b41e000 100644
--- a/gitiles-servlet/src/main/java/com/google/gitiles/blame/BlameCacheImpl.java
+++ b/gitiles-servlet/src/main/java/com/google/gitiles/blame/BlameCacheImpl.java
@@ -15,8 +15,8 @@
 package com.google.gitiles.blame;
 
 import static com.google.common.base.Preconditions.checkState;
+import static java.util.Objects.hash;
 
-import com.google.common.base.Objects;
 import com.google.common.cache.CacheBuilder;
 import com.google.common.cache.CacheLoader;
 import com.google.common.cache.LoadingCache;
@@ -41,6 +41,7 @@
 import java.util.Collections;
 import java.util.List;
 import java.util.Map;
+import java.util.Objects;
 import java.util.concurrent.ExecutionException;
 
 /** Guava implementation of BlameCache, weighted by number of blame regions. */
@@ -82,15 +83,15 @@
     public boolean equals(Object o) {
       if (o instanceof Key) {
         Key k = (Key) o;
-        return Objects.equal(commitId, k.commitId)
-            && Objects.equal(path, k.path);
+        return Objects.equals(commitId, k.commitId)
+            && Objects.equals(path, k.path);
       }
       return false;
     }
 
     @Override
     public int hashCode() {
-      return Objects.hashCode(commitId, path);
+      return hash(commitId, path);
     }
 
     @Override
diff --git a/gitiles-servlet/src/main/java/com/google/gitiles/blame/BlameServlet.java b/gitiles-servlet/src/main/java/com/google/gitiles/blame/BlameServlet.java
index f59ba04..10867e7 100644
--- a/gitiles-servlet/src/main/java/com/google/gitiles/blame/BlameServlet.java
+++ b/gitiles-servlet/src/main/java/com/google/gitiles/blame/BlameServlet.java
@@ -17,7 +17,6 @@
 import static com.google.common.base.Preconditions.checkNotNull;
 import static javax.servlet.http.HttpServletResponse.SC_NOT_FOUND;
 
-import com.google.common.base.Objects;
 import com.google.common.base.Strings;
 import com.google.common.collect.ImmutableList;
 import com.google.common.collect.ImmutableMap;
@@ -52,6 +51,7 @@
 import java.io.IOException;
 import java.util.List;
 import java.util.Map;
+import java.util.Objects;
 
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
@@ -157,7 +157,7 @@
     ObjectId lastCommit = cache.findLastCommit(repo, currCommit, view.getPathPart());
     ObjectId lastCommitBlobId = resolveBlob(view, rw, lastCommit);
 
-    if (!Objects.equal(currCommitBlobId, lastCommitBlobId)) {
+    if (!Objects.equals(currCommitBlobId, lastCommitBlobId)) {
       log.warn(String.format("Blob %s in last modified commit %s for repo %s starting from %s"
           + " does not match original blob %s",
           ObjectId.toString(lastCommitBlobId),
diff --git a/lib/BUCK b/lib/BUCK
index 449901d..2b66a3f 100644
--- a/lib/BUCK
+++ b/lib/BUCK
@@ -1,7 +1,7 @@
 maven_jar(
   name = 'guava',
-  id = 'com.google.guava:guava:16.0',
-  sha1 = 'aca09d2e5e8416bf91550e72281958e35460be52',
+  id = 'com.google.guava:guava:18.0',
+  sha1 = 'cce0823396aa693798f8882e64213b1772032b09',
 )
 
 maven_jar(