-
-
Notifications
You must be signed in to change notification settings - Fork 8.4k
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
[dotnet] [bidi] Encapsulate transport inside Broker
#15423
Conversation
PR Reviewer Guide 🔍Here are some key observations to aid the review process:
|
PR Code Suggestions ✨Explore these optional code suggestions:
|
|
User description
Description
Encapsulate transport inside
Broker
Motivation and Context
Better encapsulation, works towards custom BiDi modules, such as #15329
Types of changes
Checklist
PR Type
Enhancement
Description
Encapsulated the transport mechanism within the
Broker
class.Replaced direct
ITransport
usage withWebSocketTransport
instantiation inBroker
.Introduced
DisposeAsyncCore
for better disposal pattern adherence.Simplified
BiDi
initialization by removing direct transport dependency.Changes walkthrough 📝
BiDi.cs
Refactored `BiDi` to encapsulate transport dependency
dotnet/src/webdriver/BiDi/BiDi.cs
ITransport
inBiDi
.DisposeAsync
to useDisposeAsyncCore
and suppressfinalization.
Broker
initialization by passingUri
instead ofITransport
.Broker.cs
Refactored `Broker` to manage transport internally
dotnet/src/webdriver/BiDi/Communication/Broker.cs
Broker
usingWebSocketTransport
.DisposeAsyncCore
for structured disposal of resources.ITransport
duringBroker
initialization.