Skip to content
This repository was archived by the owner on Sep 3, 2024. It is now read-only.

Commit 8f66723

Browse files
normalizing json that comes in
1 parent 5e4a0e3 commit 8f66723

1 file changed

Lines changed: 21 additions & 1 deletion

File tree

src/SqlStreamStore.HAL/Resources/SetStreamMetadataOptions.cs

Lines changed: 21 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ private SetStreamMetadataOptions(IOwinRequest request, JObject body)
2929
ExpectedVersion = request.GetExpectedVersion();
3030
MaxAge = body.Value<int?>("maxAge");
3131
MaxCount = body.Value<int?>("maxCount");
32-
MetadataJson = body["metadataJson"]?.ToString(Formatting.Indented);
32+
MetadataJson = Normalize(body["metadataJson"]?.ToString(Formatting.Indented));
3333
}
3434

3535
public string StreamId { get; }
@@ -46,5 +46,25 @@ public Func<IStreamStore, CancellationToken, Task> GetSetOperation()
4646
MaxCount,
4747
MetadataJson,
4848
ct);
49+
50+
private static string Normalize(string metadataJson)
51+
{
52+
if(string.IsNullOrEmpty(metadataJson))
53+
{
54+
return metadataJson;
55+
}
56+
57+
if(metadataJson[0] == '\'' || metadataJson[0] == '"')
58+
{
59+
metadataJson = metadataJson.Remove(0, 1);
60+
}
61+
62+
if(metadataJson[metadataJson.Length - 1] == '\'' || metadataJson[metadataJson.Length - 1] == '"')
63+
{
64+
metadataJson = metadataJson.Remove(metadataJson.Length - 1, 1);
65+
}
66+
67+
return metadataJson;
68+
}
4969
}
5070
}

0 commit comments

Comments
 (0)