Skip to content

Commit 2d189ec

Browse files
committed
Make each JsonSerializerContext generated-only, separate requests and responses
1 parent 16431a8 commit 2d189ec

File tree

5 files changed

+17
-25
lines changed

5 files changed

+17
-25
lines changed

dotnet/src/webdriver/DevTools/v130/V130JsonSerializationContext.cs

Lines changed: 0 additions & 6 deletions
This file was deleted.

dotnet/src/webdriver/DevTools/v131/V131JsonSerializationContext.cs

Lines changed: 0 additions & 6 deletions
This file was deleted.

dotnet/src/webdriver/DevTools/v132/V132JsonSerializationContext.cs

Lines changed: 0 additions & 6 deletions
This file was deleted.

dotnet/src/webdriver/DevTools/v85/V85JsonSerializationContext.cs

Lines changed: 0 additions & 6 deletions
This file was deleted.

third_party/dotnet/devtools/src/generator/Templates/DevToolsSessionDomains.hbs

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,16 @@ namespace {{rootNamespace}}
88
///</summary>
99
public class DevToolsSessionDomains : OpenQA.Selenium.DevTools.DevToolsSessionDomains
1010
{
11+
internal static readonly global::System.Text.Json.JsonSerializerOptions RequestOptions = new()
12+
{
13+
TypeInfoResolver = {{protocolVersion}}JsonRequestSerializerContext.Default
14+
};
15+
16+
internal static readonly global::System.Text.Json.JsonSerializerOptions ResponseOptions = new()
17+
{
18+
TypeInfoResolver = {{protocolVersion}}JsonResponseSerializerContext.Default
19+
};
20+
1121
{{#each domains}}
1222
private Lazy<{{dehumanize Name}}.{{dehumanize Name}}Adapter> m_{{dehumanize Name}};
1323
{{/each}}
@@ -44,9 +54,15 @@ namespace {{rootNamespace}}
4454
}
4555
}
4656

57+
[global::System.Text.Json.Serialization.JsonSerializable(typeof(string))] // Placeholder in case nothing gets generated
4758
{{#each commands}}
4859
[global::System.Text.Json.Serialization.JsonSerializable(typeof({{FullTypeName}}))]
60+
{{/each}}
61+
internal sealed partial class {{protocolVersion}}JsonRequestSerializerContext : global::System.Text.Json.Serialization.JsonSerializerContext;
62+
63+
[global::System.Text.Json.Serialization.JsonSerializable(typeof(string))] // Placeholder in case nothing gets generated
64+
{{#each commands}}
4965
[global::System.Text.Json.Serialization.JsonSerializable(typeof({{FullResponseTypeName}}))]
5066
{{/each}}
51-
internal sealed partial class {{protocolVersion}}JsonSerializationContext;
67+
internal sealed partial class {{protocolVersion}}JsonResponseSerializerContext : global::System.Text.Json.Serialization.JsonSerializerContext;
5268
}

0 commit comments

Comments
 (0)