-
-
Notifications
You must be signed in to change notification settings - Fork 8.6k
[bidi] [dotnet] Use events JsonTypeInfo for deserialization #16402
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
PR Compliance Guide 🔍Below is a summary of compliance checks for this PR:
Compliance status legend🟢 - Fully Compliant🟡 - Partial Compliant 🔴 - Not Compliant ⚪ - Requires Further Human Verification 🏷️ - Compliance label |
PR Code Suggestions ✨Explore these optional code suggestions:
|
User description
Improves how we deserialize event json data, providing JsonTypeInfo directly instead of context.
💥 What does this PR do?
Improves how we deserialize event json data, providing JsonTypeInfo directly instead of context.
🔄 Types of changes
PR Type
Enhancement
Description
Replace JsonSerializerContext with specific JsonTypeInfo for event deserialization
Update all BiDi module event subscription methods
Simplify Broker event type mapping implementation
Remove unused Type property from CommandInfo class
Diagram Walkthrough
File Walkthrough
BrowsingContextModule.cs
Update event subscriptions with specific JsonTypeInfo
dotnet/src/webdriver/BiDi/BrowsingContext/BrowsingContextModule.cs
JsonContext
with specificJsonContext.EventType
for all eventsubscriptions
context, and prompt events
Broker.cs
Refactor Broker to use JsonTypeInfo directly
dotnet/src/webdriver/BiDi/Communication/Broker.cs
JsonSerializerContext
LogModule.cs
Update log event subscriptions
dotnet/src/webdriver/BiDi/Log/LogModule.cs
JsonContext.LogEntry
NetworkModule.cs
Update network event subscriptions
dotnet/src/webdriver/BiDi/Network/NetworkModule.cs
fetchError, and authRequired events
ScriptModule.cs
Update script event subscriptions
dotnet/src/webdriver/BiDi/Script/ScriptModule.cs