Replace Guava's Optional with native Java 8 Optional Change-Id: I913158eda2423de103367bf3067b8ce44f90fd9c
diff --git a/src/main/java/com/googlesource/gerrit/plugins/manager/gson/SmartJson.java b/src/main/java/com/googlesource/gerrit/plugins/manager/gson/SmartJson.java index ff0b96b..bc2ff06 100644 --- a/src/main/java/com/googlesource/gerrit/plugins/manager/gson/SmartJson.java +++ b/src/main/java/com/googlesource/gerrit/plugins/manager/gson/SmartJson.java
@@ -14,10 +14,11 @@ package com.googlesource.gerrit.plugins.manager.gson; -import com.google.common.base.Function; -import com.google.common.base.Optional; import com.google.gson.JsonElement; +import java.util.Optional; +import java.util.function.Function; + public class SmartJson { private final JsonElement jsonElem; @@ -31,7 +32,7 @@ } public Optional<String> getOptionalString(String fieldName) { - return getOptional(fieldName).transform(new Function<SmartJson, String>() { + return getOptional(fieldName).map(new Function<SmartJson, String>() { @Override public String apply(SmartJson elem) { if (!elem.jsonElem.isJsonPrimitive()) { @@ -44,7 +45,7 @@ } public String getString(String fieldName) { - return getOptionalString(fieldName).or(""); + return getOptionalString(fieldName).orElse(""); } public Optional<SmartJson> getOptional(String fieldName) { @@ -52,7 +53,7 @@ return Optional.of(SmartJson .of(jsonElem.getAsJsonObject().get(fieldName))); } - return Optional.absent(); + return Optional.empty(); } public SmartJson get(String fieldName) {
diff --git a/src/main/java/com/googlesource/gerrit/plugins/manager/repository/JenkinsCiPluginsRepository.java b/src/main/java/com/googlesource/gerrit/plugins/manager/repository/JenkinsCiPluginsRepository.java index 521ec39..0b609ad 100644 --- a/src/main/java/com/googlesource/gerrit/plugins/manager/repository/JenkinsCiPluginsRepository.java +++ b/src/main/java/com/googlesource/gerrit/plugins/manager/repository/JenkinsCiPluginsRepository.java
@@ -14,8 +14,6 @@ package com.googlesource.gerrit.plugins.manager.repository; -import com.google.common.base.Function; -import com.google.common.base.Optional; import com.google.gson.JsonArray; import com.google.gson.JsonElement; import com.google.inject.Inject; @@ -39,6 +37,8 @@ import java.util.ArrayList; import java.util.HashMap; import java.util.List; +import java.util.Optional; +import java.util.function.Function; @Singleton public class JenkinsCiPluginsRepository implements PluginsRepository { @@ -46,7 +46,7 @@ private static final Logger log = LoggerFactory .getLogger(JenkinsCiPluginsRepository.class); - private static final Optional<PluginInfo> noPluginInfo = Optional.absent(); + private static final Optional<PluginInfo> noPluginInfo = Optional.empty(); private final PluginManagerConfig config; @@ -113,7 +113,7 @@ Optional<SmartJson> lastSuccessfulBuild = jobDetails.getOptional("lastSuccessfulBuild"); - return lastSuccessfulBuild.transform( + return lastSuccessfulBuild.map( new Function<SmartJson, Optional<PluginInfo>>() { @Override public Optional<PluginInfo> apply(SmartJson build) { @@ -125,7 +125,7 @@ return noPluginInfo; } } - }).or(noPluginInfo); + }).orElse(noPluginInfo); } private Optional<PluginInfo> getPluginArtifactInfo(SmartGson gson, String url) @@ -134,12 +134,12 @@ JsonArray artifacts = buildExecution.get("artifacts").get().getAsJsonArray(); if (artifacts.size() == 0) { - return Optional.absent(); + return Optional.empty(); } Optional<SmartJson> artifactJson = findArtifact(artifacts, ".jar"); if (!artifactJson.isPresent()) { - return Optional.absent(); + return Optional.empty(); } String pluginPath = artifactJson.get().getString("relativePath"); @@ -205,6 +205,6 @@ } } - return Optional.absent(); + return Optional.empty(); } }