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

Side by Side Diff: content/browser/permissions/permission_service_impl.cc

Issue 1545243002: Convert Pass()→std::move() in //content/browser (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 12 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 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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 "content/browser/permissions/permission_service_impl.h" 5 #include "content/browser/permissions/permission_service_impl.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 #include <utility>
8 9
9 #include "base/bind.h" 10 #include "base/bind.h"
10 #include "content/public/browser/browser_context.h" 11 #include "content/public/browser/browser_context.h"
11 #include "content/public/browser/permission_manager.h" 12 #include "content/public/browser/permission_manager.h"
12 #include "content/public/browser/permission_type.h" 13 #include "content/public/browser/permission_type.h"
13 14
14 namespace content { 15 namespace content {
15 16
16 namespace { 17 namespace {
17 18
(...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after
60 } 61 }
61 62
62 PermissionServiceImpl::PendingRequest::~PendingRequest() { 63 PermissionServiceImpl::PendingRequest::~PendingRequest() {
63 if (callback.is_null()) 64 if (callback.is_null())
64 return; 65 return;
65 66
66 mojo::Array<PermissionStatus> result = 67 mojo::Array<PermissionStatus> result =
67 mojo::Array<PermissionStatus>::New(request_count); 68 mojo::Array<PermissionStatus>::New(request_count);
68 for (int i = 0; i < request_count; ++i) 69 for (int i = 0; i < request_count; ++i)
69 result[i] = PERMISSION_STATUS_DENIED; 70 result[i] = PERMISSION_STATUS_DENIED;
70 callback.Run(result.Pass()); 71 callback.Run(std::move(result));
71 } 72 }
72 73
73 PermissionServiceImpl::PendingSubscription::PendingSubscription( 74 PermissionServiceImpl::PendingSubscription::PendingSubscription(
74 PermissionType permission, 75 PermissionType permission,
75 const GURL& origin, 76 const GURL& origin,
76 const PermissionStatusCallback& callback) 77 const PermissionStatusCallback& callback)
77 : id(-1), 78 : id(-1),
78 permission(permission), 79 permission(permission),
79 origin(origin), 80 origin(origin),
80 callback(callback) { 81 callback(callback) {
81 } 82 }
82 83
83 PermissionServiceImpl::PendingSubscription::~PendingSubscription() { 84 PermissionServiceImpl::PendingSubscription::~PendingSubscription() {
84 if (!callback.is_null()) 85 if (!callback.is_null())
85 callback.Run(PERMISSION_STATUS_ASK); 86 callback.Run(PERMISSION_STATUS_ASK);
86 } 87 }
87 88
88 PermissionServiceImpl::PermissionServiceImpl( 89 PermissionServiceImpl::PermissionServiceImpl(
89 PermissionServiceContext* context, 90 PermissionServiceContext* context,
90 mojo::InterfaceRequest<PermissionService> request) 91 mojo::InterfaceRequest<PermissionService> request)
91 : context_(context), 92 : context_(context),
92 binding_(this, request.Pass()), 93 binding_(this, std::move(request)),
93 weak_factory_(this) { 94 weak_factory_(this) {
94 binding_.set_connection_error_handler( 95 binding_.set_connection_error_handler(
95 base::Bind(&PermissionServiceImpl::OnConnectionError, 96 base::Bind(&PermissionServiceImpl::OnConnectionError,
96 base::Unretained(this))); 97 base::Unretained(this)));
97 } 98 }
98 99
99 PermissionServiceImpl::~PermissionServiceImpl() { 100 PermissionServiceImpl::~PermissionServiceImpl() {
100 DCHECK(pending_requests_.IsEmpty()); 101 DCHECK(pending_requests_.IsEmpty());
101 } 102 }
102 103
(...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after
169 // can. Even if the call comes from a context where it is not possible to show 170 // can. Even if the call comes from a context where it is not possible to show
170 // any UI, we want to still return something relevant so the current 171 // any UI, we want to still return something relevant so the current
171 // permission status is returned for each permission. 172 // permission status is returned for each permission.
172 BrowserContext* browser_context = context_->GetBrowserContext(); 173 BrowserContext* browser_context = context_->GetBrowserContext();
173 DCHECK(browser_context); 174 DCHECK(browser_context);
174 if (!context_->render_frame_host() || 175 if (!context_->render_frame_host() ||
175 !browser_context->GetPermissionManager()) { 176 !browser_context->GetPermissionManager()) {
176 mojo::Array<PermissionStatus> result(permissions.size()); 177 mojo::Array<PermissionStatus> result(permissions.size());
177 for (size_t i = 0; i < permissions.size(); ++i) 178 for (size_t i = 0; i < permissions.size(); ++i)
178 result[i] = GetPermissionStatusFromName(permissions[i], GURL(origin)); 179 result[i] = GetPermissionStatusFromName(permissions[i], GURL(origin));
179 callback.Run(result.Pass()); 180 callback.Run(std::move(result));
180 return; 181 return;
181 } 182 }
182 183
183 std::vector<PermissionType> types(permissions.size()); 184 std::vector<PermissionType> types(permissions.size());
184 for (size_t i = 0; i < types.size(); ++i) 185 for (size_t i = 0; i < types.size(); ++i)
185 types[i] = PermissionNameToPermissionType(permissions[i]); 186 types[i] = PermissionNameToPermissionType(permissions[i]);
186 187
187 int pending_request_id = pending_requests_.Add( 188 int pending_request_id = pending_requests_.Add(
188 new PendingRequest(callback, permissions.size())); 189 new PendingRequest(callback, permissions.size()));
189 int id = browser_context->GetPermissionManager()->RequestPermissions( 190 int id = browser_context->GetPermissionManager()->RequestPermissions(
(...skipping 168 matching lines...) Expand 10 before | Expand all | Expand 10 after
358 359
359 PermissionStatusCallback callback = subscription->callback; 360 PermissionStatusCallback callback = subscription->callback;
360 361
361 subscription->callback.reset(); 362 subscription->callback.reset();
362 pending_subscriptions_.Remove(pending_subscription_id); 363 pending_subscriptions_.Remove(pending_subscription_id);
363 364
364 callback.Run(status); 365 callback.Run(status);
365 } 366 }
366 367
367 } // namespace content 368 } // namespace content
OLDNEW
« no previous file with comments | « content/browser/permissions/permission_service_context.cc ('k') | content/browser/power_usage_monitor_impl.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698