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

Side by Side Diff: chrome/browser/chromeos/drive/job_scheduler.cc

Issue 371883003: Files.app: Add an private API to get a download URL (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 5 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 | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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/drive/job_scheduler.h" 5 #include "chrome/browser/chromeos/drive/job_scheduler.h"
6 6
7 #include "base/message_loop/message_loop.h" 7 #include "base/message_loop/message_loop.h"
8 #include "base/prefs/pref_service.h" 8 #include "base/prefs/pref_service.h"
9 #include "base/rand_util.h" 9 #include "base/rand_util.h"
10 #include "base/strings/string_number_conversions.h" 10 #include "base/strings/string_number_conversions.h"
(...skipping 232 matching lines...) Expand 10 before | Expand all | Expand 10 after
243 &DriveServiceInterface::GetAboutResource, 243 &DriveServiceInterface::GetAboutResource,
244 base::Unretained(drive_service_), 244 base::Unretained(drive_service_),
245 base::Bind(&JobScheduler::OnGetAboutResourceJobDone, 245 base::Bind(&JobScheduler::OnGetAboutResourceJobDone,
246 weak_ptr_factory_.GetWeakPtr(), 246 weak_ptr_factory_.GetWeakPtr(),
247 new_job->job_info.job_id, 247 new_job->job_info.job_id,
248 callback)); 248 callback));
249 new_job->abort_callback = CreateErrorRunCallback(callback); 249 new_job->abort_callback = CreateErrorRunCallback(callback);
250 StartJob(new_job); 250 StartJob(new_job);
251 } 251 }
252 252
253 void JobScheduler::GetFileResource(
254 const std::string& resource_id,
255 const google_apis::FileResourceCallback& callback) {
256 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
257 DCHECK(!callback.is_null());
258
259 JobEntry* new_job = CreateNewJob(TYPE_GET_FILE_RESOURCE);
260 new_job->task = base::Bind(&DriveServiceInterface::GetFileResource,
261 base::Unretained(drive_service_),
262 resource_id,
263 base::Bind(&JobScheduler::OnGetFileResourceJobDone,
264 weak_ptr_factory_.GetWeakPtr(),
265 new_job->job_info.job_id,
266 callback));
267 new_job->abort_callback = CreateErrorRunCallback(callback);
268 StartJob(new_job);
269 }
270
253 void JobScheduler::GetAppList(const google_apis::AppListCallback& callback) { 271 void JobScheduler::GetAppList(const google_apis::AppListCallback& callback) {
254 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); 272 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
255 DCHECK(!callback.is_null()); 273 DCHECK(!callback.is_null());
256 274
257 JobEntry* new_job = CreateNewJob(TYPE_GET_APP_LIST); 275 JobEntry* new_job = CreateNewJob(TYPE_GET_APP_LIST);
258 new_job->task = base::Bind( 276 new_job->task = base::Bind(
259 &DriveServiceInterface::GetAppList, 277 &DriveServiceInterface::GetAppList,
260 base::Unretained(drive_service_), 278 base::Unretained(drive_service_),
261 base::Bind(&JobScheduler::OnGetAppListJobDone, 279 base::Bind(&JobScheduler::OnGetAppListJobDone,
262 weak_ptr_factory_.GetWeakPtr(), 280 weak_ptr_factory_.GetWeakPtr(),
(...skipping 129 matching lines...) Expand 10 before | Expand all | Expand 10 after
392 base::Unretained(drive_service_), 410 base::Unretained(drive_service_),
393 resource_id, 411 resource_id,
394 base::Bind(&JobScheduler::OnGetFileResourceJobDone, 412 base::Bind(&JobScheduler::OnGetFileResourceJobDone,
395 weak_ptr_factory_.GetWeakPtr(), 413 weak_ptr_factory_.GetWeakPtr(),
396 new_job->job_info.job_id, 414 new_job->job_info.job_id,
397 callback)); 415 callback));
398 new_job->abort_callback = CreateErrorRunCallback(callback); 416 new_job->abort_callback = CreateErrorRunCallback(callback);
399 StartJob(new_job); 417 StartJob(new_job);
400 } 418 }
401 419
402 void JobScheduler::GetShareUrl( 420 void JobScheduler::GetShareUrl(const std::string& resource_id,
403 const std::string& resource_id, 421 const GURL& embed_origin,
404 const GURL& embed_origin, 422 const ClientContext& context,
405 const ClientContext& context, 423 const google_apis::GetUrlCallback& callback) {
406 const google_apis::GetShareUrlCallback& callback) {
407 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); 424 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
408 DCHECK(!callback.is_null()); 425 DCHECK(!callback.is_null());
409 426
410 JobEntry* new_job = CreateNewJob(TYPE_GET_SHARE_URL); 427 JobEntry* new_job = CreateNewJob(TYPE_GET_SHARE_URL);
411 new_job->context = context; 428 new_job->context = context;
412 new_job->task = base::Bind( 429 new_job->task = base::Bind(
413 &DriveServiceInterface::GetShareUrl, 430 &DriveServiceInterface::GetShareUrl,
414 base::Unretained(drive_service_), 431 base::Unretained(drive_service_),
415 resource_id, 432 resource_id,
416 embed_origin, 433 embed_origin,
(...skipping 522 matching lines...) Expand 10 before | Expand all | Expand 10 after
939 scoped_ptr<google_apis::AboutResource> about_resource) { 956 scoped_ptr<google_apis::AboutResource> about_resource) {
940 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); 957 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
941 DCHECK(!callback.is_null()); 958 DCHECK(!callback.is_null());
942 959
943 if (OnJobDone(job_id, error)) 960 if (OnJobDone(job_id, error))
944 callback.Run(error, about_resource.Pass()); 961 callback.Run(error, about_resource.Pass());
945 } 962 }
946 963
947 void JobScheduler::OnGetShareUrlJobDone( 964 void JobScheduler::OnGetShareUrlJobDone(
948 JobID job_id, 965 JobID job_id,
949 const google_apis::GetShareUrlCallback& callback, 966 const google_apis::GetUrlCallback& callback,
950 google_apis::GDataErrorCode error, 967 google_apis::GDataErrorCode error,
951 const GURL& share_url) { 968 const GURL& share_url) {
952 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); 969 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
953 DCHECK(!callback.is_null()); 970 DCHECK(!callback.is_null());
954 971
955 if (OnJobDone(job_id, error)) 972 if (OnJobDone(job_id, error))
956 callback.Run(error, share_url); 973 callback.Run(error, share_url);
957 } 974 }
958 975
959 void JobScheduler::OnGetAppListJobDone( 976 void JobScheduler::OnGetAppListJobDone(
(...skipping 109 matching lines...) Expand 10 before | Expand all | Expand 10 after
1069 // Note that we don't need to check the network connection status as it will 1086 // Note that we don't need to check the network connection status as it will
1070 // be checked in GetCurrentAcceptedPriority(). 1087 // be checked in GetCurrentAcceptedPriority().
1071 for (int i = METADATA_QUEUE; i < NUM_QUEUES; ++i) 1088 for (int i = METADATA_QUEUE; i < NUM_QUEUES; ++i)
1072 DoJobLoop(static_cast<QueueType>(i)); 1089 DoJobLoop(static_cast<QueueType>(i));
1073 } 1090 }
1074 1091
1075 JobScheduler::QueueType JobScheduler::GetJobQueueType(JobType type) { 1092 JobScheduler::QueueType JobScheduler::GetJobQueueType(JobType type) {
1076 switch (type) { 1093 switch (type) {
1077 case TYPE_GET_ABOUT_RESOURCE: 1094 case TYPE_GET_ABOUT_RESOURCE:
1078 case TYPE_GET_APP_LIST: 1095 case TYPE_GET_APP_LIST:
1096 case TYPE_GET_FILE_RESOURCE:
1079 case TYPE_GET_ALL_RESOURCE_LIST: 1097 case TYPE_GET_ALL_RESOURCE_LIST:
1080 case TYPE_GET_RESOURCE_LIST_IN_DIRECTORY: 1098 case TYPE_GET_RESOURCE_LIST_IN_DIRECTORY:
1081 case TYPE_SEARCH: 1099 case TYPE_SEARCH:
1082 case TYPE_GET_CHANGE_LIST: 1100 case TYPE_GET_CHANGE_LIST:
1083 case TYPE_GET_REMAINING_CHANGE_LIST: 1101 case TYPE_GET_REMAINING_CHANGE_LIST:
1084 case TYPE_GET_REMAINING_FILE_LIST: 1102 case TYPE_GET_REMAINING_FILE_LIST:
1085 case TYPE_GET_RESOURCE_ENTRY: 1103 case TYPE_GET_RESOURCE_ENTRY:
1086 case TYPE_GET_SHARE_URL: 1104 case TYPE_GET_SHARE_URL:
1087 case TYPE_TRASH_RESOURCE: 1105 case TYPE_TRASH_RESOURCE:
1088 case TYPE_COPY_RESOURCE: 1106 case TYPE_COPY_RESOURCE:
(...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after
1155 case FILE_QUEUE: 1173 case FILE_QUEUE:
1156 return "FILE_QUEUE"; 1174 return "FILE_QUEUE";
1157 case NUM_QUEUES: 1175 case NUM_QUEUES:
1158 break; // This value is just a sentinel. Should never be used. 1176 break; // This value is just a sentinel. Should never be used.
1159 } 1177 }
1160 NOTREACHED(); 1178 NOTREACHED();
1161 return ""; 1179 return "";
1162 } 1180 }
1163 1181
1164 } // namespace drive 1182 } // namespace drive
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698