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

Side by Side Diff: chrome/browser/media/router/mojo/media_router_struct_traits.cc

Issue 2675033002: [Media Router] Add MediaSink subtypes (Closed)
Patch Set: merge with master Created 3 years, 10 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 unified diff | Download patch
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/browser/media/router/mojo/media_router_struct_traits.h" 5 #include "chrome/browser/media/router/mojo/media_router_struct_traits.h"
6 6
7 #include "chrome/browser/media/router/media_source.h" 7 #include "chrome/browser/media/router/media_source.h"
8 #include "url/mojo/url_gurl_struct_traits.h"
8 9
9 namespace mojo { 10 namespace mojo {
10 11
11 // static 12 // static
12 bool StructTraits<media_router::mojom::IssueDataView, media_router::IssueInfo>:: 13 bool StructTraits<media_router::mojom::IssueDataView, media_router::IssueInfo>::
13 Read(media_router::mojom::IssueDataView data, 14 Read(media_router::mojom::IssueDataView data,
14 media_router::IssueInfo* out) { 15 media_router::IssueInfo* out) {
15 if (!data.ReadTitle(&out->title)) 16 if (!data.ReadTitle(&out->title))
16 return false; 17 return false;
17 18
(...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after
76 media_router::MediaSink::IconType icon_type; 77 media_router::MediaSink::IconType icon_type;
77 if (!data.ReadIconType(&icon_type)) 78 if (!data.ReadIconType(&icon_type))
78 return false; 79 return false;
79 80
80 out->set_icon_type(icon_type); 81 out->set_icon_type(icon_type);
81 82
82 return true; 83 return true;
83 } 84 }
84 85
85 // static 86 // static
87 bool StructTraits<media_router::mojom::TypedMediaSinkDataView,
88 media_router::TypedMediaSink>::
89 Read(media_router::mojom::TypedMediaSinkDataView data,
90 media_router::TypedMediaSink* out) {
91 media_router::MediaSink sink;
92 if (!data.ReadSink(&sink))
93 return false;
94
95 out->set_sink(sink);
96
97 std::string ip_address;
98 if (!data.ReadIpAddress(&ip_address))
99 return false;
100
101 out->set_ip_address(ip_address);
102
103 base::Optional<std::string> model_name;
104 if (!data.ReadModelName(&model_name))
105 return false;
106
107 if (model_name)
108 out->set_model_name(*model_name);
109
110 media_router::mojom::MediaSinkExtraDataDataView extra_data_data_view;
111 data.GetExtraDataDataView(&extra_data_data_view);
112
113 if (extra_data_data_view.is_null()) {
114 return false;
115 } else if (extra_data_data_view.is_dial_media_sink()) {
116 media_router::DialSinkExtraData extra_data;
117 if (!extra_data_data_view.ReadDialMediaSink(&extra_data))
118 return false;
119
120 out->set_dial_data(extra_data);
121 } else if (extra_data_data_view.is_cast_media_sink()) {
122 media_router::CastSinkExtraData extra_data;
123 if (!extra_data_data_view.ReadCastMediaSink(&extra_data))
124 return false;
125
126 out->set_cast_data(extra_data);
127 }
128
129 return true;
130 }
131
132 // static
133 bool StructTraits<media_router::mojom::DialMediaSinkDataView,
134 media_router::DialSinkExtraData>::
135 Read(media_router::mojom::DialMediaSinkDataView data,
136 media_router::DialSinkExtraData* out) {
137 if (!data.ReadAppUrl(&out->app_url))
138 return false;
139
140 return true;
141 }
142
143 // static
144 bool StructTraits<media_router::mojom::CastMediaSinkDataView,
145 media_router::CastSinkExtraData>::
146 Read(media_router::mojom::CastMediaSinkDataView data,
147 media_router::CastSinkExtraData* out) {
148 out->capabilities = data.capabilities();
149 out->cast_channel_id = data.cast_channel_id();
150
151 return true;
152 }
153
86 bool StructTraits<media_router::mojom::MediaRouteDataView, 154 bool StructTraits<media_router::mojom::MediaRouteDataView,
87 media_router::MediaRoute>:: 155 media_router::MediaRoute>::
88 Read(media_router::mojom::MediaRouteDataView data, 156 Read(media_router::mojom::MediaRouteDataView data,
89 media_router::MediaRoute* out) { 157 media_router::MediaRoute* out) {
90 media_router::MediaRoute::Id media_route_id; 158 media_router::MediaRoute::Id media_route_id;
91 if (!data.ReadMediaRouteId(&media_route_id)) 159 if (!data.ReadMediaRouteId(&media_route_id))
92 return false; 160 return false;
93 161
94 out->set_media_route_id(media_route_id); 162 out->set_media_route_id(media_route_id);
95 163
(...skipping 25 matching lines...) Expand all
121 189
122 out->set_local(data.is_local()); 190 out->set_local(data.is_local());
123 out->set_for_display(data.for_display()); 191 out->set_for_display(data.for_display());
124 out->set_incognito(data.is_incognito()); 192 out->set_incognito(data.is_incognito());
125 out->set_offscreen_presentation(data.is_offscreen_presentation()); 193 out->set_offscreen_presentation(data.is_offscreen_presentation());
126 194
127 return true; 195 return true;
128 } 196 }
129 197
130 } // namespace mojo 198 } // namespace mojo
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698