Refactor duplicated S3 access interfaces into shared S3TestcontainerAccess
- Dominant language
- Java
- Stars
- 2.1k
- Forks
- 522
- Avg merge
- 1d 22h
- Merged PRs (30d)
- 137
Description
### Is your feature request related to a problem? Please describe.
The `MinioAccess` and `RustfsAccess` interfaces currently duplicate the same S3 access API definitions, including identical default implementations of `s3put()`. Since both interfaces provide the same behavior, maintaining separate copies introduces unnecessary duplication and increases the risk of inconsistencies over time.
Any future enhancement, bug fix, or API change to the S3 testcontainer support would need to be applied in two places, making maintenance more error-prone and increasing the likelihood of the implementations diverging. Consolidating the shared functionality into a common abstraction would reduce maintenance overhead, improve consistency, and make future updates easier to manage.
### Describe the solution you'd like
_No response_
### Describe alternatives you've considered
_No response_
### Additional context
_No response_
Contributor guide
Research direction
Locate the MinioAccess and RustfsAccess interfaces in the S3 testcontainer support and compare their API definitions and s3put() defaults. Consolidate the duplicated behavior into a shared S3TestcontainerAccess abstraction, then verify that both access paths retain the same API and behavior using the relevant testcontainer tests.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- testing
- Issue type
- Refactor
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 55/100