summaryrefslogtreecommitdiffstats
path: root/content/browser/media
diff options
context:
space:
mode:
Diffstat (limited to 'content/browser/media')
-rw-r--r--content/browser/media/webrtc_internals.cc84
-rw-r--r--content/browser/media/webrtc_internals.h52
-rw-r--r--content/browser/media/webrtc_internals_ui_observer.h26
-rw-r--r--content/browser/media/webrtc_internals_unittest.cc99
4 files changed, 0 insertions, 261 deletions
diff --git a/content/browser/media/webrtc_internals.cc b/content/browser/media/webrtc_internals.cc
deleted file mode 100644
index afd9d12..0000000
--- a/content/browser/media/webrtc_internals.cc
+++ /dev/null
@@ -1,84 +0,0 @@
-// Copyright (c) 2013 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#include "content/browser/media/webrtc_internals.h"
-
-#include "content/browser/media/webrtc_internals_ui_observer.h"
-#include "content/common/media/peer_connection_tracker_messages.h"
-#include "content/public/browser/browser_thread.h"
-
-using base::DictionaryValue;
-using base::ProcessId;
-
-namespace content{
-
-WebRTCInternals::WebRTCInternals() {
-}
-
-WebRTCInternals::~WebRTCInternals() {
-}
-
-WebRTCInternals* WebRTCInternals::GetInstance() {
- return Singleton<WebRTCInternals>::get();
-}
-
-void WebRTCInternals::AddPeerConnection(ProcessId pid,
- const PeerConnectionInfo& info) {
- DCHECK(BrowserThread::CurrentlyOn(BrowserThread::IO));
- if (observers_.size()) {
- DictionaryValue* dict = new DictionaryValue();
- if (dict != NULL) {
- dict->SetInteger("pid", static_cast<int>(pid));
- dict->SetInteger("lid", info.lid);
- dict->SetString("servers", info.servers);
- dict->SetString("constraints", info.constraints);
- dict->SetString("url", info.url);
-
- SendUpdate("updatePeerConnectionAdded", dict);
- peer_connection_data_.Append(dict);
- }
- }
-}
-
-void WebRTCInternals::RemovePeerConnection(ProcessId pid, int lid) {
- DCHECK(BrowserThread::CurrentlyOn(BrowserThread::IO));
- if (observers_.size()) {
- DictionaryValue dict;
- dict.SetInteger("pid", static_cast<int>(pid));
- dict.SetInteger("lid", lid);
- SendUpdate("updatePeerConnectionRemoved", &dict);
-
- for (size_t i = 0; i < peer_connection_data_.GetSize(); ++i) {
- DictionaryValue* dict = NULL;
- peer_connection_data_.GetDictionary(i, &dict);
-
- int this_pid = 0;
- int this_lid = 0;
- dict->GetInteger("pid", &this_pid);
- dict->GetInteger("lid", &this_lid);
- if (this_pid == static_cast<int>(pid) && this_lid == lid)
- peer_connection_data_.Remove(i, NULL);
- }
- }
-}
-
-void WebRTCInternals::AddObserver(WebRTCInternalsUIObserver *observer) {
- DCHECK(BrowserThread::CurrentlyOn(BrowserThread::IO));
- observers_.AddObserver(observer);
-}
-
-void WebRTCInternals::RemoveObserver(WebRTCInternalsUIObserver *observer) {
- DCHECK(BrowserThread::CurrentlyOn(BrowserThread::IO));
- observers_.RemoveObserver(observer);
-}
-
-void WebRTCInternals::SendUpdate(const std::string& command, Value* value) {
- DCHECK(observers_.size());
-
- FOR_EACH_OBSERVER(WebRTCInternalsUIObserver,
- observers_,
- OnUpdate(command, value));
-}
-
-} // namespace content
diff --git a/content/browser/media/webrtc_internals.h b/content/browser/media/webrtc_internals.h
deleted file mode 100644
index 50db3da..0000000
--- a/content/browser/media/webrtc_internals.h
+++ /dev/null
@@ -1,52 +0,0 @@
-// Copyright (c) 2013 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#ifndef CONTENT_BROWSER_MEDIA_WEBRTC_INTERNALS_H_
-#define CONTENT_BROWSER_MEDIA_WEBRTC_INTERNALS_H_
-
-#include "base/memory/singleton.h"
-#include "base/observer_list.h"
-#include "base/process.h"
-#include "base/values.h"
-#include "content/common/content_export.h"
-
-struct PeerConnectionInfo;
-
-namespace content {
-
-class WebRTCInternalsUIObserver;
-
-// This is a singleton class running in the browser process.
-// It collects peer connection infomation from the renderers,
-// forwards the data to WebRTCInternalsUIObserver and
-// sends data collecting commands to the renderers.
-class CONTENT_EXPORT WebRTCInternals {
- public:
- static WebRTCInternals* GetInstance();
-
- // Methods called when peer connection status changes.
- void AddPeerConnection(base::ProcessId pid, const PeerConnectionInfo& info);
- void RemovePeerConnection(base::ProcessId pid, int lid);
-
- // Methods for adding or removing WebRTCInternalsUIObserver.
- void AddObserver(WebRTCInternalsUIObserver *observer);
- void RemoveObserver(WebRTCInternalsUIObserver *observer);
-
- private:
- friend struct DefaultSingletonTraits<WebRTCInternals>;
-
- WebRTCInternals();
- virtual ~WebRTCInternals();
-
- // Send updates to observers on UI thread.
- void SendUpdate(const std::string& command, base::Value* value);
-
- // Only the IO thread should access these fields.
- ObserverList<WebRTCInternalsUIObserver> observers_;
- base::ListValue peer_connection_data_;
-};
-
-} // namespace content
-
-#endif // CONTENT_BROWSER_MEDIA_WEBRTC_INTERNALS_H_
diff --git a/content/browser/media/webrtc_internals_ui_observer.h b/content/browser/media/webrtc_internals_ui_observer.h
deleted file mode 100644
index 44839df..0000000
--- a/content/browser/media/webrtc_internals_ui_observer.h
+++ /dev/null
@@ -1,26 +0,0 @@
-// Copyright (c) 2013 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#ifndef CONTENT_BROWSER_MEDIA_WEBRTC_INTERNALS_UI_OBSERVER_H_
-#define CONTENT_BROWSER_MEDIA_WEBRTC_INTERNALS_UI_OBSERVER_H_
-
-namespace base {
-class Value;
-} // namespace base
-
-namespace content {
-
-// Implement this interface to receive WebRTCInternals updates.
-class WebRTCInternalsUIObserver {
- public:
- virtual ~WebRTCInternalsUIObserver() {}
-
- // This is called on the browser IO thread.
- virtual void OnUpdate(const std::string& command,
- const base::Value* args) = 0;
-};
-
-} // namespace content
-
-#endif // CONTENT_BROWSER_MEDIA_WEBRTC_INTERNALS_UI_OBSERVER_H_
diff --git a/content/browser/media/webrtc_internals_unittest.cc b/content/browser/media/webrtc_internals_unittest.cc
deleted file mode 100644
index 5206443..0000000
--- a/content/browser/media/webrtc_internals_unittest.cc
+++ /dev/null
@@ -1,99 +0,0 @@
-// Copyright (c) 2013 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#include "base/memory/scoped_ptr.h"
-#include "base/message_loop.h"
-#include "base/values.h"
-#include "content/browser/media/webrtc_internals.h"
-#include "content/browser/media/webrtc_internals_ui_observer.h"
-#include "content/common/media/peer_connection_tracker_messages.h"
-#include "content/public/test/test_browser_thread.h"
-#include "testing/gtest/include/gtest/gtest.h"
-
-namespace content {
-class MockWebRTCInternalsProxy : public content::WebRTCInternalsUIObserver {
- public:
- void OnUpdate(const std::string& command, const Value* value) OVERRIDE {
- data_ = command;
- }
-
- std::string data() {
- return data_;
- }
-
- private:
- std::string data_;
-};
-
-class WebRTCInternalsTest : public testing::Test {
- public:
- WebRTCInternalsTest()
- : io_thread_(content::BrowserThread::IO, &io_loop_) {}
-
- protected:
- virtual void SetUp() {
- webrtc_internals_ = WebRTCInternals::GetInstance();
- }
-
- PeerConnectionInfo GetPeerConnectionInfo(uintptr_t lid) {
- PeerConnectionInfo info;
- info.lid = lid;
- info.servers = "s";
- info.constraints = "c";
- info.url = "u";
- return info;
- }
- std::string ExpectedInfo(std::string prefix,
- std::string id,
- std::string suffix) {
- static const std::string kstatic_part1 = std::string(
- "{\"constraints\":\"c\",");
- static const std::string kstatic_part2 = std::string(
- ",\"servers\":\"s\",\"url\":\"u\"}");
- return prefix + kstatic_part1 + id + kstatic_part2 + suffix;
- }
-
- MessageLoop io_loop_;
- content::TestBrowserThread io_thread_;
- WebRTCInternals *webrtc_internals_;
-};
-
-TEST_F(WebRTCInternalsTest, GetInstance) {
- EXPECT_TRUE(webrtc_internals_);
-}
-
-TEST_F(WebRTCInternalsTest, AddRemoveObserver) {
- scoped_ptr<MockWebRTCInternalsProxy> observer(
- new MockWebRTCInternalsProxy());
- webrtc_internals_->AddObserver(observer.get());
- webrtc_internals_->RemoveObserver(observer.get());
- webrtc_internals_->AddPeerConnection(3, GetPeerConnectionInfo(4));
- EXPECT_EQ("", observer->data());
-
- webrtc_internals_->RemovePeerConnection(3, 4);
-}
-
-TEST_F(WebRTCInternalsTest, SendAddPeerConnectionUpdate) {
- scoped_ptr<MockWebRTCInternalsProxy> observer(
- new MockWebRTCInternalsProxy());
- webrtc_internals_->AddObserver(observer.get());
- webrtc_internals_->AddPeerConnection(1, GetPeerConnectionInfo(2));
- EXPECT_EQ("updatePeerConnectionAdded", observer->data());
-
- webrtc_internals_->RemoveObserver(observer.get());
- webrtc_internals_->RemovePeerConnection(1, 2);
-}
-
-TEST_F(WebRTCInternalsTest, SendRemovePeerConnectionUpdate) {
- scoped_ptr<MockWebRTCInternalsProxy> observer(
- new MockWebRTCInternalsProxy());
- webrtc_internals_->AddObserver(observer.get());
- webrtc_internals_->AddPeerConnection(1, GetPeerConnectionInfo(2));
- webrtc_internals_->RemovePeerConnection(1, 2);
- EXPECT_EQ("updatePeerConnectionRemoved", observer->data());
-
- webrtc_internals_->RemoveObserver(observer.get());
-}
-
-} // namespace content