diff --git a/src/main/java/com/cloudbees/hudson/plugins/folder/ChildNameGenerator.java b/src/main/java/com/cloudbees/hudson/plugins/folder/ChildNameGenerator.java index a4ebeb56..ca8fb5a6 100644 --- a/src/main/java/com/cloudbees/hudson/plugins/folder/ChildNameGenerator.java +++ b/src/main/java/com/cloudbees/hudson/plugins/folder/ChildNameGenerator.java @@ -39,13 +39,13 @@ import java.nio.charset.StandardCharsets; import java.nio.file.Files; import java.util.Map; +import java.util.Objects; import java.util.WeakHashMap; import edu.umd.cs.findbugs.annotations.CheckForNull; import edu.umd.cs.findbugs.annotations.NonNull; import java.util.logging.Level; import java.util.logging.Logger; import jenkins.model.TransientActionFactory; -import org.apache.commons.lang.StringUtils; /** * Provides a way for a {@link ComputedFolder} to break the association between the directory names on disk @@ -293,7 +293,7 @@ public final String readItemName(@NonNull File directory) { File nameFile = new File(directory, CHILD_NAME_FILE); if (nameFile.isFile()) { try { - childName = StringUtils.defaultString(StringUtils.trimToNull(Files.readString(nameFile.toPath(), StandardCharsets.UTF_8)), directory.getName()); + childName = Objects.toString(Util.fixEmptyAndTrim(Files.readString(nameFile.toPath(), StandardCharsets.UTF_8)), directory.getName()); } catch (IOException e) { LOGGER.log(Level.WARNING, () -> "Could not read "+ nameFile + ", assuming child name is " + directory.getName()); } diff --git a/src/main/java/com/cloudbees/hudson/plugins/folder/computed/PeriodicFolderTrigger.java b/src/main/java/com/cloudbees/hudson/plugins/folder/computed/PeriodicFolderTrigger.java index 63976afe..c033424f 100644 --- a/src/main/java/com/cloudbees/hudson/plugins/folder/computed/PeriodicFolderTrigger.java +++ b/src/main/java/com/cloudbees/hudson/plugins/folder/computed/PeriodicFolderTrigger.java @@ -36,7 +36,6 @@ import java.util.concurrent.TimeUnit; import java.util.logging.Level; import java.util.logging.Logger; -import org.apache.commons.lang.StringUtils; import org.kohsuke.stapler.DataBoundConstructor; /** @@ -107,19 +106,19 @@ private static long toIntervalMillis(String interval) { interval = interval.toLowerCase(); if (interval.endsWith("h")) { units = TimeUnit.HOURS; - interval = StringUtils.removeEnd(interval, "h"); + interval = interval.substring(0, interval.length() - 1); } if (interval.endsWith("m")) { - interval = StringUtils.removeEnd(interval, "m"); + interval = interval.substring(0, interval.length() - 1); } else if (interval.endsWith("d")) { units = TimeUnit.DAYS; - interval = StringUtils.removeEnd(interval, "d"); + interval = interval.substring(0, interval.length() - 1); } else if (interval.endsWith("ms")) { units = TimeUnit.SECONDS; - interval = StringUtils.removeEnd(interval, "ms"); + interval = interval.substring(0, interval.length() - 1); } else if (interval.endsWith("s")) { units = TimeUnit.SECONDS; - interval = StringUtils.removeEnd(interval, "s"); + interval = interval.substring(0, interval.length() - 1); } long value = 0; try { diff --git a/src/main/java/com/cloudbees/hudson/plugins/folder/computed/PseudoRun.java b/src/main/java/com/cloudbees/hudson/plugins/folder/computed/PseudoRun.java index ebcce0b3..cbd01e53 100644 --- a/src/main/java/com/cloudbees/hudson/plugins/folder/computed/PseudoRun.java +++ b/src/main/java/com/cloudbees/hudson/plugins/folder/computed/PseudoRun.java @@ -71,7 +71,7 @@ public String getTimestampString() { */ @NonNull public String getTimestampString2() { - return Util.XS_DATETIME_FORMATTER.format(computation.getTimestamp()); + return Util.XS_DATETIME_FORMATTER2.format(computation.getTimestamp().toInstant()); } @CheckForNull diff --git a/src/test/java/com/cloudbees/hudson/plugins/folder/ChildNameGeneratorTest.java b/src/test/java/com/cloudbees/hudson/plugins/folder/ChildNameGeneratorTest.java index 98557d9c..859f34e5 100644 --- a/src/test/java/com/cloudbees/hudson/plugins/folder/ChildNameGeneratorTest.java +++ b/src/test/java/com/cloudbees/hudson/plugins/folder/ChildNameGeneratorTest.java @@ -54,7 +54,6 @@ import java.util.TreeSet; import edu.umd.cs.findbugs.annotations.NonNull; import net.sf.json.JSONObject; -import org.apache.commons.lang.StringUtils; import org.junit.Rule; import org.junit.Test; import org.jvnet.hudson.test.JenkinsSessionRule; @@ -623,7 +622,7 @@ static CharSequence asJavaString(String rawString) { if (c >= 32 && c < 128) { b.append(c); } else { - b.append("\\u").append(StringUtils.leftPad(Integer.toHexString(c & 0xffff), 4, '0')); + b.append(String.format("\\u%04x", (int) c)); } } return b;