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

Side by Side Diff: chrome/browser/google_apis/gdata_wapi_service.cc

Issue 16175003: google_apis: Rename OperationRunner to RequestSender (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: rebase Created 7 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 | 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/google_apis/gdata_wapi_service.h" 5 #include "chrome/browser/google_apis/gdata_wapi_service.h"
6 6
7 #include <string> 7 #include <string>
8 #include <vector> 8 #include <vector>
9 9
10 #include "base/bind.h" 10 #include "base/bind.h"
11 #include "base/message_loop.h" 11 #include "base/message_loop.h"
12 #include "base/stringprintf.h" 12 #include "base/stringprintf.h"
13 #include "base/values.h" 13 #include "base/values.h"
14 #include "chrome/browser/google_apis/auth_service.h" 14 #include "chrome/browser/google_apis/auth_service.h"
15 #include "chrome/browser/google_apis/drive_api_parser.h" 15 #include "chrome/browser/google_apis/drive_api_parser.h"
16 #include "chrome/browser/google_apis/drive_api_util.h" 16 #include "chrome/browser/google_apis/drive_api_util.h"
17 #include "chrome/browser/google_apis/gdata_wapi_operations.h" 17 #include "chrome/browser/google_apis/gdata_wapi_operations.h"
18 #include "chrome/browser/google_apis/gdata_wapi_parser.h" 18 #include "chrome/browser/google_apis/gdata_wapi_parser.h"
19 #include "chrome/browser/google_apis/gdata_wapi_url_generator.h" 19 #include "chrome/browser/google_apis/gdata_wapi_url_generator.h"
20 #include "chrome/browser/google_apis/operation_runner.h" 20 #include "chrome/browser/google_apis/request_sender.h"
21 #include "chrome/browser/google_apis/time_util.h" 21 #include "chrome/browser/google_apis/time_util.h"
22 #include "content/public/browser/browser_thread.h" 22 #include "content/public/browser/browser_thread.h"
23 #include "net/base/url_util.h" 23 #include "net/base/url_util.h"
24 24
25 using content::BrowserThread; 25 using content::BrowserThread;
26 26
27 namespace google_apis { 27 namespace google_apis {
28 28
29 namespace { 29 namespace {
30 30
(...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after
91 callback.Run(error, app_list.Pass()); 91 callback.Run(error, app_list.Pass());
92 } 92 }
93 93
94 } // namespace 94 } // namespace
95 95
96 GDataWapiService::GDataWapiService( 96 GDataWapiService::GDataWapiService(
97 net::URLRequestContextGetter* url_request_context_getter, 97 net::URLRequestContextGetter* url_request_context_getter,
98 const GURL& base_url, 98 const GURL& base_url,
99 const std::string& custom_user_agent) 99 const std::string& custom_user_agent)
100 : url_request_context_getter_(url_request_context_getter), 100 : url_request_context_getter_(url_request_context_getter),
101 runner_(NULL), 101 sender_(NULL),
102 url_generator_(base_url), 102 url_generator_(base_url),
103 custom_user_agent_(custom_user_agent) { 103 custom_user_agent_(custom_user_agent) {
104 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); 104 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
105 } 105 }
106 106
107 GDataWapiService::~GDataWapiService() { 107 GDataWapiService::~GDataWapiService() {
108 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); 108 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
109 if (runner_.get()) 109 if (sender_.get())
110 runner_->auth_service()->RemoveObserver(this); 110 sender_->auth_service()->RemoveObserver(this);
111 } 111 }
112 112
113 AuthService* GDataWapiService::auth_service_for_testing() { 113 AuthService* GDataWapiService::auth_service_for_testing() {
114 return runner_->auth_service(); 114 return sender_->auth_service();
115 } 115 }
116 116
117 void GDataWapiService::Initialize(Profile* profile) { 117 void GDataWapiService::Initialize(Profile* profile) {
118 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); 118 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
119 119
120 std::vector<std::string> scopes; 120 std::vector<std::string> scopes;
121 scopes.push_back(kDocsListScope); 121 scopes.push_back(kDocsListScope);
122 scopes.push_back(kSpreadsheetsScope); 122 scopes.push_back(kSpreadsheetsScope);
123 scopes.push_back(kUserContentScope); 123 scopes.push_back(kUserContentScope);
124 // Drive App scope is required for even WAPI v3 apps access. 124 // Drive App scope is required for even WAPI v3 apps access.
125 scopes.push_back(kDriveAppsScope); 125 scopes.push_back(kDriveAppsScope);
126 runner_.reset(new OperationRunner(profile, 126 sender_.reset(new RequestSender(profile,
127 url_request_context_getter_, 127 url_request_context_getter_,
128 scopes, 128 scopes,
129 custom_user_agent_)); 129 custom_user_agent_));
130 runner_->Initialize(); 130 sender_->Initialize();
131 131
132 runner_->auth_service()->AddObserver(this); 132 sender_->auth_service()->AddObserver(this);
133 } 133 }
134 134
135 void GDataWapiService::AddObserver(DriveServiceObserver* observer) { 135 void GDataWapiService::AddObserver(DriveServiceObserver* observer) {
136 observers_.AddObserver(observer); 136 observers_.AddObserver(observer);
137 } 137 }
138 138
139 void GDataWapiService::RemoveObserver(DriveServiceObserver* observer) { 139 void GDataWapiService::RemoveObserver(DriveServiceObserver* observer) {
140 observers_.RemoveObserver(observer); 140 observers_.RemoveObserver(observer);
141 } 141 }
142 142
143 bool GDataWapiService::CanStartOperation() const { 143 bool GDataWapiService::CanStartOperation() const {
144 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); 144 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
145 145
146 return HasRefreshToken(); 146 return HasRefreshToken();
147 } 147 }
148 148
149 void GDataWapiService::CancelAll() { 149 void GDataWapiService::CancelAll() {
150 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); 150 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
151 runner_->CancelAll(); 151 sender_->CancelAll();
152 } 152 }
153 153
154 bool GDataWapiService::CancelForFilePath(const base::FilePath& file_path) { 154 bool GDataWapiService::CancelForFilePath(const base::FilePath& file_path) {
155 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); 155 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
156 return runner_->operation_registry()->CancelForFilePath(file_path); 156 return sender_->operation_registry()->CancelForFilePath(file_path);
157 } 157 }
158 158
159 std::string GDataWapiService::CanonicalizeResourceId( 159 std::string GDataWapiService::CanonicalizeResourceId(
160 const std::string& resource_id) const { 160 const std::string& resource_id) const {
161 return resource_id; 161 return resource_id;
162 } 162 }
163 163
164 std::string GDataWapiService::GetRootResourceId() const { 164 std::string GDataWapiService::GetRootResourceId() const {
165 return kWapiRootDirectoryResourceId; 165 return kWapiRootDirectoryResourceId;
166 } 166 }
167 167
168 // Because GData WAPI support is expected to be gone somehow soon by migration 168 // Because GData WAPI support is expected to be gone somehow soon by migration
169 // to the Drive API v2, so we'll reuse GetResourceListOperation to implement 169 // to the Drive API v2, so we'll reuse GetResourceListOperation to implement
170 // following methods, instead of cleaning the operation class. 170 // following methods, instead of cleaning the operation class.
171 171
172 void GDataWapiService::GetAllResourceList( 172 void GDataWapiService::GetAllResourceList(
173 const GetResourceListCallback& callback) { 173 const GetResourceListCallback& callback) {
174 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); 174 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
175 DCHECK(!callback.is_null()); 175 DCHECK(!callback.is_null());
176 176
177 runner_->StartOperationWithRetry( 177 sender_->StartRequestWithRetry(
178 new GetResourceListOperation(runner_.get(), 178 new GetResourceListOperation(sender_.get(),
179 url_request_context_getter_, 179 url_request_context_getter_,
180 url_generator_, 180 url_generator_,
181 GURL(), // No override url 181 GURL(), // No override url
182 0, // start changestamp 182 0, // start changestamp
183 std::string(), // empty search query 183 std::string(), // empty search query
184 std::string(), // no directory resource id 184 std::string(), // no directory resource id
185 callback)); 185 callback));
186 } 186 }
187 187
188 void GDataWapiService::GetResourceListInDirectory( 188 void GDataWapiService::GetResourceListInDirectory(
189 const std::string& directory_resource_id, 189 const std::string& directory_resource_id,
190 const GetResourceListCallback& callback) { 190 const GetResourceListCallback& callback) {
191 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); 191 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
192 DCHECK(!directory_resource_id.empty()); 192 DCHECK(!directory_resource_id.empty());
193 DCHECK(!callback.is_null()); 193 DCHECK(!callback.is_null());
194 194
195 runner_->StartOperationWithRetry( 195 sender_->StartRequestWithRetry(
196 new GetResourceListOperation(runner_.get(), 196 new GetResourceListOperation(sender_.get(),
197 url_request_context_getter_, 197 url_request_context_getter_,
198 url_generator_, 198 url_generator_,
199 GURL(), // No override url 199 GURL(), // No override url
200 0, // start changestamp 200 0, // start changestamp
201 std::string(), // empty search query 201 std::string(), // empty search query
202 directory_resource_id, 202 directory_resource_id,
203 callback)); 203 callback));
204 } 204 }
205 205
206 void GDataWapiService::Search(const std::string& search_query, 206 void GDataWapiService::Search(const std::string& search_query,
207 const GetResourceListCallback& callback) { 207 const GetResourceListCallback& callback) {
208 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); 208 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
209 DCHECK(!search_query.empty()); 209 DCHECK(!search_query.empty());
210 DCHECK(!callback.is_null()); 210 DCHECK(!callback.is_null());
211 211
212 runner_->StartOperationWithRetry( 212 sender_->StartRequestWithRetry(
213 new GetResourceListOperation(runner_.get(), 213 new GetResourceListOperation(sender_.get(),
214 url_request_context_getter_, 214 url_request_context_getter_,
215 url_generator_, 215 url_generator_,
216 GURL(), // No override url 216 GURL(), // No override url
217 0, // start changestamp 217 0, // start changestamp
218 search_query, 218 search_query,
219 std::string(), // no directory resource id 219 std::string(), // no directory resource id
220 callback)); 220 callback));
221 } 221 }
222 222
223 void GDataWapiService::SearchByTitle( 223 void GDataWapiService::SearchByTitle(
224 const std::string& title, 224 const std::string& title,
225 const std::string& directory_resource_id, 225 const std::string& directory_resource_id,
226 const GetResourceListCallback& callback) { 226 const GetResourceListCallback& callback) {
227 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); 227 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
228 DCHECK(!title.empty()); 228 DCHECK(!title.empty());
229 DCHECK(!callback.is_null()); 229 DCHECK(!callback.is_null());
230 230
231 runner_->StartOperationWithRetry( 231 sender_->StartRequestWithRetry(
232 new SearchByTitleOperation( 232 new SearchByTitleOperation(
233 runner_.get(), 233 sender_.get(),
234 url_request_context_getter_, 234 url_request_context_getter_,
235 url_generator_, 235 url_generator_,
236 title, 236 title,
237 directory_resource_id, 237 directory_resource_id,
238 callback)); 238 callback));
239 } 239 }
240 240
241 void GDataWapiService::GetChangeList(int64 start_changestamp, 241 void GDataWapiService::GetChangeList(int64 start_changestamp,
242 const GetResourceListCallback& callback) { 242 const GetResourceListCallback& callback) {
243 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); 243 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
244 DCHECK(!callback.is_null()); 244 DCHECK(!callback.is_null());
245 245
246 runner_->StartOperationWithRetry( 246 sender_->StartRequestWithRetry(
247 new GetResourceListOperation(runner_.get(), 247 new GetResourceListOperation(sender_.get(),
248 url_request_context_getter_, 248 url_request_context_getter_,
249 url_generator_, 249 url_generator_,
250 GURL(), // No override url 250 GURL(), // No override url
251 start_changestamp, 251 start_changestamp,
252 std::string(), // empty search query 252 std::string(), // empty search query
253 std::string(), // no directory resource id 253 std::string(), // no directory resource id
254 callback)); 254 callback));
255 } 255 }
256 256
257 void GDataWapiService::ContinueGetResourceList( 257 void GDataWapiService::ContinueGetResourceList(
258 const GURL& override_url, 258 const GURL& override_url,
259 const GetResourceListCallback& callback) { 259 const GetResourceListCallback& callback) {
260 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); 260 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
261 DCHECK(!override_url.is_empty()); 261 DCHECK(!override_url.is_empty());
262 DCHECK(!callback.is_null()); 262 DCHECK(!callback.is_null());
263 263
264 runner_->StartOperationWithRetry( 264 sender_->StartRequestWithRetry(
265 new GetResourceListOperation(runner_.get(), 265 new GetResourceListOperation(sender_.get(),
266 url_request_context_getter_, 266 url_request_context_getter_,
267 url_generator_, 267 url_generator_,
268 override_url, 268 override_url,
269 0, // start changestamp 269 0, // start changestamp
270 std::string(), // empty search query 270 std::string(), // empty search query
271 std::string(), // no directory resource id 271 std::string(), // no directory resource id
272 callback)); 272 callback));
273 } 273 }
274 274
275 void GDataWapiService::GetResourceEntry( 275 void GDataWapiService::GetResourceEntry(
276 const std::string& resource_id, 276 const std::string& resource_id,
277 const GetResourceEntryCallback& callback) { 277 const GetResourceEntryCallback& callback) {
278 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); 278 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
279 DCHECK(!callback.is_null()); 279 DCHECK(!callback.is_null());
280 280
281 runner_->StartOperationWithRetry( 281 sender_->StartRequestWithRetry(
282 new GetResourceEntryOperation( 282 new GetResourceEntryOperation(
283 runner_.get(), 283 sender_.get(),
284 url_request_context_getter_, 284 url_request_context_getter_,
285 url_generator_, 285 url_generator_,
286 resource_id, 286 resource_id,
287 base::Bind(&ParseResourceEntryAndRun, callback))); 287 base::Bind(&ParseResourceEntryAndRun, callback)));
288 } 288 }
289 289
290 void GDataWapiService::GetAboutResource( 290 void GDataWapiService::GetAboutResource(
291 const GetAboutResourceCallback& callback) { 291 const GetAboutResourceCallback& callback) {
292 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); 292 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
293 DCHECK(!callback.is_null()); 293 DCHECK(!callback.is_null());
294 294
295 runner_->StartOperationWithRetry( 295 sender_->StartRequestWithRetry(
296 new GetAccountMetadataOperation( 296 new GetAccountMetadataOperation(
297 runner_.get(), 297 sender_.get(),
298 url_request_context_getter_, 298 url_request_context_getter_,
299 url_generator_, 299 url_generator_,
300 base::Bind(&ParseAboutResourceAndRun, callback), 300 base::Bind(&ParseAboutResourceAndRun, callback),
301 false)); // Exclude installed apps. 301 false)); // Exclude installed apps.
302 } 302 }
303 303
304 void GDataWapiService::GetAppList(const GetAppListCallback& callback) { 304 void GDataWapiService::GetAppList(const GetAppListCallback& callback) {
305 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); 305 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
306 DCHECK(!callback.is_null()); 306 DCHECK(!callback.is_null());
307 307
308 runner_->StartOperationWithRetry( 308 sender_->StartRequestWithRetry(
309 new GetAccountMetadataOperation( 309 new GetAccountMetadataOperation(
310 runner_.get(), 310 sender_.get(),
311 url_request_context_getter_, 311 url_request_context_getter_,
312 url_generator_, 312 url_generator_,
313 base::Bind(&ParseAppListAndRun, callback), 313 base::Bind(&ParseAppListAndRun, callback),
314 true)); // Include installed apps. 314 true)); // Include installed apps.
315 } 315 }
316 316
317 void GDataWapiService::DownloadFile( 317 void GDataWapiService::DownloadFile(
318 const base::FilePath& virtual_path, 318 const base::FilePath& virtual_path,
319 const base::FilePath& local_cache_path, 319 const base::FilePath& local_cache_path,
320 const GURL& download_url, 320 const GURL& download_url,
321 const DownloadActionCallback& download_action_callback, 321 const DownloadActionCallback& download_action_callback,
322 const GetContentCallback& get_content_callback, 322 const GetContentCallback& get_content_callback,
323 const ProgressCallback& progress_callback) { 323 const ProgressCallback& progress_callback) {
324 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); 324 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
325 DCHECK(!download_action_callback.is_null()); 325 DCHECK(!download_action_callback.is_null());
326 // get_content_callback and progress_callback may be null. 326 // get_content_callback and progress_callback may be null.
327 327
328 runner_->StartOperationWithRetry( 328 sender_->StartRequestWithRetry(
329 new DownloadFileRequest(runner_.get(), 329 new DownloadFileRequest(sender_.get(),
330 url_request_context_getter_, 330 url_request_context_getter_,
331 download_action_callback, 331 download_action_callback,
332 get_content_callback, 332 get_content_callback,
333 progress_callback, 333 progress_callback,
334 download_url, 334 download_url,
335 virtual_path, 335 virtual_path,
336 local_cache_path)); 336 local_cache_path));
337 } 337 }
338 338
339 void GDataWapiService::DeleteResource( 339 void GDataWapiService::DeleteResource(
340 const std::string& resource_id, 340 const std::string& resource_id,
341 const std::string& etag, 341 const std::string& etag,
342 const EntryActionCallback& callback) { 342 const EntryActionCallback& callback) {
343 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); 343 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
344 DCHECK(!callback.is_null()); 344 DCHECK(!callback.is_null());
345 345
346 runner_->StartOperationWithRetry( 346 sender_->StartRequestWithRetry(
347 new DeleteResourceOperation(runner_.get(), 347 new DeleteResourceOperation(sender_.get(),
348 url_request_context_getter_, 348 url_request_context_getter_,
349 url_generator_, 349 url_generator_,
350 callback, 350 callback,
351 resource_id, 351 resource_id,
352 etag)); 352 etag));
353 } 353 }
354 354
355 void GDataWapiService::AddNewDirectory( 355 void GDataWapiService::AddNewDirectory(
356 const std::string& parent_resource_id, 356 const std::string& parent_resource_id,
357 const std::string& directory_name, 357 const std::string& directory_name,
358 const GetResourceEntryCallback& callback) { 358 const GetResourceEntryCallback& callback) {
359 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); 359 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
360 DCHECK(!callback.is_null()); 360 DCHECK(!callback.is_null());
361 361
362 runner_->StartOperationWithRetry( 362 sender_->StartRequestWithRetry(
363 new CreateDirectoryOperation(runner_.get(), 363 new CreateDirectoryOperation(sender_.get(),
364 url_request_context_getter_, 364 url_request_context_getter_,
365 url_generator_, 365 url_generator_,
366 base::Bind(&ParseResourceEntryAndRun, 366 base::Bind(&ParseResourceEntryAndRun,
367 callback), 367 callback),
368 parent_resource_id, 368 parent_resource_id,
369 directory_name)); 369 directory_name));
370 } 370 }
371 371
372 void GDataWapiService::CopyResource( 372 void GDataWapiService::CopyResource(
373 const std::string& resource_id, 373 const std::string& resource_id,
374 const std::string& parent_resource_id, 374 const std::string& parent_resource_id,
375 const std::string& new_name, 375 const std::string& new_name,
376 const GetResourceEntryCallback& callback) { 376 const GetResourceEntryCallback& callback) {
377 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); 377 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
378 DCHECK(!callback.is_null()); 378 DCHECK(!callback.is_null());
379 379
380 // GData WAPI doesn't support "copy" of regular files. 380 // GData WAPI doesn't support "copy" of regular files.
381 // This method should never be called if GData WAPI is enabled. 381 // This method should never be called if GData WAPI is enabled.
382 // Instead, client code should download the file (if needed) and upload it. 382 // Instead, client code should download the file (if needed) and upload it.
383 NOTREACHED(); 383 NOTREACHED();
384 } 384 }
385 385
386 void GDataWapiService::CopyHostedDocument( 386 void GDataWapiService::CopyHostedDocument(
387 const std::string& resource_id, 387 const std::string& resource_id,
388 const std::string& new_name, 388 const std::string& new_name,
389 const GetResourceEntryCallback& callback) { 389 const GetResourceEntryCallback& callback) {
390 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); 390 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
391 DCHECK(!callback.is_null()); 391 DCHECK(!callback.is_null());
392 392
393 runner_->StartOperationWithRetry( 393 sender_->StartRequestWithRetry(
394 new CopyHostedDocumentOperation( 394 new CopyHostedDocumentOperation(
395 runner_.get(), 395 sender_.get(),
396 url_request_context_getter_, 396 url_request_context_getter_,
397 url_generator_, 397 url_generator_,
398 base::Bind(&ParseResourceEntryAndRun, callback), 398 base::Bind(&ParseResourceEntryAndRun, callback),
399 resource_id, 399 resource_id,
400 new_name)); 400 new_name));
401 } 401 }
402 402
403 void GDataWapiService::RenameResource( 403 void GDataWapiService::RenameResource(
404 const std::string& resource_id, 404 const std::string& resource_id,
405 const std::string& new_name, 405 const std::string& new_name,
406 const EntryActionCallback& callback) { 406 const EntryActionCallback& callback) {
407 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); 407 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
408 DCHECK(!callback.is_null()); 408 DCHECK(!callback.is_null());
409 409
410 runner_->StartOperationWithRetry( 410 sender_->StartRequestWithRetry(
411 new RenameResourceOperation(runner_.get(), 411 new RenameResourceOperation(sender_.get(),
412 url_request_context_getter_, 412 url_request_context_getter_,
413 url_generator_, 413 url_generator_,
414 callback, 414 callback,
415 resource_id, 415 resource_id,
416 new_name)); 416 new_name));
417 } 417 }
418 418
419 void GDataWapiService::TouchResource( 419 void GDataWapiService::TouchResource(
420 const std::string& resource_id, 420 const std::string& resource_id,
421 const base::Time& modified_date, 421 const base::Time& modified_date,
(...skipping 12 matching lines...) Expand all
434 base::Passed(scoped_ptr<ResourceEntry>()))); 434 base::Passed(scoped_ptr<ResourceEntry>())));
435 } 435 }
436 436
437 void GDataWapiService::AddResourceToDirectory( 437 void GDataWapiService::AddResourceToDirectory(
438 const std::string& parent_resource_id, 438 const std::string& parent_resource_id,
439 const std::string& resource_id, 439 const std::string& resource_id,
440 const EntryActionCallback& callback) { 440 const EntryActionCallback& callback) {
441 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); 441 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
442 DCHECK(!callback.is_null()); 442 DCHECK(!callback.is_null());
443 443
444 runner_->StartOperationWithRetry( 444 sender_->StartRequestWithRetry(
445 new AddResourceToDirectoryOperation(runner_.get(), 445 new AddResourceToDirectoryOperation(sender_.get(),
446 url_request_context_getter_, 446 url_request_context_getter_,
447 url_generator_, 447 url_generator_,
448 callback, 448 callback,
449 parent_resource_id, 449 parent_resource_id,
450 resource_id)); 450 resource_id));
451 } 451 }
452 452
453 void GDataWapiService::RemoveResourceFromDirectory( 453 void GDataWapiService::RemoveResourceFromDirectory(
454 const std::string& parent_resource_id, 454 const std::string& parent_resource_id,
455 const std::string& resource_id, 455 const std::string& resource_id,
456 const EntryActionCallback& callback) { 456 const EntryActionCallback& callback) {
457 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); 457 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
458 DCHECK(!callback.is_null()); 458 DCHECK(!callback.is_null());
459 459
460 runner_->StartOperationWithRetry( 460 sender_->StartRequestWithRetry(
461 new RemoveResourceFromDirectoryOperation(runner_.get(), 461 new RemoveResourceFromDirectoryOperation(sender_.get(),
462 url_request_context_getter_, 462 url_request_context_getter_,
463 url_generator_, 463 url_generator_,
464 callback, 464 callback,
465 parent_resource_id, 465 parent_resource_id,
466 resource_id)); 466 resource_id));
467 } 467 }
468 468
469 void GDataWapiService::InitiateUploadNewFile( 469 void GDataWapiService::InitiateUploadNewFile(
470 const base::FilePath& drive_file_path, 470 const base::FilePath& drive_file_path,
471 const std::string& content_type, 471 const std::string& content_type,
472 int64 content_length, 472 int64 content_length,
473 const std::string& parent_resource_id, 473 const std::string& parent_resource_id,
474 const std::string& title, 474 const std::string& title,
475 const InitiateUploadCallback& callback) { 475 const InitiateUploadCallback& callback) {
476 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); 476 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
477 DCHECK(!callback.is_null()); 477 DCHECK(!callback.is_null());
478 DCHECK(!parent_resource_id.empty()); 478 DCHECK(!parent_resource_id.empty());
479 479
480 runner_->StartOperationWithRetry( 480 sender_->StartRequestWithRetry(
481 new InitiateUploadNewFileOperation(runner_.get(), 481 new InitiateUploadNewFileOperation(sender_.get(),
482 url_request_context_getter_, 482 url_request_context_getter_,
483 url_generator_, 483 url_generator_,
484 callback, 484 callback,
485 drive_file_path, 485 drive_file_path,
486 content_type, 486 content_type,
487 content_length, 487 content_length,
488 parent_resource_id, 488 parent_resource_id,
489 title)); 489 title));
490 } 490 }
491 491
492 void GDataWapiService::InitiateUploadExistingFile( 492 void GDataWapiService::InitiateUploadExistingFile(
493 const base::FilePath& drive_file_path, 493 const base::FilePath& drive_file_path,
494 const std::string& content_type, 494 const std::string& content_type,
495 int64 content_length, 495 int64 content_length,
496 const std::string& resource_id, 496 const std::string& resource_id,
497 const std::string& etag, 497 const std::string& etag,
498 const InitiateUploadCallback& callback) { 498 const InitiateUploadCallback& callback) {
499 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); 499 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
500 DCHECK(!callback.is_null()); 500 DCHECK(!callback.is_null());
501 DCHECK(!resource_id.empty()); 501 DCHECK(!resource_id.empty());
502 502
503 runner_->StartOperationWithRetry( 503 sender_->StartRequestWithRetry(
504 new InitiateUploadExistingFileOperation(runner_.get(), 504 new InitiateUploadExistingFileOperation(sender_.get(),
505 url_request_context_getter_, 505 url_request_context_getter_,
506 url_generator_, 506 url_generator_,
507 callback, 507 callback,
508 drive_file_path, 508 drive_file_path,
509 content_type, 509 content_type,
510 content_length, 510 content_length,
511 resource_id, 511 resource_id,
512 etag)); 512 etag));
513 } 513 }
514 514
515 void GDataWapiService::ResumeUpload( 515 void GDataWapiService::ResumeUpload(
516 const base::FilePath& drive_file_path, 516 const base::FilePath& drive_file_path,
517 const GURL& upload_url, 517 const GURL& upload_url,
518 int64 start_position, 518 int64 start_position,
519 int64 end_position, 519 int64 end_position,
520 int64 content_length, 520 int64 content_length,
521 const std::string& content_type, 521 const std::string& content_type,
522 const base::FilePath& local_file_path, 522 const base::FilePath& local_file_path,
523 const UploadRangeCallback& callback, 523 const UploadRangeCallback& callback,
524 const ProgressCallback& progress_callback) { 524 const ProgressCallback& progress_callback) {
525 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); 525 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
526 DCHECK(!callback.is_null()); 526 DCHECK(!callback.is_null());
527 527
528 runner_->StartOperationWithRetry( 528 sender_->StartRequestWithRetry(
529 new ResumeUploadOperation(runner_.get(), 529 new ResumeUploadOperation(sender_.get(),
530 url_request_context_getter_, 530 url_request_context_getter_,
531 callback, 531 callback,
532 progress_callback, 532 progress_callback,
533 drive_file_path, 533 drive_file_path,
534 upload_url, 534 upload_url,
535 start_position, 535 start_position,
536 end_position, 536 end_position,
537 content_length, 537 content_length,
538 content_type, 538 content_type,
539 local_file_path)); 539 local_file_path));
540 } 540 }
541 541
542 void GDataWapiService::GetUploadStatus( 542 void GDataWapiService::GetUploadStatus(
543 const base::FilePath& drive_file_path, 543 const base::FilePath& drive_file_path,
544 const GURL& upload_url, 544 const GURL& upload_url,
545 int64 content_length, 545 int64 content_length,
546 const UploadRangeCallback& callback) { 546 const UploadRangeCallback& callback) {
547 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); 547 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
548 DCHECK(!callback.is_null()); 548 DCHECK(!callback.is_null());
549 549
550 runner_->StartOperationWithRetry( 550 sender_->StartRequestWithRetry(
551 new GetUploadStatusOperation(runner_.get(), 551 new GetUploadStatusOperation(sender_.get(),
552 url_request_context_getter_, 552 url_request_context_getter_,
553 callback, 553 callback,
554 drive_file_path, 554 drive_file_path,
555 upload_url, 555 upload_url,
556 content_length)); 556 content_length));
557 } 557 }
558 558
559 void GDataWapiService::AuthorizeApp(const std::string& resource_id, 559 void GDataWapiService::AuthorizeApp(const std::string& resource_id,
560 const std::string& app_id, 560 const std::string& app_id,
561 const AuthorizeAppCallback& callback) { 561 const AuthorizeAppCallback& callback) {
562 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); 562 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
563 DCHECK(!callback.is_null()); 563 DCHECK(!callback.is_null());
564 564
565 runner_->StartOperationWithRetry( 565 sender_->StartRequestWithRetry(
566 new AuthorizeAppOperation( 566 new AuthorizeAppOperation(
567 runner_.get(), 567 sender_.get(),
568 url_request_context_getter_, 568 url_request_context_getter_,
569 url_generator_, 569 url_generator_,
570 callback, 570 callback,
571 resource_id, 571 resource_id,
572 app_id)); 572 app_id));
573 } 573 }
574 574
575 bool GDataWapiService::HasAccessToken() const { 575 bool GDataWapiService::HasAccessToken() const {
576 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); 576 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
577 577
578 return runner_->auth_service()->HasAccessToken(); 578 return sender_->auth_service()->HasAccessToken();
579 } 579 }
580 580
581 bool GDataWapiService::HasRefreshToken() const { 581 bool GDataWapiService::HasRefreshToken() const {
582 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); 582 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
583 583
584 return runner_->auth_service()->HasRefreshToken(); 584 return sender_->auth_service()->HasRefreshToken();
585 } 585 }
586 586
587 void GDataWapiService::ClearAccessToken() { 587 void GDataWapiService::ClearAccessToken() {
588 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); 588 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
589 return runner_->auth_service()->ClearAccessToken(); 589 return sender_->auth_service()->ClearAccessToken();
590 } 590 }
591 591
592 void GDataWapiService::ClearRefreshToken() { 592 void GDataWapiService::ClearRefreshToken() {
593 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); 593 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
594 return runner_->auth_service()->ClearRefreshToken(); 594 return sender_->auth_service()->ClearRefreshToken();
595 } 595 }
596 596
597 void GDataWapiService::OnOAuth2RefreshTokenChanged() { 597 void GDataWapiService::OnOAuth2RefreshTokenChanged() {
598 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); 598 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
599 if (CanStartOperation()) { 599 if (CanStartOperation()) {
600 FOR_EACH_OBSERVER( 600 FOR_EACH_OBSERVER(
601 DriveServiceObserver, observers_, OnReadyToPerformOperations()); 601 DriveServiceObserver, observers_, OnReadyToPerformOperations());
602 } else if (!HasRefreshToken()) { 602 } else if (!HasRefreshToken()) {
603 FOR_EACH_OBSERVER( 603 FOR_EACH_OBSERVER(
604 DriveServiceObserver, observers_, OnRefreshTokenInvalid()); 604 DriveServiceObserver, observers_, OnRefreshTokenInvalid());
605 } 605 }
606 } 606 }
607 607
608 } // namespace google_apis 608 } // namespace google_apis
OLDNEW
« no previous file with comments | « chrome/browser/google_apis/gdata_wapi_service.h ('k') | chrome/browser/google_apis/operation_runner.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698