Commit 7d1bdf08 authored by Antonio Gomes's avatar Antonio Gomes Committed by Commit Bot

Replace uses of WebRTCDTMFSenderHandler by RtcDtmfSenderHandler

The public API is not needed any more now that the WebRTC/Peerconnection
implementation resides solely in Blink.
Hence, this CL uses RtcDtmfSenderHandler directly.

BUG=787254, 919392
R=guidou@chromium.org, haraken@chromium.org

Change-Id: I7a41b1b03c328bad7f900f30f49a2a236f232318
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1899792
Commit-Queue: Antonio Gomes <tonikitoo@igalia.com>
Reviewed-by: default avatarKentaro Hara <haraken@chromium.org>
Cr-Commit-Position: refs/heads/master@{#712996}
parent abb9f10d
......@@ -267,7 +267,6 @@ source_set("blink_headers") {
"platform/web_resource_timing_info.h",
"platform/web_rtc_api_name.h",
"platform/web_rtc_data_channel_init.h",
"platform/web_rtc_dtmf_sender_handler.h",
"platform/web_rtc_dtmf_sender_handler_client.h",
"platform/web_rtc_ice_candidate.h",
"platform/web_rtc_legacy_stats.h",
......
/*
* Copyright (C) 2013 Google Inc. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY GOOGLE INC. ``AS IS'' AND ANY
* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL GOOGLE INC. OR
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
* OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
#ifndef THIRD_PARTY_BLINK_PUBLIC_PLATFORM_WEB_RTC_DTMF_SENDER_HANDLER_H_
#define THIRD_PARTY_BLINK_PUBLIC_PLATFORM_WEB_RTC_DTMF_SENDER_HANDLER_H_
#include "third_party/blink/public/platform/web_common.h"
#include "third_party/blink/public/platform/web_string.h"
namespace base {
class SingleThreadTaskRunner;
}
namespace webrtc {
class DtmfSenderInterface;
}
namespace blink {
class WebRTCDTMFSenderHandlerClient;
class WebRTCDTMFSenderHandler {
public:
virtual ~WebRTCDTMFSenderHandler() = default;
virtual void SetClient(WebRTCDTMFSenderHandlerClient*) = 0;
virtual WebString CurrentToneBuffer() = 0;
virtual bool CanInsertDTMF() = 0;
virtual bool InsertDTMF(const WebString& tones,
int duration,
int inter_tone_gap) = 0;
};
BLINK_PLATFORM_EXPORT std::unique_ptr<WebRTCDTMFSenderHandler>
CreateRTCDTMFSenderHandler(
scoped_refptr<base::SingleThreadTaskRunner> main_thread,
webrtc::DtmfSenderInterface* dtmf_sender);
} // namespace blink
#endif // THIRD_PARTY_BLINK_PUBLIC_PLATFORM_WEB_RTC_DTMF_SENDER_HANDLER_H_
......@@ -18,7 +18,7 @@ namespace blink {
class RTCVoidRequest;
class WebMediaStreamTrack;
class WebRTCDTMFSenderHandler;
class RtcDtmfSenderHandler;
// Implementations of this interface keep the corresponding WebRTC-layer sender
// alive through reference counting. Multiple |WebRTCRtpSender|s could reference
......@@ -44,7 +44,7 @@ class BLINK_PLATFORM_EXPORT WebRTCRtpSender {
// on RTCError, as to surface both exception type and error message.
// https://crbug.com/790007
virtual void ReplaceTrack(WebMediaStreamTrack, RTCVoidRequest*) = 0;
virtual std::unique_ptr<WebRTCDTMFSenderHandler> GetDtmfSender() const = 0;
virtual std::unique_ptr<RtcDtmfSenderHandler> GetDtmfSender() const = 0;
virtual std::unique_ptr<webrtc::RtpParameters> GetParameters() const = 0;
virtual void SetParameters(blink::WebVector<webrtc::RtpEncodingParameters>,
webrtc::DegradationPreference,
......
......@@ -5,6 +5,7 @@
#include <utility>
#include "third_party/blink/renderer/modules/peerconnection/fake_rtc_rtp_transceiver_impl.h"
#include "third_party/blink/renderer/platform/peerconnection/rtc_dtmf_sender_handler.h"
namespace blink {
......@@ -86,7 +87,7 @@ void FakeRTCRtpSenderImpl::ReplaceTrack(blink::WebMediaStreamTrack with_track,
NOTIMPLEMENTED();
}
std::unique_ptr<blink::WebRTCDTMFSenderHandler>
std::unique_ptr<blink::RtcDtmfSenderHandler>
FakeRTCRtpSenderImpl::GetDtmfSender() const {
NOTIMPLEMENTED();
return nullptr;
......
......@@ -12,12 +12,12 @@
#include "third_party/blink/public/platform/web_media_constraints.h"
#include "third_party/blink/public/platform/web_media_stream_source.h"
#include "third_party/blink/public/platform/web_media_stream_track.h"
#include "third_party/blink/public/platform/web_rtc_dtmf_sender_handler.h"
#include "third_party/blink/public/platform/web_rtc_rtp_receiver.h"
#include "third_party/blink/public/platform/web_rtc_rtp_sender.h"
#include "third_party/blink/public/platform/web_rtc_rtp_source.h"
#include "third_party/blink/public/platform/web_rtc_rtp_transceiver.h"
#include "third_party/blink/renderer/platform/mediastream/media_stream_audio_source.h"
#include "third_party/blink/renderer/platform/peerconnection/rtc_dtmf_sender_handler.h"
namespace blink {
......@@ -44,8 +44,7 @@ class FakeRTCRtpSenderImpl : public blink::WebRTCRtpSender {
blink::WebVector<blink::WebString> StreamIds() const override;
void ReplaceTrack(blink::WebMediaStreamTrack with_track,
blink::RTCVoidRequest* request) override;
std::unique_ptr<blink::WebRTCDTMFSenderHandler> GetDtmfSender()
const override;
std::unique_ptr<blink::RtcDtmfSenderHandler> GetDtmfSender() const override;
std::unique_ptr<webrtc::RtpParameters> GetParameters() const override;
void SetParameters(blink::WebVector<webrtc::RtpEncodingParameters>,
webrtc::DegradationPreference,
......
......@@ -9,12 +9,12 @@
#include "third_party/blink/public/platform/web_media_stream.h"
#include "third_party/blink/public/platform/web_media_stream_source.h"
#include "third_party/blink/public/platform/web_media_stream_track.h"
#include "third_party/blink/public/platform/web_rtc_dtmf_sender_handler.h"
#include "third_party/blink/public/platform/web_rtc_rtp_source.h"
#include "third_party/blink/public/platform/web_rtc_rtp_transceiver.h"
#include "third_party/blink/public/platform/web_rtc_session_description.h"
#include "third_party/blink/public/platform/web_rtc_stats.h"
#include "third_party/blink/public/platform/web_vector.h"
#include "third_party/blink/renderer/platform/peerconnection/rtc_dtmf_sender_handler.h"
#include "third_party/blink/renderer/platform/wtf/thread_safe_ref_counted.h"
#include "third_party/webrtc/api/stats/rtc_stats.h"
......@@ -72,7 +72,7 @@ class DummyWebRTCRtpSender : public WebRTCRtpSender {
return std::vector<WebString>({WebString::FromUTF8("DummyStringId")});
}
void ReplaceTrack(WebMediaStreamTrack, RTCVoidRequest*) override {}
std::unique_ptr<WebRTCDTMFSenderHandler> GetDtmfSender() const override {
std::unique_ptr<RtcDtmfSenderHandler> GetDtmfSender() const override {
return nullptr;
}
std::unique_ptr<webrtc::RtpParameters> GetParameters() const override {
......
......@@ -29,12 +29,12 @@
#include "third_party/blink/public/platform/task_type.h"
#include "third_party/blink/public/platform/web_media_stream_track.h"
#include "third_party/blink/public/platform/web_rtc_dtmf_sender_handler.h"
#include "third_party/blink/public/platform/web_rtc_peer_connection_handler.h"
#include "third_party/blink/renderer/core/execution_context/execution_context.h"
#include "third_party/blink/renderer/modules/mediastream/media_stream_track.h"
#include "third_party/blink/renderer/modules/peerconnection/rtc_dtmf_tone_change_event.h"
#include "third_party/blink/renderer/platform/bindings/exception_state.h"
#include "third_party/blink/renderer/platform/peerconnection/rtc_dtmf_sender_handler.h"
#include "third_party/blink/renderer/platform/wtf/functional.h"
namespace blink {
......@@ -48,14 +48,14 @@ static const int kDefaultInterToneGapMs = 70;
RTCDTMFSender* RTCDTMFSender::Create(
ExecutionContext* context,
std::unique_ptr<WebRTCDTMFSenderHandler> dtmf_sender_handler) {
std::unique_ptr<RtcDtmfSenderHandler> dtmf_sender_handler) {
DCHECK(dtmf_sender_handler);
return MakeGarbageCollected<RTCDTMFSender>(context,
std::move(dtmf_sender_handler));
}
RTCDTMFSender::RTCDTMFSender(ExecutionContext* context,
std::unique_ptr<WebRTCDTMFSenderHandler> handler)
std::unique_ptr<RtcDtmfSenderHandler> handler)
: ContextLifecycleObserver(context),
handler_(std::move(handler)),
stopped_(false) {
......
......@@ -35,7 +35,7 @@
namespace blink {
class ExceptionState;
class WebRTCDTMFSenderHandler;
class RtcDtmfSenderHandler;
class RTCDTMFSender final : public EventTargetWithInlineData,
public WebRTCDTMFSenderHandlerClient,
......@@ -46,9 +46,9 @@ class RTCDTMFSender final : public EventTargetWithInlineData,
public:
static RTCDTMFSender* Create(ExecutionContext*,
std::unique_ptr<WebRTCDTMFSenderHandler>);
std::unique_ptr<RtcDtmfSenderHandler>);
RTCDTMFSender(ExecutionContext*, std::unique_ptr<WebRTCDTMFSenderHandler>);
RTCDTMFSender(ExecutionContext*, std::unique_ptr<RtcDtmfSenderHandler>);
~RTCDTMFSender() override;
bool canInsertDTMF() const;
......@@ -79,7 +79,7 @@ class RTCDTMFSender final : public EventTargetWithInlineData,
void PlayoutTask();
void DidPlayTone(const WebString&) override;
std::unique_ptr<WebRTCDTMFSenderHandler> handler_;
std::unique_ptr<RtcDtmfSenderHandler> handler_;
bool stopped_;
String tone_buffer_;
......
......@@ -30,7 +30,6 @@
#include "third_party/blink/public/platform/web_media_stream_source.h"
#include "third_party/blink/public/platform/web_media_stream_track.h"
#include "third_party/blink/public/platform/web_rtc_data_channel_init.h"
#include "third_party/blink/public/platform/web_rtc_dtmf_sender_handler.h"
#include "third_party/blink/public/platform/web_rtc_ice_candidate.h"
#include "third_party/blink/public/platform/web_rtc_peer_connection_handler_client.h"
#include "third_party/blink/public/platform/web_rtc_rtp_receiver.h"
......@@ -50,6 +49,7 @@
#include "third_party/blink/renderer/modules/peerconnection/mock_web_rtc_peer_connection_handler_client.h"
#include "third_party/blink/renderer/modules/peerconnection/peer_connection_tracker.h"
#include "third_party/blink/renderer/platform/mediastream/media_stream_audio_source.h"
#include "third_party/blink/renderer/platform/peerconnection/rtc_dtmf_sender_handler.h"
#include "third_party/blink/renderer/platform/peerconnection/rtc_void_request.h"
#include "third_party/webrtc/api/peer_connection_interface.h"
#include "third_party/webrtc/api/rtp_receiver_interface.h"
......
......@@ -9,7 +9,6 @@
#include <tuple>
#include <utility>
#include "third_party/blink/public/platform/web_rtc_dtmf_sender_handler.h"
#include "third_party/blink/public/web/modules/peerconnection/peer_connection_dependency_factory.h"
#include "third_party/blink/renderer/bindings/core/v8/script_promise_resolver.h"
#include "third_party/blink/renderer/core/dom/dom_exception.h"
......@@ -25,6 +24,7 @@
#include "third_party/blink/renderer/platform/bindings/exception_state.h"
#include "third_party/blink/renderer/platform/heap/heap.h"
#include "third_party/blink/renderer/platform/heap/persistent.h"
#include "third_party/blink/renderer/platform/peerconnection/rtc_dtmf_sender_handler.h"
#include "third_party/blink/renderer/platform/peerconnection/rtc_void_request.h"
#include "third_party/blink/renderer/platform/wtf/functional.h"
#include "third_party/blink/renderer/platform/wtf/math_extras.h"
......
......@@ -9,8 +9,8 @@
#include "base/bind.h"
#include "base/logging.h"
#include "third_party/blink/public/platform/web_rtc_dtmf_sender_handler.h"
#include "third_party/blink/public/platform/web_rtc_stats.h"
#include "third_party/blink/renderer/platform/peerconnection/rtc_dtmf_sender_handler.h"
#include "third_party/blink/renderer/platform/peerconnection/rtc_void_request.h"
#include "third_party/blink/renderer/platform/wtf/thread_safe_ref_counted.h"
......@@ -209,12 +209,13 @@ class RTCRtpSenderImpl::RTCRtpSenderInternal
base::Unretained(webrtc_track), std::move(callback)));
}
std::unique_ptr<blink::WebRTCDTMFSenderHandler> GetDtmfSender() const {
std::unique_ptr<blink::RtcDtmfSenderHandler> GetDtmfSender() const {
// The webrtc_sender() is a proxy, so this is a blocking call to the
// webrtc signalling thread.
DCHECK(main_task_runner_->BelongsToCurrentThread());
auto dtmf_sender = webrtc_sender_->GetDtmfSender();
return blink::CreateRTCDTMFSenderHandler(main_task_runner_, dtmf_sender);
return std::make_unique<RtcDtmfSenderHandler>(main_task_runner_,
dtmf_sender);
}
std::unique_ptr<webrtc::RtpParameters> GetParameters() {
......@@ -456,8 +457,8 @@ void RTCRtpSenderImpl::ReplaceTrack(blink::WebMediaStreamTrack with_track,
base::BindOnce(&OnReplaceTrackCompleted, request));
}
std::unique_ptr<blink::WebRTCDTMFSenderHandler>
RTCRtpSenderImpl::GetDtmfSender() const {
std::unique_ptr<blink::RtcDtmfSenderHandler> RTCRtpSenderImpl::GetDtmfSender()
const {
return internal_->GetDtmfSender();
}
......
......@@ -137,8 +137,7 @@ class MODULES_EXPORT RTCRtpSenderImpl : public blink::WebRTCRtpSender {
blink::WebVector<blink::WebString> StreamIds() const override;
void ReplaceTrack(blink::WebMediaStreamTrack with_track,
blink::RTCVoidRequest* request) override;
std::unique_ptr<blink::WebRTCDTMFSenderHandler> GetDtmfSender()
const override;
std::unique_ptr<blink::RtcDtmfSenderHandler> GetDtmfSender() const override;
std::unique_ptr<webrtc::RtpParameters> GetParameters() const override;
void SetParameters(blink::WebVector<webrtc::RtpEncodingParameters>,
webrtc::DegradationPreference,
......
......@@ -14,17 +14,8 @@
#include "third_party/blink/renderer/platform/wtf/cross_thread_functional.h"
#include "third_party/blink/renderer/platform/wtf/text/wtf_string.h"
using webrtc::DtmfSenderInterface;
namespace blink {
std::unique_ptr<WebRTCDTMFSenderHandler> CreateRTCDTMFSenderHandler(
scoped_refptr<base::SingleThreadTaskRunner> main_thread,
webrtc::DtmfSenderInterface* dtmf_sender) {
return std::make_unique<RtcDtmfSenderHandler>(std::move(main_thread),
dtmf_sender);
}
class RtcDtmfSenderHandler::Observer
: public base::RefCountedThreadSafe<Observer>,
public webrtc::DtmfSenderObserverInterface {
......@@ -58,7 +49,7 @@ class RtcDtmfSenderHandler::Observer
RtcDtmfSenderHandler::RtcDtmfSenderHandler(
scoped_refptr<base::SingleThreadTaskRunner> main_thread,
DtmfSenderInterface* dtmf_sender)
webrtc::DtmfSenderInterface* dtmf_sender)
: dtmf_sender_(dtmf_sender), webkit_client_(nullptr) {
DVLOG(1) << "::ctor";
observer_ = new Observer(std::move(main_thread), weak_factory_.GetWeakPtr());
......
......@@ -10,11 +10,20 @@
#include "base/macros.h"
#include "base/memory/weak_ptr.h"
#include "base/sequence_checker.h"
#include "third_party/blink/public/platform/web_rtc_dtmf_sender_handler.h"
#include "third_party/blink/public/platform/web_rtc_dtmf_sender_handler_client.h"
#include "third_party/blink/public/platform/web_string.h"
#include "third_party/blink/renderer/platform/platform_export.h"
#include "third_party/blink/renderer/platform/wtf/text/wtf_string.h"
#include "third_party/webrtc/api/dtmf_sender_interface.h"
namespace base {
class SingleThreadTaskRunner;
}
namespace webrtc {
class DtmfSenderInterface;
}
namespace blink {
// RtcDtmfSenderHandler is a delegate for the RTC DTMF Sender API messages
......@@ -23,19 +32,18 @@ namespace blink {
// WebKit call all of these methods on the main render thread.
// Callbacks to the webrtc::DtmfSenderObserverInterface implementation also
// occur on the main render thread.
class RtcDtmfSenderHandler : public blink::WebRTCDTMFSenderHandler {
class PLATFORM_EXPORT RtcDtmfSenderHandler final {
public:
RtcDtmfSenderHandler(scoped_refptr<base::SingleThreadTaskRunner> main_thread,
webrtc::DtmfSenderInterface* dtmf_sender);
~RtcDtmfSenderHandler() override;
~RtcDtmfSenderHandler();
// blink::WebRTCDTMFSenderHandler implementation.
void SetClient(blink::WebRTCDTMFSenderHandlerClient* client) override;
blink::WebString CurrentToneBuffer() override;
bool CanInsertDTMF() override;
void SetClient(blink::WebRTCDTMFSenderHandlerClient* client);
blink::WebString CurrentToneBuffer();
bool CanInsertDTMF();
bool InsertDTMF(const blink::WebString& tones,
int duration,
int interToneGap) override;
int interToneGap);
void OnToneChange(const String& tone);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment