From a14ada60b407778ad54d3e4cd2e5e92af3d5879e Mon Sep 17 00:00:00 2001 From: Developer 02 Date: Tue, 14 Jan 2025 21:57:42 +0100 Subject: [PATCH] =?UTF-8?q?feat(ConfigExtensions):=20Erstellte=20Erweiteru?= =?UTF-8?q?ngsmethoden=20f=C3=BCr=20dieses=20IEnumerable,=20um?= =?UTF-8?q?=20nach=20Route=20und=20Publikum=20zu=20erhalten.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Config/AuthApiParams.cs | 4 +-- .../Config/ConfigExtensions.cs | 25 +++++++++++++++++++ src/DigitalData.Auth.API/Config/Consumer.cs | 4 +-- 3 files changed, 27 insertions(+), 6 deletions(-) create mode 100644 src/DigitalData.Auth.API/Config/ConfigExtensions.cs diff --git a/src/DigitalData.Auth.API/Config/AuthApiParams.cs b/src/DigitalData.Auth.API/Config/AuthApiParams.cs index 9485949..c6efabf 100644 --- a/src/DigitalData.Auth.API/Config/AuthApiParams.cs +++ b/src/DigitalData.Auth.API/Config/AuthApiParams.cs @@ -1,6 +1,4 @@ -using DigitalData.Auth.API.Config; - -namespace DigitalData.Core.Tests.API.Config +namespace DigitalData.Auth.API.Config { public class AuthApiParams { diff --git a/src/DigitalData.Auth.API/Config/ConfigExtensions.cs b/src/DigitalData.Auth.API/Config/ConfigExtensions.cs new file mode 100644 index 0000000..80b6e3b --- /dev/null +++ b/src/DigitalData.Auth.API/Config/ConfigExtensions.cs @@ -0,0 +1,25 @@ +namespace DigitalData.Auth.API.Config +{ + public static class ConfigExtensions +{ + public static Consumer? GetByAudience(this IEnumerable audiances, string name) => audiances.FirstOrDefault(a => a.Audience == name); + + public static Consumer? GetByRoute(this IEnumerable audiances, string route) => audiances.FirstOrDefault(a => a.Route == route); + + public static bool TryGetByAudience(this IEnumerable audiances, string audience, out Consumer audiance) + { +#pragma warning disable CS8601 // Possible null reference assignment. + audiance = audiances.GetByAudience(audience); +#pragma warning restore CS8601 // Possible null reference assignment. + return audiance is not null; + } + + public static bool TryGetByRoute(this IEnumerable audiances, string route, out Consumer audiance) + { +#pragma warning disable CS8601 // Possible null reference assignment. + audiance = audiances.SingleOrDefault(a => a.Route == route); +#pragma warning restore CS8601 // Possible null reference assignment. + return audiance is not null; + } + } +} \ No newline at end of file diff --git a/src/DigitalData.Auth.API/Config/Consumer.cs b/src/DigitalData.Auth.API/Config/Consumer.cs index f2c33ef..66b0a4f 100644 --- a/src/DigitalData.Auth.API/Config/Consumer.cs +++ b/src/DigitalData.Auth.API/Config/Consumer.cs @@ -1,6 +1,4 @@ -using DigitalData.Auth.API.Config; - -namespace DigitalData.Core.Tests.API.Config +namespace DigitalData.Auth.API.Config { public class Consumer {