mirror of
https://github.com/wiremock/WireMock.Net.git
synced 2026-06-08 06:42:48 +02:00
36b0a93a6c
* SystemTextJsonMatcher * , * . * new projectx * Update test/WireMock.Net.Tests/Pact/PactTests.cs Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Update test/WireMock.Net.Tests/WebSockets/WebSocketIntegrationTests.cs Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Update src/WireMock.Net/WireMock.Net.csproj Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Update src/WireMock.Net.Minimal/Properties/AssemblyInfo.cs Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * . * more tests * . * . * x * ... * . * fix tests * 0.11.0 * . * delete jsonutils.cs * s * fix findings * Apply suggestions from code review Co-authored-by: Copilot Autofix powered by AI <223894421+github-code-quality[bot]@users.noreply.github.com> * Potential fix for pull request finding 'Missing Dispose call on local IDisposable' Co-authored-by: Copilot Autofix powered by AI <223894421+github-code-quality[bot]@users.noreply.github.com> * JsonConverter 0.12.0 * -- tools --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> Co-authored-by: Copilot Autofix powered by AI <223894421+github-code-quality[bot]@users.noreply.github.com>
31 lines
1.1 KiB
C#
31 lines
1.1 KiB
C#
// Copyright © WireMock.Net
|
|
|
|
using JsonConverter.Abstractions;
|
|
using JsonConverter.Abstractions.Models;
|
|
|
|
namespace WireMock.Serialization;
|
|
|
|
internal class MappingSerializer(IJsonConverter jsonConverter)
|
|
{
|
|
internal T[] DeserializeJsonToArray<T>(string value)
|
|
{
|
|
switch (JsonTypeHelper.GetJsonType(value))
|
|
{
|
|
case JsonType.Array:
|
|
return jsonConverter.Deserialize<T[]>(value, JsonSerializationConstants.JsonConverterOptionsWithDateParsingNone)!;
|
|
|
|
case JsonType.Object:
|
|
var singleResult = jsonConverter.Deserialize<T>(value, JsonSerializationConstants.JsonConverterOptionsWithDateParsingNone);
|
|
return [singleResult!];
|
|
|
|
default:
|
|
throw new InvalidOperationException("Cannot deserialize the provided value to an array or object.");
|
|
}
|
|
}
|
|
|
|
internal T[] DeserializeObjectToArray<T>(object value)
|
|
{
|
|
var json = jsonConverter.Serialize(value, JsonSerializationConstants.JsonConverterOptionsWithDateParsingNone);
|
|
return DeserializeJsonToArray<T>(json);
|
|
}
|
|
} |