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

Side by Side Diff: components/payments/payment_request_web_contents_manager.cc

Issue 2611253004: [Payment Request] Change the lifetime management of PaymentRequestImpl (Closed)
Patch Set: fix ios dependency Created 3 years, 11 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
(Empty)
1 // Copyright 2017 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #include "components/payments/payment_request_web_contents_manager.h"
6
7 #include <memory>
8 #include <utility>
9
10 #include "base/logging.h"
11 #include "components/payments/payment_request_delegate.h"
12
13 DEFINE_WEB_CONTENTS_USER_DATA_KEY(payments::PaymentRequestWebContentsManager);
14
15 namespace payments {
16
17 PaymentRequestWebContentsManager::~PaymentRequestWebContentsManager() {}
18
19 PaymentRequestWebContentsManager*
20 PaymentRequestWebContentsManager::GetOrCreateForWebContents(
21 content::WebContents* web_contents) {
22 DCHECK(web_contents);
23 // CreateForWebContents does nothing if the delegate instance already exists.
24 PaymentRequestWebContentsManager::CreateForWebContents(web_contents);
25 return PaymentRequestWebContentsManager::FromWebContents(web_contents);
26 }
27
28 void PaymentRequestWebContentsManager::CreatePaymentRequestImpl(
29 content::WebContents* web_contents,
30 std::unique_ptr<PaymentRequestDelegate> delegate,
31 mojo::InterfaceRequest<payments::mojom::PaymentRequest> request) {
32 std::unique_ptr<PaymentRequestImpl> new_request(new PaymentRequestImpl(
33 web_contents, std::move(delegate), this, std::move(request)));
34 PaymentRequestImpl* request_ptr = new_request.get();
35 payment_requests_.insert(std::make_pair(request_ptr, std::move(new_request)));
36 }
37
38 void PaymentRequestWebContentsManager::DestroyRequest(
39 PaymentRequestImpl* request) {
40 payment_requests_.erase(request);
41 }
42
43 PaymentRequestWebContentsManager::PaymentRequestWebContentsManager(
44 content::WebContents* web_contents) {}
45
46 } // namespace payments
OLDNEW
« components/payments/DEPS ('K') | « components/payments/payment_request_web_contents_manager.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698