Skip to content

Commit c413984

Browse files
Merge branch 'dotnet-devtools-aot' into devtools-command
2 parents e733d14 + debb325 commit c413984

File tree

2 files changed

+17
-1
lines changed

2 files changed

+17
-1
lines changed

third_party/dotnet/devtools/src/generator/CodeGen/ProtocolGenerator.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -80,7 +80,8 @@ public override IDictionary<string, string> GenerateCode(ProtocolDefinition.Prot
8080
domains = domains,
8181
commands = commands,
8282
events = events,
83-
types = types.Values.ToList()
83+
types = types.Values.ToList(),
84+
protocolVersion = Settings.RootNamespace.Split('.').Last()
8485
};
8586

8687
var result = new Dictionary<string, string>(StringComparer.OrdinalIgnoreCase);

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

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,11 @@ namespace {{rootNamespace}}
88
///</summary>
99
public class DevToolsSessionDomains : OpenQA.Selenium.DevTools.DevToolsSessionDomains
1010
{
11+
internal static readonly global::System.Text.Json.JsonSerializerOptions JsonOptions = new()
12+
{
13+
TypeInfoResolver = {{protocolVersion}}JsonSerializerContext.Default
14+
};
15+
1116
{{#each domains}}
1217
private Lazy<{{dehumanize Name}}.{{dehumanize Name}}Adapter> m_{{dehumanize Name}};
1318
{{/each}}
@@ -43,4 +48,14 @@ namespace {{rootNamespace}}
4348
{{/each}}
4449
}
4550
}
51+
52+
{{#each commands}}
53+
[global::System.Text.Json.Serialization.JsonSerializable(typeof({{FullTypeName}}))]
54+
[global::System.Text.Json.Serialization.JsonSerializable(typeof({{FullResponseTypeName}}))]
55+
{{/each}}
56+
{{#each events}}
57+
[global::System.Text.Json.Serialization.JsonSerializable(typeof({{fullTypeName}}))]
58+
{{/each}}
59+
[global::System.Text.Json.Serialization.JsonSourceGenerationOptions(Converters = [typeof(OpenQA.Selenium.DevTools.Json.StringConverter)])]
60+
internal sealed partial class {{protocolVersion}}JsonSerializerContext : global::System.Text.Json.Serialization.JsonSerializerContext;
4661
}

0 commit comments

Comments
 (0)