From 5e8c277b9bc141b691794a2150ad733c24b980f7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Philipp=20H=C3=A4felfinger?= Date: Sat, 2 Sep 2023 16:03:59 +0200 Subject: [PATCH] adds update extension method to update existing images --- src/Piwigo.Client/PiwigoClientExtensions.cs | 23 +++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/src/Piwigo.Client/PiwigoClientExtensions.cs b/src/Piwigo.Client/PiwigoClientExtensions.cs index a3e48c3..b97cd91 100644 --- a/src/Piwigo.Client/PiwigoClientExtensions.cs +++ b/src/Piwigo.Client/PiwigoClientExtensions.cs @@ -26,6 +26,29 @@ public static class PiwigoClientExtensions return await client.Image.AddAsync(metaData, cancellationToken); } + public static async Task UpdateImageAsync(this IPiwigoClient client, int imageId, FileInfo imageToUpload, ImageUpload metaData, + CancellationToken cancellationToken = default) + { + if (client == null) + { + throw new ArgumentNullException(nameof(client)); + } + + if (imageToUpload == null) + { + throw new ArgumentNullException(nameof(imageToUpload)); + } + + if (metaData == null) + { + throw new ArgumentNullException(nameof(metaData)); + } + + await client.CheckSupportedFileTypeAsync(imageToUpload, cancellationToken); + await UploadChunksAsync(client, imageToUpload, metaData.OriginalSum, cancellationToken); + return await client.Image.UpdateAsync(imageId, metaData, cancellationToken); + } + public static async Task UploadImageAsync(this IPiwigoClient client, FileInfo imageToUpload, CancellationToken cancellationToken = default) { if (client == null)