summary refs log tree commit diff
path: root/extra/admin-api/Spacebar.Cdn/Controllers/UserController.cs
diff options
context:
space:
mode:
authorRory& <root@rory.gay>2026-04-11 21:38:36 +0200
committerRory& <root@rory.gay>2026-04-11 21:39:47 +0200
commit1d7627454675c9ebfa7c1a9c5add79f8fcf36691 (patch)
treee866e38e88119c9ef70abd4452d6049a57459b5c /extra/admin-api/Spacebar.Cdn/Controllers/UserController.cs
parentFunctioning CDN-CS workers (diff)
downloadserver-ts-1d7627454675c9ebfa7c1a9c5add79f8fcf36691.tar.xz
Cdn cs worker cleanup
Diffstat (limited to 'extra/admin-api/Spacebar.Cdn/Controllers/UserController.cs')
-rw-r--r--extra/admin-api/Spacebar.Cdn/Controllers/UserController.cs154
1 files changed, 77 insertions, 77 deletions
diff --git a/extra/admin-api/Spacebar.Cdn/Controllers/UserController.cs b/extra/admin-api/Spacebar.Cdn/Controllers/UserController.cs

index 97626609..a6c47036 100644 --- a/extra/admin-api/Spacebar.Cdn/Controllers/UserController.cs +++ b/extra/admin-api/Spacebar.Cdn/Controllers/UserController.cs
@@ -1,77 +1,77 @@ -using ArcaneLibs.Extensions.Streams; -using Microsoft.AspNetCore.Mvc; -using Spacebar.AdminApi.TestClient.Services.Services; -using Spacebar.Cdn.Extensions; -using Spacebar.Interop.Cdn.Abstractions; - -namespace Spacebar.Cdn.Controllers; - -[ApiController] -public class UserController(LruFileCache lfc, IFileSource fs, DiscordImageResizeService dirs) : ImageController { - [HttpGet("/avatars/{userId}/{hash}.{ext}")] - public async Task<IActionResult> GetUserAvatar(string userId, string hash, string ext) { - var originalKey = fs.BaseUrl + Request.Path; - var cacheKey = Request.Path + Request.QueryString; - - DiscordImageResizeParams resizeParams = GetResizeParams(); - - var entry = await lfc.GetOrAdd(cacheKey, async () => { - var original = await fs.GetFile(Request.Path); - - if (Request.Query.Any()) { - using var img = await original.ToMagickImageCollectionAsync(); - dirs.Apply(img, resizeParams); - - var outStream = new MemoryStream(); - await img.WriteAsync(outStream, img.First().Format); - outStream.Position = 0; - - return new LruFileCache.Entry() { - Data = outStream.ReadToEnd().ToArray(), - MimeType = original.MimeType - }; - } - - return new LruFileCache.Entry() { - Data = original.Stream.ReadToEnd().ToArray(), - MimeType = original.MimeType - }; - }); - - // byte array with mime type result - return new FileContentResult(entry.Data, entry.MimeType); - } - [HttpGet("/banners/{userId}/{hash}.{ext}")] - public async Task<IActionResult> GetUserBanner(string userId, string hash, string ext) { - var originalKey = fs.BaseUrl + Request.Path; - var cacheKey = Request.Path + Request.QueryString; - - DiscordImageResizeParams resizeParams = GetResizeParams(); - - var entry = await lfc.GetOrAdd(cacheKey, async () => { - var original = await fs.GetFile(Request.Path); - - if (Request.Query.Any()) { - using var img = await original.ToMagickImageCollectionAsync(); - dirs.Apply(img, resizeParams); - - var outStream = new MemoryStream(); - await img.WriteAsync(outStream, img.First().Format); - outStream.Position = 0; - - return new LruFileCache.Entry() { - Data = outStream.ReadToEnd().ToArray(), - MimeType = original.MimeType - }; - } - - return new LruFileCache.Entry() { - Data = original.Stream.ReadToEnd().ToArray(), - MimeType = original.MimeType - }; - }); - - // byte array with mime type result - return new FileContentResult(entry.Data, entry.MimeType); - } -} \ No newline at end of file +// using ArcaneLibs.Extensions.Streams; +// using Microsoft.AspNetCore.Mvc; +// using Spacebar.AdminApi.TestClient.Services.Services; +// using Spacebar.Cdn.Extensions; +// using Spacebar.Interop.Cdn.Abstractions; +// +// namespace Spacebar.Cdn.Controllers; +// +// [ApiController] +// public class UserController(LruFileCache lfc, IFileSource fs, DiscordImageResizeService dirs) : ImageController { +// [HttpGet("/avatars/{userId}/{hash}.{ext}")] +// public async Task<IActionResult> GetUserAvatar(string userId, string hash, string ext) { +// var originalKey = fs.BaseUrl + Request.Path; +// var cacheKey = Request.Path + Request.QueryString; +// +// DiscordImageResizeParams resizeParams = GetResizeParams(); +// +// var entry = await lfc.GetOrAdd(cacheKey, async () => { +// var original = await fs.GetFile(Request.Path); +// +// if (Request.Query.Any()) { +// using var img = await original.ToMagickImageCollectionAsync(); +// dirs.Apply(img, resizeParams); +// +// var outStream = new MemoryStream(); +// await img.WriteAsync(outStream, img.First().Format); +// outStream.Position = 0; +// +// return new LruFileCache.Entry() { +// Data = outStream.ReadToEnd().ToArray(), +// MimeType = original.MimeType +// }; +// } +// +// return new LruFileCache.Entry() { +// Data = original.Stream.ReadToEnd().ToArray(), +// MimeType = original.MimeType +// }; +// }); +// +// // byte array with mime type result +// return new FileContentResult(entry.Data, entry.MimeType); +// } +// [HttpGet("/banners/{userId}/{hash}.{ext}")] +// public async Task<IActionResult> GetUserBanner(string userId, string hash, string ext) { +// var originalKey = fs.BaseUrl + Request.Path; +// var cacheKey = Request.Path + Request.QueryString; +// +// DiscordImageResizeParams resizeParams = GetResizeParams(); +// +// var entry = await lfc.GetOrAdd(cacheKey, async () => { +// var original = await fs.GetFile(Request.Path); +// +// if (Request.Query.Any()) { +// using var img = await original.ToMagickImageCollectionAsync(); +// dirs.Apply(img, resizeParams); +// +// var outStream = new MemoryStream(); +// await img.WriteAsync(outStream, img.First().Format); +// outStream.Position = 0; +// +// return new LruFileCache.Entry() { +// Data = outStream.ReadToEnd().ToArray(), +// MimeType = original.MimeType +// }; +// } +// +// return new LruFileCache.Entry() { +// Data = original.Stream.ReadToEnd().ToArray(), +// MimeType = original.MimeType +// }; +// }); +// +// // byte array with mime type result +// return new FileContentResult(entry.Data, entry.MimeType); +// } +// } \ No newline at end of file