This is an automated email from the ASF dual-hosted git repository.
pvillard pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/nifi.git
The following commit(s) were added to refs/heads/main by this push:
new e2e137f NIFI-8291: Support escaping unicode characters for fields
that previously allowed escaping only of \t, \n\, \r
e2e137f is described below
commit e2e137fced39f184e5998f7c4befe03e70f53016
Author: Mark Payne <[email protected]>
AuthorDate: Wed Mar 3 11:29:06 2021 -0500
NIFI-8291: Support escaping unicode characters for fields that previously
allowed escaping only of \t, \n\, \r
Signed-off-by: Pierre Villard <[email protected]>
This closes #4871.
---
.../src/main/java/org/apache/nifi/csv/CSVUtils.java | 15 ++-------------
.../src/main/java/org/apache/nifi/csv/CSVValidators.java | 2 +-
2 files changed, 3 insertions(+), 14 deletions(-)
diff --git
a/nifi-nar-bundles/nifi-extension-utils/nifi-record-utils/nifi-standard-record-utils/src/main/java/org/apache/nifi/csv/CSVUtils.java
b/nifi-nar-bundles/nifi-extension-utils/nifi-record-utils/nifi-standard-record-utils/src/main/java/org/apache/nifi/csv/CSVUtils.java
index bb45292..82a2c25 100644
---
a/nifi-nar-bundles/nifi-extension-utils/nifi-record-utils/nifi-standard-record-utils/src/main/java/org/apache/nifi/csv/CSVUtils.java
+++
b/nifi-nar-bundles/nifi-extension-utils/nifi-record-utils/nifi-standard-record-utils/src/main/java/org/apache/nifi/csv/CSVUtils.java
@@ -230,7 +230,7 @@ public class CSVUtils {
String value =
context.getProperty(VALUE_SEPARATOR).evaluateAttributeExpressions(variables).getValue();
if (value != null) {
- String unescaped = unescapeJava(value);
+ String unescaped = unescape(value);
if (unescaped.length() == 1) {
return unescaped.charAt(0);
}
@@ -315,21 +315,10 @@ public class CSVUtils {
return format;
}
- public static String unescapeJava(String input) {
+ public static String unescape(String input) {
if (input != null && input.length() > 1) {
input = StringEscapeUtils.unescapeJava(input);
}
return input;
}
-
-
- public static String unescape(final String input) {
- if (input == null) {
- return null;
- }
-
- return input.replace("\\t", "\t")
- .replace("\\n", "\n")
- .replace("\\r", "\r");
- }
}
diff --git
a/nifi-nar-bundles/nifi-extension-utils/nifi-record-utils/nifi-standard-record-utils/src/main/java/org/apache/nifi/csv/CSVValidators.java
b/nifi-nar-bundles/nifi-extension-utils/nifi-record-utils/nifi-standard-record-utils/src/main/java/org/apache/nifi/csv/CSVValidators.java
index f9c01d8..4066810 100644
---
a/nifi-nar-bundles/nifi-extension-utils/nifi-record-utils/nifi-standard-record-utils/src/main/java/org/apache/nifi/csv/CSVValidators.java
+++
b/nifi-nar-bundles/nifi-extension-utils/nifi-record-utils/nifi-standard-record-utils/src/main/java/org/apache/nifi/csv/CSVValidators.java
@@ -89,7 +89,7 @@ public class CSVValidators {
.build();
}
- String unescaped = CSVUtils.unescapeJava(input);
+ String unescaped = CSVUtils.unescape(input);
return new ValidationResult.Builder()
.subject(subject)