frankframework / frankframework/frankframework

Further improve IBasicFileSystem to use generic F instead of Strings for file/folder names

Open
#7,193 1 comment 0 reactions 0 assignees View on GitHub
FileSystem Technical Debt
Dominant language
Java
Stars
167
Forks
87
Avg merge
1d 2h
Merged PRs (30d)
206

Description

### Related Problem or Business Case

Right now we mainly use the generic `F` when verifying if a file is present, to read/write to a (remote) file and get file information.
However the folder methods still take `String` as an argument.

In most scenario's this is not a big deal but with the Amazon S3 implementation people are allowed to prefix their files with the bucketName they wish to upload their content to. Due to this limitation no folders can be created, removed nor can files be copied to other buckets. In other words, the bucket prefix is only half-implemented.

### Describe the Feature

To be able to use the bucket prefix (in AmazonS3FileSystem) with every `FileSystemActor.FileSystemAction`.

Affected methods in interface IBasicFileSystem are:
- list(String, TypeFilter)
- folderExists(String)
- moveFile(F, String)
- copyFile(F, String, boolean)
- createFolder(String)
- removeFolder(String)

Additionally, in order for these operations to work on other buckets than the default with files returned from the `LIST` operation, also the implementation of `FileSystemUtils.getFileInfo()` should be updated so that the filename in the returned XML includes the actual bucket-name.
### Collaboration with External Companies

No, community resolution only

### Anything else?

_No response_

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.