drive_service_on_worker.cc revision 010d83a9304c5a91596085d917d248abff47903a
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 3// found in the LICENSE file. 4 5#include "chrome/browser/sync_file_system/drive_backend/drive_service_on_worker.h" 6 7#include <string> 8 9#include "base/bind.h" 10#include "base/logging.h" 11#include "base/single_thread_task_runner.h" 12#include "chrome/browser/sync_file_system/drive_backend/callback_helper.h" 13#include "chrome/browser/sync_file_system/drive_backend/drive_service_wrapper.h" 14#include "google_apis/drive/drive_api_parser.h" 15#include "google_apis/drive/gdata_wapi_parser.h" 16 17namespace sync_file_system { 18namespace drive_backend { 19 20DriveServiceOnWorker::DriveServiceOnWorker( 21 const base::WeakPtr<DriveServiceWrapper>& wrapper, 22 base::SingleThreadTaskRunner* ui_task_runner, 23 base::SequencedTaskRunner* worker_task_runner) 24 : wrapper_(wrapper), 25 ui_task_runner_(ui_task_runner), 26 worker_task_runner_(worker_task_runner) {} 27 28DriveServiceOnWorker::~DriveServiceOnWorker() {} 29 30google_apis::CancelCallback DriveServiceOnWorker::AddNewDirectory( 31 const std::string& parent_resource_id, 32 const std::string& directory_title, 33 const AddNewDirectoryOptions& options, 34 const google_apis::GetResourceEntryCallback& callback) { 35 ui_task_runner_->PostTask( 36 FROM_HERE, 37 base::Bind(&DriveServiceWrapper::AddNewDirectory, 38 wrapper_, 39 parent_resource_id, 40 directory_title, 41 options, 42 RelayCallbackToTaskRunner( 43 worker_task_runner_, 44 FROM_HERE, 45 callback))); 46 47 return google_apis::CancelCallback(); 48} 49 50google_apis::CancelCallback DriveServiceOnWorker::DeleteResource( 51 const std::string& resource_id, 52 const std::string& etag, 53 const google_apis::EntryActionCallback& callback) { 54 ui_task_runner_->PostTask( 55 FROM_HERE, 56 base::Bind(&DriveServiceWrapper::DeleteResource, 57 wrapper_, 58 resource_id, 59 etag, 60 RelayCallbackToTaskRunner( 61 worker_task_runner_, 62 FROM_HERE, 63 callback))); 64 65 return google_apis::CancelCallback(); 66} 67 68google_apis::CancelCallback DriveServiceOnWorker::DownloadFile( 69 const base::FilePath& local_cache_path, 70 const std::string& resource_id, 71 const google_apis::DownloadActionCallback& download_action_callback, 72 const google_apis::GetContentCallback& get_content_callback, 73 const google_apis::ProgressCallback& progress_callback) { 74 ui_task_runner_->PostTask( 75 FROM_HERE, 76 base::Bind(&DriveServiceWrapper::DownloadFile, 77 wrapper_, 78 local_cache_path, 79 resource_id, 80 RelayCallbackToTaskRunner( 81 worker_task_runner_, 82 FROM_HERE, 83 download_action_callback), 84 RelayCallbackToTaskRunner( 85 worker_task_runner_, 86 FROM_HERE, 87 get_content_callback), 88 RelayCallbackToTaskRunner( 89 worker_task_runner_, 90 FROM_HERE, 91 progress_callback))); 92 93 return google_apis::CancelCallback(); 94} 95 96 97google_apis::CancelCallback DriveServiceOnWorker::GetAboutResource( 98 const google_apis::AboutResourceCallback& callback) { 99 ui_task_runner_->PostTask( 100 FROM_HERE, 101 base::Bind(&DriveServiceWrapper::GetAboutResource, 102 wrapper_, 103 RelayCallbackToTaskRunner( 104 worker_task_runner_, 105 FROM_HERE, 106 callback))); 107 108 return google_apis::CancelCallback(); 109} 110 111 112google_apis::CancelCallback DriveServiceOnWorker::GetChangeList( 113 int64 start_changestamp, 114 const google_apis::GetResourceListCallback& callback) { 115 ui_task_runner_->PostTask( 116 FROM_HERE, 117 base::Bind(&DriveServiceWrapper::GetChangeList, 118 wrapper_, 119 start_changestamp, 120 RelayCallbackToTaskRunner( 121 worker_task_runner_, 122 FROM_HERE, 123 callback))); 124 125 return google_apis::CancelCallback(); 126} 127 128google_apis::CancelCallback DriveServiceOnWorker::GetRemainingChangeList( 129 const GURL& next_link, 130 const google_apis::GetResourceListCallback& callback) { 131 ui_task_runner_->PostTask( 132 FROM_HERE, 133 base::Bind(&DriveServiceWrapper::GetRemainingChangeList, 134 wrapper_, 135 next_link, 136 RelayCallbackToTaskRunner( 137 worker_task_runner_, 138 FROM_HERE, 139 callback))); 140 141 return google_apis::CancelCallback(); 142} 143 144std::string DriveServiceOnWorker::GetRootResourceId() const { 145 NOTREACHED(); 146 // This method is expected to be called only on unit tests. 147 return "root"; 148} 149 150google_apis::CancelCallback DriveServiceOnWorker::GetRemainingFileList( 151 const GURL& next_link, 152 const google_apis::GetResourceListCallback& callback) { 153 ui_task_runner_->PostTask( 154 FROM_HERE, 155 base::Bind(&DriveServiceWrapper::GetRemainingFileList, 156 wrapper_, 157 next_link, 158 RelayCallbackToTaskRunner( 159 worker_task_runner_, 160 FROM_HERE, 161 callback))); 162 163 return google_apis::CancelCallback(); 164} 165 166 167google_apis::CancelCallback DriveServiceOnWorker::GetResourceEntry( 168 const std::string& resource_id, 169 const google_apis::GetResourceEntryCallback& callback) { 170 ui_task_runner_->PostTask( 171 FROM_HERE, 172 base::Bind(&DriveServiceWrapper::GetResourceEntry, 173 wrapper_, 174 resource_id, 175 RelayCallbackToTaskRunner( 176 worker_task_runner_, 177 FROM_HERE, 178 callback))); 179 180 return google_apis::CancelCallback(); 181} 182 183google_apis::CancelCallback DriveServiceOnWorker::GetResourceListInDirectory( 184 const std::string& directory_resource_id, 185 const google_apis::GetResourceListCallback& callback) { 186 ui_task_runner_->PostTask( 187 FROM_HERE, 188 base::Bind(&DriveServiceWrapper::GetResourceListInDirectory, 189 wrapper_, 190 directory_resource_id, 191 RelayCallbackToTaskRunner( 192 worker_task_runner_, 193 FROM_HERE, 194 callback))); 195 196 return google_apis::CancelCallback(); 197} 198 199google_apis::CancelCallback DriveServiceOnWorker::RemoveResourceFromDirectory( 200 const std::string& parent_resource_id, 201 const std::string& resource_id, 202 const google_apis::EntryActionCallback& callback) { 203 ui_task_runner_->PostTask( 204 FROM_HERE, 205 base::Bind(&DriveServiceWrapper::RemoveResourceFromDirectory, 206 wrapper_, 207 parent_resource_id, 208 resource_id, 209 RelayCallbackToTaskRunner( 210 worker_task_runner_, 211 FROM_HERE, 212 callback))); 213 214 return google_apis::CancelCallback(); 215} 216 217google_apis::CancelCallback DriveServiceOnWorker::SearchByTitle( 218 const std::string& title, 219 const std::string& directory_resource_id, 220 const google_apis::GetResourceListCallback& callback) { 221 ui_task_runner_->PostTask( 222 FROM_HERE, 223 base::Bind(&DriveServiceWrapper::SearchByTitle, 224 wrapper_, 225 title, 226 directory_resource_id, 227 RelayCallbackToTaskRunner( 228 worker_task_runner_, 229 FROM_HERE, 230 callback))); 231 232 return google_apis::CancelCallback(); 233} 234 235bool DriveServiceOnWorker::HasRefreshToken() const { 236 // TODO(peria): Cache the state and returns it directly, before migration of 237 // SyncWorker to a worker thread. 238 DCHECK(wrapper_); 239 return wrapper_->HasRefreshToken(); 240} 241 242void DriveServiceOnWorker::Initialize(const std::string& account_id) { 243 NOTREACHED(); 244} 245 246void DriveServiceOnWorker::AddObserver(drive::DriveServiceObserver* observer) { 247 NOTREACHED(); 248} 249 250void DriveServiceOnWorker::RemoveObserver( 251 drive::DriveServiceObserver* observer) { 252 NOTREACHED(); 253} 254 255bool DriveServiceOnWorker::CanSendRequest() const { 256 NOTREACHED(); 257 return false; 258} 259 260drive::ResourceIdCanonicalizer 261DriveServiceOnWorker::GetResourceIdCanonicalizer() const { 262 NOTREACHED(); 263 return drive::ResourceIdCanonicalizer(); 264} 265 266bool DriveServiceOnWorker::HasAccessToken() const { 267 NOTREACHED(); 268 return false; 269} 270 271void DriveServiceOnWorker::RequestAccessToken( 272 const google_apis::AuthStatusCallback& callback) { 273 NOTREACHED(); 274} 275 276void DriveServiceOnWorker::ClearAccessToken() { 277 NOTREACHED(); 278} 279 280void DriveServiceOnWorker::ClearRefreshToken() { 281 NOTREACHED(); 282} 283 284google_apis::CancelCallback DriveServiceOnWorker::GetAllResourceList( 285 const google_apis::GetResourceListCallback& callback) { 286 NOTREACHED(); 287 return google_apis::CancelCallback(); 288} 289 290google_apis::CancelCallback DriveServiceOnWorker::Search( 291 const std::string& search_query, 292 const google_apis::GetResourceListCallback& callback) { 293 NOTREACHED(); 294 return google_apis::CancelCallback(); 295} 296 297google_apis::CancelCallback DriveServiceOnWorker::GetShareUrl( 298 const std::string& resource_id, 299 const GURL& embed_origin, 300 const google_apis::GetShareUrlCallback& callback) { 301 NOTREACHED(); 302 return google_apis::CancelCallback(); 303} 304 305google_apis::CancelCallback DriveServiceOnWorker::GetAppList( 306 const google_apis::AppListCallback& callback) { 307 NOTREACHED(); 308 return google_apis::CancelCallback(); 309} 310 311google_apis::CancelCallback DriveServiceOnWorker::TrashResource( 312 const std::string& resource_id, 313 const google_apis::EntryActionCallback& callback) { 314 NOTREACHED(); 315 return google_apis::CancelCallback(); 316} 317 318google_apis::CancelCallback DriveServiceOnWorker::CopyResource( 319 const std::string& resource_id, 320 const std::string& parent_resource_id, 321 const std::string& new_title, 322 const base::Time& last_modified, 323 const google_apis::GetResourceEntryCallback& callback) { 324 NOTREACHED(); 325 return google_apis::CancelCallback(); 326} 327 328google_apis::CancelCallback DriveServiceOnWorker::UpdateResource( 329 const std::string& resource_id, 330 const std::string& parent_resource_id, 331 const std::string& new_title, 332 const base::Time& last_modified, 333 const base::Time& last_viewed_by_me, 334 const google_apis::GetResourceEntryCallback& callback) { 335 NOTREACHED(); 336 return google_apis::CancelCallback(); 337} 338 339google_apis::CancelCallback DriveServiceOnWorker::RenameResource( 340 const std::string& resource_id, 341 const std::string& new_title, 342 const google_apis::EntryActionCallback& callback) { 343 NOTREACHED(); 344 return google_apis::CancelCallback(); 345} 346 347google_apis::CancelCallback DriveServiceOnWorker::AddResourceToDirectory( 348 const std::string& parent_resource_id, 349 const std::string& resource_id, 350 const google_apis::EntryActionCallback& callback) { 351 NOTREACHED(); 352 return google_apis::CancelCallback(); 353} 354 355google_apis::CancelCallback DriveServiceOnWorker::InitiateUploadNewFile( 356 const std::string& content_type, 357 int64 content_length, 358 const std::string& parent_resource_id, 359 const std::string& title, 360 const InitiateUploadNewFileOptions& options, 361 const google_apis::InitiateUploadCallback& callback) { 362 NOTREACHED(); 363 return google_apis::CancelCallback(); 364} 365 366google_apis::CancelCallback DriveServiceOnWorker::InitiateUploadExistingFile( 367 const std::string& content_type, 368 int64 content_length, 369 const std::string& resource_id, 370 const InitiateUploadExistingFileOptions& options, 371 const google_apis::InitiateUploadCallback& callback) { 372 NOTREACHED(); 373 return google_apis::CancelCallback(); 374} 375 376google_apis::CancelCallback DriveServiceOnWorker::ResumeUpload( 377 const GURL& upload_url, 378 int64 start_position, 379 int64 end_position, 380 int64 content_length, 381 const std::string& content_type, 382 const base::FilePath& local_file_path, 383 const google_apis::UploadRangeCallback& callback, 384 const google_apis::ProgressCallback& progress_callback) { 385 NOTREACHED(); 386 return google_apis::CancelCallback(); 387} 388 389google_apis::CancelCallback DriveServiceOnWorker::GetUploadStatus( 390 const GURL& upload_url, 391 int64 content_length, 392 const google_apis::UploadRangeCallback& callback) { 393 NOTREACHED(); 394 return google_apis::CancelCallback(); 395} 396 397google_apis::CancelCallback DriveServiceOnWorker::AuthorizeApp( 398 const std::string& resource_id, 399 const std::string& app_id, 400 const google_apis::AuthorizeAppCallback& callback) { 401 NOTREACHED(); 402 return google_apis::CancelCallback(); 403} 404 405google_apis::CancelCallback DriveServiceOnWorker::UninstallApp( 406 const std::string& app_id, 407 const google_apis::EntryActionCallback& callback) { 408 NOTREACHED(); 409 return google_apis::CancelCallback(); 410} 411 412google_apis::CancelCallback DriveServiceOnWorker::AddPermission( 413 const std::string& resource_id, 414 const std::string& email, 415 google_apis::drive::PermissionRole role, 416 const google_apis::EntryActionCallback& callback) { 417 NOTREACHED(); 418 return google_apis::CancelCallback(); 419} 420 421} // namespace drive_backend 422} // namespace sync_file_system 423