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

Side by Side Diff: chrome/browser/chromeos/drive/gdata_wapi_feed_loader.h

Issue 11106007: drive: Rename 'gdata' namespace to 'drive' in chrome/browser/chromeos/drive (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: rebase Created 8 years, 2 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 #ifndef CHROME_BROWSER_CHROMEOS_DRIVE_GDATA_WAPI_FEED_LOADER_H_ 5 #ifndef CHROME_BROWSER_CHROMEOS_DRIVE_GDATA_WAPI_FEED_LOADER_H_
6 #define CHROME_BROWSER_CHROMEOS_DRIVE_GDATA_WAPI_FEED_LOADER_H_ 6 #define CHROME_BROWSER_CHROMEOS_DRIVE_GDATA_WAPI_FEED_LOADER_H_
7 7
8 #include <string> 8 #include <string>
9 #include <vector> 9 #include <vector>
10 10
11 #include "base/callback.h" 11 #include "base/callback.h"
12 #include "base/memory/scoped_vector.h" 12 #include "base/memory/scoped_vector.h"
13 #include "base/observer_list.h" 13 #include "base/observer_list.h"
14 #include "chrome/browser/chromeos/drive/drive_resource_metadata.h" 14 #include "chrome/browser/chromeos/drive/drive_resource_metadata.h"
15 #include "chrome/browser/google_apis/gdata_errorcode.h" 15 #include "chrome/browser/google_apis/gdata_errorcode.h"
16 #include "googleurl/src/gurl.h" 16 #include "googleurl/src/gurl.h"
17 17
18 class FilePath; 18 class FilePath;
19 19
20 namespace base { 20 namespace base {
21 class Value; 21 class Value;
22 } 22 }
23 23
24 namespace gdata { 24 namespace gdata {
25 class DocumentFeed;
26 }
25 27
26 class DocumentFeed; 28 namespace drive {
29
27 class DriveCache; 30 class DriveCache;
28 class DriveServiceInterface; 31 class DriveServiceInterface;
29 class DriveWebAppsRegistryInterface; 32 class DriveWebAppsRegistryInterface;
30 class GDataWapiFeedLoaderObserver; 33 class GDataWapiFeedLoaderObserver;
31 struct GetDocumentsUiState; 34 struct GetDocumentsUiState;
32 struct LoadFeedParams; 35 struct LoadFeedParams;
33 36
34 // Callback run as a response to LoadFromServer. 37 // Callback run as a response to LoadFromServer.
35 typedef base::Callback<void(scoped_ptr<LoadFeedParams> params, 38 typedef base::Callback<void(scoped_ptr<LoadFeedParams> params,
36 DriveFileError error)> 39 DriveFileError error)>
(...skipping 24 matching lines...) Expand all
61 // delta feed between them - bigger the difference, more likely bigger 64 // delta feed between them - bigger the difference, more likely bigger
62 // number of items in delta feeds. 65 // number of items in delta feeds.
63 ContentOrigin initial_origin; 66 ContentOrigin initial_origin;
64 int64 start_changestamp; 67 int64 start_changestamp;
65 int64 root_feed_changestamp; 68 int64 root_feed_changestamp;
66 std::string search_query; 69 std::string search_query;
67 std::string directory_resource_id; 70 std::string directory_resource_id;
68 GURL feed_to_load; 71 GURL feed_to_load;
69 const LoadDocumentFeedCallback feed_load_callback; 72 const LoadDocumentFeedCallback feed_load_callback;
70 FileOperationCallback load_finished_callback; 73 FileOperationCallback load_finished_callback;
71 ScopedVector<DocumentFeed> feed_list; 74 ScopedVector<gdata::DocumentFeed> feed_list;
72 scoped_ptr<GetDocumentsUiState> ui_state; 75 scoped_ptr<GetDocumentsUiState> ui_state;
73 }; 76 };
74 77
75 // Defines set of parameters sent to callback OnProtoLoaded(). 78 // Defines set of parameters sent to callback OnProtoLoaded().
76 struct LoadRootFeedParams { 79 struct LoadRootFeedParams {
77 LoadRootFeedParams( 80 LoadRootFeedParams(
78 bool should_load_from_server, 81 bool should_load_from_server,
79 const FileOperationCallback& callback); 82 const FileOperationCallback& callback);
80 ~LoadRootFeedParams(); 83 ~LoadRootFeedParams();
81 84
(...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after
142 int64 local_changestamp, 145 int64 local_changestamp,
143 const FileOperationCallback& callback); 146 const FileOperationCallback& callback);
144 147
145 // Updates whole directory structure feeds collected in |feed_list|. 148 // Updates whole directory structure feeds collected in |feed_list|.
146 // On success, returns PLATFORM_FILE_OK. Record file statistics as UMA 149 // On success, returns PLATFORM_FILE_OK. Record file statistics as UMA
147 // histograms. 150 // histograms.
148 // 151 //
149 // See comments at GDataWapiFeedProcessor::ApplyFeeds() for 152 // See comments at GDataWapiFeedProcessor::ApplyFeeds() for
150 // |start_changestamp| and |root_feed_changestamp|. 153 // |start_changestamp| and |root_feed_changestamp|.
151 DriveFileError UpdateFromFeed( 154 DriveFileError UpdateFromFeed(
152 const ScopedVector<DocumentFeed>& feed_list, 155 const ScopedVector<gdata::DocumentFeed>& feed_list,
153 int64 start_changestamp, 156 int64 start_changestamp,
154 int64 root_feed_changestamp); 157 int64 root_feed_changestamp);
155 158
156 private: 159 private:
157 // Starts root feed load from the server, with details specified in |params|. 160 // Starts root feed load from the server, with details specified in |params|.
158 void LoadFromServer(scoped_ptr<LoadFeedParams> params); 161 void LoadFromServer(scoped_ptr<LoadFeedParams> params);
159 162
160 // Callback for handling root directory refresh from the cache. 163 // Callback for handling root directory refresh from the cache.
161 void OnProtoLoaded(LoadRootFeedParams* params); 164 void OnProtoLoaded(LoadRootFeedParams* params);
162 165
163 // Continues handling root directory refresh after the directory service 166 // Continues handling root directory refresh after the directory service
164 // is fully loaded. 167 // is fully loaded.
165 void ContinueWithInitializedDirectoryService(LoadRootFeedParams* params, 168 void ContinueWithInitializedDirectoryService(LoadRootFeedParams* params,
166 DriveFileError error); 169 DriveFileError error);
167 170
168 // Helper callback for handling results of metadata retrieval initiated from 171 // Helper callback for handling results of metadata retrieval initiated from
169 // ReloadFeedFromServerIfNeeded(). This method makes a decision about fetching 172 // ReloadFeedFromServerIfNeeded(). This method makes a decision about fetching
170 // the content of the root feed during the root directory refresh process. 173 // the content of the root feed during the root directory refresh process.
171 void OnGetAccountMetadata( 174 void OnGetAccountMetadata(
172 ContentOrigin initial_origin, 175 ContentOrigin initial_origin,
173 int64 local_changestamp, 176 int64 local_changestamp,
174 const FileOperationCallback& callback, 177 const FileOperationCallback& callback,
175 GDataErrorCode status, 178 gdata::GDataErrorCode status,
176 scoped_ptr<base::Value> feed_data); 179 scoped_ptr<base::Value> feed_data);
177 180
178 // Helper callback for handling results of account data retrieval initiated 181 // Helper callback for handling results of account data retrieval initiated
179 // from ReloadFeedFromServerIfNeeded() for Drive V2 API. 182 // from ReloadFeedFromServerIfNeeded() for Drive V2 API.
180 // This method makes a decision about fetching the content of the root feed 183 // This method makes a decision about fetching the content of the root feed
181 // during the root directory refresh process. 184 // during the root directory refresh process.
182 void OnGetAboutResource( 185 void OnGetAboutResource(
183 ContentOrigin initial_origin, 186 ContentOrigin initial_origin,
184 int64 local_changestamp, 187 int64 local_changestamp,
185 const FileOperationCallback& callback, 188 const FileOperationCallback& callback,
186 GDataErrorCode status, 189 gdata::GDataErrorCode status,
187 scoped_ptr<base::Value> feed_data); 190 scoped_ptr<base::Value> feed_data);
188 191
189 // Callback for handling response from |DriveAPIService::GetApplicationInfo|. 192 // Callback for handling response from |DriveAPIService::GetApplicationInfo|.
190 // If the application list is successfully parsed, passes the list to 193 // If the application list is successfully parsed, passes the list to
191 // Drive webapps registry. 194 // Drive webapps registry.
192 void OnGetApplicationList(GDataErrorCode status, 195 void OnGetApplicationList(gdata::GDataErrorCode status,
193 scoped_ptr<base::Value> json); 196 scoped_ptr<base::Value> json);
194 197
195 // Callback for handling feed content fetching while searching for file info. 198 // Callback for handling feed content fetching while searching for file info.
196 // This callback is invoked after async feed fetch operation that was 199 // This callback is invoked after async feed fetch operation that was
197 // invoked by StartDirectoryRefresh() completes. This callback will update 200 // invoked by StartDirectoryRefresh() completes. This callback will update
198 // the content of the refreshed directory object and continue initially 201 // the content of the refreshed directory object and continue initially
199 // started FindEntryByPath() request. 202 // started FindEntryByPath() request.
200 void OnFeedFromServerLoaded(scoped_ptr<LoadFeedParams> params, 203 void OnFeedFromServerLoaded(scoped_ptr<LoadFeedParams> params,
201 DriveFileError error); 204 DriveFileError error);
202 205
203 // Callback for handling response from |GDataWapiService::GetDocuments|. 206 // Callback for handling response from |GDataWapiService::GetDocuments|.
204 // Invokes |callback| when done. 207 // Invokes |callback| when done.
205 // |callback| must not be null. 208 // |callback| must not be null.
206 void OnGetDocuments( 209 void OnGetDocuments(
207 scoped_ptr<LoadFeedParams> params, 210 scoped_ptr<LoadFeedParams> params,
208 base::TimeTicks start_time, 211 base::TimeTicks start_time,
209 GDataErrorCode status, 212 gdata::GDataErrorCode status,
210 scoped_ptr<base::Value> data); 213 scoped_ptr<base::Value> data);
211 214
212 // Callback for handling results of feed parse. 215 // Callback for handling results of feed parse.
213 void OnParseFeed(scoped_ptr<LoadFeedParams> params, 216 void OnParseFeed(scoped_ptr<LoadFeedParams> params,
214 base::TimeTicks start_time, 217 base::TimeTicks start_time,
215 scoped_ptr<DocumentFeed>* current_feed); 218 scoped_ptr<gdata::DocumentFeed>* current_feed);
216 219
217 // Callback for handling response from |DriveAPIService::GetChanglist|. 220 // Callback for handling response from |DriveAPIService::GetChanglist|.
218 // Invokes |callback| when done. 221 // Invokes |callback| when done.
219 // |callback| must not be null. 222 // |callback| must not be null.
220 void OnGetChangelist(scoped_ptr<LoadFeedParams> params, 223 void OnGetChangelist(scoped_ptr<LoadFeedParams> params,
221 base::TimeTicks start_time, 224 base::TimeTicks start_time,
222 GDataErrorCode status, 225 gdata::GDataErrorCode status,
223 scoped_ptr<base::Value> data); 226 scoped_ptr<base::Value> data);
224 227
225 // Save filesystem to disk. 228 // Save filesystem to disk.
226 void SaveFileSystem(); 229 void SaveFileSystem();
227 230
228 // Callback for handling UI updates caused by document fetching. 231 // Callback for handling UI updates caused by document fetching.
229 void OnNotifyDocumentFeedFetched( 232 void OnNotifyDocumentFeedFetched(
230 base::WeakPtr<GetDocumentsUiState> ui_state); 233 base::WeakPtr<GetDocumentsUiState> ui_state);
231 234
232 DriveResourceMetadata* resource_metadata_; // Not owned. 235 DriveResourceMetadata* resource_metadata_; // Not owned.
233 DriveServiceInterface* drive_service_; // Not owned. 236 DriveServiceInterface* drive_service_; // Not owned.
234 DriveWebAppsRegistryInterface* webapps_registry_; // Not owned. 237 DriveWebAppsRegistryInterface* webapps_registry_; // Not owned.
235 DriveCache* cache_; // Not owned. 238 DriveCache* cache_; // Not owned.
236 scoped_refptr<base::SequencedTaskRunner> blocking_task_runner_; 239 scoped_refptr<base::SequencedTaskRunner> blocking_task_runner_;
237 ObserverList<GDataWapiFeedLoaderObserver> observers_; 240 ObserverList<GDataWapiFeedLoaderObserver> observers_;
238 241
239 // Note: This should remain the last member so it'll be destroyed and 242 // Note: This should remain the last member so it'll be destroyed and
240 // invalidate its weak pointers before any other members are destroyed. 243 // invalidate its weak pointers before any other members are destroyed.
241 base::WeakPtrFactory<GDataWapiFeedLoader> weak_ptr_factory_; 244 base::WeakPtrFactory<GDataWapiFeedLoader> weak_ptr_factory_;
242 DISALLOW_COPY_AND_ASSIGN(GDataWapiFeedLoader); 245 DISALLOW_COPY_AND_ASSIGN(GDataWapiFeedLoader);
243 }; 246 };
244 247
245 } // namespace gdata 248 } // namespace drive
246 249
247 #endif // CHROME_BROWSER_CHROMEOS_DRIVE_GDATA_WAPI_FEED_LOADER_H_ 250 #endif // CHROME_BROWSER_CHROMEOS_DRIVE_GDATA_WAPI_FEED_LOADER_H_
OLDNEW
« no previous file with comments | « chrome/browser/chromeos/drive/file_write_helper_unittest.cc ('k') | chrome/browser/chromeos/drive/gdata_wapi_feed_loader.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698