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

Unified Diff: chrome/browser/media/router/mojo/media_router_struct_traits.h

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/mojo/media_router_struct_traits.h
diff --git a/chrome/browser/media/router/mojo/media_router_struct_traits.h b/chrome/browser/media/router/mojo/media_router_struct_traits.h
deleted file mode 100644
index cb732691b246a1f19b02ce9fc1c3a5f4aab43fa5..0000000000000000000000000000000000000000
--- a/chrome/browser/media/router/mojo/media_router_struct_traits.h
+++ /dev/null
@@ -1,570 +0,0 @@
-// Copyright 2016 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 CHROME_BROWSER_MEDIA_ROUTER_MOJO_MEDIA_ROUTER_STRUCT_TRAITS_H_
-#define CHROME_BROWSER_MEDIA_ROUTER_MOJO_MEDIA_ROUTER_STRUCT_TRAITS_H_
-
-#include <string>
-
-#include "chrome/browser/media/router/discovery/media_sink_internal.h"
-#include "chrome/browser/media/router/issue.h"
-#include "chrome/browser/media/router/mojo/media_router.mojom.h"
-#include "chrome/browser/media/router/route_request_result.h"
-#include "mojo/common/common_custom_types_struct_traits.h"
-
-namespace mojo {
-
-// Issue
-
-template <>
-struct EnumTraits<media_router::mojom::Issue::ActionType,
- media_router::IssueInfo::Action> {
- static media_router::mojom::Issue::ActionType ToMojom(
- media_router::IssueInfo::Action action) {
- switch (action) {
- case media_router::IssueInfo::Action::DISMISS:
- return media_router::mojom::Issue::ActionType::DISMISS;
- case media_router::IssueInfo::Action::LEARN_MORE:
- return media_router::mojom::Issue::ActionType::LEARN_MORE;
- }
- NOTREACHED() << "Unknown issue action type " << static_cast<int>(action);
- return media_router::mojom::Issue::ActionType::DISMISS;
- }
-
- static bool FromMojom(media_router::mojom::Issue::ActionType input,
- media_router::IssueInfo::Action* output) {
- switch (input) {
- case media_router::mojom::Issue::ActionType::DISMISS:
- *output = media_router::IssueInfo::Action::DISMISS;
- return true;
- case media_router::mojom::Issue::ActionType::LEARN_MORE:
- *output = media_router::IssueInfo::Action::LEARN_MORE;
- return true;
- }
- return false;
- }
-};
-
-template <>
-struct EnumTraits<media_router::mojom::Issue::Severity,
- media_router::IssueInfo::Severity> {
- static media_router::mojom::Issue::Severity ToMojom(
- media_router::IssueInfo::Severity severity) {
- switch (severity) {
- case media_router::IssueInfo::Severity::FATAL:
- return media_router::mojom::Issue::Severity::FATAL;
- case media_router::IssueInfo::Severity::WARNING:
- return media_router::mojom::Issue::Severity::WARNING;
- case media_router::IssueInfo::Severity::NOTIFICATION:
- return media_router::mojom::Issue::Severity::NOTIFICATION;
- }
- NOTREACHED() << "Unknown issue severity " << static_cast<int>(severity);
- return media_router::mojom::Issue::Severity::WARNING;
- }
-
- static bool FromMojom(media_router::mojom::Issue::Severity input,
- media_router::IssueInfo::Severity* output) {
- switch (input) {
- case media_router::mojom::Issue::Severity::FATAL:
- *output = media_router::IssueInfo::Severity::FATAL;
- return true;
- case media_router::mojom::Issue::Severity::WARNING:
- *output = media_router::IssueInfo::Severity::WARNING;
- return true;
- case media_router::mojom::Issue::Severity::NOTIFICATION:
- *output = media_router::IssueInfo::Severity::NOTIFICATION;
- return true;
- }
- return false;
- }
-};
-
-template <>
-struct UnionTraits<media_router::mojom::MediaSinkExtraDataDataView,
- media_router::MediaSinkInternal> {
- static media_router::mojom::MediaSinkExtraDataDataView::Tag GetTag(
- const media_router::MediaSinkInternal& sink);
-
- static bool IsNull(const media_router::MediaSinkInternal& sink) {
- return !sink.is_cast_sink() && !sink.is_dial_sink();
- }
-
- static void SetToNull(media_router::MediaSinkInternal* out) {}
-
- static const media_router::DialSinkExtraData& dial_media_sink(
- const media_router::MediaSinkInternal& sink) {
- return sink.dial_data();
- }
-
- static const media_router::CastSinkExtraData& cast_media_sink(
- const media_router::MediaSinkInternal& sink) {
- return sink.cast_data();
- }
-
- static bool Read(media_router::mojom::MediaSinkExtraDataDataView data,
- media_router::MediaSinkInternal* out);
-};
-
-template <>
-struct StructTraits<media_router::mojom::DialMediaSinkDataView,
- media_router::DialSinkExtraData> {
- static const std::string& model_name(
- const media_router::DialSinkExtraData& extra_data) {
- return extra_data.model_name;
- }
-
- static const net::IPAddress& ip_address(
- const media_router::DialSinkExtraData& extra_data) {
- return extra_data.ip_address;
- }
-
- static const GURL& app_url(
- const media_router::DialSinkExtraData& extra_data) {
- return extra_data.app_url;
- }
-
- static bool Read(media_router::mojom::DialMediaSinkDataView data,
- media_router::DialSinkExtraData* out);
-};
-
-template <>
-struct StructTraits<media_router::mojom::CastMediaSinkDataView,
- media_router::CastSinkExtraData> {
- static const std::string& model_name(
- const media_router::CastSinkExtraData& extra_data) {
- return extra_data.model_name;
- }
-
- static const net::IPAddress& ip_address(
- const media_router::CastSinkExtraData& extra_data) {
- return extra_data.ip_address;
- }
-
- static uint8_t capabilities(
- const media_router::CastSinkExtraData& extra_data) {
- return extra_data.capabilities;
- }
-
- static int32_t cast_channel_id(
- const media_router::CastSinkExtraData& extra_data) {
- return extra_data.cast_channel_id;
- }
-
- static bool Read(media_router::mojom::CastMediaSinkDataView data,
- media_router::CastSinkExtraData* out);
-};
-
-template <>
-struct StructTraits<media_router::mojom::RouteMessageDataView,
- media_router::RouteMessage> {
- static media_router::mojom::RouteMessage::Type type(
- const media_router::RouteMessage& msg) {
- switch (msg.type) {
- case media_router::RouteMessage::TEXT:
- return media_router::mojom::RouteMessage::Type::TEXT;
- case media_router::RouteMessage::BINARY:
- return media_router::mojom::RouteMessage::Type::BINARY;
- }
- NOTREACHED();
- return media_router::mojom::RouteMessage::Type::TEXT;
- }
-
- static const base::Optional<std::string>& message(
- const media_router::RouteMessage& msg) {
- return msg.text;
- }
-
- static const base::Optional<std::vector<uint8_t>>& data(
- const media_router::RouteMessage& msg) {
- return msg.binary;
- }
-
- static bool Read(media_router::mojom::RouteMessageDataView data,
- media_router::RouteMessage* out) {
- media_router::mojom::RouteMessage::Type type;
- if (!data.ReadType(&type))
- return false;
- switch (type) {
- case media_router::mojom::RouteMessage::Type::TEXT: {
- out->type = media_router::RouteMessage::TEXT;
- base::Optional<std::string> text;
- if (!data.ReadMessage(&text) || !text)
- return false;
- out->text = std::move(text);
- break;
- }
- case media_router::mojom::RouteMessage::Type::BINARY: {
- out->type = media_router::RouteMessage::BINARY;
- base::Optional<std::vector<uint8_t>> binary;
- if (!data.ReadData(&binary) || !binary)
- return false;
- out->binary = std::move(binary);
- break;
- }
- default:
- return false;
- }
- return true;
- }
-};
-
-template <>
-struct StructTraits<media_router::mojom::IssueDataView,
- media_router::IssueInfo> {
- static bool Read(media_router::mojom::IssueDataView data,
- media_router::IssueInfo* out);
-
- static base::Optional<std::string> route_id(
- const media_router::IssueInfo& issue) {
- return issue.route_id.empty() ? base::Optional<std::string>()
- : base::make_optional(issue.route_id);
- }
-
- static media_router::IssueInfo::Severity severity(
- const media_router::IssueInfo& issue) {
- return issue.severity;
- }
-
- static bool is_blocking(const media_router::IssueInfo& issue) {
- return issue.is_blocking;
- }
-
- static std::string title(const media_router::IssueInfo& issue) {
- return issue.title;
- }
-
- static base::Optional<std::string> message(
- const media_router::IssueInfo& issue) {
- return issue.message.empty() ? base::Optional<std::string>()
- : base::make_optional(issue.message);
- }
-
- static media_router::IssueInfo::Action default_action(
- const media_router::IssueInfo& issue) {
- return issue.default_action;
- }
-
- static base::Optional<std::vector<media_router::IssueInfo::Action>>
- secondary_actions(const media_router::IssueInfo& issue) {
- return issue.secondary_actions;
- }
-
- static int32_t help_page_id(const media_router::IssueInfo& issue) {
- return issue.help_page_id;
- }
-};
-
-// MediaSink
-
-template <>
-struct EnumTraits<media_router::mojom::MediaSink::IconType,
- media_router::MediaSink::IconType> {
- static media_router::mojom::MediaSink::IconType ToMojom(
- media_router::MediaSink::IconType icon_type) {
- switch (icon_type) {
- case media_router::MediaSink::CAST:
- return media_router::mojom::MediaSink::IconType::CAST;
- case media_router::MediaSink::CAST_AUDIO:
- return media_router::mojom::MediaSink::IconType::CAST_AUDIO;
- case media_router::MediaSink::CAST_AUDIO_GROUP:
- return media_router::mojom::MediaSink::IconType::CAST_AUDIO_GROUP;
- case media_router::MediaSink::HANGOUT:
- return media_router::mojom::MediaSink::IconType::HANGOUT;
- case media_router::MediaSink::MEETING:
- return media_router::mojom::MediaSink::IconType::MEETING;
- case media_router::MediaSink::GENERIC:
- return media_router::mojom::MediaSink::IconType::GENERIC;
- }
- NOTREACHED() << "Unknown sink icon type " << static_cast<int>(icon_type);
- return media_router::mojom::MediaSink::IconType::GENERIC;
- }
-
- static bool FromMojom(media_router::mojom::MediaSink::IconType input,
- media_router::MediaSink::IconType* output) {
- switch (input) {
- case media_router::mojom::MediaSink::IconType::CAST:
- *output = media_router::MediaSink::CAST;
- return true;
- case media_router::mojom::MediaSink::IconType::CAST_AUDIO:
- *output = media_router::MediaSink::CAST_AUDIO;
- return true;
- case media_router::mojom::MediaSink::IconType::CAST_AUDIO_GROUP:
- *output = media_router::MediaSink::CAST_AUDIO_GROUP;
- return true;
- case media_router::mojom::MediaSink::IconType::HANGOUT:
- *output = media_router::MediaSink::HANGOUT;
- return true;
- case media_router::mojom::MediaSink::IconType::MEETING:
- *output = media_router::MediaSink::MEETING;
- return true;
- case media_router::mojom::MediaSink::IconType::GENERIC:
- *output = media_router::MediaSink::GENERIC;
- return true;
- }
- return false;
- }
-};
-
-template <>
-struct StructTraits<media_router::mojom::MediaSinkDataView,
- media_router::MediaSinkInternal> {
- static bool Read(media_router::mojom::MediaSinkDataView data,
- media_router::MediaSinkInternal* out);
-
- static std::string sink_id(
- const media_router::MediaSinkInternal& sink_internal) {
- return sink_internal.sink().id();
- }
-
- static std::string name(
- const media_router::MediaSinkInternal& sink_internal) {
- return sink_internal.sink().name();
- }
-
- static base::Optional<std::string> description(
- const media_router::MediaSinkInternal& sink_internal) {
- return sink_internal.sink().description();
- }
-
- static base::Optional<std::string> domain(
- const media_router::MediaSinkInternal& sink_internal) {
- return sink_internal.sink().domain();
- }
-
- static media_router::MediaSink::IconType icon_type(
- const media_router::MediaSinkInternal& sink_internal) {
- return sink_internal.sink().icon_type();
- }
-
- static const media_router::MediaSinkInternal& extra_data(
- const media_router::MediaSinkInternal& sink_internal) {
- return sink_internal;
- }
-};
-
-// MediaRoute
-
-template <>
-struct StructTraits<media_router::mojom::MediaRouteDataView,
- media_router::MediaRoute> {
- static bool Read(media_router::mojom::MediaRouteDataView data,
- media_router::MediaRoute* out);
-
- static std::string media_route_id(const media_router::MediaRoute& route) {
- return route.media_route_id();
- }
-
- static base::Optional<std::string> media_source(
- const media_router::MediaRoute& route) {
- // TODO(imcheng): If we ever convert from Mojo to C++ outside of unit tests,
- // it would be better to make the |media_source_| field on MediaRoute a
- // base::Optional<MediaSource::Id> instead so it can be returned directly
- // here.
- return route.media_source().id().empty()
- ? base::Optional<std::string>()
- : base::make_optional(route.media_source().id());
- }
-
- static std::string media_sink_id(const media_router::MediaRoute& route) {
- return route.media_sink_id();
- }
-
- static std::string description(const media_router::MediaRoute& route) {
- return route.description();
- }
-
- static bool is_local(const media_router::MediaRoute& route) {
- return route.is_local();
- }
-
- static base::Optional<std::string> custom_controller_path(
- const media_router::MediaRoute& route) {
- return route.custom_controller_path().empty()
- ? base::Optional<std::string>()
- : base::make_optional(route.custom_controller_path());
- }
-
- static bool for_display(const media_router::MediaRoute& route) {
- return route.for_display();
- }
-
- static bool is_incognito(const media_router::MediaRoute& route) {
- return route.is_incognito();
- }
-
- static bool is_offscreen_presentation(const media_router::MediaRoute& route) {
- return route.is_offscreen_presentation();
- }
-};
-
-// PresentationConnectionState
-
-template <>
-struct EnumTraits<media_router::mojom::MediaRouter::PresentationConnectionState,
- content::PresentationConnectionState> {
- static media_router::mojom::MediaRouter::PresentationConnectionState ToMojom(
- content::PresentationConnectionState state) {
- switch (state) {
- case content::PRESENTATION_CONNECTION_STATE_CONNECTING:
- return media_router::mojom::MediaRouter::PresentationConnectionState::
- CONNECTING;
- case content::PRESENTATION_CONNECTION_STATE_CONNECTED:
- return media_router::mojom::MediaRouter::PresentationConnectionState::
- CONNECTED;
- case content::PRESENTATION_CONNECTION_STATE_CLOSED:
- return media_router::mojom::MediaRouter::PresentationConnectionState::
- CLOSED;
- case content::PRESENTATION_CONNECTION_STATE_TERMINATED:
- return media_router::mojom::MediaRouter::PresentationConnectionState::
- TERMINATED;
- }
- NOTREACHED() << "Unknown PresentationConnectionState "
- << static_cast<int>(state);
- return media_router::mojom::MediaRouter::PresentationConnectionState::
- TERMINATED;
- }
-
- static bool FromMojom(
- media_router::mojom::MediaRouter::PresentationConnectionState input,
- content::PresentationConnectionState* state) {
- switch (input) {
- case media_router::mojom::MediaRouter::PresentationConnectionState::
- CONNECTING:
- *state = content::PRESENTATION_CONNECTION_STATE_CONNECTING;
- return true;
- case media_router::mojom::MediaRouter::PresentationConnectionState::
- CONNECTED:
- *state = content::PRESENTATION_CONNECTION_STATE_CONNECTED;
- return true;
- case media_router::mojom::MediaRouter::PresentationConnectionState::
- CLOSED:
- *state = content::PRESENTATION_CONNECTION_STATE_CLOSED;
- return true;
- case media_router::mojom::MediaRouter::PresentationConnectionState::
- TERMINATED:
- *state = content::PRESENTATION_CONNECTION_STATE_TERMINATED;
- return true;
- }
- return false;
- }
-};
-
-// PresentationConnectionCloseReason
-
-template <>
-struct EnumTraits<
- media_router::mojom::MediaRouter::PresentationConnectionCloseReason,
- content::PresentationConnectionCloseReason> {
- static media_router::mojom::MediaRouter::PresentationConnectionCloseReason
- ToMojom(content::PresentationConnectionCloseReason reason) {
- switch (reason) {
- case content::PRESENTATION_CONNECTION_CLOSE_REASON_CONNECTION_ERROR:
- return media_router::mojom::MediaRouter::
- PresentationConnectionCloseReason::CONNECTION_ERROR;
- case content::PRESENTATION_CONNECTION_CLOSE_REASON_CLOSED:
- return media_router::mojom::MediaRouter::
- PresentationConnectionCloseReason::CLOSED;
- case content::PRESENTATION_CONNECTION_CLOSE_REASON_WENT_AWAY:
- return media_router::mojom::MediaRouter::
- PresentationConnectionCloseReason::WENT_AWAY;
- }
- NOTREACHED() << "Unknown PresentationConnectionCloseReason "
- << static_cast<int>(reason);
- return media_router::mojom::MediaRouter::PresentationConnectionCloseReason::
- CONNECTION_ERROR;
- }
-
- static bool FromMojom(
- media_router::mojom::MediaRouter::PresentationConnectionCloseReason input,
- content::PresentationConnectionCloseReason* state) {
- switch (input) {
- case media_router::mojom::MediaRouter::PresentationConnectionCloseReason::
- CONNECTION_ERROR:
- *state = content::PRESENTATION_CONNECTION_CLOSE_REASON_CONNECTION_ERROR;
- return true;
- case media_router::mojom::MediaRouter::PresentationConnectionCloseReason::
- CLOSED:
- *state = content::PRESENTATION_CONNECTION_CLOSE_REASON_CLOSED;
- return true;
- case media_router::mojom::MediaRouter::PresentationConnectionCloseReason::
- WENT_AWAY:
- *state = content::PRESENTATION_CONNECTION_CLOSE_REASON_WENT_AWAY;
- return true;
- }
- return false;
- }
-};
-
-// RouteRequestResultCode
-
-template <>
-struct EnumTraits<media_router::mojom::RouteRequestResultCode,
- media_router::RouteRequestResult::ResultCode> {
- static media_router::mojom::RouteRequestResultCode ToMojom(
- media_router::RouteRequestResult::ResultCode code) {
- switch (code) {
- case media_router::RouteRequestResult::UNKNOWN_ERROR:
- return media_router::mojom::RouteRequestResultCode::UNKNOWN_ERROR;
- case media_router::RouteRequestResult::OK:
- return media_router::mojom::RouteRequestResultCode::OK;
- case media_router::RouteRequestResult::TIMED_OUT:
- return media_router::mojom::RouteRequestResultCode::TIMED_OUT;
- case media_router::RouteRequestResult::ROUTE_NOT_FOUND:
- return media_router::mojom::RouteRequestResultCode::ROUTE_NOT_FOUND;
- case media_router::RouteRequestResult::SINK_NOT_FOUND:
- return media_router::mojom::RouteRequestResultCode::SINK_NOT_FOUND;
- case media_router::RouteRequestResult::INVALID_ORIGIN:
- return media_router::mojom::RouteRequestResultCode::INVALID_ORIGIN;
- case media_router::RouteRequestResult::INCOGNITO_MISMATCH:
- return media_router::mojom::RouteRequestResultCode::INCOGNITO_MISMATCH;
- case media_router::RouteRequestResult::NO_SUPPORTED_PROVIDER:
- return media_router::mojom::RouteRequestResultCode::
- NO_SUPPORTED_PROVIDER;
- case media_router::RouteRequestResult::CANCELLED:
- return media_router::mojom::RouteRequestResultCode::CANCELLED;
- default:
- NOTREACHED() << "Unknown RouteRequestResultCode "
- << static_cast<int>(code);
- return media_router::mojom::RouteRequestResultCode::UNKNOWN_ERROR;
- }
- }
-
- static bool FromMojom(media_router::mojom::RouteRequestResultCode input,
- media_router::RouteRequestResult::ResultCode* output) {
- switch (input) {
- case media_router::mojom::RouteRequestResultCode::UNKNOWN_ERROR:
- *output = media_router::RouteRequestResult::UNKNOWN_ERROR;
- return true;
- case media_router::mojom::RouteRequestResultCode::OK:
- *output = media_router::RouteRequestResult::OK;
- return true;
- case media_router::mojom::RouteRequestResultCode::TIMED_OUT:
- *output = media_router::RouteRequestResult::TIMED_OUT;
- return true;
- case media_router::mojom::RouteRequestResultCode::ROUTE_NOT_FOUND:
- *output = media_router::RouteRequestResult::ROUTE_NOT_FOUND;
- return true;
- case media_router::mojom::RouteRequestResultCode::SINK_NOT_FOUND:
- *output = media_router::RouteRequestResult::SINK_NOT_FOUND;
- return true;
- case media_router::mojom::RouteRequestResultCode::INVALID_ORIGIN:
- *output = media_router::RouteRequestResult::INVALID_ORIGIN;
- return true;
- case media_router::mojom::RouteRequestResultCode::INCOGNITO_MISMATCH:
- *output = media_router::RouteRequestResult::INCOGNITO_MISMATCH;
- return true;
- case media_router::mojom::RouteRequestResultCode::NO_SUPPORTED_PROVIDER:
- *output = media_router::RouteRequestResult::NO_SUPPORTED_PROVIDER;
- return true;
- case media_router::mojom::RouteRequestResultCode::CANCELLED:
- *output = media_router::RouteRequestResult::CANCELLED;
- return true;
- }
- return false;
- }
-};
-
-} // namespace mojo
-
-#endif // CHROME_BROWSER_MEDIA_ROUTER_MOJO_MEDIA_ROUTER_STRUCT_TRAITS_H_

Powered by Google App Engine
This is Rietveld 408576698