diff --git a/README.md b/README.md
index 57840d5..79197b2 100644
--- a/README.md
+++ b/README.md
@@ -43,10 +43,10 @@ Logging, monitoring, or tracing outgoing requests across the application.
### 💡 Why Use HttpClientToCurl?
-- 🧪 Instantly visualize and debug request payloads or headers
+- 🧪 Instantly visualise and debug request payloads or headers
- 🤝 Share exact API calls with teammates or QA engineers
- ⚙️ Simplify Postman and CLI reproduction
-- 🪶 Lightweight, dependency-free, and easy to integrate
+- 🧩 Lightweight, dependency-free, and easy to integrate
---
## ⚙️ Installation
@@ -111,25 +111,25 @@ curl -X POST 'http://localhost:1213/v1/api/test' \
## 🧩 Automatic Mode Usage Example
-### 1️⃣ Global Registration
+### 1️⃣ Per-Client Registration
-Enable curl generation globally — every `HttpClient` created through `IHttpClientFactory` will automatically log curl commands.
+Enable curl logging for specific named clients only.
**Program.cs / Startup.cs**
```csharp
using HttpClientToCurl;
-// Register global curl generation
-builder.Services.AddHttpClientToCurlInGeneralMode(builder.Configuration);
+// Register the curl generator once
+builder.Services.AddHttpClientToCurl(builder.Configuration);
-// Register default HttpClient (now curl-enabled)
-builder.Services.AddHttpClient();
+// Enable curl logging for selected clients
+builder.Services.AddHttpClient("my-client1", showCurl: true);
```
**appsettings.json**
```json
"HttpClientToCurl": {
- "TurnOnAll": true, // Master switch: enable or disable the entire HttpClientToCURL logging system
+ "Enable": true, // Master switch: enable or disable the entire HttpClientToCURL logging system
"ShowOnConsole": {
"TurnOn": true, // Enable console output for generated curl commands
@@ -150,21 +150,20 @@ builder.Services.AddHttpClient();
---
-### 2️⃣ Per-Client Registration
+### 2️⃣ Global Registration
-Enable curl logging for specific named clients only.
+Enable curl generation globally — every `HttpClient` created through `IHttpClientFactory` will automatically log curl commands.
**Program.cs / Startup.cs**
```csharp
using HttpClientToCurl;
-// Register the curl generator once
-builder.Services.AddHttpClientToCurl(builder.Configuration);
+// Register global curl generation
+builder.Services.AddAllHttpClientToCurl(builder.Configuration);
-// Enable curl logging for selected clients
-builder.Services.AddHttpClient("my-client1", showCurl: true);
+// Register default HttpClient (now curl-enabled)
+builder.Services.AddHttpClient();
```
----
**appsettings.json**
(same configuration options as above)
diff --git a/examples/HttpClientToCurl.Sample.InGlobal/Program.cs b/examples/HttpClientToCurl.Sample.InGlobal/Program.cs
index bd5b837..636813d 100644
--- a/examples/HttpClientToCurl.Sample.InGlobal/Program.cs
+++ b/examples/HttpClientToCurl.Sample.InGlobal/Program.cs
@@ -3,7 +3,7 @@
var builder = WebApplication.CreateBuilder(args);
builder.Services.AddControllers();
-builder.Services.AddHttpClientToCurlInGeneralMode(builder.Configuration);
+builder.Services.AddAllHttpClientToCurl(builder.Configuration);
builder.Services.AddHttpClient();
var app = builder.Build();
diff --git a/examples/HttpClientToCurl.Sample.InGlobal/appsettings.json b/examples/HttpClientToCurl.Sample.InGlobal/appsettings.json
index 279e909..70af6f7 100644
--- a/examples/HttpClientToCurl.Sample.InGlobal/appsettings.json
+++ b/examples/HttpClientToCurl.Sample.InGlobal/appsettings.json
@@ -7,17 +7,17 @@
},
"AllowedHosts": "*",
"HttpClientToCurl": {
- "TurnOnAll": true,
+ "Enable": true,
"ShowOnConsole": {
- "TurnOn": true, //CAUTION: It will be applied when TurnOnAll is 'true'
+ "TurnOn": true, //CAUTION: It will be applied when Enable is 'true'
"NeedAddDefaultHeaders": true,
"EnableCompression": false,
"EnableCodeBeautification": true
},
"SaveToFile": {
- "TurnOn": true, //CAUTION: It will be applied when TurnOnAll is 'true'
+ "TurnOn": true, //CAUTION: It will be applied when Enable is 'true'
"NeedAddDefaultHeaders": true,
"EnableCompression": false,
"Filename": "curl_commands",
diff --git a/examples/HttpClientToCurl.Sample.InSpecific/appsettings.json b/examples/HttpClientToCurl.Sample.InSpecific/appsettings.json
index 279e909..70af6f7 100644
--- a/examples/HttpClientToCurl.Sample.InSpecific/appsettings.json
+++ b/examples/HttpClientToCurl.Sample.InSpecific/appsettings.json
@@ -7,17 +7,17 @@
},
"AllowedHosts": "*",
"HttpClientToCurl": {
- "TurnOnAll": true,
+ "Enable": true,
"ShowOnConsole": {
- "TurnOn": true, //CAUTION: It will be applied when TurnOnAll is 'true'
+ "TurnOn": true, //CAUTION: It will be applied when Enable is 'true'
"NeedAddDefaultHeaders": true,
"EnableCompression": false,
"EnableCodeBeautification": true
},
"SaveToFile": {
- "TurnOn": true, //CAUTION: It will be applied when TurnOnAll is 'true'
+ "TurnOn": true, //CAUTION: It will be applied when Enable is 'true'
"NeedAddDefaultHeaders": true,
"EnableCompression": false,
"Filename": "curl_commands",
diff --git a/src/HttpClientToCurl/Config/CompositConfig.cs b/src/HttpClientToCurl/Config/CompositConfig.cs
index d610b76..5fa5fd2 100644
--- a/src/HttpClientToCurl/Config/CompositConfig.cs
+++ b/src/HttpClientToCurl/Config/CompositConfig.cs
@@ -5,17 +5,17 @@ public sealed class CompositConfig
///
/// Set true to create curl output; false to disable it. Default is true.
///
- public bool TurnOnAll { get; set; } = true;
+ public bool Enable { get; set; } = true;
///
/// Set true to show curl on the console; false to disable it. Default is true.
- /// If TurnOnAll is set to false, it will be ignored.
+ /// If Enable is set to false, it will be ignored.
///
public ConsoleConfig ShowOnConsole { get; set; }
///
/// Set true to save the curl file; false to disable it. Default is true.
- /// If TurnOnAll is set to false, it will be ignored.
+ /// If Enable is set to false, it will be ignored.
///
public FileConfig SaveToFile { get; set; }
}
diff --git a/src/HttpClientToCurl/Extensions/ServiceCollectionExtensions.cs b/src/HttpClientToCurl/Extensions/ServiceCollectionExtensions.cs
index 80ddb98..5a3c48a 100644
--- a/src/HttpClientToCurl/Extensions/ServiceCollectionExtensions.cs
+++ b/src/HttpClientToCurl/Extensions/ServiceCollectionExtensions.cs
@@ -12,7 +12,7 @@ public static class ServiceCollectionExtensions
/// Generating curl script for all HTTP requests.
/// By default, show it in the IDE console.
///
- public static void AddHttpClientToCurlInGeneralMode(
+ public static void AddAllHttpClientToCurl(
this IServiceCollection services,
IConfiguration configuration)
{
diff --git a/src/HttpClientToCurl/HttpMessageHandlers/CurlGeneratorHttpMessageHandler.cs b/src/HttpClientToCurl/HttpMessageHandlers/CurlGeneratorHttpMessageHandler.cs
index ea187b3..9c71cc5 100644
--- a/src/HttpClientToCurl/HttpMessageHandlers/CurlGeneratorHttpMessageHandler.cs
+++ b/src/HttpClientToCurl/HttpMessageHandlers/CurlGeneratorHttpMessageHandler.cs
@@ -13,7 +13,7 @@ protected override Task SendAsync(
CancellationToken cancellationToken)
{
var config = _monitorConfig.CurrentValue;
- if (config.TurnOnAll)
+ if (config.Enable)
{
if (config.ShowOnConsole?.TurnOn ?? false)
{
diff --git a/src/HttpClientToCurl/HttpMessageHandlers/HttpMessageHandlerAppender.cs b/src/HttpClientToCurl/HttpMessageHandlers/HttpMessageHandlerAppender.cs
index fa35ae5..cae95ca 100644
--- a/src/HttpClientToCurl/HttpMessageHandlers/HttpMessageHandlerAppender.cs
+++ b/src/HttpClientToCurl/HttpMessageHandlers/HttpMessageHandlerAppender.cs
@@ -2,6 +2,7 @@
using Microsoft.Extensions.Http;
namespace HttpClientToCurl.HttpMessageHandlers;
+
public class HttpMessageHandlerAppender(IServiceProvider serviceProvider) : IHttpMessageHandlerBuilderFilter
{
public Action Configure(Action next) => builder =>
diff --git a/tests/HttpMessageHandlerTest/UnitTest/Builders/CompositConfigBuilder.cs b/tests/HttpMessageHandlerTest/UnitTest/Builders/CompositConfigBuilder.cs
index 96607d1..4bc457d 100644
--- a/tests/HttpMessageHandlerTest/UnitTest/Builders/CompositConfigBuilder.cs
+++ b/tests/HttpMessageHandlerTest/UnitTest/Builders/CompositConfigBuilder.cs
@@ -10,9 +10,9 @@ public CompositConfigBuilder()
_config = new CompositConfig();
}
- public CompositConfigBuilder SetTurnOnAll(bool turnOnAll)
+ public CompositConfigBuilder SetEnable(bool value)
{
- _config.TurnOnAll = turnOnAll;
+ _config.Enable = value;
return this;
}
diff --git a/tests/HttpMessageHandlerTest/UnitTest/CurlGeneratorHttpMessageHandlerTests.cs b/tests/HttpMessageHandlerTest/UnitTest/CurlGeneratorHttpMessageHandlerTests.cs
index 68b521f..1a0ed3c 100644
--- a/tests/HttpMessageHandlerTest/UnitTest/CurlGeneratorHttpMessageHandlerTests.cs
+++ b/tests/HttpMessageHandlerTest/UnitTest/CurlGeneratorHttpMessageHandlerTests.cs
@@ -14,7 +14,7 @@ public async Task CurlGeneratorHttpMessageHandler_ReturnsResponse_When_TurnOffAl
{
// Arrange
var config = new CompositConfigBuilder()
- .SetTurnOnAll(false)
+ .SetEnable(false)
.Build();
var handler = new CurlGeneratorHttpMessageHandler(new FakeOptionsMonitor(config))
{
@@ -33,11 +33,11 @@ public async Task CurlGeneratorHttpMessageHandler_ReturnsResponse_When_TurnOffAl
}
[Fact]
- public async Task CurlGeneratorHttpMessageHandler_ReturnsResponse_When_TurnOnAll_But_ShowOnConsole_And_SaveToFile_AreNot_Configured()
+ public async Task CurlGeneratorHttpMessageHandler_ReturnsResponse_When_Enable_But_ShowOnConsole_And_SaveToFile_AreNot_Configured()
{
// Arrange
var config = new CompositConfigBuilder()
- .SetTurnOnAll(true)
+ .SetEnable(true)
.SetShowOnConsole(null)
.SetSaveToFile(null)
.Build();
@@ -58,11 +58,11 @@ public async Task CurlGeneratorHttpMessageHandler_ReturnsResponse_When_TurnOnAll
}
[Fact]
- public async Task CurlGeneratorHttpMessageHandler_ReturnsResponse_When_TurnOnAll_But_ShowOnConsole_And_SaveToFile_TurnOff()
+ public async Task CurlGeneratorHttpMessageHandler_ReturnsResponse_When_Enable_But_ShowOnConsole_And_SaveToFile_TurnOff()
{
// Arrange
var config = new CompositConfigBuilder()
- .SetTurnOnAll(true)
+ .SetEnable(true)
.SetShowOnConsole(new ConsoleConfig
{
TurnOn = false,
@@ -93,7 +93,7 @@ public async Task CurlGeneratorHttpMessageHandler_WritesToConsole_When_ShowOnCon
{
// Arrange
var config = new CompositConfigBuilder()
- .SetTurnOnAll(true)
+ .SetEnable(true)
.SetShowOnConsole(new ConsoleConfig
{
TurnOn = true,
@@ -139,7 +139,7 @@ public async Task CurlGeneratorHttpMessageHandler_WritesToFile_When_SaveToFile_T
var filename = Guid.NewGuid().ToString("N");
var config = new CompositConfigBuilder()
- .SetTurnOnAll(true)
+ .SetEnable(true)
.SetSaveToFile(new FileConfig
{
TurnOn = true,
@@ -194,7 +194,7 @@ public async Task CurlGeneratorHttpMessageHandler_WritesToConsole_And_WritesToFi
var filename = Guid.NewGuid().ToString("N");
var config = new CompositConfigBuilder()
- .SetTurnOnAll(true)
+ .SetEnable(true)
.SetShowOnConsole(new ConsoleConfig
{
TurnOn = true,
diff --git a/tests/HttpMessageHandlerTest/UnitTest/HttpMessageHandlerAppenderTests.cs b/tests/HttpMessageHandlerTest/UnitTest/HttpMessageHandlerAppenderTests.cs
index 8b72e3a..080bdf0 100644
--- a/tests/HttpMessageHandlerTest/UnitTest/HttpMessageHandlerAppenderTests.cs
+++ b/tests/HttpMessageHandlerTest/UnitTest/HttpMessageHandlerAppenderTests.cs
@@ -5,13 +5,14 @@
using HttpMessageHandlerTest.UnitTest.Fakes;
namespace HttpMessageHandlerTest.UnitTest;
+
public class HttpMessageHandlerAppenderTests
{
[Fact]
public void HttpMessageHandlerAppender_Adds_Handler_To_Builder()
{
// Arrange
- var config = new CompositConfig { TurnOnAll = false };
+ var config = new CompositConfig { Enable = false };
var handler = new CurlGeneratorHttpMessageHandler(new FakeOptionsMonitor(config));
var sp = new FakeServiceProvider(handler);
var appender = new HttpMessageHandlerAppender(sp);
diff --git a/tests/HttpMessageHandlerTest/UnitTest/ServiceCollectionExtensionsTests.cs b/tests/HttpMessageHandlerTest/UnitTest/ServiceCollectionExtensionsTests.cs
index 75c8f37..ddd2bca 100644
--- a/tests/HttpMessageHandlerTest/UnitTest/ServiceCollectionExtensionsTests.cs
+++ b/tests/HttpMessageHandlerTest/UnitTest/ServiceCollectionExtensionsTests.cs
@@ -12,7 +12,7 @@ namespace HttpMessageHandlerTest.UnitTest;
public class ServiceCollectionExtensionsTests
{
[Fact]
- public void ServiceCollectionExtensions_Register_Services_In_GeneralMode()
+ public void ServiceCollectionExtensions_Register_Services_For_All()
{
// Arrange
var services = new ServiceCollection();
@@ -20,7 +20,7 @@ public void ServiceCollectionExtensions_Register_Services_In_GeneralMode()
.Build();
// Act
- services.AddHttpClientToCurlInGeneralMode(configuration);
+ services.AddAllHttpClientToCurl(configuration);
var provider = services.BuildServiceProvider();
// Assert