This is an automated email from the ASF dual-hosted git repository.
zehnder pushed a commit to branch dev
in repository https://gitbox.apache.org/repos/asf/streampipes.git
The following commit(s) were added to refs/heads/dev by this push:
new 513292ad83 refactor(#2529): Deprecate isOriginalFileName in FileAPI
and remove parameter from REST API (#2541)
513292ad83 is described below
commit 513292ad830a68c3477ef68981e1a4a19dd9d99d
Author: Philipp Zehnder <[email protected]>
AuthorDate: Thu Mar 14 07:45:12 2024 +0100
refactor(#2529): Deprecate isOriginalFileName in FileAPI and remove
parameter from REST API (#2541)
---
.../org/apache/streampipes/client/api/FileApi.java | 29 ++++++++++++----------
.../streampipes/manager/file/FileManager.java | 29 ++++++----------------
.../streampipes/rest/impl/PipelineElementFile.java | 14 ++---------
3 files changed, 26 insertions(+), 46 deletions(-)
diff --git
a/streampipes-client/src/main/java/org/apache/streampipes/client/api/FileApi.java
b/streampipes-client/src/main/java/org/apache/streampipes/client/api/FileApi.java
index 321bf89955..fa80926a46 100644
---
a/streampipes-client/src/main/java/org/apache/streampipes/client/api/FileApi.java
+++
b/streampipes-client/src/main/java/org/apache/streampipes/client/api/FileApi.java
@@ -22,8 +22,6 @@ import org.apache.streampipes.client.http.BinaryGetRequest;
import org.apache.streampipes.client.model.StreamPipesClientConfig;
import org.apache.streampipes.client.util.StreamPipesApiPath;
-import java.util.Map;
-
public class FileApi extends AbstractClientApi implements IFileApi {
@@ -31,24 +29,29 @@ public class FileApi extends AbstractClientApi implements
IFileApi {
super(clientConfig);
}
+
+ /**
+ * @deprecated As of release 0.95.0, replaced by {@link
#getFileContent(String)}.
+ * The parameter isOriginalFileName is not used anymore.
+ */
+ @Deprecated(since = "0.95.0", forRemoval = true)
public byte[] getFileContent(String filename, boolean isOriginalFileName) {
- return new BinaryGetRequest(clientConfig, getBaseResourcePath(filename)
- .withQueryParameters(Map.of("isOriginalFilename",
String.valueOf(isOriginalFileName))), null)
- .executeRequest();
+ return this.getFileContent(filename);
}
@Override
- public byte[] getFileContent(String fileId) {
- return getFileContent(fileId, false);
- }
-
- public String getFileContentAsString(String filename, boolean
isOriginalFileName) {
- return new String(getFileContent(filename, isOriginalFileName));
+ public byte[] getFileContent(String filename) {
+ return new BinaryGetRequest(
+ clientConfig,
+ getBaseResourcePath(filename),
+ null
+ )
+ .executeRequest();
}
@Override
- public String getFileContentAsString(String fileId) {
- return getFileContentAsString(fileId, false);
+ public String getFileContentAsString(String filename) {
+ return new String(getFileContent(filename));
}
@Override
diff --git
a/streampipes-pipeline-management/src/main/java/org/apache/streampipes/manager/file/FileManager.java
b/streampipes-pipeline-management/src/main/java/org/apache/streampipes/manager/file/FileManager.java
index 025dbb0231..192d124bbe 100644
---
a/streampipes-pipeline-management/src/main/java/org/apache/streampipes/manager/file/FileManager.java
+++
b/streampipes-pipeline-management/src/main/java/org/apache/streampipes/manager/file/FileManager.java
@@ -43,28 +43,18 @@ public class FileManager {
return filetypes != null ? filterFiletypes(allFiles, filetypes) : allFiles;
}
- public static File getFileByOriginalName(String originalName) throws
IOException {
- List<FileMetadata> allFiles =
getFileMetadataStorage().getAllFileMetadataDescriptions();
-
- var file = allFiles
- .stream()
- .filter(fileMetadata ->
fileMetadata.getFilename().equals(originalName))
- .findFirst();
-
- if (file.isEmpty()){
- throw new IOException("No file with original name '%s'
found".formatted(originalName));
- }
- return new FileHandler().getFile(file.get().getFilename());
+ public static File getFile(String filename) {
+ return new FileHandler().getFile(filename);
}
/**
* Store a file in the internal file storage.
* For csv files the bom is removed
*
- * @param user who created the file
- * @param filename
+ * @param user who created the file
+ * @param filename name of file
* @param fileInputStream content of file
- * @return
+ * @return metadata of file
*/
public static FileMetadata storeFile(String user,
String filename,
@@ -86,16 +76,13 @@ public class FileManager {
getFileMetadataStorage().deleteFileMetadata(id);
}
- public static File getFile(String filename) {
- return new FileHandler().getFile(filename);
- }
/**
* Remove Byte Order Mark (BOM) from csv files
*
- * @param fileInputStream
- * @param filetype
- * @return
+ * @param fileInputStream content of file
+ * @param filetype file of type
+ * @return input stream without BOM
*/
public static InputStream cleanFile(InputStream fileInputStream, String
filetype) {
if (Filetypes.CSV.getFileExtensions().contains(filetype.toLowerCase())) {
diff --git
a/streampipes-rest/src/main/java/org/apache/streampipes/rest/impl/PipelineElementFile.java
b/streampipes-rest/src/main/java/org/apache/streampipes/rest/impl/PipelineElementFile.java
index bdf46f1218..89373cce05 100644
---
a/streampipes-rest/src/main/java/org/apache/streampipes/rest/impl/PipelineElementFile.java
+++
b/streampipes-rest/src/main/java/org/apache/streampipes/rest/impl/PipelineElementFile.java
@@ -106,20 +106,10 @@ public class PipelineElementFile extends
AbstractAuthGuardedRestResource {
description = "The name of the file to be retrieved",
required = true
)
- @PathVariable("filename") String filename,
- @Parameter(
- in = ParameterIn.QUERY,
- description = "Determines if the provided file name is the original
file name "
- + "as per upload."
- )
- @RequestParam(value = "isOriginalFilename", defaultValue = "false")
boolean isOriginalFilename
+ @PathVariable("filename") String filename
) {
try {
- if (isOriginalFilename) {
- return
ok(getFileContents(FileManager.getFileByOriginalName(filename)));
- } else {
- return ok(getFileContents(FileManager.getFile(filename)));
- }
+ return ok(getFileContents(FileManager.getFile(filename)));
} catch (IOException e) {
throw new SpMessageException(
NOT_FOUND,