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

Side by Side Diff: chrome/browser/extensions/api/sessions/sessions_api.cc

Issue 2343463003: [Sync] Fix namespaces for the sync_sessions component. (Closed)
Patch Set: Fix Android. Created 4 years, 3 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
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 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/extensions/api/sessions/sessions_api.h" 5 #include "chrome/browser/extensions/api/sessions/sessions_api.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 8
9 #include <utility> 9 #include <utility>
10 #include <vector> 10 #include <vector>
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after
56 "There are no recently closed sessions."; 56 "There are no recently closed sessions.";
57 const char kInvalidSessionIdError[] = "Invalid session id: \"*\"."; 57 const char kInvalidSessionIdError[] = "Invalid session id: \"*\".";
58 const char kNoBrowserToRestoreSession[] = 58 const char kNoBrowserToRestoreSession[] =
59 "There are no browser windows to restore the session."; 59 "There are no browser windows to restore the session.";
60 const char kSessionSyncError[] = "Synced sessions are not available."; 60 const char kSessionSyncError[] = "Synced sessions are not available.";
61 const char kRestoreInIncognitoError[] = 61 const char kRestoreInIncognitoError[] =
62 "Can not restore sessions in incognito mode."; 62 "Can not restore sessions in incognito mode.";
63 63
64 // Comparator function for use with std::sort that will sort sessions by 64 // Comparator function for use with std::sort that will sort sessions by
65 // descending modified_time (i.e., most recent first). 65 // descending modified_time (i.e., most recent first).
66 bool SortSessionsByRecency(const sync_driver::SyncedSession* s1, 66 bool SortSessionsByRecency(const sync_sessions::SyncedSession* s1,
67 const sync_driver::SyncedSession* s2) { 67 const sync_sessions::SyncedSession* s2) {
68 return s1->modified_time > s2->modified_time; 68 return s1->modified_time > s2->modified_time;
69 } 69 }
70 70
71 // Comparator function for use with std::sort that will sort tabs in a window 71 // Comparator function for use with std::sort that will sort tabs in a window
72 // by descending timestamp (i.e., most recent first). 72 // by descending timestamp (i.e., most recent first).
73 bool SortTabsByRecency(const sessions::SessionTab* t1, 73 bool SortTabsByRecency(const sessions::SessionTab* t1,
74 const sessions::SessionTab* t2) { 74 const sessions::SessionTab* t2) {
75 return t1->timestamp > t2->timestamp; 75 return t1->timestamp > t2->timestamp;
76 } 76 }
77 77
(...skipping 238 matching lines...) Expand 10 before | Expand all | Expand 10 after
316 CreateWindowModel(window, session_tag)); 316 CreateWindowModel(window, session_tag));
317 // There is a chance that after pruning uninteresting tabs the window will be 317 // There is a chance that after pruning uninteresting tabs the window will be
318 // empty. 318 // empty.
319 return !window_model ? std::unique_ptr<api::sessions::Session>() 319 return !window_model ? std::unique_ptr<api::sessions::Session>()
320 : CreateSessionModelHelper(window.timestamp.ToTimeT(), 320 : CreateSessionModelHelper(window.timestamp.ToTimeT(),
321 std::unique_ptr<tabs::Tab>(), 321 std::unique_ptr<tabs::Tab>(),
322 std::move(window_model)); 322 std::move(window_model));
323 } 323 }
324 324
325 api::sessions::Device SessionsGetDevicesFunction::CreateDeviceModel( 325 api::sessions::Device SessionsGetDevicesFunction::CreateDeviceModel(
326 const sync_driver::SyncedSession* session) { 326 const sync_sessions::SyncedSession* session) {
327 int max_results = api::sessions::MAX_SESSION_RESULTS; 327 int max_results = api::sessions::MAX_SESSION_RESULTS;
328 // Already validated in RunAsync(). 328 // Already validated in RunAsync().
329 std::unique_ptr<GetDevices::Params> params( 329 std::unique_ptr<GetDevices::Params> params(
330 GetDevices::Params::Create(*args_)); 330 GetDevices::Params::Create(*args_));
331 if (params->filter && params->filter->max_results) 331 if (params->filter && params->filter->max_results)
332 max_results = *params->filter->max_results; 332 max_results = *params->filter->max_results;
333 333
334 api::sessions::Device device_struct; 334 api::sessions::Device device_struct;
335 device_struct.info = session->session_name; 335 device_struct.info = session->session_name;
336 device_struct.device_name = session->session_name; 336 device_struct.device_name = session->session_name;
337 337
338 for (sync_driver::SyncedSession::SyncedWindowMap::const_iterator it = 338 for (sync_sessions::SyncedSession::SyncedWindowMap::const_iterator it =
339 session->windows.begin(); 339 session->windows.begin();
340 it != session->windows.end() && 340 it != session->windows.end() &&
341 static_cast<int>(device_struct.sessions.size()) < max_results; 341 static_cast<int>(device_struct.sessions.size()) < max_results;
342 ++it) { 342 ++it) {
343 std::unique_ptr<api::sessions::Session> session_model( 343 std::unique_ptr<api::sessions::Session> session_model(
344 CreateSessionModel(*it->second, session->session_tag)); 344 CreateSessionModel(*it->second, session->session_tag));
345 if (session_model) 345 if (session_model)
346 device_struct.sessions.push_back(std::move(*session_model)); 346 device_struct.sessions.push_back(std::move(*session_model));
347 } 347 }
348 return device_struct; 348 return device_struct;
349 } 349 }
350 350
351 bool SessionsGetDevicesFunction::RunSync() { 351 bool SessionsGetDevicesFunction::RunSync() {
352 ProfileSyncService* service = 352 ProfileSyncService* service =
353 ProfileSyncServiceFactory::GetInstance()->GetForProfile(GetProfile()); 353 ProfileSyncServiceFactory::GetInstance()->GetForProfile(GetProfile());
354 if (!(service && service->GetPreferredDataTypes().Has(syncer::SESSIONS))) { 354 if (!(service && service->GetPreferredDataTypes().Has(syncer::SESSIONS))) {
355 // Sync not enabled. 355 // Sync not enabled.
356 results_ = 356 results_ =
357 GetDevices::Results::Create(std::vector<api::sessions::Device>()); 357 GetDevices::Results::Create(std::vector<api::sessions::Device>());
358 return true; 358 return true;
359 } 359 }
360 360
361 sync_driver::OpenTabsUIDelegate* open_tabs = service->GetOpenTabsUIDelegate(); 361 sync_sessions::OpenTabsUIDelegate* open_tabs =
362 std::vector<const sync_driver::SyncedSession*> sessions; 362 service->GetOpenTabsUIDelegate();
363 std::vector<const sync_sessions::SyncedSession*> sessions;
363 if (!(open_tabs && open_tabs->GetAllForeignSessions(&sessions))) { 364 if (!(open_tabs && open_tabs->GetAllForeignSessions(&sessions))) {
364 results_ = 365 results_ =
365 GetDevices::Results::Create(std::vector<api::sessions::Device>()); 366 GetDevices::Results::Create(std::vector<api::sessions::Device>());
366 return true; 367 return true;
367 } 368 }
368 369
369 std::unique_ptr<GetDevices::Params> params( 370 std::unique_ptr<GetDevices::Params> params(
370 GetDevices::Params::Create(*args_)); 371 GetDevices::Params::Create(*args_));
371 EXTENSION_FUNCTION_VALIDATE(params); 372 EXTENSION_FUNCTION_VALIDATE(params);
372 if (params->filter && params->filter->max_results) { 373 if (params->filter && params->filter->max_results) {
(...skipping 121 matching lines...) Expand 10 before | Expand all | Expand 10 after
494 } 495 }
495 496
496 bool SessionsRestoreFunction::RestoreForeignSession(const SessionId& session_id, 497 bool SessionsRestoreFunction::RestoreForeignSession(const SessionId& session_id,
497 Browser* browser) { 498 Browser* browser) {
498 ProfileSyncService* service = 499 ProfileSyncService* service =
499 ProfileSyncServiceFactory::GetInstance()->GetForProfile(GetProfile()); 500 ProfileSyncServiceFactory::GetInstance()->GetForProfile(GetProfile());
500 if (!(service && service->GetPreferredDataTypes().Has(syncer::SESSIONS))) { 501 if (!(service && service->GetPreferredDataTypes().Has(syncer::SESSIONS))) {
501 SetError(kSessionSyncError); 502 SetError(kSessionSyncError);
502 return false; 503 return false;
503 } 504 }
504 sync_driver::OpenTabsUIDelegate* open_tabs = service->GetOpenTabsUIDelegate(); 505 sync_sessions::OpenTabsUIDelegate* open_tabs =
506 service->GetOpenTabsUIDelegate();
505 if (!open_tabs) { 507 if (!open_tabs) {
506 SetError(kSessionSyncError); 508 SetError(kSessionSyncError);
507 return false; 509 return false;
508 } 510 }
509 511
510 const sessions::SessionTab* tab = NULL; 512 const sessions::SessionTab* tab = NULL;
511 if (open_tabs->GetForeignTab(session_id.session_tag(), 513 if (open_tabs->GetForeignTab(session_id.session_tag(),
512 session_id.id(), 514 session_id.id(),
513 &tab)) { 515 &tab)) {
514 TabStripModel* tab_strip = browser->tab_strip_model(); 516 TabStripModel* tab_strip = browser->tab_strip_model();
(...skipping 111 matching lines...) Expand 10 before | Expand all | Expand 10 after
626 return g_factory.Pointer(); 628 return g_factory.Pointer();
627 } 629 }
628 630
629 void SessionsAPI::OnListenerAdded(const EventListenerInfo& details) { 631 void SessionsAPI::OnListenerAdded(const EventListenerInfo& details) {
630 sessions_event_router_.reset( 632 sessions_event_router_.reset(
631 new SessionsEventRouter(Profile::FromBrowserContext(browser_context_))); 633 new SessionsEventRouter(Profile::FromBrowserContext(browser_context_)));
632 EventRouter::Get(browser_context_)->UnregisterObserver(this); 634 EventRouter::Get(browser_context_)->UnregisterObserver(this);
633 } 635 }
634 636
635 } // namespace extensions 637 } // namespace extensions
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698