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 |
index 305a00fa3437dd83fa5b8eba3de0bdb61e65380c..47c717a0196e9f7f1e52d72aea7dee5620926f86 100644 |
--- a/chrome/browser/media/router/media_source_helper.cc |
+++ b/chrome/browser/media/router/media_source_helper.cc |
@@ -17,21 +17,19 @@ const char kTabMediaUrnPrefix[] = "urn:x-org.chromium.media:source:tab"; |
const char kDesktopMediaUrn[] = "urn:x-org.chromium.media:source:desktop"; |
const char kCastUrnPrefix[] = "urn:x-com.google.cast:application:"; |
-MediaSource ForTabMediaSource(int tab_id) { |
+MediaSource MediaSourceForTab(int tab_id) { |
return MediaSource(base::StringPrintf("%s:%d", kTabMediaUrnPrefix, tab_id)); |
} |
-MediaSource ForDesktopMediaSource() { |
+MediaSource MediaSourceForDesktop() { |
return MediaSource(std::string(kDesktopMediaUrn)); |
} |
-// TODO(mfoltz): Remove when the TODO in |
-// MediaSourceManager::GetDefaultMediaSource is resolved. |
-MediaSource ForCastAppMediaSource(const std::string& app_id) { |
+MediaSource MediaSourceForCastApp(const std::string& app_id) { |
return MediaSource(kCastUrnPrefix + app_id); |
} |
-MediaSource ForPresentationUrl(const std::string& presentation_url) { |
+MediaSource MediaSourceForPresentationUrl(const std::string& presentation_url) { |
return MediaSource(presentation_url); |
} |
@@ -49,4 +47,13 @@ bool IsValidMediaSource(const MediaSource& source) { |
return url.is_valid() && url.SchemeIsHTTPOrHTTPS(); |
} |
+std::string PresentationUrlFromMediaSource(const MediaSource& source) { |
+ return IsValidPresentationUrl(source.id()) ? source.id() : ""; |
+} |
+ |
+bool IsValidPresentationUrl(const std::string& url) { |
+ GURL gurl(url); |
+ return gurl.is_valid() && gurl.SchemeIsHTTPOrHTTPS(); |
+} |
+ |
} // namespace media_router |