Namespace WebDriverBiDi
Classes
- BiDiDriver
Object containing commands to drive a browser using the WebDriver BiDi protocol.
- CommandParameters
Abstract base class for a set of settings for a command.
- CommandParameters<T>
Represents data for a WebDriver BiDi command where the response type is known.
- CommandResult
Data received from a response.
- EmptyResult
Represents an empty result from a command.
- ErrorResult
Object containing an error response to a command.
- EventDataCollector<T>
Specialized observer of an event that collects event data each time the event is raised, for on-demand batch inspection or async streaming rather than immediate per-event reaction.
- EventHandlerErrorOccurredEventArgs
Provides data for the event raised when an error occurs in an observer of an observable event. This event is for diagnostic and observability purposes, and does not prevent the propagation of the error back to the Transport class.
- EventInfo<T>
Class containing information used in the invocation of an event invoker.
- EventObserverErrorInfo
Describes a failure raised by an observable event observer.
- EventObserver<T>
Implementation of an observer in the Observer pattern for events.
- LogMessageEventArgs
Object containing event data for events raised when a log message is received from a WebDriver BiDi connection.
- Module
Base class representing a module in the WebDriver BiDi protocol.
- ObservableEventExtensions
Extension methods for ObservableEvent<T>.
- ObservableEventInvocable<T>
Producer-side implementation of a subject in the Observer pattern for events, allowing a producer to notify observers.
- ObservableEventNameAttribute
Marks an ObservableEvent<T> property with its event name string so that Roslyn analyzers can read the name from compiled metadata as well as from source.
- ObservableEventSubscription<T>
The handle for a subscription created by calling Subscribe(IObserver<T>) on the IObservable<T> that ToObservable<T>(ObservableEvent<T>) returns. Disposing the handle ends the subscription; CompletionTask reports when delivery to the observer has ended.
- ObservableEvent<T>
Implementation of a subject in the Observer pattern for events. It can optionally be limited to a specific number of observers.
- ReceivedDataDictionary
A read-only dictionary containing a dictionary of additional data from a command result. The proper workflow for this class is that additional data is received from the protocol as a dictionary with string keys, and object values. The entries in that dictionary are then intentionally mutated to be read-only, so that they cannot be updated by the user.
- ReceivedDataList
A read-only list containing a list of additional data from a command result.
- SpecRangeAttribute
Marks a command-parameter property with the numeric range the WebDriver BiDi specification defines for its value, so that Roslyn analyzers can read the range from compiled metadata as well as from source.
- StringEnumNullSentinelValueAttribute<T>
Marks an enumerated type with string values with the enumerated value to use to signal a null should be written to the JSON serialization.
- StringEnumUnmatchedValueAttribute<T>
Marks an enumerated type with string values with the enumerated value to be used if the serialized value does not match one of the enumerated values.
- StringEnumValueAttribute
Marks a specific enumerated value with its string representation.
- StringEnumValueConverter<T>
Converter for enumerated types that are represented as strings in JSON. This converter supports the use of the StringEnumValueAttribute to specify custom string values for enumerated values, and the StringEnumUnmatchedValueAttribute<T> to specify a default value if the supplied string does not match any of the enumerated values.
- WebDriverBiDiCommandException
The exception thrown when a WebDriver BiDi protocol command returns an error response.
- WebDriverBiDiConnectionException
The exception thrown when a WebDriver BiDi connection error occurs.
- WebDriverBiDiErrorResponseException
Abstract base class for exceptions that carry a structured ErrorResult received from the remote end of the WebDriver BiDi protocol. Subclasses distinguish between command-level errors (see WebDriverBiDiCommandException) and unsolicited protocol-level errors (see WebDriverBiDiProtocolException).
- WebDriverBiDiEventArgs
Base EventArgs class for use with WebDriver BiDi events.
- WebDriverBiDiEventSource
EventSource for WebDriver BiDi protocol instrumentation. This EventSource provides structured diagnostic events for monitoring, tracing, and troubleshooting WebDriver BiDi operations.
- WebDriverBiDiException
The base exception class for all WebDriver BiDi errors.
- WebDriverBiDiProtocolException
The exception thrown when the remote end of the WebDriver BiDi protocol sends an error response that is not associated with a specific command (i.e., an unsolicited error).
- WebDriverBiDiSerializationException
The exception thrown when a JSON serialization or deserialization error occurs while processing a WebDriver BiDi protocol message.
- WebDriverBiDiTimeoutException
The exception thrown when a WebDriver BiDi operation exceeds its timeout.
Interfaces
- IBiDiDriverConfiguration
Interface for configuring a WebDriver BiDi driver. This interface is implemented by BiDiDriver and can be used for testing, or to allow users to implement their own driver classes. It provides methods for registering modules and JSON type info resolvers. Event registration is not part of this interface; it is declared on IBiDiModuleHost, because a custom module registers its events through the module host it is constructed with.
- IBiDiDriverEvents
Interface for a driver that exposes events related to WebDriver BiDi protocol communication. This interface is implemented by BiDiDriver and can be used for testing, or to allow users to implement their own driver classes. It provides observable events for protocol events, errors received, unknown messages, errors in observers, log messages, and the loss of the connection.
- IBiDiDriverLifecycleManager
Interface for a driver that manages its lifecycle, including starting and stopping the driver. This interface is implemented by BiDiDriver and can be used for testing, or to allow users to implement their own driver classes. It extends IAsyncDisposable to allow for proper asynchronous disposal of resources.
- IBiDiModuleHost
Interface for a driver that executes commands and registers events for use with the WebDriver BiDi protocol. This interface is implemented by BiDiDriver and can be used for testing, or to allow users to implement their own driver classes.
- IEventObserverErrorReporter
Provides a sink for observer failures that happen after an event handler has already returned control to the caller.
Enums
- ErrorCode
Enumeration of error codes that may be returned by the remote end of the WebDriver BiDi protocol in error responses to commands or in unsolicited error events. Each value is associated with the string value used in the JSON error responses.
- ObservableEventHandlerOptions
Enumerated value describing options for the execution of a handler for an ObservableEvent.
- WebDriverBiDiLogLevel
Represents log levels for the WebDriver BiDi protocol.