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

Side by Side Diff: chrome/browser/media/router/mojo/media_router_mojo_impl.h

Issue 2666873006: [Media Router] Convert to use typemaps for media_router.mojom. (Closed)
Patch Set: Addressed Mark's comments 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 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 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 #ifndef CHROME_BROWSER_MEDIA_ROUTER_MOJO_MEDIA_ROUTER_MOJO_IMPL_H_ 5 #ifndef CHROME_BROWSER_MEDIA_ROUTER_MOJO_MEDIA_ROUTER_MOJO_IMPL_H_
6 #define CHROME_BROWSER_MEDIA_ROUTER_MOJO_MEDIA_ROUTER_MOJO_IMPL_H_ 6 #define CHROME_BROWSER_MEDIA_ROUTER_MOJO_MEDIA_ROUTER_MOJO_IMPL_H_
7 7
8 #include <stdint.h> 8 #include <stdint.h>
9 9
10 #include <deque> 10 #include <deque>
11 #include <map> 11 #include <map>
12 #include <memory> 12 #include <memory>
13 #include <set> 13 #include <set>
14 #include <string> 14 #include <string>
15 #include <unordered_map> 15 #include <unordered_map>
16 #include <vector> 16 #include <vector>
17 17
18 #include "base/containers/hash_tables.h" 18 #include "base/containers/hash_tables.h"
19 #include "base/gtest_prod_util.h" 19 #include "base/gtest_prod_util.h"
20 #include "base/macros.h" 20 #include "base/macros.h"
21 #include "base/memory/weak_ptr.h" 21 #include "base/memory/weak_ptr.h"
22 #include "base/observer_list.h" 22 #include "base/observer_list.h"
23 #include "base/threading/thread_task_runner_handle.h" 23 #include "base/threading/thread_task_runner_handle.h"
24 #include "build/build_config.h" 24 #include "build/build_config.h"
25 #include "chrome/browser/media/router/issue.h" 25 #include "chrome/browser/media/router/issue.h"
26 #include "chrome/browser/media/router/issue_manager.h" 26 #include "chrome/browser/media/router/issue_manager.h"
27 #include "chrome/browser/media/router/media_router_base.h" 27 #include "chrome/browser/media/router/media_router_base.h"
28 #include "chrome/browser/media/router/media_routes_observer.h" 28 #include "chrome/browser/media/router/media_routes_observer.h"
29 #include "chrome/browser/media/router/mojo/media_router.mojom.h" 29 #include "chrome/browser/media/router/mojo/media_router.mojom.h"
30 #include "chrome/browser/media/router/route_request_result.h"
30 #include "mojo/public/cpp/bindings/binding.h" 31 #include "mojo/public/cpp/bindings/binding.h"
31 32
32 namespace content { 33 namespace content {
33 class BrowserContext; 34 class BrowserContext;
34 } 35 }
35 36
36 namespace extensions { 37 namespace extensions {
37 class EventPageTracker; 38 class EventPageTracker;
38 class Extension; 39 class Extension;
39 } 40 }
(...skipping 238 matching lines...) Expand 10 before | Expand all | Expand 10 after
278 // Error handler callback for |binding_| and |media_route_provider_|. 279 // Error handler callback for |binding_| and |media_route_provider_|.
279 void OnConnectionError(); 280 void OnConnectionError();
280 281
281 // mojom::MediaRouter implementation. 282 // mojom::MediaRouter implementation.
282 void RegisterMediaRouteProvider( 283 void RegisterMediaRouteProvider(
283 mojom::MediaRouteProviderPtr media_route_provider_ptr, 284 mojom::MediaRouteProviderPtr media_route_provider_ptr,
284 const mojom::MediaRouter::RegisterMediaRouteProviderCallback& 285 const mojom::MediaRouter::RegisterMediaRouteProviderCallback&
285 callback) override; 286 callback) override;
286 void OnIssue(const IssueInfo& issue) override; 287 void OnIssue(const IssueInfo& issue) override;
287 void OnSinksReceived(const std::string& media_source, 288 void OnSinksReceived(const std::string& media_source,
288 std::vector<mojom::MediaSinkPtr> sinks, 289 const std::vector<MediaSink>& sinks,
289 const std::vector<url::Origin>& origins) override; 290 const std::vector<url::Origin>& origins) override;
290 void OnRoutesUpdated( 291 void OnRoutesUpdated(
291 std::vector<mojom::MediaRoutePtr> routes, 292 const std::vector<MediaRoute>& routes,
292 const std::string& media_source, 293 const std::string& media_source,
293 const std::vector<std::string>& joinable_route_ids) override; 294 const std::vector<std::string>& joinable_route_ids) override;
294 void OnSinkAvailabilityUpdated( 295 void OnSinkAvailabilityUpdated(
295 mojom::MediaRouter::SinkAvailability availability) override; 296 mojom::MediaRouter::SinkAvailability availability) override;
296 void OnPresentationConnectionStateChanged( 297 void OnPresentationConnectionStateChanged(
297 const std::string& route_id, 298 const std::string& route_id,
298 mojom::MediaRouter::PresentationConnectionState state) override; 299 content::PresentationConnectionState state) override;
299 void OnPresentationConnectionClosed( 300 void OnPresentationConnectionClosed(
300 const std::string& route_id, 301 const std::string& route_id,
301 mojom::MediaRouter::PresentationConnectionCloseReason reason, 302 content::PresentationConnectionCloseReason reason,
302 const std::string& message) override; 303 const std::string& message) override;
303 void OnRouteMessagesReceived( 304 void OnRouteMessagesReceived(
304 const std::string& route_id, 305 const std::string& route_id,
305 const std::vector<RouteMessage>& messages) override; 306 const std::vector<RouteMessage>& messages) override;
306 307
307 // Result callback when Mojo terminateRoute is invoked. |route_id| is bound 308 // Result callback when Mojo terminateRoute is invoked. |route_id| is bound
308 // to the ID of the route that was terminated. 309 // to the ID of the route that was terminated.
309 void OnTerminateRouteResult(const MediaRoute::Id& route_id, 310 void OnTerminateRouteResult(const MediaRoute::Id& route_id,
310 const base::Optional<std::string>& error_text, 311 const base::Optional<std::string>& error_text,
311 mojom::RouteRequestResultCode result_code); 312 RouteRequestResult::ResultCode result_code);
312 313
313 // Converts the callback result of calling Mojo CreateRoute()/JoinRoute() 314 // Converts the callback result of calling Mojo CreateRoute()/JoinRoute()
314 // into a local callback. 315 // into a local callback.
315 void RouteResponseReceived( 316 void RouteResponseReceived(
316 const std::string& presentation_id, 317 const std::string& presentation_id,
317 bool is_incognito, 318 bool is_incognito,
318 const std::vector<MediaRouteResponseCallback>& callbacks, 319 const std::vector<MediaRouteResponseCallback>& callbacks,
319 bool is_join, 320 bool is_join,
320 mojom::MediaRoutePtr media_route, 321 const base::Optional<MediaRoute>& media_route,
321 const base::Optional<std::string>& error_text, 322 const base::Optional<std::string>& error_text,
322 mojom::RouteRequestResultCode result_code); 323 RouteRequestResult::ResultCode result_code);
323 324
324 // Callback invoked by |event_page_tracker_| after an attempt to wake the 325 // Callback invoked by |event_page_tracker_| after an attempt to wake the
325 // component extension. If |success| is false, the pending request queue is 326 // component extension. If |success| is false, the pending request queue is
326 // drained. 327 // drained.
327 void EventPageWakeComplete(bool success); 328 void EventPageWakeComplete(bool success);
328 329
329 // Removes all requests from the pending requests queue. Called when there is 330 // Removes all requests from the pending requests queue. Called when there is
330 // a permanent error connecting to component extension. 331 // a permanent error connecting to component extension.
331 void DrainRequestQueue(); 332 void DrainRequestQueue();
332 333
(...skipping 96 matching lines...) Expand 10 before | Expand all | Expand 10 after
429 #endif 430 #endif
430 431
431 base::WeakPtrFactory<MediaRouterMojoImpl> weak_factory_; 432 base::WeakPtrFactory<MediaRouterMojoImpl> weak_factory_;
432 433
433 DISALLOW_COPY_AND_ASSIGN(MediaRouterMojoImpl); 434 DISALLOW_COPY_AND_ASSIGN(MediaRouterMojoImpl);
434 }; 435 };
435 436
436 } // namespace media_router 437 } // namespace media_router
437 438
438 #endif // CHROME_BROWSER_MEDIA_ROUTER_MOJO_MEDIA_ROUTER_MOJO_IMPL_H_ 439 #endif // CHROME_BROWSER_MEDIA_ROUTER_MOJO_MEDIA_ROUTER_MOJO_IMPL_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698