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

Side by Side Diff: chrome/browser/chromeos/extensions/file_manager/private_api_misc.cc

Issue 550863003: Rename fileBrowserPrivate to fileManagerPrivate (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 3 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 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 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/chromeos/extensions/file_manager/private_api_misc.h" 5 #include "chrome/browser/chromeos/extensions/file_manager/private_api_misc.h"
6 6
7 #include "ash/frame/frame_util.h" 7 #include "ash/frame/frame_util.h"
8 #include "base/files/file_path.h" 8 #include "base/files/file_path.h"
9 #include "base/prefs/pref_service.h" 9 #include "base/prefs/pref_service.h"
10 #include "base/strings/stringprintf.h" 10 #include "base/strings/stringprintf.h"
11 #include "base/strings/utf_string_conversions.h" 11 #include "base/strings/utf_string_conversions.h"
12 #include "chrome/browser/browser_process.h" 12 #include "chrome/browser/browser_process.h"
13 #include "chrome/browser/chromeos/drive/file_system_util.h" 13 #include "chrome/browser/chromeos/drive/file_system_util.h"
14 #include "chrome/browser/chromeos/extensions/file_manager/file_browser_private_a pi.h" 14 #include "chrome/browser/chromeos/extensions/file_manager/file_manager_private_a pi.h"
15 #include "chrome/browser/chromeos/extensions/file_manager/private_api_util.h" 15 #include "chrome/browser/chromeos/extensions/file_manager/private_api_util.h"
16 #include "chrome/browser/chromeos/file_manager/app_installer.h" 16 #include "chrome/browser/chromeos/file_manager/app_installer.h"
17 #include "chrome/browser/chromeos/file_manager/zip_file_creator.h" 17 #include "chrome/browser/chromeos/file_manager/zip_file_creator.h"
18 #include "chrome/browser/chromeos/profiles/profile_helper.h" 18 #include "chrome/browser/chromeos/profiles/profile_helper.h"
19 #include "chrome/browser/chromeos/settings/cros_settings.h" 19 #include "chrome/browser/chromeos/settings/cros_settings.h"
20 #include "chrome/browser/devtools/devtools_window.h" 20 #include "chrome/browser/devtools/devtools_window.h"
21 #include "chrome/browser/drive/event_logger.h" 21 #include "chrome/browser/drive/event_logger.h"
22 #include "chrome/browser/extensions/devtools_util.h" 22 #include "chrome/browser/extensions/devtools_util.h"
23 #include "chrome/browser/lifetime/application_lifetime.h" 23 #include "chrome/browser/lifetime/application_lifetime.h"
24 #include "chrome/browser/profiles/profile.h" 24 #include "chrome/browser/profiles/profile.h"
25 #include "chrome/browser/profiles/profile_manager.h" 25 #include "chrome/browser/profiles/profile_manager.h"
26 #include "chrome/browser/profiles/profiles_state.h" 26 #include "chrome/browser/profiles/profiles_state.h"
27 #include "chrome/browser/signin/profile_oauth2_token_service_factory.h" 27 #include "chrome/browser/signin/profile_oauth2_token_service_factory.h"
28 #include "chrome/browser/signin/signin_manager_factory.h" 28 #include "chrome/browser/signin/signin_manager_factory.h"
29 #include "chrome/browser/ui/ash/multi_user/multi_user_util.h" 29 #include "chrome/browser/ui/ash/multi_user/multi_user_util.h"
30 #include "chrome/browser/ui/ash/multi_user/multi_user_window_manager.h" 30 #include "chrome/browser/ui/ash/multi_user/multi_user_window_manager.h"
31 #include "chrome/common/extensions/api/file_browser_private.h" 31 #include "chrome/common/extensions/api/file_manager_private.h"
32 #include "chrome/common/pref_names.h" 32 #include "chrome/common/pref_names.h"
33 #include "components/signin/core/browser/profile_oauth2_token_service.h" 33 #include "components/signin/core/browser/profile_oauth2_token_service.h"
34 #include "components/signin/core/browser/signin_manager.h" 34 #include "components/signin/core/browser/signin_manager.h"
35 #include "components/user_manager/user_manager.h" 35 #include "components/user_manager/user_manager.h"
36 #include "content/public/browser/render_view_host.h" 36 #include "content/public/browser/render_view_host.h"
37 #include "content/public/browser/web_contents.h" 37 #include "content/public/browser/web_contents.h"
38 #include "content/public/common/page_zoom.h" 38 #include "content/public/common/page_zoom.h"
39 #include "extensions/browser/app_window/app_window.h" 39 #include "extensions/browser/app_window/app_window.h"
40 #include "extensions/browser/app_window/app_window_registry.h" 40 #include "extensions/browser/app_window/app_window_registry.h"
41 #include "google_apis/drive/auth_service.h" 41 #include "google_apis/drive/auth_service.h"
(...skipping 11 matching lines...) Expand all
53 AppWindowRegistry* const app_window_registry = 53 AppWindowRegistry* const app_window_registry =
54 AppWindowRegistry::Get(function->GetProfile()); 54 AppWindowRegistry::Get(function->GetProfile());
55 content::WebContents* const contents = function->GetAssociatedWebContents(); 55 content::WebContents* const contents = function->GetAssociatedWebContents();
56 content::RenderViewHost* const render_view_host = 56 content::RenderViewHost* const render_view_host =
57 contents ? contents->GetRenderViewHost() : NULL; 57 contents ? contents->GetRenderViewHost() : NULL;
58 return render_view_host ? app_window_registry->GetAppWindowForRenderViewHost( 58 return render_view_host ? app_window_registry->GetAppWindowForRenderViewHost(
59 render_view_host) 59 render_view_host)
60 : NULL; 60 : NULL;
61 } 61 }
62 62
63 std::vector<linked_ptr<api::file_browser_private::ProfileInfo> > 63 std::vector<linked_ptr<api::file_manager_private::ProfileInfo> >
64 GetLoggedInProfileInfoList() { 64 GetLoggedInProfileInfoList() {
65 DCHECK(user_manager::UserManager::IsInitialized()); 65 DCHECK(user_manager::UserManager::IsInitialized());
66 const std::vector<Profile*>& profiles = 66 const std::vector<Profile*>& profiles =
67 g_browser_process->profile_manager()->GetLoadedProfiles(); 67 g_browser_process->profile_manager()->GetLoadedProfiles();
68 std::set<Profile*> original_profiles; 68 std::set<Profile*> original_profiles;
69 std::vector<linked_ptr<api::file_browser_private::ProfileInfo> > 69 std::vector<linked_ptr<api::file_manager_private::ProfileInfo> >
70 result_profiles; 70 result_profiles;
71 71
72 for (size_t i = 0; i < profiles.size(); ++i) { 72 for (size_t i = 0; i < profiles.size(); ++i) {
73 // Filter the profile. 73 // Filter the profile.
74 Profile* const profile = profiles[i]->GetOriginalProfile(); 74 Profile* const profile = profiles[i]->GetOriginalProfile();
75 if (original_profiles.count(profile)) 75 if (original_profiles.count(profile))
76 continue; 76 continue;
77 original_profiles.insert(profile); 77 original_profiles.insert(profile);
78 const user_manager::User* const user = 78 const user_manager::User* const user =
79 chromeos::ProfileHelper::Get()->GetUserByProfile(profile); 79 chromeos::ProfileHelper::Get()->GetUserByProfile(profile);
80 if (!user || !user->is_logged_in()) 80 if (!user || !user->is_logged_in())
81 continue; 81 continue;
82 82
83 // Make a ProfileInfo. 83 // Make a ProfileInfo.
84 linked_ptr<api::file_browser_private::ProfileInfo> profile_info( 84 linked_ptr<api::file_manager_private::ProfileInfo> profile_info(
85 new api::file_browser_private::ProfileInfo()); 85 new api::file_manager_private::ProfileInfo());
86 profile_info->profile_id = multi_user_util::GetUserIDFromProfile(profile); 86 profile_info->profile_id = multi_user_util::GetUserIDFromProfile(profile);
87 profile_info->display_name = UTF16ToUTF8(user->GetDisplayName()); 87 profile_info->display_name = UTF16ToUTF8(user->GetDisplayName());
88 // TODO(hirono): Remove the property from the profile_info. 88 // TODO(hirono): Remove the property from the profile_info.
89 profile_info->is_current_profile = true; 89 profile_info->is_current_profile = true;
90 90
91 result_profiles.push_back(profile_info); 91 result_profiles.push_back(profile_info);
92 } 92 }
93 93
94 return result_profiles; 94 return result_profiles;
95 } 95 }
96 } // namespace 96 } // namespace
97 97
98 bool FileBrowserPrivateLogoutUserForReauthenticationFunction::RunSync() { 98 bool FileManagerPrivateLogoutUserForReauthenticationFunction::RunSync() {
99 user_manager::User* user = 99 user_manager::User* user =
100 chromeos::ProfileHelper::Get()->GetUserByProfile(GetProfile()); 100 chromeos::ProfileHelper::Get()->GetUserByProfile(GetProfile());
101 if (user) { 101 if (user) {
102 user_manager::UserManager::Get()->SaveUserOAuthStatus( 102 user_manager::UserManager::Get()->SaveUserOAuthStatus(
103 user->email(), user_manager::User::OAUTH2_TOKEN_STATUS_INVALID); 103 user->email(), user_manager::User::OAUTH2_TOKEN_STATUS_INVALID);
104 } 104 }
105 105
106 chrome::AttemptUserExit(); 106 chrome::AttemptUserExit();
107 return true; 107 return true;
108 } 108 }
109 109
110 bool FileBrowserPrivateGetPreferencesFunction::RunSync() { 110 bool FileManagerPrivateGetPreferencesFunction::RunSync() {
111 api::file_browser_private::Preferences result; 111 api::file_manager_private::Preferences result;
112 const PrefService* const service = GetProfile()->GetPrefs(); 112 const PrefService* const service = GetProfile()->GetPrefs();
113 113
114 result.drive_enabled = drive::util::IsDriveEnabledForProfile(GetProfile()); 114 result.drive_enabled = drive::util::IsDriveEnabledForProfile(GetProfile());
115 result.cellular_disabled = 115 result.cellular_disabled =
116 service->GetBoolean(prefs::kDisableDriveOverCellular); 116 service->GetBoolean(prefs::kDisableDriveOverCellular);
117 result.hosted_files_disabled = 117 result.hosted_files_disabled =
118 service->GetBoolean(prefs::kDisableDriveHostedFiles); 118 service->GetBoolean(prefs::kDisableDriveHostedFiles);
119 result.use24hour_clock = service->GetBoolean(prefs::kUse24HourClock); 119 result.use24hour_clock = service->GetBoolean(prefs::kUse24HourClock);
120 result.allow_redeem_offers = true; 120 result.allow_redeem_offers = true;
121 if (!chromeos::CrosSettings::Get()->GetBoolean( 121 if (!chromeos::CrosSettings::Get()->GetBoolean(
122 chromeos::kAllowRedeemChromeOsRegistrationOffers, 122 chromeos::kAllowRedeemChromeOsRegistrationOffers,
123 &result.allow_redeem_offers)) { 123 &result.allow_redeem_offers)) {
124 result.allow_redeem_offers = true; 124 result.allow_redeem_offers = true;
125 } 125 }
126 126
127 SetResult(result.ToValue().release()); 127 SetResult(result.ToValue().release());
128 128
129 drive::EventLogger* logger = file_manager::util::GetLogger(GetProfile()); 129 drive::EventLogger* logger = file_manager::util::GetLogger(GetProfile());
130 if (logger) 130 if (logger)
131 logger->Log(logging::LOG_INFO, "%s succeeded.", name().c_str()); 131 logger->Log(logging::LOG_INFO, "%s succeeded.", name().c_str());
132 return true; 132 return true;
133 } 133 }
134 134
135 bool FileBrowserPrivateSetPreferencesFunction::RunSync() { 135 bool FileManagerPrivateSetPreferencesFunction::RunSync() {
136 using extensions::api::file_browser_private::SetPreferences::Params; 136 using extensions::api::file_manager_private::SetPreferences::Params;
137 const scoped_ptr<Params> params(Params::Create(*args_)); 137 const scoped_ptr<Params> params(Params::Create(*args_));
138 EXTENSION_FUNCTION_VALIDATE(params); 138 EXTENSION_FUNCTION_VALIDATE(params);
139 139
140 PrefService* const service = GetProfile()->GetPrefs(); 140 PrefService* const service = GetProfile()->GetPrefs();
141 141
142 if (params->change_info.cellular_disabled) 142 if (params->change_info.cellular_disabled)
143 service->SetBoolean(prefs::kDisableDriveOverCellular, 143 service->SetBoolean(prefs::kDisableDriveOverCellular,
144 *params->change_info.cellular_disabled); 144 *params->change_info.cellular_disabled);
145 145
146 if (params->change_info.hosted_files_disabled) 146 if (params->change_info.hosted_files_disabled)
147 service->SetBoolean(prefs::kDisableDriveHostedFiles, 147 service->SetBoolean(prefs::kDisableDriveHostedFiles,
148 *params->change_info.hosted_files_disabled); 148 *params->change_info.hosted_files_disabled);
149 149
150 drive::EventLogger* logger = file_manager::util::GetLogger(GetProfile()); 150 drive::EventLogger* logger = file_manager::util::GetLogger(GetProfile());
151 if (logger) 151 if (logger)
152 logger->Log(logging::LOG_INFO, "%s succeeded.", name().c_str()); 152 logger->Log(logging::LOG_INFO, "%s succeeded.", name().c_str());
153 return true; 153 return true;
154 } 154 }
155 155
156 FileBrowserPrivateZipSelectionFunction:: 156 FileManagerPrivateZipSelectionFunction::
157 FileBrowserPrivateZipSelectionFunction() {} 157 FileManagerPrivateZipSelectionFunction() {}
158 158
159 FileBrowserPrivateZipSelectionFunction:: 159 FileManagerPrivateZipSelectionFunction::
160 ~FileBrowserPrivateZipSelectionFunction() {} 160 ~FileManagerPrivateZipSelectionFunction() {}
161 161
162 bool FileBrowserPrivateZipSelectionFunction::RunAsync() { 162 bool FileManagerPrivateZipSelectionFunction::RunAsync() {
163 using extensions::api::file_browser_private::ZipSelection::Params; 163 using extensions::api::file_manager_private::ZipSelection::Params;
164 const scoped_ptr<Params> params(Params::Create(*args_)); 164 const scoped_ptr<Params> params(Params::Create(*args_));
165 EXTENSION_FUNCTION_VALIDATE(params); 165 EXTENSION_FUNCTION_VALIDATE(params);
166 166
167 // First param is the source directory URL. 167 // First param is the source directory URL.
168 if (params->dir_url.empty()) 168 if (params->dir_url.empty())
169 return false; 169 return false;
170 170
171 base::FilePath src_dir = file_manager::util::GetLocalPathFromURL( 171 base::FilePath src_dir = file_manager::util::GetLocalPathFromURL(
172 render_view_host(), GetProfile(), GURL(params->dir_url)); 172 render_view_host(), GetProfile(), GURL(params->dir_url));
173 if (src_dir.empty()) 173 if (src_dir.empty())
(...skipping 27 matching lines...) Expand all
201 const base::FilePath& file_path = files[i]; 201 const base::FilePath& file_path = files[i];
202 202
203 // Obtain the relative path of |file_path| under |src_dir|. 203 // Obtain the relative path of |file_path| under |src_dir|.
204 base::FilePath relative_path; 204 base::FilePath relative_path;
205 if (!src_dir.AppendRelativePath(file_path, &relative_path)) 205 if (!src_dir.AppendRelativePath(file_path, &relative_path))
206 return false; 206 return false;
207 src_relative_paths.push_back(relative_path); 207 src_relative_paths.push_back(relative_path);
208 } 208 }
209 209
210 (new file_manager::ZipFileCreator( 210 (new file_manager::ZipFileCreator(
211 base::Bind(&FileBrowserPrivateZipSelectionFunction::OnZipDone, this), 211 base::Bind(&FileManagerPrivateZipSelectionFunction::OnZipDone, this),
212 src_dir, 212 src_dir,
213 src_relative_paths, 213 src_relative_paths,
214 dest_file))->Start(); 214 dest_file))->Start();
215 return true; 215 return true;
216 } 216 }
217 217
218 void FileBrowserPrivateZipSelectionFunction::OnZipDone(bool success) { 218 void FileManagerPrivateZipSelectionFunction::OnZipDone(bool success) {
219 SetResult(new base::FundamentalValue(success)); 219 SetResult(new base::FundamentalValue(success));
220 SendResponse(true); 220 SendResponse(true);
221 } 221 }
222 222
223 bool FileBrowserPrivateZoomFunction::RunSync() { 223 bool FileManagerPrivateZoomFunction::RunSync() {
224 using extensions::api::file_browser_private::Zoom::Params; 224 using extensions::api::file_manager_private::Zoom::Params;
225 const scoped_ptr<Params> params(Params::Create(*args_)); 225 const scoped_ptr<Params> params(Params::Create(*args_));
226 EXTENSION_FUNCTION_VALIDATE(params); 226 EXTENSION_FUNCTION_VALIDATE(params);
227 227
228 content::PageZoom zoom_type; 228 content::PageZoom zoom_type;
229 switch (params->operation) { 229 switch (params->operation) {
230 case api::file_browser_private::ZOOM_OPERATION_TYPE_IN: 230 case api::file_manager_private::ZOOM_OPERATION_TYPE_IN:
231 zoom_type = content::PAGE_ZOOM_IN; 231 zoom_type = content::PAGE_ZOOM_IN;
232 break; 232 break;
233 case api::file_browser_private::ZOOM_OPERATION_TYPE_OUT: 233 case api::file_manager_private::ZOOM_OPERATION_TYPE_OUT:
234 zoom_type = content::PAGE_ZOOM_OUT; 234 zoom_type = content::PAGE_ZOOM_OUT;
235 break; 235 break;
236 case api::file_browser_private::ZOOM_OPERATION_TYPE_RESET: 236 case api::file_manager_private::ZOOM_OPERATION_TYPE_RESET:
237 zoom_type = content::PAGE_ZOOM_RESET; 237 zoom_type = content::PAGE_ZOOM_RESET;
238 break; 238 break;
239 default: 239 default:
240 NOTREACHED(); 240 NOTREACHED();
241 return false; 241 return false;
242 } 242 }
243 render_view_host()->Zoom(zoom_type); 243 render_view_host()->Zoom(zoom_type);
244 return true; 244 return true;
245 } 245 }
246 246
247 bool FileBrowserPrivateInstallWebstoreItemFunction::RunAsync() { 247 bool FileManagerPrivateInstallWebstoreItemFunction::RunAsync() {
248 using extensions::api::file_browser_private::InstallWebstoreItem::Params; 248 using extensions::api::file_manager_private::InstallWebstoreItem::Params;
249 const scoped_ptr<Params> params(Params::Create(*args_)); 249 const scoped_ptr<Params> params(Params::Create(*args_));
250 EXTENSION_FUNCTION_VALIDATE(params); 250 EXTENSION_FUNCTION_VALIDATE(params);
251 251
252 if (params->item_id.empty()) 252 if (params->item_id.empty())
253 return false; 253 return false;
254 254
255 const extensions::WebstoreStandaloneInstaller::Callback callback = 255 const extensions::WebstoreStandaloneInstaller::Callback callback =
256 base::Bind( 256 base::Bind(
257 &FileBrowserPrivateInstallWebstoreItemFunction::OnInstallComplete, 257 &FileManagerPrivateInstallWebstoreItemFunction::OnInstallComplete,
258 this); 258 this);
259 259
260 // Only GoogleCastAPI extension can use silent installation. 260 // Only GoogleCastAPI extension can use silent installation.
261 if (params->silent_installation && 261 if (params->silent_installation &&
262 params->item_id != kGoogleCastApiExtensionId) { 262 params->item_id != kGoogleCastApiExtensionId) {
263 SetError("Only whitelisted items can do silent installation."); 263 SetError("Only whitelisted items can do silent installation.");
264 return false; 264 return false;
265 } 265 }
266 266
267 scoped_refptr<file_manager::AppInstaller> installer( 267 scoped_refptr<file_manager::AppInstaller> installer(
268 new file_manager::AppInstaller(GetAssociatedWebContents(), 268 new file_manager::AppInstaller(GetAssociatedWebContents(),
269 params->item_id, 269 params->item_id,
270 GetProfile(), 270 GetProfile(),
271 params->silent_installation, 271 params->silent_installation,
272 callback)); 272 callback));
273 // installer will be AddRef()'d in BeginInstall(). 273 // installer will be AddRef()'d in BeginInstall().
274 installer->BeginInstall(); 274 installer->BeginInstall();
275 return true; 275 return true;
276 } 276 }
277 277
278 void FileBrowserPrivateInstallWebstoreItemFunction::OnInstallComplete( 278 void FileManagerPrivateInstallWebstoreItemFunction::OnInstallComplete(
279 bool success, 279 bool success,
280 const std::string& error, 280 const std::string& error,
281 extensions::webstore_install::Result result) { 281 extensions::webstore_install::Result result) {
282 drive::EventLogger* logger = file_manager::util::GetLogger(GetProfile()); 282 drive::EventLogger* logger = file_manager::util::GetLogger(GetProfile());
283 if (success) { 283 if (success) {
284 if (logger) { 284 if (logger) {
285 logger->Log(logging::LOG_INFO, 285 logger->Log(logging::LOG_INFO,
286 "App install succeeded. (item id: %s)", 286 "App install succeeded. (item id: %s)",
287 webstore_item_id_.c_str()); 287 webstore_item_id_.c_str());
288 } 288 }
289 } else { 289 } else {
290 if (logger) { 290 if (logger) {
291 logger->Log(logging::LOG_ERROR, 291 logger->Log(logging::LOG_ERROR,
292 "App install failed. (item id: %s, reason: %s)", 292 "App install failed. (item id: %s, reason: %s)",
293 webstore_item_id_.c_str(), 293 webstore_item_id_.c_str(),
294 error.c_str()); 294 error.c_str());
295 } 295 }
296 SetError(error); 296 SetError(error);
297 } 297 }
298 298
299 SendResponse(success); 299 SendResponse(success);
300 } 300 }
301 301
302 FileBrowserPrivateRequestWebStoreAccessTokenFunction:: 302 FileManagerPrivateRequestWebStoreAccessTokenFunction::
303 FileBrowserPrivateRequestWebStoreAccessTokenFunction() { 303 FileManagerPrivateRequestWebStoreAccessTokenFunction() {
304 } 304 }
305 305
306 FileBrowserPrivateRequestWebStoreAccessTokenFunction:: 306 FileManagerPrivateRequestWebStoreAccessTokenFunction::
307 ~FileBrowserPrivateRequestWebStoreAccessTokenFunction() { 307 ~FileManagerPrivateRequestWebStoreAccessTokenFunction() {
308 } 308 }
309 309
310 bool FileBrowserPrivateRequestWebStoreAccessTokenFunction::RunAsync() { 310 bool FileManagerPrivateRequestWebStoreAccessTokenFunction::RunAsync() {
311 std::vector<std::string> scopes; 311 std::vector<std::string> scopes;
312 scopes.push_back(kCWSScope); 312 scopes.push_back(kCWSScope);
313 313
314 ProfileOAuth2TokenService* oauth_service = 314 ProfileOAuth2TokenService* oauth_service =
315 ProfileOAuth2TokenServiceFactory::GetForProfile(GetProfile()); 315 ProfileOAuth2TokenServiceFactory::GetForProfile(GetProfile());
316 net::URLRequestContextGetter* url_request_context_getter = 316 net::URLRequestContextGetter* url_request_context_getter =
317 g_browser_process->system_request_context(); 317 g_browser_process->system_request_context();
318 318
319 if (!oauth_service) { 319 if (!oauth_service) {
320 drive::EventLogger* logger = file_manager::util::GetLogger(GetProfile()); 320 drive::EventLogger* logger = file_manager::util::GetLogger(GetProfile());
321 if (logger) { 321 if (logger) {
322 logger->Log(logging::LOG_ERROR, 322 logger->Log(logging::LOG_ERROR,
323 "CWS OAuth token fetch failed. OAuth2TokenService can't " 323 "CWS OAuth token fetch failed. OAuth2TokenService can't "
324 "be retrieved."); 324 "be retrieved.");
325 } 325 }
326 SetResult(base::Value::CreateNullValue()); 326 SetResult(base::Value::CreateNullValue());
327 return false; 327 return false;
328 } 328 }
329 329
330 SigninManagerBase* signin_manager = 330 SigninManagerBase* signin_manager =
331 SigninManagerFactory::GetForProfile(GetProfile()); 331 SigninManagerFactory::GetForProfile(GetProfile());
332 auth_service_.reset(new google_apis::AuthService( 332 auth_service_.reset(new google_apis::AuthService(
333 oauth_service, 333 oauth_service,
334 signin_manager->GetAuthenticatedAccountId(), 334 signin_manager->GetAuthenticatedAccountId(),
335 url_request_context_getter, 335 url_request_context_getter,
336 scopes)); 336 scopes));
337 auth_service_->StartAuthentication(base::Bind( 337 auth_service_->StartAuthentication(base::Bind(
338 &FileBrowserPrivateRequestWebStoreAccessTokenFunction:: 338 &FileManagerPrivateRequestWebStoreAccessTokenFunction::
339 OnAccessTokenFetched, 339 OnAccessTokenFetched,
340 this)); 340 this));
341 341
342 return true; 342 return true;
343 } 343 }
344 344
345 void FileBrowserPrivateRequestWebStoreAccessTokenFunction::OnAccessTokenFetched( 345 void FileManagerPrivateRequestWebStoreAccessTokenFunction::OnAccessTokenFetched(
346 google_apis::GDataErrorCode code, 346 google_apis::GDataErrorCode code,
347 const std::string& access_token) { 347 const std::string& access_token) {
348 drive::EventLogger* logger = file_manager::util::GetLogger(GetProfile()); 348 drive::EventLogger* logger = file_manager::util::GetLogger(GetProfile());
349 349
350 if (code == google_apis::HTTP_SUCCESS) { 350 if (code == google_apis::HTTP_SUCCESS) {
351 DCHECK(auth_service_->HasAccessToken()); 351 DCHECK(auth_service_->HasAccessToken());
352 DCHECK(access_token == auth_service_->access_token()); 352 DCHECK(access_token == auth_service_->access_token());
353 if (logger) 353 if (logger)
354 logger->Log(logging::LOG_INFO, "CWS OAuth token fetch succeeded."); 354 logger->Log(logging::LOG_INFO, "CWS OAuth token fetch succeeded.");
355 SetResult(new base::StringValue(access_token)); 355 SetResult(new base::StringValue(access_token));
356 SendResponse(true); 356 SendResponse(true);
357 } else { 357 } else {
358 if (logger) { 358 if (logger) {
359 logger->Log(logging::LOG_ERROR, 359 logger->Log(logging::LOG_ERROR,
360 "CWS OAuth token fetch failed. (GDataErrorCode: %s)", 360 "CWS OAuth token fetch failed. (GDataErrorCode: %s)",
361 google_apis::GDataErrorCodeToString(code).c_str()); 361 google_apis::GDataErrorCodeToString(code).c_str());
362 } 362 }
363 SetResult(base::Value::CreateNullValue()); 363 SetResult(base::Value::CreateNullValue());
364 SendResponse(false); 364 SendResponse(false);
365 } 365 }
366 } 366 }
367 367
368 bool FileBrowserPrivateGetProfilesFunction::RunSync() { 368 bool FileManagerPrivateGetProfilesFunction::RunSync() {
369 #if defined(USE_ATHENA) 369 #if defined(USE_ATHENA)
370 // TODO(oshima): Figure out what to do. 370 // TODO(oshima): Figure out what to do.
371 return false; 371 return false;
372 #endif 372 #endif
373 373
374 const std::vector<linked_ptr<api::file_browser_private::ProfileInfo> >& 374 const std::vector<linked_ptr<api::file_manager_private::ProfileInfo> >&
375 profiles = GetLoggedInProfileInfoList(); 375 profiles = GetLoggedInProfileInfoList();
376 376
377 // Obtains the display profile ID. 377 // Obtains the display profile ID.
378 AppWindow* const app_window = GetCurrentAppWindow(this); 378 AppWindow* const app_window = GetCurrentAppWindow(this);
379 chrome::MultiUserWindowManager* const window_manager = 379 chrome::MultiUserWindowManager* const window_manager =
380 chrome::MultiUserWindowManager::GetInstance(); 380 chrome::MultiUserWindowManager::GetInstance();
381 const std::string current_profile_id = 381 const std::string current_profile_id =
382 multi_user_util::GetUserIDFromProfile(GetProfile()); 382 multi_user_util::GetUserIDFromProfile(GetProfile());
383 const std::string display_profile_id = 383 const std::string display_profile_id =
384 window_manager && app_window ? window_manager->GetUserPresentingWindow( 384 window_manager && app_window ? window_manager->GetUserPresentingWindow(
385 app_window->GetNativeWindow()) 385 app_window->GetNativeWindow())
386 : ""; 386 : "";
387 387
388 results_ = api::file_browser_private::GetProfiles::Results::Create( 388 results_ = api::file_manager_private::GetProfiles::Results::Create(
389 profiles, 389 profiles,
390 current_profile_id, 390 current_profile_id,
391 display_profile_id.empty() ? current_profile_id : display_profile_id); 391 display_profile_id.empty() ? current_profile_id : display_profile_id);
392 return true; 392 return true;
393 } 393 }
394 394
395 bool FileBrowserPrivateVisitDesktopFunction::RunSync() { 395 bool FileManagerPrivateVisitDesktopFunction::RunSync() {
396 using api::file_browser_private::VisitDesktop::Params; 396 using api::file_manager_private::VisitDesktop::Params;
397 const scoped_ptr<Params> params(Params::Create(*args_)); 397 const scoped_ptr<Params> params(Params::Create(*args_));
398 const std::vector<linked_ptr<api::file_browser_private::ProfileInfo> >& 398 const std::vector<linked_ptr<api::file_manager_private::ProfileInfo> >&
399 profiles = GetLoggedInProfileInfoList(); 399 profiles = GetLoggedInProfileInfoList();
400 400
401 chrome::MultiUserWindowManager* const window_manager = 401 chrome::MultiUserWindowManager* const window_manager =
402 chrome::MultiUserWindowManager::GetInstance(); 402 chrome::MultiUserWindowManager::GetInstance();
403 DCHECK(window_manager); 403 DCHECK(window_manager);
404 404
405 // Check if the target user is logged-in or not. 405 // Check if the target user is logged-in or not.
406 bool logged_in = false; 406 bool logged_in = false;
407 for (size_t i = 0; i < profiles.size(); ++i) { 407 for (size_t i = 0; i < profiles.size(); ++i) {
408 if (profiles[i]->profile_id == params->profile_id) { 408 if (profiles[i]->profile_id == params->profile_id) {
(...skipping 20 matching lines...) Expand all
429 // Check the result. 429 // Check the result.
430 if (!window_manager->IsWindowOnDesktopOfUser(app_window->GetNativeWindow(), 430 if (!window_manager->IsWindowOnDesktopOfUser(app_window->GetNativeWindow(),
431 params->profile_id)) { 431 params->profile_id)) {
432 SetError("The window cannot visit the desktop."); 432 SetError("The window cannot visit the desktop.");
433 return false; 433 return false;
434 } 434 }
435 435
436 return true; 436 return true;
437 } 437 }
438 438
439 bool FileBrowserPrivateOpenInspectorFunction::RunSync() { 439 bool FileManagerPrivateOpenInspectorFunction::RunSync() {
440 using extensions::api::file_browser_private::OpenInspector::Params; 440 using extensions::api::file_manager_private::OpenInspector::Params;
441 const scoped_ptr<Params> params(Params::Create(*args_)); 441 const scoped_ptr<Params> params(Params::Create(*args_));
442 EXTENSION_FUNCTION_VALIDATE(params); 442 EXTENSION_FUNCTION_VALIDATE(params);
443 443
444 switch (params->type) { 444 switch (params->type) {
445 case extensions::api::file_browser_private::INSPECTION_TYPE_NORMAL: 445 case extensions::api::file_manager_private::INSPECTION_TYPE_NORMAL:
446 // Open inspector for foreground page. 446 // Open inspector for foreground page.
447 DevToolsWindow::OpenDevToolsWindow( 447 DevToolsWindow::OpenDevToolsWindow(
448 content::WebContents::FromRenderViewHost(render_view_host())); 448 content::WebContents::FromRenderViewHost(render_view_host()));
449 break; 449 break;
450 case extensions::api::file_browser_private::INSPECTION_TYPE_CONSOLE: 450 case extensions::api::file_manager_private::INSPECTION_TYPE_CONSOLE:
451 // Open inspector for foreground page and bring focus to the console. 451 // Open inspector for foreground page and bring focus to the console.
452 DevToolsWindow::OpenDevToolsWindow( 452 DevToolsWindow::OpenDevToolsWindow(
453 content::WebContents::FromRenderViewHost(render_view_host()), 453 content::WebContents::FromRenderViewHost(render_view_host()),
454 DevToolsToggleAction::ShowConsole()); 454 DevToolsToggleAction::ShowConsole());
455 break; 455 break;
456 case extensions::api::file_browser_private::INSPECTION_TYPE_ELEMENT: 456 case extensions::api::file_manager_private::INSPECTION_TYPE_ELEMENT:
457 // Open inspector for foreground page in inspect element mode. 457 // Open inspector for foreground page in inspect element mode.
458 DevToolsWindow::OpenDevToolsWindow( 458 DevToolsWindow::OpenDevToolsWindow(
459 content::WebContents::FromRenderViewHost(render_view_host()), 459 content::WebContents::FromRenderViewHost(render_view_host()),
460 DevToolsToggleAction::Inspect()); 460 DevToolsToggleAction::Inspect());
461 break; 461 break;
462 case extensions::api::file_browser_private::INSPECTION_TYPE_BACKGROUND: 462 case extensions::api::file_manager_private::INSPECTION_TYPE_BACKGROUND:
463 // Open inspector for background page. 463 // Open inspector for background page.
464 extensions::devtools_util::InspectBackgroundPage(extension(), 464 extensions::devtools_util::InspectBackgroundPage(extension(),
465 GetProfile()); 465 GetProfile());
466 break; 466 break;
467 default: 467 default:
468 NOTREACHED(); 468 NOTREACHED();
469 SetError( 469 SetError(
470 base::StringPrintf("Unexpected inspection type(%d) is specified.", 470 base::StringPrintf("Unexpected inspection type(%d) is specified.",
471 static_cast<int>(params->type))); 471 static_cast<int>(params->type)));
472 return false; 472 return false;
473 } 473 }
474 return true; 474 return true;
475 } 475 }
476 476
477 } // namespace extensions 477 } // namespace extensions
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698