[backend/drive] Convert ImageFormat to a closed record

This commit is contained in:
Laura Hausmann 2024-11-07 19:50:47 +01:00
parent 94328a3eef
commit e34b4f5c1a
No known key found for this signature in database
GPG key ID: D044E84C5BE01605

View file

@ -2,8 +2,23 @@ using System.ComponentModel.DataAnnotations;
namespace Iceshrimp.Backend.Core.Services.ImageProcessing;
public abstract record ImageFormat(string Extension, string MimeType)
public abstract record ImageFormat
{
public string Extension { get; init; }
public string MimeType { get; init; }
private ImageFormat(string Extension, string MimeType)
{
this.Extension = Extension;
this.MimeType = MimeType;
}
public void Deconstruct(out string extension, out string mimeType)
{
extension = Extension;
mimeType = MimeType;
}
public record Keep(string Extension, string MimeType) : ImageFormat(Extension, MimeType);
//TODO: public record StripExifAndIcc(string Extension, string MimeType) : ImageFormat(Extension, MimeType);