Skip to content

Commit 61baceb

Browse files
author
Amin Purmoradian
committed
fix: rename and format JsonSerializerOptions class
1 parent 93bea24 commit 61baceb

32 files changed

+85
-87
lines changed

src/Ocelot.Provider.Consul/ConsulFileConfigurationRepository.cs

+2-2
Original file line numberDiff line numberDiff line change
@@ -54,14 +54,14 @@ public async Task<Response<FileConfiguration>> Get()
5454

5555
var bytes = queryResult.Response.Value;
5656
var json = Encoding.UTF8.GetString(bytes);
57-
var consulConfig = JsonSerializer.Deserialize<FileConfiguration>(json, JsonSerializerOptionsExtensions.Web);
57+
var consulConfig = JsonSerializer.Deserialize<FileConfiguration>(json, JsonSerializerOptionsFactory.Web);
5858

5959
return new OkResponse<FileConfiguration>(consulConfig);
6060
}
6161

6262
public async Task<Response> Set(FileConfiguration ocelotConfiguration)
6363
{
64-
var json = JsonSerializer.Serialize(ocelotConfiguration, JsonSerializerOptionsExtensions.WebWriteIndented);
64+
var json = JsonSerializer.Serialize(ocelotConfiguration, JsonSerializerOptionsFactory.WebWriteIndented);
6565
var bytes = Encoding.UTF8.GetBytes(json);
6666
var kvPair = new KVPair(_configurationKey)
6767
{

src/Ocelot/Configuration/Repository/DiskFileConfigurationRepository.cs

+2-2
Original file line numberDiff line numberDiff line change
@@ -50,14 +50,14 @@ public Task<Response<FileConfiguration>> Get()
5050
jsonConfiguration = FileSys.ReadAllText(_environmentFile.FullName);
5151
}
5252

53-
var fileConfiguration = JsonSerializer.Deserialize<FileConfiguration>(jsonConfiguration, JsonSerializerOptionsExtensions.Web);
53+
var fileConfiguration = JsonSerializer.Deserialize<FileConfiguration>(jsonConfiguration, JsonSerializerOptionsFactory.Web);
5454

5555
return Task.FromResult<Response<FileConfiguration>>(new OkResponse<FileConfiguration>(fileConfiguration));
5656
}
5757

5858
public Task<Response> Set(FileConfiguration fileConfiguration)
5959
{
60-
var jsonConfiguration = JsonSerializer.Serialize(fileConfiguration, JsonSerializerOptionsExtensions.WebWriteIndented);
60+
var jsonConfiguration = JsonSerializer.Serialize(fileConfiguration, JsonSerializerOptionsFactory.WebWriteIndented);
6161

6262
lock (_lock)
6363
{

src/Ocelot/Configuration/Repository/FileConfigurationPoller.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -96,7 +96,7 @@ private async Task Poll()
9696
/// <returns>hash of the config.</returns>
9797
private static string ToJson(FileConfiguration config)
9898
{
99-
var currentHash = JsonSerializer.Serialize(config, JsonSerializerOptionsExtensions.Web);
99+
var currentHash = JsonSerializer.Serialize(config, JsonSerializerOptionsFactory.Web);
100100
return currentHash;
101101
}
102102

src/Ocelot/DependencyInjection/ConfigurationBuilderExtensions.cs

+3-3
Original file line numberDiff line numberDiff line change
@@ -134,7 +134,7 @@ private static string GetMergedOcelotJson(string folder, IWebHostEnvironment env
134134
}
135135

136136
var lines = File.ReadAllText(file.FullName);
137-
var config = JsonSerializer.Deserialize<FileConfiguration>(lines, JsonSerializerOptionsExtensions.Web);
137+
var config = JsonSerializer.Deserialize<FileConfiguration>(lines, JsonSerializerOptionsFactory.Web);
138138
if (file.Name.Equals(globalFileInfo.Name, StringComparison.OrdinalIgnoreCase) &&
139139
file.FullName.Equals(globalFileInfo.FullName, StringComparison.OrdinalIgnoreCase))
140140
{
@@ -145,7 +145,7 @@ private static string GetMergedOcelotJson(string folder, IWebHostEnvironment env
145145
fileConfiguration.Routes.AddRange(config.Routes);
146146
}
147147

148-
return JsonSerializer.Serialize(fileConfiguration, JsonSerializerOptionsExtensions.WebWriteIndented);
148+
return JsonSerializer.Serialize(fileConfiguration, JsonSerializerOptionsFactory.WebWriteIndented);
149149
}
150150

151151
/// <summary>
@@ -162,7 +162,7 @@ private static string GetMergedOcelotJson(string folder, IWebHostEnvironment env
162162
public static IConfigurationBuilder AddOcelot(this IConfigurationBuilder builder, FileConfiguration fileConfiguration,
163163
string primaryConfigFile = null, bool? optional = null, bool? reloadOnChange = null) // optional injections
164164
{
165-
var json = JsonSerializer.Serialize(fileConfiguration, JsonSerializerOptionsExtensions.WebWriteIndented);
165+
var json = JsonSerializer.Serialize(fileConfiguration, JsonSerializerOptionsFactory.WebWriteIndented);
166166
return AddOcelotJsonFile(builder, json, primaryConfigFile, optional, reloadOnChange);
167167
}
168168

src/Ocelot/Infrastructure/JsonSerializerOptionsExtensions.cs

-29
This file was deleted.
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
using System.Text.Encodings.Web;
2+
using System.Text.Json;
3+
using System.Text.Json.Serialization;
4+
using System.Text.Unicode;
5+
6+
namespace Ocelot.Infrastructure;
7+
8+
public static class JsonSerializerOptionsFactory
9+
{
10+
public static readonly JsonSerializerOptions Web = new()
11+
{
12+
Encoder = JavaScriptEncoder.Create(UnicodeRanges.All),
13+
NumberHandling = JsonNumberHandling.AllowReadingFromString,
14+
PropertyNameCaseInsensitive = true,
15+
ReferenceHandler = ReferenceHandler.IgnoreCycles,
16+
WriteIndented = false
17+
};
18+
19+
public static readonly JsonSerializerOptions WebWriteIndented = new()
20+
{
21+
Encoder = JavaScriptEncoder.Create(UnicodeRanges.All),
22+
NumberHandling = JsonNumberHandling.AllowReadingFromString,
23+
PropertyNameCaseInsensitive = true,
24+
ReferenceHandler = ReferenceHandler.IgnoreCycles,
25+
WriteIndented = true
26+
};
27+
}

src/Ocelot/Metadata/DownstreamRouteExtensions.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ public static T GetMetadata<T>(this DownstreamRoute downstreamRoute, string key,
7474
}
7575

7676
return (T)ConvertTo(typeof(T), metadataValue, downstreamRoute.MetadataOptions,
77-
jsonSerializerOptions ?? JsonSerializerOptionsExtensions.Web);
77+
jsonSerializerOptions ?? JsonSerializerOptionsFactory.Web);
7878
}
7979

8080
/// <summary>

src/Ocelot/RateLimiting/DistributedCacheRateLimitStorage.cs

+2-2
Original file line numberDiff line numberDiff line change
@@ -17,15 +17,15 @@ public class DistributedCacheRateLimitStorage : IRateLimitStorage
1717
public DistributedCacheRateLimitStorage(IDistributedCache memoryCache) => _memoryCache = memoryCache;
1818

1919
public void Set(string id, RateLimitCounter counter, TimeSpan expirationTime)
20-
=> _memoryCache.SetString(id, JsonSerializer.Serialize(counter, JsonSerializerOptionsExtensions.Web), new DistributedCacheEntryOptions().SetAbsoluteExpiration(expirationTime));
20+
=> _memoryCache.SetString(id, JsonSerializer.Serialize(counter, JsonSerializerOptionsFactory.Web), new DistributedCacheEntryOptions().SetAbsoluteExpiration(expirationTime));
2121

2222
public bool Exists(string id) => !string.IsNullOrEmpty(_memoryCache.GetString(id));
2323

2424
public RateLimitCounter? Get(string id)
2525
{
2626
var stored = _memoryCache.GetString(id);
2727
return !string.IsNullOrEmpty(stored)
28-
? JsonSerializer.Deserialize<RateLimitCounter>(stored, JsonSerializerOptionsExtensions.Web)
28+
? JsonSerializer.Deserialize<RateLimitCounter>(stored, JsonSerializerOptionsFactory.Web)
2929
: null;
3030
}
3131

test/Ocelot.AcceptanceTests/Caching/CachingTests.cs

+2-2
Original file line numberDiff line numberDiff line change
@@ -299,7 +299,7 @@ private void ThenTheCounterValueShouldBe(int expected)
299299
LastName = "Test",
300300
};
301301

302-
var testBody1String = JsonSerializer.Serialize(testBody1, JsonSerializerOptionsExtensions.Web);
302+
var testBody1String = JsonSerializer.Serialize(testBody1, JsonSerializerOptionsFactory.Web);
303303

304304
var testBody2 = new TestBody
305305
{
@@ -309,7 +309,7 @@ private void ThenTheCounterValueShouldBe(int expected)
309309
LastName = "Test",
310310
};
311311

312-
var testBody2String = JsonSerializer.Serialize(testBody2, JsonSerializerOptionsExtensions.Web);
312+
var testBody2String = JsonSerializer.Serialize(testBody2, JsonSerializerOptionsFactory.Web);
313313

314314
return (testBody1String, testBody2String);
315315
}

test/Ocelot.AcceptanceTests/Configuration/ConfigurationInConsulTests.cs

+3-3
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,7 @@ private void GivenThereIsAFakeConsulServiceDiscoveryProvider(string url, string
9090
{
9191
if (context.Request.Method.ToLower() == "get" && context.Request.Path.Value == "/v1/kv/InternalConfiguration")
9292
{
93-
var json = JsonSerializer.Serialize(_config, JsonSerializerOptionsExtensions.Web);
93+
var json = JsonSerializer.Serialize(_config, JsonSerializerOptionsFactory.Web);
9494

9595
var bytes = Encoding.UTF8.GetBytes(json);
9696

@@ -110,9 +110,9 @@ private void GivenThereIsAFakeConsulServiceDiscoveryProvider(string url, string
110110
// var json = reader.ReadToEnd();
111111
var json = await reader.ReadToEndAsync();
112112

113-
_config = JsonSerializer.Deserialize<FileConfiguration>(json, JsonSerializerOptionsExtensions.Web);
113+
_config = JsonSerializer.Deserialize<FileConfiguration>(json, JsonSerializerOptionsFactory.Web);
114114

115-
var response = JsonSerializer.Serialize(true, JsonSerializerOptionsExtensions.Web);
115+
var response = JsonSerializer.Serialize(true, JsonSerializerOptionsFactory.Web);
116116

117117
await context.Response.WriteAsync(response);
118118
}

test/Ocelot.AcceptanceTests/ServiceDiscovery/ConsulConfigurationInConsulTests.cs

+5-5
Original file line numberDiff line numberDiff line change
@@ -363,14 +363,14 @@ private void GivenThereIsAFakeConsulServiceDiscoveryProvider(string url, string
363363
{
364364
if (context.Request.Method.ToLower() == "get" && context.Request.Path.Value == "/v1/kv/InternalConfiguration")
365365
{
366-
var json = JsonSerializer.Serialize(_config, JsonSerializerOptionsExtensions.Web);
366+
var json = JsonSerializer.Serialize(_config, JsonSerializerOptionsFactory.Web);
367367

368368
var bytes = Encoding.UTF8.GetBytes(json);
369369

370370
var base64 = Convert.ToBase64String(bytes);
371371

372372
var kvp = new FakeConsulGetResponse(base64);
373-
json = JsonSerializer.Serialize(new[] { kvp }, JsonSerializerOptionsExtensions.Web);
373+
json = JsonSerializer.Serialize(new[] { kvp }, JsonSerializerOptionsFactory.Web);
374374
context.Response.Headers.Append("Content-Type", "application/json");
375375
await context.Response.WriteAsync(json);
376376
}
@@ -384,9 +384,9 @@ private void GivenThereIsAFakeConsulServiceDiscoveryProvider(string url, string
384384
// var json = reader.ReadToEnd();
385385
var json = await reader.ReadToEndAsync();
386386

387-
_config = JsonSerializer.Deserialize<FileConfiguration>(json, JsonSerializerOptionsExtensions.Web);
387+
_config = JsonSerializer.Deserialize<FileConfiguration>(json, JsonSerializerOptionsFactory.Web);
388388

389-
var response = JsonSerializer.Serialize(true, JsonSerializerOptionsExtensions.Web);
389+
var response = JsonSerializer.Serialize(true, JsonSerializerOptionsFactory.Web);
390390

391391
await context.Response.WriteAsync(response);
392392
}
@@ -398,7 +398,7 @@ private void GivenThereIsAFakeConsulServiceDiscoveryProvider(string url, string
398398
}
399399
else if (context.Request.Path.Value == $"/v1/health/service/{serviceName}")
400400
{
401-
var json = JsonSerializer.Serialize(_consulServices, JsonSerializerOptionsExtensions.Web);
401+
var json = JsonSerializer.Serialize(_consulServices, JsonSerializerOptionsFactory.Web);
402402
context.Response.Headers.Append("Content-Type", "application/json");
403403
await context.Response.WriteAsync(json);
404404
}

test/Ocelot.AcceptanceTests/ServiceDiscovery/ConsulServiceDiscoveryTests.cs

+2-2
Original file line numberDiff line numberDiff line change
@@ -427,7 +427,7 @@ private void GivenThereIsAFakeConsulServiceDiscoveryProvider(string url)
427427
// Use the parsed service name to filter the registered Consul services
428428
var serviceName = pathMatch.Groups["serviceName"].Value;
429429
var services = _consulServices.Where(x => x.Service.Service == serviceName).ToList();
430-
var json = JsonSerializer.Serialize(services, JsonSerializerOptionsExtensions.Web);
430+
var json = JsonSerializer.Serialize(services, JsonSerializerOptionsFactory.Web);
431431
json = json.Replace("\"Name\":", "\"Node\":");
432432
context.Response.Headers.Append("Content-Type", "application/json");
433433
await context.Response.WriteAsync(json);
@@ -437,7 +437,7 @@ private void GivenThereIsAFakeConsulServiceDiscoveryProvider(string url)
437437
if (context.Request.Path.Value == "/v1/catalog/nodes")
438438
{
439439
_counterNodes++;
440-
var json = JsonSerializer.Serialize(_consulNodes, JsonSerializerOptionsExtensions.Web);
440+
var json = JsonSerializer.Serialize(_consulNodes, JsonSerializerOptionsFactory.Web);
441441
context.Response.Headers.Append("Content-Type", "application/json");
442442
await context.Response.WriteAsync(json);
443443
}

test/Ocelot.AcceptanceTests/ServiceDiscovery/ConsulWebSocketTests.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -126,7 +126,7 @@ private void GivenThereIsAFakeConsulServiceDiscoveryProvider(string url, string
126126
{
127127
if (context.Request.Path.Value == $"/v1/health/service/{serviceName}")
128128
{
129-
var json = JsonSerializer.Serialize(_serviceEntries, JsonSerializerOptionsExtensions.Web);
129+
var json = JsonSerializer.Serialize(_serviceEntries, JsonSerializerOptionsFactory.Web);
130130
context.Response.Headers.Append("Content-Type", "application/json");
131131
await context.Response.WriteAsync(json);
132132
}

test/Ocelot.AcceptanceTests/ServiceDiscovery/EurekaServiceDiscoveryTests.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -143,7 +143,7 @@ private void GivenThereIsAFakeEurekaServiceDiscoveryProvider(string url, string
143143
},
144144
};
145145

146-
var json = JsonSerializer.Serialize(applications, JsonSerializerOptionsExtensions.Web);
146+
var json = JsonSerializer.Serialize(applications, JsonSerializerOptionsFactory.Web);
147147
context.Response.Headers.Append("Content-Type", "application/json");
148148
await context.Response.WriteAsync(json);
149149
}

test/Ocelot.AcceptanceTests/ServiceDiscovery/KubernetesServiceDiscoveryTests.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -184,7 +184,7 @@ private void GivenThereIsAFakeKubernetesProvider(string serviceName, string name
184184
_receivedToken = values.First();
185185
}
186186

187-
var json = JsonSerializer.Serialize(endpoints, JsonSerializerOptionsExtensions.Web);
187+
var json = JsonSerializer.Serialize(endpoints, JsonSerializerOptionsFactory.Web);
188188
context.Response.Headers.Append("Content-Type", "application/json");
189189
await context.Response.WriteAsync(json);
190190
}

test/Ocelot.AcceptanceTests/Steps.cs

+3-3
Original file line numberDiff line numberDiff line change
@@ -177,7 +177,7 @@ public void GivenThereIsAConfiguration(FileConfiguration fileConfiguration)
177177
public void GivenThereIsAConfiguration(FileConfiguration from, string toFile)
178178
{
179179
toFile ??= _ocelotConfigFileName;
180-
var jsonConfiguration = JsonSerializer.Serialize(from, JsonSerializerOptionsExtensions.WebWriteIndented);
180+
var jsonConfiguration = JsonSerializer.Serialize(from, JsonSerializerOptionsFactory.WebWriteIndented);
181181
File.WriteAllText(toFile, jsonConfiguration);
182182
Files.Add(toFile); // register for disposing
183183
}
@@ -753,7 +753,7 @@ internal async Task<BearerToken> GivenIHaveATokenWithForm(string url, IEnumerabl
753753
var response = await httpClient.PostAsync(tokenUrl, content);
754754
var responseContent = await response.Content.ReadAsStringAsync();
755755
response.EnsureSuccessStatusCode();
756-
_token = JsonSerializer.Deserialize<BearerToken>(responseContent, JsonSerializerOptionsExtensions.Web);
756+
_token = JsonSerializer.Deserialize<BearerToken>(responseContent, JsonSerializerOptionsFactory.Web);
757757
return _token;
758758
}
759759

@@ -955,7 +955,7 @@ public void GivenThePostHasContentType(string postContent)
955955

956956
public void GivenThePostHasGzipContent(object input)
957957
{
958-
var json = JsonSerializer.Serialize(input, JsonSerializerOptionsExtensions.Web);
958+
var json = JsonSerializer.Serialize(input, JsonSerializerOptionsFactory.Web);
959959
var jsonBytes = Encoding.UTF8.GetBytes(json);
960960
var ms = new MemoryStream();
961961
using (var gzip = new GZipStream(ms, CompressionMode.Compress, true))

test/Ocelot.AcceptanceTests/TwoDownstreamServicesTests.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -97,7 +97,7 @@ private void GivenThereIsAFakeConsulServiceDiscoveryProvider(string url)
9797
{
9898
if (context.Request.Path.Value == "/v1/health/service/product")
9999
{
100-
var json = JsonSerializer.Serialize(_serviceEntries, JsonSerializerOptionsExtensions.Web);
100+
var json = JsonSerializer.Serialize(_serviceEntries, JsonSerializerOptionsFactory.Web);
101101
context.Response.Headers.Append("Content-Type", "application/json");
102102
await context.Response.WriteAsync(json);
103103
}

test/Ocelot.Benchmarks/AllTheThingsBenchmarks.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -113,7 +113,7 @@ public static void GivenThereIsAConfiguration(FileConfiguration fileConfiguratio
113113
{
114114
var configurationPath = Path.Combine(AppContext.BaseDirectory, "ocelot.json");
115115

116-
var jsonConfiguration = JsonSerializer.Serialize(fileConfiguration, JsonSerializerOptionsExtensions.Web);
116+
var jsonConfiguration = JsonSerializer.Serialize(fileConfiguration, JsonSerializerOptionsFactory.Web);
117117

118118
if (File.Exists(configurationPath))
119119
{

test/Ocelot.Benchmarks/MsLoggerBenchmarks.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -163,7 +163,7 @@ public static void GivenThereIsAConfiguration(FileConfiguration fileConfiguratio
163163
{
164164
var configurationPath = Path.Combine(AppContext.BaseDirectory, "ocelot.json");
165165

166-
var jsonConfiguration = JsonSerializer.Serialize(fileConfiguration, JsonSerializerOptionsExtensions.Web);
166+
var jsonConfiguration = JsonSerializer.Serialize(fileConfiguration, JsonSerializerOptionsFactory.Web);
167167

168168
if (File.Exists(configurationPath))
169169
{

test/Ocelot.Benchmarks/PayloadBenchmarks.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -221,7 +221,7 @@ private void GivenOcelotIsRunning(string url)
221221
public static void GivenThereIsAConfiguration(FileConfiguration fileConfiguration)
222222
{
223223
var configurationPath = Path.Combine(AppContext.BaseDirectory, ConfigurationBuilderExtensions.PrimaryConfigFile);
224-
var jsonConfiguration = JsonSerializer.Serialize(fileConfiguration, JsonSerializerOptionsExtensions.Web);
224+
var jsonConfiguration = JsonSerializer.Serialize(fileConfiguration, JsonSerializerOptionsFactory.Web);
225225

226226
if (File.Exists(configurationPath))
227227
{

0 commit comments

Comments
 (0)