e7bf07c2ad
Adds IFileStorage abstraction and LocalDiskFileStorage for receipt file storage with path-traversal protection, and registers it in DI. Includes 3 TDD-verified xUnit tests. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
9 lines
331 B
C#
9 lines
331 B
C#
namespace ROLAC.API.Services.Storage;
|
|
|
|
public interface IFileStorage
|
|
{
|
|
Task<string> SaveAsync(Stream content, string relativePath, CancellationToken ct = default);
|
|
Task<Stream?> OpenReadAsync(string relativePath, CancellationToken ct = default);
|
|
Task DeleteAsync(string relativePath, CancellationToken ct = default);
|
|
}
|