| Index: chrome/browser/chromeos/gdata/gdata_wapi_service.h | 
| diff --git a/chrome/browser/chromeos/gdata/gdata_wapi_service.h b/chrome/browser/chromeos/gdata/gdata_wapi_service.h | 
| new file mode 100644 | 
| index 0000000000000000000000000000000000000000..0f016d511c915fa9206f40a4943c73f449f955b5 | 
| --- /dev/null | 
| +++ b/chrome/browser/chromeos/gdata/gdata_wapi_service.h | 
| @@ -0,0 +1,105 @@ | 
| +// Copyright (c) 2012 The Chromium Authors. All rights reserved. | 
| +// Use of this source code is governed by a BSD-style license that can be | 
| +// found in the LICENSE file. | 
| + | 
| +#ifndef CHROME_BROWSER_CHROMEOS_GDATA_GDATA_WAPI_SERVICE_H_ | 
| +#define CHROME_BROWSER_CHROMEOS_GDATA_GDATA_WAPI_SERVICE_H_ | 
| + | 
| +#include <string> | 
| + | 
| +#include "base/memory/scoped_ptr.h" | 
| +#include "base/memory/weak_ptr.h" | 
| +#include "chrome/browser/chromeos/gdata/documents_service_interface.h" | 
| +#include "chrome/browser/chromeos/gdata/gdata_operations.h" | 
| +#include "chrome/browser/chromeos/gdata/gdata_auth_service.h" | 
| +#include "chrome/browser/chromeos/gdata/gdata_errorcode.h" | 
| + | 
| +class FilePath; | 
| +class GURL; | 
| +class Profile; | 
| + | 
| +namespace gdata { | 
| + | 
| +class GDataOperationRunner; | 
| + | 
| +// This class provides documents feed service calls for WAPI (codename for | 
| +// DocumentsList API). | 
| +// Details of API call are abstracted in each operation class and this class | 
| +// works as a thin wrapper for the API. | 
| +class GDataWapiService : public DocumentsServiceInterface { | 
| + public: | 
| +  // Instance is usually created by GDataSystemServiceFactory and owned by | 
| +  // GDataFileSystem. | 
| +  GDataWapiService(); | 
| +  virtual ~GDataWapiService(); | 
| + | 
| +  GDataAuthService* auth_service_for_testing(); | 
| + | 
| +  // DocumentsServiceInterface Overrides | 
| +  virtual void Initialize(Profile* profile) OVERRIDE; | 
| +  virtual GDataOperationRegistry* operation_registry() const OVERRIDE; | 
| +  virtual void CancelAll() OVERRIDE; | 
| +  virtual void Authenticate(const AuthStatusCallback& callback) OVERRIDE; | 
| +  virtual bool HasAccessToken() const OVERRIDE; | 
| +  virtual bool HasRefreshToken() const OVERRIDE; | 
| +  virtual void GetDocuments(const GURL& feed_url, | 
| +                            int64 start_changestamp, | 
| +                            const std::string& search_query, | 
| +                            const std::string& directory_resource_id, | 
| +                            const GetDataCallback& callback) OVERRIDE; | 
| +  virtual void GetDocumentEntry(const std::string& resource_id, | 
| +                                const GetDataCallback& callback) OVERRIDE; | 
| + | 
| +  virtual void GetAccountMetadata(const GetDataCallback& callback) OVERRIDE; | 
| +  virtual void GetApplicationInfo(const GetDataCallback& callback) OVERRIDE; | 
| +  virtual void DeleteDocument(const GURL& document_url, | 
| +                              const EntryActionCallback& callback) OVERRIDE; | 
| +  virtual void DownloadDocument( | 
| +      const FilePath& virtual_path, | 
| +      const FilePath& local_cache_path, | 
| +      const GURL& content_url, | 
| +      DocumentExportFormat format, | 
| +      const DownloadActionCallback& callback) OVERRIDE; | 
| +  virtual void DownloadFile( | 
| +      const FilePath& virtual_path, | 
| +      const FilePath& local_cache_path, | 
| +      const GURL& content_url, | 
| +      const DownloadActionCallback& download_action_callback, | 
| +      const GetContentCallback& get_content_callback) OVERRIDE; | 
| +  virtual void CopyDocument(const std::string& resource_id, | 
| +                            const FilePath::StringType& new_name, | 
| +                            const GetDataCallback& callback) OVERRIDE; | 
| +  virtual void RenameResource(const GURL& document_url, | 
| +                              const FilePath::StringType& new_name, | 
| +                              const EntryActionCallback& callback) OVERRIDE; | 
| +  virtual void AddResourceToDirectory( | 
| +      const GURL& parent_content_url, | 
| +      const GURL& resource_url, | 
| +      const EntryActionCallback& callback) OVERRIDE; | 
| +  virtual void RemoveResourceFromDirectory( | 
| +      const GURL& parent_content_url, | 
| +      const GURL& resource_url, | 
| +      const std::string& resource_id, | 
| +      const EntryActionCallback& callback) OVERRIDE; | 
| +  virtual void CreateDirectory(const GURL& parent_content_url, | 
| +                               const FilePath::StringType& directory_name, | 
| +                               const GetDataCallback& callback) OVERRIDE; | 
| +  virtual void InitiateUpload(const InitiateUploadParams& params, | 
| +                              const InitiateUploadCallback& callback) OVERRIDE; | 
| +  virtual void ResumeUpload(const ResumeUploadParams& params, | 
| +                            const ResumeUploadCallback& callback) OVERRIDE; | 
| +  virtual void AuthorizeApp(const GURL& resource_url, | 
| +                            const std::string& app_id, | 
| +                            const GetDataCallback& callback) OVERRIDE; | 
| + | 
| + private: | 
| +  Profile* profile_; | 
| + | 
| +  scoped_ptr<GDataOperationRunner> runner_; | 
| + | 
| +  DISALLOW_COPY_AND_ASSIGN(GDataWapiService); | 
| +}; | 
| + | 
| +}  // namespace gdata | 
| + | 
| +#endif  // CHROME_BROWSER_CHROMEOS_GDATA_GDATA_WAPI_SERVICE_H_ | 
|  |