From db923681c000cbf046d8dc106efd44e2ee1386bd Mon Sep 17 00:00:00 2001 From: BEN ABT Date: Sun, 13 Apr 2025 13:09:24 +0200 Subject: [PATCH] Update copyright notices and improve code quality This commit updates copyright comments across multiple files to include a complete URL for the copyright holder. It also enhances type safety and readability by changing variable types and using nullable reference types. The indentation size in the `.editorconfig` file has been changed from 4 to 2, affecting code formatting. Additionally, test files have been updated to use shorthand syntax for initializing `HeaderDictionary`. These changes aim to improve code quality, consistency, and adherence to modern C# practices. --- .editorconfig | 1 + .../Controllers/HomeController.cs | 2 +- .../Program.cs | 2 +- .../HttpClientHintsHttpContextExtensions.cs | 14 +++++++------- .../HttpClientHintsMiddlewareConfig.cs | 2 +- .../HttpClientHintsOptions.cs | 2 +- .../HttpClientHintsRegistration.cs | 2 +- .../HttpClientHintsRequestMiddleware.cs | 2 ++ src/HttpClientHints/HttpClientHints.cs | 2 +- src/HttpClientHints/HttpClientHintsInterpreter.cs | 2 +- .../HttpClientHintsHttpContextExtensionsTests.cs | 8 ++++---- .../HttpClientHintsRegistrationTests.cs | 2 +- .../HttpClientHintsRequestMiddlewareTests.cs | 2 +- .../HttpClientHintsInterpreterTests.cs | 2 +- 14 files changed, 24 insertions(+), 21 deletions(-) diff --git a/.editorconfig b/.editorconfig index c22c07c..af0952b 100644 --- a/.editorconfig +++ b/.editorconfig @@ -122,6 +122,7 @@ indent_size = 2 # Code files [*.{cs,csx,vb,vbx}] indent_size = 4 +file_header_template = Copyright © https://myCSharp.de - all rights reserved # Organize usings dotnet_sort_system_directives_first = true diff --git a/samples/HttpClientHints.Samples.AspNetCoreMvc/Controllers/HomeController.cs b/samples/HttpClientHints.Samples.AspNetCoreMvc/Controllers/HomeController.cs index 35f0d93..fbd193c 100644 --- a/samples/HttpClientHints.Samples.AspNetCoreMvc/Controllers/HomeController.cs +++ b/samples/HttpClientHints.Samples.AspNetCoreMvc/Controllers/HomeController.cs @@ -1,4 +1,4 @@ -// Copyright © myCSharp.de - all rights reserved +// Copyright © https://myCSharp.de - all rights reserved using Microsoft.AspNetCore.Mvc; diff --git a/samples/HttpClientHints.Samples.AspNetCoreMvc/Program.cs b/samples/HttpClientHints.Samples.AspNetCoreMvc/Program.cs index a19f47e..e0055fb 100644 --- a/samples/HttpClientHints.Samples.AspNetCoreMvc/Program.cs +++ b/samples/HttpClientHints.Samples.AspNetCoreMvc/Program.cs @@ -1,4 +1,4 @@ -// Copyright © myCSharp.de - all rights reserved +// Copyright © https://myCSharp.de - all rights reserved using MyCSharp.HttpClientHints.AspNetCore; diff --git a/src/HttpClientHints.AspNetCore/HttpClientHintsHttpContextExtensions.cs b/src/HttpClientHints.AspNetCore/HttpClientHintsHttpContextExtensions.cs index b6f3ebe..a4e00e5 100644 --- a/src/HttpClientHints.AspNetCore/HttpClientHintsHttpContextExtensions.cs +++ b/src/HttpClientHints.AspNetCore/HttpClientHintsHttpContextExtensions.cs @@ -1,4 +1,4 @@ -// Copyright © myCSharp.de - all rights reserved +// Copyright © https://myCSharp.de - all rights reserved using Microsoft.AspNetCore.Http; using Microsoft.Extensions.Primitives; @@ -23,13 +23,13 @@ public static class HttpClientHintsHttpContextExtensions public static HttpClientHints GetClientHints(this HttpContext context) { // Check if client hints are already cached for this request - if (context.Items.TryGetValue(ClientHintsCacheKey, out var cached) && cached is HttpClientHints hints) + if (context.Items.TryGetValue(ClientHintsCacheKey, out object? cached) && cached is HttpClientHints hints) { return hints; } - + // Create and cache new client hints - var newHints = context.Request.Headers.GetClientHints(); + HttpClientHints newHints = context.Request.Headers.GetClientHints(); context.Items[ClientHintsCacheKey] = newHints; return newHints; } @@ -44,14 +44,14 @@ public static HttpClientHints GetClientHints(this IHeaderDictionary headers) // User Agent headers.TryGetValue("User-Agent", out StringValues userAgentValues); string? userAgent = userAgentValues.Count > 0 ? userAgentValues[0] : null; - + headers.TryGetValue("Sec-CH-UA", out StringValues uaValues); string? ua = uaValues.Count > 0 ? uaValues[0] : null; // Platform headers.TryGetValue("Sec-CH-UA-Platform", out StringValues platformValues); string? platform = platformValues.Count > 0 ? platformValues[0] : null; - + headers.TryGetValue("Sec-CH-UA-Platform-Version", out StringValues platformVersionValues); string? platformVersion = platformVersionValues.Count > 0 ? platformVersionValues[0] : null; @@ -66,7 +66,7 @@ public static HttpClientHints GetClientHints(this IHeaderDictionary headers) // Device headers.TryGetValue("Sec-CH-UA-Model", out StringValues modelValues); string? model = modelValues.Count > 0 ? modelValues[0] : null; - + headers.TryGetValue("Sec-CH-UA-Mobile", out StringValues mobileValues); bool? mobile = HttpClientHintsInterpreter.IsMobile(mobileValues.Count > 0 ? mobileValues[0] : null); diff --git a/src/HttpClientHints.AspNetCore/HttpClientHintsMiddlewareConfig.cs b/src/HttpClientHints.AspNetCore/HttpClientHintsMiddlewareConfig.cs index 6a97604..5050093 100644 --- a/src/HttpClientHints.AspNetCore/HttpClientHintsMiddlewareConfig.cs +++ b/src/HttpClientHints.AspNetCore/HttpClientHintsMiddlewareConfig.cs @@ -1,4 +1,4 @@ -// Copyright © myCSharp.de - all rights reserved +// Copyright © https://myCSharp.de - all rights reserved namespace MyCSharp.HttpClientHints.AspNetCore; diff --git a/src/HttpClientHints.AspNetCore/HttpClientHintsOptions.cs b/src/HttpClientHints.AspNetCore/HttpClientHintsOptions.cs index 5b5c846..f7ff4c4 100644 --- a/src/HttpClientHints.AspNetCore/HttpClientHintsOptions.cs +++ b/src/HttpClientHints.AspNetCore/HttpClientHintsOptions.cs @@ -1,4 +1,4 @@ -// Copyright © myCSharp.de - all rights reserved +// Copyright © https://myCSharp.de - all rights reserved namespace MyCSharp.HttpClientHints.AspNetCore; diff --git a/src/HttpClientHints.AspNetCore/HttpClientHintsRegistration.cs b/src/HttpClientHints.AspNetCore/HttpClientHintsRegistration.cs index 6536127..c700b9d 100644 --- a/src/HttpClientHints.AspNetCore/HttpClientHintsRegistration.cs +++ b/src/HttpClientHints.AspNetCore/HttpClientHintsRegistration.cs @@ -1,4 +1,4 @@ -// Copyright © myCSharp.de - all rights reserved +// Copyright © https://myCSharp.de - all rights reserved using Microsoft.AspNetCore.Builder; using Microsoft.Extensions.DependencyInjection; diff --git a/src/HttpClientHints.AspNetCore/HttpClientHintsRequestMiddleware.cs b/src/HttpClientHints.AspNetCore/HttpClientHintsRequestMiddleware.cs index 90b1f8a..e5d5db5 100644 --- a/src/HttpClientHints.AspNetCore/HttpClientHintsRequestMiddleware.cs +++ b/src/HttpClientHints.AspNetCore/HttpClientHintsRequestMiddleware.cs @@ -1,3 +1,5 @@ +// Copyright © https://myCSharp.de - all rights reserved + using Microsoft.AspNetCore.Http; using Microsoft.Extensions.Options; diff --git a/src/HttpClientHints/HttpClientHints.cs b/src/HttpClientHints/HttpClientHints.cs index 4bffbab..9dcea56 100644 --- a/src/HttpClientHints/HttpClientHints.cs +++ b/src/HttpClientHints/HttpClientHints.cs @@ -1,4 +1,4 @@ -// Copyright © myCSharp.de - all rights reserved +// Copyright © https://myCSharp.de - all rights reserved using Microsoft.Extensions.Primitives; diff --git a/src/HttpClientHints/HttpClientHintsInterpreter.cs b/src/HttpClientHints/HttpClientHintsInterpreter.cs index a37c862..87540b4 100644 --- a/src/HttpClientHints/HttpClientHintsInterpreter.cs +++ b/src/HttpClientHints/HttpClientHintsInterpreter.cs @@ -1,4 +1,4 @@ -// Copyright © myCSharp.de - all rights reserved +// Copyright © https://myCSharp.de - all rights reserved namespace MyCSharp.HttpClientHints; diff --git a/tests/HttpClientHints.AspNetCore.UnitTests/HttpClientHintsHttpContextExtensionsTests.cs b/tests/HttpClientHints.AspNetCore.UnitTests/HttpClientHintsHttpContextExtensionsTests.cs index cb66102..405b4b3 100644 --- a/tests/HttpClientHints.AspNetCore.UnitTests/HttpClientHintsHttpContextExtensionsTests.cs +++ b/tests/HttpClientHints.AspNetCore.UnitTests/HttpClientHintsHttpContextExtensionsTests.cs @@ -1,4 +1,4 @@ -// Copyright © myCSharp.de - all rights reserved +// Copyright © https://myCSharp.de - all rights reserved using Microsoft.AspNetCore.Http; using Microsoft.Extensions.Primitives; @@ -12,7 +12,7 @@ public class HttpClientHintsHttpContextExtensionsTests public void GetClientHints_ReturnsCorrectValues_WhenHeadersArePresent() { // Arrange - HeaderDictionary headers = new HeaderDictionary + HeaderDictionary headers = new() { { "User-Agent", new StringValues("TestUserAgent") }, { "Sec-CH-UA", new StringValues("TestUA") }, @@ -65,7 +65,7 @@ public void GetClientHints_ReturnsNullValues_WhenHeadersAreMissing() public void GetClientHints_ReturnsCorrectMobileValue_WhenMobileHeaderIsTrue() { // Arrange - HeaderDictionary headers = new HeaderDictionary + HeaderDictionary headers = new() { { "Sec-CH-UA-Mobile", new StringValues("?1") } // true }; @@ -81,7 +81,7 @@ public void GetClientHints_ReturnsCorrectMobileValue_WhenMobileHeaderIsTrue() public void GetClientHints_ReturnsCorrectMobileValue_WhenMobileHeaderIsFalse() { // Arrange - HeaderDictionary headers = new HeaderDictionary + HeaderDictionary headers = new() { { "Sec-CH-UA-Mobile", new StringValues("?0") } // false }; diff --git a/tests/HttpClientHints.AspNetCore.UnitTests/HttpClientHintsRegistrationTests.cs b/tests/HttpClientHints.AspNetCore.UnitTests/HttpClientHintsRegistrationTests.cs index 12c331f..a47c53b 100644 --- a/tests/HttpClientHints.AspNetCore.UnitTests/HttpClientHintsRegistrationTests.cs +++ b/tests/HttpClientHints.AspNetCore.UnitTests/HttpClientHintsRegistrationTests.cs @@ -1,4 +1,4 @@ -// Copyright © myCSharp.de - all rights reserved +// Copyright © https://myCSharp.de - all rights reserved using Microsoft.AspNetCore.Builder; using Microsoft.Extensions.DependencyInjection; diff --git a/tests/HttpClientHints.AspNetCore.UnitTests/HttpClientHintsRequestMiddlewareTests.cs b/tests/HttpClientHints.AspNetCore.UnitTests/HttpClientHintsRequestMiddlewareTests.cs index 958e52b..34fe794 100644 --- a/tests/HttpClientHints.AspNetCore.UnitTests/HttpClientHintsRequestMiddlewareTests.cs +++ b/tests/HttpClientHints.AspNetCore.UnitTests/HttpClientHintsRequestMiddlewareTests.cs @@ -1,4 +1,4 @@ -// Copyright © myCSharp.de - all rights reserved +// Copyright © https://myCSharp.de - all rights reserved using Microsoft.AspNetCore.Http; using Microsoft.Extensions.Options; diff --git a/tests/HttpClientHints.UnitTests/HttpClientHintsInterpreterTests.cs b/tests/HttpClientHints.UnitTests/HttpClientHintsInterpreterTests.cs index 7b14bc3..236658f 100644 --- a/tests/HttpClientHints.UnitTests/HttpClientHintsInterpreterTests.cs +++ b/tests/HttpClientHints.UnitTests/HttpClientHintsInterpreterTests.cs @@ -1,4 +1,4 @@ -// Copyright © myCSharp.de - all rights reserved +// Copyright © https://myCSharp.de - all rights reserved using Xunit;