This is an automated email from the ASF dual-hosted git repository.
vinoyang pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/hudi.git
The following commit(s) were added to refs/heads/master by this push:
new fe3f5c2 [HUDI-1913] Using streams instead of loops for input/output
(#2962)
fe3f5c2 is described below
commit fe3f5c2d560d9f27984b97c9840b7572337bd420
Author: zhangminglei <[email protected]>
AuthorDate: Wed May 19 09:13:38 2021 +0800
[HUDI-1913] Using streams instead of loops for input/output (#2962)
---
.../java/org/apache/hudi/cli/utils/InputStreamConsumer.java | 12 ++++--------
.../hudi/common/config/DFSPropertiesConfiguration.java | 8 ++++----
.../org/apache/hudi/utilities/HoodieWithTimelineServer.java | 5 +----
.../apache/hudi/utilities/testutils/UtilitiesTestBase.java | 12 +++---------
4 files changed, 12 insertions(+), 25 deletions(-)
diff --git
a/hudi-cli/src/main/java/org/apache/hudi/cli/utils/InputStreamConsumer.java
b/hudi-cli/src/main/java/org/apache/hudi/cli/utils/InputStreamConsumer.java
index 73aa45c..43636f6 100644
--- a/hudi-cli/src/main/java/org/apache/hudi/cli/utils/InputStreamConsumer.java
+++ b/hudi-cli/src/main/java/org/apache/hudi/cli/utils/InputStreamConsumer.java
@@ -19,7 +19,6 @@
package org.apache.hudi.cli.utils;
import java.io.BufferedReader;
-import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.util.logging.Logger;
@@ -41,13 +40,10 @@ public class InputStreamConsumer extends Thread {
try {
InputStreamReader isr = new InputStreamReader(is);
BufferedReader br = new BufferedReader(isr);
- String line;
- while ((line = br.readLine()) != null) {
- LOG.info(line);
- }
- } catch (IOException ioe) {
- LOG.severe(ioe.toString());
- ioe.printStackTrace();
+ br.lines().forEach(LOG::info);
+ } catch (Exception e) {
+ LOG.severe(e.toString());
+ e.printStackTrace();
}
}
diff --git
a/hudi-common/src/main/java/org/apache/hudi/common/config/DFSPropertiesConfiguration.java
b/hudi-common/src/main/java/org/apache/hudi/common/config/DFSPropertiesConfiguration.java
index cd4ade1..f97e4ad 100644
---
a/hudi-common/src/main/java/org/apache/hudi/common/config/DFSPropertiesConfiguration.java
+++
b/hudi-common/src/main/java/org/apache/hudi/common/config/DFSPropertiesConfiguration.java
@@ -100,10 +100,9 @@ public class DFSPropertiesConfiguration {
*/
public void addProperties(BufferedReader reader) throws IOException {
try {
- String line;
- while ((line = reader.readLine()) != null) {
+ reader.lines().forEach(line -> {
if (line.startsWith("#") || line.equals("") || !line.contains("=")) {
- continue;
+ return;
}
String[] split = splitProperty(line);
if (line.startsWith("include=") || line.startsWith("include =")) {
@@ -111,7 +110,8 @@ public class DFSPropertiesConfiguration {
} else {
props.setProperty(split[0], split[1]);
}
- }
+ });
+
} finally {
reader.close();
}
diff --git
a/hudi-utilities/src/main/java/org/apache/hudi/utilities/HoodieWithTimelineServer.java
b/hudi-utilities/src/main/java/org/apache/hudi/utilities/HoodieWithTimelineServer.java
index 49b9350..326f56a 100644
---
a/hudi-utilities/src/main/java/org/apache/hudi/utilities/HoodieWithTimelineServer.java
+++
b/hudi-utilities/src/main/java/org/apache/hudi/utilities/HoodieWithTimelineServer.java
@@ -112,10 +112,7 @@ public class HoodieWithTimelineServer implements
Serializable {
try (BufferedReader rd = new BufferedReader(new
InputStreamReader(response.getEntity().getContent()))) {
StringBuilder result = new StringBuilder();
- String line;
- while ((line = rd.readLine()) != null) {
- result.append(line);
- }
+ rd.lines().forEach(result::append);
System.out.println("Got result (" + result + ")");
return result.toString();
} catch (IOException e) {
diff --git
a/hudi-utilities/src/test/java/org/apache/hudi/utilities/testutils/UtilitiesTestBase.java
b/hudi-utilities/src/test/java/org/apache/hudi/utilities/testutils/UtilitiesTestBase.java
index 0adef52..60f5428 100644
---
a/hudi-utilities/src/test/java/org/apache/hudi/utilities/testutils/UtilitiesTestBase.java
+++
b/hudi-utilities/src/test/java/org/apache/hudi/utilities/testutils/UtilitiesTestBase.java
@@ -212,14 +212,11 @@ public class UtilitiesTestBase {
// to get hold of resources bundled with jar
private static ClassLoader classLoader = Helpers.class.getClassLoader();
- public static String readFile(String testResourcePath) throws IOException {
+ public static String readFile(String testResourcePath) {
BufferedReader reader =
new BufferedReader(new
InputStreamReader(classLoader.getResourceAsStream(testResourcePath)));
StringBuffer sb = new StringBuffer();
- String line;
- while ((line = reader.readLine()) != null) {
- sb.append(line + "\n");
- }
+ reader.lines().forEach(line -> sb.append(line).append("\n"));
return sb.toString();
}
@@ -227,10 +224,7 @@ public class UtilitiesTestBase {
BufferedReader reader =
new BufferedReader(new InputStreamReader(new
FileInputStream(absolutePathForResource)));
StringBuffer sb = new StringBuffer();
- String line;
- while ((line = reader.readLine()) != null) {
- sb.append(line + "\n");
- }
+ reader.lines().forEach(line -> sb.append(line).append("\n"));
return sb.toString();
}