Author: reschke Date: Mon Oct 7 18:23:34 2019 New Revision: 1868088 URL: http://svn.apache.org/viewvc?rev=1868088&view=rev Log: OAK-8677: deprecate FileIOUtils.writeStrings with Guava Function parameter
Modified: jackrabbit/oak/trunk/oak-commons/src/main/java/org/apache/jackrabbit/oak/commons/FileIOUtils.java jackrabbit/oak/trunk/oak-commons/src/test/java/org/apache/jackrabbit/oak/commons/FileIOUtilsTest.java jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/run/DataStoreCheckCommand.java Modified: jackrabbit/oak/trunk/oak-commons/src/main/java/org/apache/jackrabbit/oak/commons/FileIOUtils.java URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-commons/src/main/java/org/apache/jackrabbit/oak/commons/FileIOUtils.java?rev=1868088&r1=1868087&r2=1868088&view=diff ============================================================================== --- jackrabbit/oak/trunk/oak-commons/src/main/java/org/apache/jackrabbit/oak/commons/FileIOUtils.java (original) +++ jackrabbit/oak/trunk/oak-commons/src/main/java/org/apache/jackrabbit/oak/commons/FileIOUtils.java Mon Oct 7 18:23:34 2019 @@ -74,7 +74,10 @@ public final class FileIOUtils { } }; - public final static Function<String, String> passThruTransformer = new Function<String, String>() { + /** + * @deprecated use {@link java.util.function.Function#identity()} instead + */ + @Deprecated public final static Function<String, String> passThruTransformer = new Function<String, String>() { @Nullable @Override public String apply(@Nullable String input) { return input; } @@ -228,7 +231,7 @@ public final class FileIOUtils { */ public static int writeStrings(Iterator<String> iterator, File f, boolean escape, @Nullable Logger logger, @Nullable String message) throws IOException { - return writeStrings(iterator, f, escape, passThruTransformer, logger, message); + return writeStrings(iterator, f, escape, java.util.function.Function.identity(), logger, message); } /** @@ -245,8 +248,8 @@ public final class FileIOUtils { * @throws IOException */ public static int writeStrings(Iterator<String> iterator, File f, boolean escape, - @NotNull Function<String, String> transformer, @Nullable Logger logger, @Nullable String message) throws IOException { - BufferedWriter writer = newWriter(f, UTF_8); + @NotNull java.util.function.Function<String, String> transformer, @Nullable Logger logger, @Nullable String message) throws IOException { + BufferedWriter writer = newWriter(f, UTF_8); boolean threw = true; int count = 0; @@ -268,6 +271,16 @@ public final class FileIOUtils { } /** + * @deprecated use {@link #writeStrings(Iterator, File, boolean, java.util.function.Function, Logger, String)} instead + */ + @Deprecated public static int writeStrings(Iterator<String> iterator, File f, boolean escape, + @NotNull Function<String, String> transformer, @Nullable Logger logger, @Nullable String message) throws IOException { + GuavaDeprecation.handleCall("OAK-8677"); + java.util.function.Function<String, String> tr2 = (s) -> transformer.apply(s); + return writeStrings(iterator, f, escape, tr2, logger, message); + } + + /** * Reads strings from the given stream into a set and optionally unescaping for line breaks. * * @param stream the source of the strings Modified: jackrabbit/oak/trunk/oak-commons/src/test/java/org/apache/jackrabbit/oak/commons/FileIOUtilsTest.java URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-commons/src/test/java/org/apache/jackrabbit/oak/commons/FileIOUtilsTest.java?rev=1868088&r1=1868087&r2=1868088&view=diff ============================================================================== --- jackrabbit/oak/trunk/oak-commons/src/test/java/org/apache/jackrabbit/oak/commons/FileIOUtilsTest.java (original) +++ jackrabbit/oak/trunk/oak-commons/src/test/java/org/apache/jackrabbit/oak/commons/FileIOUtilsTest.java Mon Oct 7 18:23:34 2019 @@ -98,6 +98,23 @@ public class FileIOUtilsTest { Set<String> actual = newHashSet("a", "z", "e", "b"); File f = folder.newFile(); + int count = writeStrings(added.iterator(), f, false, new java.util.function.Function<String, String>() { + @Nullable @Override public String apply(@Nullable String input) { + return Splitter.on("-").trimResults().omitEmptyStrings().splitToList(input).get(0); + } + }, null, null); + assertEquals(added.size(), count); + + Set<String> retrieved = readStringsAsSet(new FileInputStream(f), false); + assertEquals(actual, retrieved); + } + + @Test + public void writeCustomReadOrgStringsDeprecated() throws Exception { + Set<String> added = newHashSet("a-", "z-", "e-", "b-"); + Set<String> actual = newHashSet("a", "z", "e", "b"); + + File f = folder.newFile(); int count = writeStrings(added.iterator(), f, false, new Function<String, String>() { @Nullable @Override public String apply(@Nullable String input) { return Splitter.on("-").trimResults().omitEmptyStrings().splitToList(input).get(0); Modified: jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/run/DataStoreCheckCommand.java URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/run/DataStoreCheckCommand.java?rev=1868088&r1=1868087&r2=1868088&view=diff ============================================================================== --- jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/run/DataStoreCheckCommand.java (original) +++ jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/run/DataStoreCheckCommand.java Mon Oct 7 18:23:34 2019 @@ -279,11 +279,8 @@ public class DataStoreCheckCommand imple }); // Read and write the converted ids - FileIOUtils.writeStrings(idIterator, longIdTemp, false, new Function<String, String>() { - @Nullable @Override public String apply(@Nullable String input) { - return encodeId(input, dsType); - } - }, null, null); + FileIOUtils.writeStrings(idIterator, longIdTemp, false, + (java.util.function.Function<String, String>) ((input) -> encodeId(input, dsType)), null, null); FileUtils.copyFile(longIdTemp, writeFile); } finally { if (idIterator != null) {