private void ConnectionMessageReceivedEventHandler(object sender, TextMessageHandledEventArgs e) { if (this.commandQueue.Count == 0) { return; } SafariResponseMessage response = SafariResponseMessage.FromJson(e.Message); if (this.commandQueue.Peek().Id != response.Id) { throw new WebDriverException("Unmatched command/response ID pair"); } this.commandQueue.Dequeue(); lock (this.responseQueue) { this.responseQueue.Enqueue(response); } }
/// <summary> /// Raises the TextMessageHandled event. /// </summary> /// <param name="e">A <see cref="TextMessageHandledEventArgs"/> that contains the event data.</param> protected void OnTextMessageHandled(TextMessageHandledEventArgs e) { if (this.TextMessageHandled != null) { this.TextMessageHandled(this, e); } }