Chromium Code Reviews| Index: chrome/browser/chromeos/gdata/operations_base.h |
| diff --git a/chrome/browser/chromeos/gdata/operations_base.h b/chrome/browser/chromeos/gdata/operations_base.h |
| index cf8ee2c78eda275d794106450fff89f24c057c60..3cb5898abb775f7b3f3a0e81079e38ad73d655a0 100644 |
| --- a/chrome/browser/chromeos/gdata/operations_base.h |
| +++ b/chrome/browser/chromeos/gdata/operations_base.h |
| @@ -20,6 +20,9 @@ class OAuth2AccessTokenFetcher; |
| namespace gdata { |
| +// Callback type for ProcessURLFetchResults. |
| +typedef base::Callback<void(bool result)> ProcessURLFetchResultsCallBack; |
|
hashimoto
2012/07/20 04:07:37
nit: s/CallBack/Callback/ We use 'callback' as one
yoshiki
2012/07/24 16:58:32
Done
hashimoto
2012/07/25 06:14:21
How about making OnDataParsed() a private method o
|
| + |
| //================================ AuthOperation =============================== |
| // OAuth2 authorization token retrieval operation. |
| @@ -111,7 +114,9 @@ class UrlFetchOperationBase : public GDataOperationInterface, |
| // Invoked by OnURLFetchComplete when the operation completes without an |
| // authentication error. Must be implemented by a derived class. |
| - virtual bool ProcessURLFetchResults(const net::URLFetcher* source) = 0; |
| + virtual void ProcessURLFetchResults( |
| + const net::URLFetcher* source, |
| + const ProcessURLFetchResultsCallBack& callback) = 0; |
| // Invoked when it needs to notify the status. Chunked operations that |
| // constructs a logically single operation from multiple physical operations |
| @@ -129,6 +134,9 @@ class UrlFetchOperationBase : public GDataOperationInterface, |
| // Overridden from URLFetcherDelegate. |
| virtual void OnURLFetchComplete(const net::URLFetcher* source) OVERRIDE; |
| + // Invoked when ProcessURLFetchResults() is completed. |
| + void OnProcessURLFetchResultsComplete(bool result); |
| + |
| // Overridden from GDataOperationInterface. |
| virtual void OnAuthFailed(GDataErrorCode code) OVERRIDE; |
| @@ -146,6 +154,7 @@ class UrlFetchOperationBase : public GDataOperationInterface, |
| FilePath output_file_path_; |
| scoped_ptr<net::URLFetcher> url_fetcher_; |
| bool started_; |
| + base::WeakPtrFactory<UrlFetchOperationBase> weak_ptr_factory_; |
|
hashimoto
2012/07/20 04:07:37
Can't this be private instead of protected?
yoshiki
2012/07/24 16:58:32
Done.
|
| }; |
| //============================ EntryActionOperation ============================ |
| @@ -162,7 +171,9 @@ class EntryActionOperation : public UrlFetchOperationBase { |
| protected: |
| // Overridden from UrlFetchOperationBase. |
| - virtual bool ProcessURLFetchResults(const net::URLFetcher* source) OVERRIDE; |
| + virtual void ProcessURLFetchResults( |
| + const net::URLFetcher* source, |
| + const ProcessURLFetchResultsCallBack& callback) OVERRIDE; |
| virtual void RunCallbackOnPrematureFailure(GDataErrorCode code) OVERRIDE; |
| const GURL& document_url() const { return document_url_; } |
| @@ -185,15 +196,24 @@ class GetDataOperation : public UrlFetchOperationBase { |
| virtual ~GetDataOperation(); |
| // Parse GData JSON response. |
| - virtual base::Value* ParseResponse(const std::string& data); |
| + virtual void ParseResponse( |
| + GDataErrorCode fetch_error_code, |
| + const std::string& data, |
| + const ProcessURLFetchResultsCallBack& result_callback); |
| protected: |
| // Overridden from UrlFetchOperationBase. |
| - virtual bool ProcessURLFetchResults(const net::URLFetcher* source) OVERRIDE; |
| - virtual void RunCallbackOnPrematureFailure(GDataErrorCode code) OVERRIDE; |
| + virtual void ProcessURLFetchResults( |
| + const net::URLFetcher* source, |
| + const ProcessURLFetchResultsCallBack& callback) OVERRIDE; |
| + virtual void RunCallbackOnPrematureFailure( |
| + GDataErrorCode fetch_error_code) OVERRIDE; |
| + void RunCallback(GDataErrorCode fetch_error_code, |
| + scoped_ptr<base::Value> value); |
| private: |
| GetDataCallback callback_; |
| + |
| DISALLOW_COPY_AND_ASSIGN(GetDataOperation); |
| }; |