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

Side by Side Diff: chrome/browser/extensions/api/instance_id/instance_id_api.cc

Issue 2038613003: Revert of ExtensionFunction: don't pass ownership of base::Value by raw pointer. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 6 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 #include "chrome/browser/extensions/api/instance_id/instance_id_api.h" 5 #include "chrome/browser/extensions/api/instance_id/instance_id_api.h"
6 6
7 #include "base/logging.h" 7 #include "base/logging.h"
8 #include "base/memory/ptr_util.h"
9 #include "base/metrics/histogram_macros.h" 8 #include "base/metrics/histogram_macros.h"
10 #include "chrome/browser/profiles/profile.h" 9 #include "chrome/browser/profiles/profile.h"
11 #include "chrome/browser/services/gcm/instance_id/instance_id_profile_service.h" 10 #include "chrome/browser/services/gcm/instance_id/instance_id_profile_service.h"
12 #include "chrome/browser/services/gcm/instance_id/instance_id_profile_service_fa ctory.h" 11 #include "chrome/browser/services/gcm/instance_id/instance_id_profile_service_fa ctory.h"
13 #include "chrome/common/extensions/api/instance_id.h" 12 #include "chrome/common/extensions/api/instance_id.h"
14 #include "components/gcm_driver/instance_id/instance_id_driver.h" 13 #include "components/gcm_driver/instance_id/instance_id_driver.h"
15 #include "extensions/common/extension.h" 14 #include "extensions/common/extension.h"
16 15
17 namespace extensions { 16 namespace extensions {
18 17
(...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after
88 87
89 InstanceIDGetIDFunction::~InstanceIDGetIDFunction() {} 88 InstanceIDGetIDFunction::~InstanceIDGetIDFunction() {}
90 89
91 ExtensionFunction::ResponseAction InstanceIDGetIDFunction::DoWork() { 90 ExtensionFunction::ResponseAction InstanceIDGetIDFunction::DoWork() {
92 GetInstanceID()->GetID( 91 GetInstanceID()->GetID(
93 base::Bind(&InstanceIDGetIDFunction::GetIDCompleted, this)); 92 base::Bind(&InstanceIDGetIDFunction::GetIDCompleted, this));
94 return RespondLater(); 93 return RespondLater();
95 } 94 }
96 95
97 void InstanceIDGetIDFunction::GetIDCompleted(const std::string& id) { 96 void InstanceIDGetIDFunction::GetIDCompleted(const std::string& id) {
98 Respond(OneArgument(base::MakeUnique<base::StringValue>(id))); 97 Respond(OneArgument(new base::StringValue(id)));
99 } 98 }
100 99
101 InstanceIDGetCreationTimeFunction::InstanceIDGetCreationTimeFunction() {} 100 InstanceIDGetCreationTimeFunction::InstanceIDGetCreationTimeFunction() {}
102 101
103 InstanceIDGetCreationTimeFunction::~InstanceIDGetCreationTimeFunction() {} 102 InstanceIDGetCreationTimeFunction::~InstanceIDGetCreationTimeFunction() {}
104 103
105 ExtensionFunction::ResponseAction InstanceIDGetCreationTimeFunction::DoWork() { 104 ExtensionFunction::ResponseAction InstanceIDGetCreationTimeFunction::DoWork() {
106 GetInstanceID()->GetCreationTime( 105 GetInstanceID()->GetCreationTime(
107 base::Bind(&InstanceIDGetCreationTimeFunction::GetCreationTimeCompleted, 106 base::Bind(&InstanceIDGetCreationTimeFunction::GetCreationTimeCompleted,
108 this)); 107 this));
109 return RespondLater(); 108 return RespondLater();
110 } 109 }
111 110
112 void InstanceIDGetCreationTimeFunction::GetCreationTimeCompleted( 111 void InstanceIDGetCreationTimeFunction::GetCreationTimeCompleted(
113 const base::Time& creation_time) { 112 const base::Time& creation_time) {
114 Respond(OneArgument( 113 Respond(OneArgument(new base::FundamentalValue(creation_time.ToDoubleT())));
115 base::MakeUnique<base::FundamentalValue>(creation_time.ToDoubleT())));
116 } 114 }
117 115
118 InstanceIDGetTokenFunction::InstanceIDGetTokenFunction() {} 116 InstanceIDGetTokenFunction::InstanceIDGetTokenFunction() {}
119 117
120 InstanceIDGetTokenFunction::~InstanceIDGetTokenFunction() {} 118 InstanceIDGetTokenFunction::~InstanceIDGetTokenFunction() {}
121 119
122 ExtensionFunction::ResponseAction InstanceIDGetTokenFunction::DoWork() { 120 ExtensionFunction::ResponseAction InstanceIDGetTokenFunction::DoWork() {
123 std::unique_ptr<api::instance_id::GetToken::Params> params = 121 std::unique_ptr<api::instance_id::GetToken::Params> params =
124 api::instance_id::GetToken::Params::Create(*args_); 122 api::instance_id::GetToken::Params::Create(*args_);
125 EXTENSION_FUNCTION_VALIDATE(params.get()); 123 EXTENSION_FUNCTION_VALIDATE(params.get());
126 124
127 std::map<std::string, std::string> options; 125 std::map<std::string, std::string> options;
128 if (params->get_token_params.options.get()) 126 if (params->get_token_params.options.get())
129 options = params->get_token_params.options->additional_properties; 127 options = params->get_token_params.options->additional_properties;
130 128
131 GetInstanceID()->GetToken( 129 GetInstanceID()->GetToken(
132 params->get_token_params.authorized_entity, 130 params->get_token_params.authorized_entity,
133 params->get_token_params.scope, 131 params->get_token_params.scope,
134 options, 132 options,
135 base::Bind(&InstanceIDGetTokenFunction::GetTokenCompleted, this)); 133 base::Bind(&InstanceIDGetTokenFunction::GetTokenCompleted, this));
136 134
137 return RespondLater(); 135 return RespondLater();
138 } 136 }
139 137
140 void InstanceIDGetTokenFunction::GetTokenCompleted( 138 void InstanceIDGetTokenFunction::GetTokenCompleted(
141 const std::string& token, 139 const std::string& token,
142 instance_id::InstanceID::Result result) { 140 instance_id::InstanceID::Result result) {
143 if (result == instance_id::InstanceID::SUCCESS) 141 if (result == instance_id::InstanceID::SUCCESS)
144 Respond(OneArgument(base::MakeUnique<base::StringValue>(token))); 142 Respond(OneArgument(new base::StringValue(token)));
145 else 143 else
146 Respond(Error(InstanceIDResultToError(result))); 144 Respond(Error(InstanceIDResultToError(result)));
147 } 145 }
148 146
149 InstanceIDDeleteTokenFunction::InstanceIDDeleteTokenFunction() {} 147 InstanceIDDeleteTokenFunction::InstanceIDDeleteTokenFunction() {}
150 148
151 InstanceIDDeleteTokenFunction::~InstanceIDDeleteTokenFunction() {} 149 InstanceIDDeleteTokenFunction::~InstanceIDDeleteTokenFunction() {}
152 150
153 ExtensionFunction::ResponseAction InstanceIDDeleteTokenFunction::DoWork() { 151 ExtensionFunction::ResponseAction InstanceIDDeleteTokenFunction::DoWork() {
154 std::unique_ptr<api::instance_id::DeleteToken::Params> params = 152 std::unique_ptr<api::instance_id::DeleteToken::Params> params =
(...skipping 29 matching lines...) Expand all
184 182
185 void InstanceIDDeleteIDFunction::DeleteIDCompleted( 183 void InstanceIDDeleteIDFunction::DeleteIDCompleted(
186 instance_id::InstanceID::Result result) { 184 instance_id::InstanceID::Result result) {
187 if (result == instance_id::InstanceID::SUCCESS) 185 if (result == instance_id::InstanceID::SUCCESS)
188 Respond(NoArguments()); 186 Respond(NoArguments());
189 else 187 else
190 Respond(Error(InstanceIDResultToError(result))); 188 Respond(Error(InstanceIDResultToError(result)));
191 } 189 }
192 190
193 } // namespace extensions 191 } // namespace extensions
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698