You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@linkis.apache.org by pe...@apache.org on 2023/03/06 03:40:45 UTC
[linkis] branch dev-1.3.2 updated: Result csv download export support custom separator (#4300)
This is an automated email from the ASF dual-hosted git repository.
peacewong pushed a commit to branch dev-1.3.2
in repository https://gitbox.apache.org/repos/asf/linkis.git
The following commit(s) were added to refs/heads/dev-1.3.2 by this push:
new 72e91f5cc Result csv download export support custom separator (#4300)
72e91f5cc is described below
commit 72e91f5cc8efb36c9d59b903377da75872d1bdad
Author: Casion <ca...@gmail.com>
AuthorDate: Mon Mar 6 11:40:37 2023 +0800
Result csv download export support custom separator (#4300)
* support custom separator
* Result csv download export support custom separator
---
.../org/apache/linkis/storage/csv/StorageCSVWriter.scala | 5 ++++-
.../apache/linkis/filesystem/restful/api/FsRestfulApi.java | 12 +++++++++++-
2 files changed, 15 insertions(+), 2 deletions(-)
diff --git a/linkis-commons/linkis-storage/src/main/scala/org/apache/linkis/storage/csv/StorageCSVWriter.scala b/linkis-commons/linkis-storage/src/main/scala/org/apache/linkis/storage/csv/StorageCSVWriter.scala
index 5fa9cde25..f9b811b6a 100644
--- a/linkis-commons/linkis-storage/src/main/scala/org/apache/linkis/storage/csv/StorageCSVWriter.scala
+++ b/linkis-commons/linkis-storage/src/main/scala/org/apache/linkis/storage/csv/StorageCSVWriter.scala
@@ -36,7 +36,7 @@ class StorageCSVWriter(
with Logging {
private val delimiter = separator match {
- case "," => ','
+ case separ if StringUtils.isNotEmpty(separ) => separ
case _ => '\t'
}
@@ -58,6 +58,9 @@ class StorageCSVWriter(
} else v
}
}
+ if (logger.isDebugEnabled()) {
+ logger.debug("delimiter:" + delimiter.toString)
+ }
row.map(x => decorateValue(x)).toList.mkString(delimiter.toString) + "\n"
}
diff --git a/linkis-public-enhancements/linkis-script-dev/linkis-storage-script-dev-server/src/main/java/org/apache/linkis/filesystem/restful/api/FsRestfulApi.java b/linkis-public-enhancements/linkis-script-dev/linkis-storage-script-dev-server/src/main/java/org/apache/linkis/filesystem/restful/api/FsRestfulApi.java
index 91a8323db..dd6957308 100644
--- a/linkis-public-enhancements/linkis-script-dev/linkis-storage-script-dev-server/src/main/java/org/apache/linkis/filesystem/restful/api/FsRestfulApi.java
+++ b/linkis-public-enhancements/linkis-script-dev/linkis-storage-script-dev-server/src/main/java/org/apache/linkis/filesystem/restful/api/FsRestfulApi.java
@@ -692,6 +692,7 @@ public class FsRestfulApi {
@RequestParam(value = "charset", defaultValue = "utf-8") String charset,
@RequestParam(value = "outputFileType", defaultValue = "csv") String outputFileType,
@RequestParam(value = "csvSeperator", defaultValue = ",") String csvSeperator,
+ @RequestParam(value = "csvSeparator", defaultValue = ",") String csvSeparator,
@RequestParam(value = "quoteRetouchEnable", required = false) boolean quoteRetouchEnable,
@RequestParam(value = "outputFileName", defaultValue = "downloadResultset")
String outputFileName,
@@ -704,6 +705,15 @@ public class FsRestfulApi {
FsWriter fsWriter = null;
PrintWriter writer = null;
FileSource fileSource = null;
+ if (csvSeparator.equals(",") && !csvSeperator.equals(",")) {
+ csvSeparator = csvSeperator;
+ }
+ LOGGER.info(
+ "resultsetToExcel with outputFileType:{}, csvSeparator:{}, quoteRetouchEnable:{}, charset:{}",
+ outputFileType,
+ csvSeparator,
+ quoteRetouchEnable,
+ charset);
try {
String userName = ModuleUserUtils.getOperationUser(req, "resultsetToExcel " + path);
FsPath fsPath = new FsPath(path);
@@ -737,7 +747,7 @@ public class FsRestfulApi {
case "csv":
if (FileSource$.MODULE$.isTableResultSet(fileSource)) {
fsWriter =
- CSVFsWriter.getCSVFSWriter(charset, csvSeperator, quoteRetouchEnable, outputStream);
+ CSVFsWriter.getCSVFSWriter(charset, csvSeparator, quoteRetouchEnable, outputStream);
} else {
fsWriter =
ScriptFsWriter.getScriptFsWriter(new FsPath(outputFileType), charset, outputStream);
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@linkis.apache.org
For additional commands, e-mail: commits-help@linkis.apache.org