diff --git a/src/main/java/hudson/plugins/copyartifact/BuildSelectorParameter.java b/src/main/java/hudson/plugins/copyartifact/BuildSelectorParameter.java index 6ac3f86d..6f132a3e 100644 --- a/src/main/java/hudson/plugins/copyartifact/BuildSelectorParameter.java +++ b/src/main/java/hudson/plugins/copyartifact/BuildSelectorParameter.java @@ -26,6 +26,7 @@ import java.util.Collections; import java.util.List; import java.util.logging.Logger; +import java.util.stream.Collectors; import com.thoughtworks.xstream.XStreamException; import jenkins.model.Jenkins; @@ -44,10 +45,6 @@ import org.kohsuke.stapler.DataBoundConstructor; import org.kohsuke.stapler.StaplerRequest; -import com.google.common.base.Predicate; -import com.google.common.collect.Collections2; -import com.google.common.collect.Lists; - /** * @author Alan Harder */ @@ -150,14 +147,9 @@ public List> getAvailableBuildSelectorList() { if (jenkins == null) { return Collections.emptyList(); } - return Lists.newArrayList(Collections2.filter( - jenkins.getDescriptorList(BuildSelector.class), - new Predicate>() { - public boolean apply(Descriptor input) { - return !"ParameterizedBuildSelector".equals(input.clazz.getSimpleName()); - }; - } - )); + return jenkins.getDescriptorList(BuildSelector.class).stream() + .filter(input -> !"ParameterizedBuildSelector".equals(input.clazz.getSimpleName())) + .collect(Collectors.toList()); } @Override diff --git a/src/main/java/hudson/plugins/copyartifact/CopyArtifactPermissionProperty.java b/src/main/java/hudson/plugins/copyartifact/CopyArtifactPermissionProperty.java index 9348275f..89184051 100644 --- a/src/main/java/hudson/plugins/copyartifact/CopyArtifactPermissionProperty.java +++ b/src/main/java/hudson/plugins/copyartifact/CopyArtifactPermissionProperty.java @@ -29,6 +29,7 @@ import java.util.Collections; import java.util.List; import java.util.regex.Pattern; +import java.util.stream.Collectors; import javax.annotation.CheckForNull; @@ -42,9 +43,6 @@ import org.kohsuke.stapler.QueryParameter; import org.kohsuke.stapler.StaplerRequest; -import com.google.common.base.Function; -import com.google.common.collect.Lists; - import hudson.Extension; import hudson.model.AutoCompletionCandidates; import hudson.model.Item; @@ -127,11 +125,10 @@ public boolean canCopiedBy(Job copier) { } List literals = Arrays.asList(pattern.split("\\*", -1)); - String regex = StringUtils.join(Lists.transform(literals, new Function() { - public String apply(String input) { - return (input != null)?Pattern.quote(input):""; - } - }), ".*"); + String regex = + literals.stream() + .map(input -> input != null ? Pattern.quote(input) : "") + .collect(Collectors.joining(".*")); return name.matches(regex); } diff --git a/src/main/java/hudson/plugins/copyartifact/monitor/LegacyJobConfigMigrationMonitor.java b/src/main/java/hudson/plugins/copyartifact/monitor/LegacyJobConfigMigrationMonitor.java index c32f08ed..a98f7ce3 100644 --- a/src/main/java/hudson/plugins/copyartifact/monitor/LegacyJobConfigMigrationMonitor.java +++ b/src/main/java/hudson/plugins/copyartifact/monitor/LegacyJobConfigMigrationMonitor.java @@ -24,7 +24,6 @@ package hudson.plugins.copyartifact.monitor; import com.cloudbees.hudson.plugins.folder.computed.ComputedFolder; -import com.google.common.annotations.VisibleForTesting; import edu.umd.cs.findbugs.annotations.SuppressFBWarnings; import hudson.BulkChange; @@ -126,7 +125,8 @@ public boolean isActivated() { /** * @return data holding the list of jobs to warn. */ - @VisibleForTesting LegacyMonitorData getData() { + @Restricted(NoExternalUse.class) + /* Visible for testing */ LegacyMonitorData getData() { return data; } @@ -325,7 +325,7 @@ public HttpResponse doMigrateAllSelected(@JsonBody MigrateAllSelectedModel conte } } - @VisibleForTesting + /* Visible for testing */ @Restricted(NoExternalUse.class) boolean applyAutoMigration(@Nonnull String jobFromName, @Nonnull String jobToName) throws IOException { Jenkins jenkins = Jenkins.get(); diff --git a/src/main/java/hudson/plugins/copyartifact/monitor/LegacyMonitorData.java b/src/main/java/hudson/plugins/copyartifact/monitor/LegacyMonitorData.java index 8c419958..e81f7056 100644 --- a/src/main/java/hudson/plugins/copyartifact/monitor/LegacyMonitorData.java +++ b/src/main/java/hudson/plugins/copyartifact/monitor/LegacyMonitorData.java @@ -23,7 +23,6 @@ */ package hudson.plugins.copyartifact.monitor; -import com.google.common.annotations.VisibleForTesting; import hudson.model.Job; import hudson.security.ACL; import hudson.security.ACLContext; @@ -156,7 +155,7 @@ public void onJobRename(@Nonnull String previousFullName, @Nonnull String newFul * @return map map from the pair of jobs to the possible failure build. */ @Restricted(NoExternalUse.class) - @VisibleForTesting @Nonnull Map getLegacyJobInfos() { + /* Visible for testing */ @Nonnull Map getLegacyJobInfos() { return new HashMap<>(legacyJobInfos); } @@ -166,7 +165,7 @@ public void onJobRename(@Nonnull String previousFullName, @Nonnull String newFul * @return map map from the job name to all existing pair of jobs. */ @Restricted(NoExternalUse.class) - @VisibleForTesting @Nonnull Map> getFullNameToKey() { + /* Visible for testing */ @Nonnull Map> getFullNameToKey() { Map> result = new HashMap<>(); fullNameToKey.forEach((key, value) -> result.put(key, new ArrayList<>(value))); @@ -180,7 +179,7 @@ public void onJobRename(@Nonnull String previousFullName, @Nonnull String newFul * Clear all. */ @Restricted(NoExternalUse.class) - @VisibleForTesting void clear() { + /* Visible for testing */ void clear() { this.fullNameToKey.clear(); this.legacyJobInfos.clear(); } @@ -327,7 +326,7 @@ private void removeEntryFromKeyMap(@Nonnull String fullName, @Nonnull JobKey key */ @Restricted(NoExternalUse.class) @Nonnull - @VisibleForTesting static JobKey buildKey(@Nonnull String jobFrom, @Nonnull String jobTo) { + /* Visible for testing */ static JobKey buildKey(@Nonnull String jobFrom, @Nonnull String jobTo) { return new JobKey(jobFrom, jobTo); } diff --git a/src/test/java/hudson/plugins/copyartifact/monitor/LegacyJobConfigMigrationMonitorTest.java b/src/test/java/hudson/plugins/copyartifact/monitor/LegacyJobConfigMigrationMonitorTest.java index 85e53be0..b395efd4 100644 --- a/src/test/java/hudson/plugins/copyartifact/monitor/LegacyJobConfigMigrationMonitorTest.java +++ b/src/test/java/hudson/plugins/copyartifact/monitor/LegacyJobConfigMigrationMonitorTest.java @@ -43,6 +43,8 @@ import hudson.plugins.copyartifact.testutils.CopyArtifactJenkinsRule; import hudson.plugins.copyartifact.testutils.FileWriteBuilder; import hudson.tasks.ArtifactArchiver; +import java.util.Arrays; +import java.util.HashSet; import jenkins.model.Jenkins; import jenkins.model.ParameterizedJobMixIn; import jenkins.security.QueueItemAuthenticator; @@ -57,8 +59,6 @@ import org.jvnet.hudson.test.MockAuthorizationStrategy; import org.jvnet.hudson.test.recipes.LocalData; -import com.google.common.collect.Sets; - import javax.annotation.CheckForNull; import static org.hamcrest.Matchers.hasSize; @@ -831,7 +831,7 @@ public void remove_succeeded() throws Exception { LegacyJobConfigMigrationMonitor monitor = LegacyJobConfigMigrationMonitor.get(); assertThat( monitor.getData().getFullNameToKey().keySet(), - Matchers.is(Sets.newHashSet("dest", "src")) + Matchers.is(new HashSet<>(Arrays.asList("dest", "src"))) ); src.addProperty(new CopyArtifactPermissionProperty("dest"));