Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2556)

Unified Diff: chrome/browser/media/router/media_source_helper.cc

Issue 2771413003: Move c/b/media/router/mojo/*.mojom to chrome/common/media_router/mojo/*.mojom (Closed)
Patch Set: Rebase Created 3 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/media/router/media_source_helper.cc
diff --git a/chrome/browser/media/router/media_source_helper.cc b/chrome/browser/media/router/media_source_helper.cc
deleted file mode 100644
index fa410f8adb61ea8b86cc1fee35077b691005cbb1..0000000000000000000000000000000000000000
--- a/chrome/browser/media/router/media_source_helper.cc
+++ /dev/null
@@ -1,100 +0,0 @@
-// Copyright 2015 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 "chrome/browser/media/router/media_source_helper.h"
-
-#include <stdio.h>
-
-#include "base/strings/string_util.h"
-#include "base/strings/stringprintf.h"
-#include "chrome/browser/media/router/media_source.h"
-#include "chrome/browser/sessions/session_tab_helper.h"
-#include "url/gurl.h"
-
-namespace media_router {
-
-namespace {
-
-// Prefixes used to format and detect various protocols' media source URNs.
-// See: https://www.ietf.org/rfc/rfc3406.txt
-constexpr char kTabMediaUrnFormat[] = "urn:x-org.chromium.media:source:tab:%d";
-constexpr char kDesktopMediaUrn[] = "urn:x-org.chromium.media:source:desktop";
-constexpr char kTabRemotingUrnFormat[] =
- "urn:x-org.chromium.media:source:tab_content_remoting:%d";
-constexpr char kCastPresentationUrlDomain[] = "google.com";
-constexpr char kCastPresentationUrlPath[] = "/cast";
-
-// This value must be the same as |chrome.cast.AUTO_JOIN_PRESENTATION_ID| in the
-// component extension.
-constexpr char kAutoJoinPresentationId[] = "auto-join";
-
-} // namespace
-
-MediaSource MediaSourceForTab(int tab_id) {
- return MediaSource(base::StringPrintf(kTabMediaUrnFormat, tab_id));
-}
-
-MediaSource MediaSourceForTabContentRemoting(content::WebContents* contents) {
- DCHECK(contents);
- return MediaSource(base::StringPrintf(kTabRemotingUrnFormat,
- SessionTabHelper::IdForTab(contents)));
-}
-
-MediaSource MediaSourceForDesktop() {
- return MediaSource(std::string(kDesktopMediaUrn));
-}
-
-MediaSource MediaSourceForPresentationUrl(const GURL& presentation_url) {
- return MediaSource(presentation_url);
-}
-
-bool IsDesktopMirroringMediaSource(const MediaSource& source) {
- return base::StartsWith(source.id(), kDesktopMediaUrn,
- base::CompareCase::SENSITIVE);
-}
-
-bool IsTabMirroringMediaSource(const MediaSource& source) {
- int tab_id;
- return sscanf(source.id().c_str(), kTabMediaUrnFormat, &tab_id) == 1 &&
- tab_id > 0;
-}
-
-bool IsMirroringMediaSource(const MediaSource& source) {
- return IsDesktopMirroringMediaSource(source) ||
- IsTabMirroringMediaSource(source);
-}
-
-bool CanConnectToMediaSource(const MediaSource& source) {
- // Compare host, port, scheme, and path prefix for source.url().
- return source.url().SchemeIs(url::kHttpsScheme) &&
- source.url().DomainIs(kCastPresentationUrlDomain) &&
- source.url().has_path() &&
- source.url().path() == kCastPresentationUrlPath;
-}
-
-int TabIdFromMediaSource(const MediaSource& source) {
- int tab_id;
- if (sscanf(source.id().c_str(), kTabMediaUrnFormat, &tab_id) == 1)
- return tab_id;
- else if (sscanf(source.id().c_str(), kTabRemotingUrnFormat, &tab_id) == 1)
- return tab_id;
- else
- return -1;
-}
-
-bool IsValidMediaSource(const MediaSource& source) {
- return TabIdFromMediaSource(source) > 0 ||
- IsDesktopMirroringMediaSource(source) ||
- IsValidPresentationUrl(GURL(source.id()));
-}
-
-bool IsValidPresentationUrl(const GURL& url) {
- return url.is_valid() && url.SchemeIsHTTPOrHTTPS();
-}
-
-bool IsAutoJoinPresentationId(const std::string& presentation_id) {
- return presentation_id == kAutoJoinPresentationId;
-}
-
-} // namespace media_router

Powered by Google App Engine
This is Rietveld 408576698