OLD | NEW |
1 // Copyright 2012 The Chromium Authors. All rights reserved. | 1 // Copyright 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 "components/sessions/core/persistent_tab_restore_service.h" | 5 #include "components/sessions/core/persistent_tab_restore_service.h" |
6 | 6 |
7 #include <stddef.h> | 7 #include <stddef.h> |
8 #include <stdint.h> | 8 #include <stdint.h> |
9 #include <string.h> | 9 #include <string.h> |
10 #include <utility> | 10 #include <utility> |
11 #include <vector> | 11 #include <vector> |
12 | 12 |
13 #include "base/bind.h" | 13 #include "base/bind.h" |
14 #include "base/compiler_specific.h" | 14 #include "base/compiler_specific.h" |
15 #include "base/files/file_path.h" | 15 #include "base/files/file_path.h" |
16 #include "base/logging.h" | 16 #include "base/logging.h" |
17 #include "base/macros.h" | 17 #include "base/macros.h" |
18 #include "base/memory/ptr_util.h" | 18 #include "base/memory/ptr_util.h" |
19 #include "base/memory/ref_counted.h" | 19 #include "base/memory/ref_counted.h" |
20 #include "base/stl_util.h" | 20 #include "base/stl_util.h" |
21 #include "base/task/cancelable_task_tracker.h" | 21 #include "base/task/cancelable_task_tracker.h" |
22 #include "base/time/time.h" | 22 #include "base/time/time.h" |
| 23 #include "base/trace_event/memory_dump_manager.h" |
23 #include "components/sessions/core/base_session_service.h" | 24 #include "components/sessions/core/base_session_service.h" |
24 #include "components/sessions/core/base_session_service_commands.h" | 25 #include "components/sessions/core/base_session_service_commands.h" |
25 #include "components/sessions/core/base_session_service_delegate.h" | 26 #include "components/sessions/core/base_session_service_delegate.h" |
26 #include "components/sessions/core/session_command.h" | 27 #include "components/sessions/core/session_command.h" |
27 #include "components/sessions/core/session_constants.h" | 28 #include "components/sessions/core/session_constants.h" |
28 | 29 |
29 namespace sessions { | 30 namespace sessions { |
30 | 31 |
31 namespace { | 32 namespace { |
32 | 33 |
(...skipping 850 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
883 | 884 |
884 // PersistentTabRestoreService ------------------------------------------------- | 885 // PersistentTabRestoreService ------------------------------------------------- |
885 | 886 |
886 PersistentTabRestoreService::PersistentTabRestoreService( | 887 PersistentTabRestoreService::PersistentTabRestoreService( |
887 std::unique_ptr<TabRestoreServiceClient> client, | 888 std::unique_ptr<TabRestoreServiceClient> client, |
888 TimeFactory* time_factory) | 889 TimeFactory* time_factory) |
889 : client_(std::move(client)), | 890 : client_(std::move(client)), |
890 delegate_(new Delegate(client_.get())), | 891 delegate_(new Delegate(client_.get())), |
891 helper_(this, delegate_.get(), client_.get(), time_factory) { | 892 helper_(this, delegate_.get(), client_.get(), time_factory) { |
892 delegate_->set_tab_restore_service_helper(&helper_); | 893 delegate_->set_tab_restore_service_helper(&helper_); |
| 894 base::trace_event::MemoryDumpManager::GetInstance()->RegisterDumpProvider( |
| 895 &helper_, |
| 896 "PersistentTabRestoreService", |
| 897 base::ThreadTaskRunnerHandle::Get()); |
893 } | 898 } |
894 | 899 |
895 PersistentTabRestoreService::~PersistentTabRestoreService() {} | 900 PersistentTabRestoreService::~PersistentTabRestoreService() { |
| 901 base::trace_event::MemoryDumpManager::GetInstance()->UnregisterDumpProvider( |
| 902 &helper_); |
| 903 } |
896 | 904 |
897 void PersistentTabRestoreService::AddObserver( | 905 void PersistentTabRestoreService::AddObserver( |
898 TabRestoreServiceObserver* observer) { | 906 TabRestoreServiceObserver* observer) { |
899 helper_.AddObserver(observer); | 907 helper_.AddObserver(observer); |
900 } | 908 } |
901 | 909 |
902 void PersistentTabRestoreService::RemoveObserver( | 910 void PersistentTabRestoreService::RemoveObserver( |
903 TabRestoreServiceObserver* observer) { | 911 TabRestoreServiceObserver* observer) { |
904 helper_.RemoveObserver(observer); | 912 helper_.RemoveObserver(observer); |
905 } | 913 } |
(...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
964 | 972 |
965 TabRestoreService::Entries* PersistentTabRestoreService::mutable_entries() { | 973 TabRestoreService::Entries* PersistentTabRestoreService::mutable_entries() { |
966 return &helper_.entries_; | 974 return &helper_.entries_; |
967 } | 975 } |
968 | 976 |
969 void PersistentTabRestoreService::PruneEntries() { | 977 void PersistentTabRestoreService::PruneEntries() { |
970 helper_.PruneEntries(); | 978 helper_.PruneEntries(); |
971 } | 979 } |
972 | 980 |
973 } // namespace sessions | 981 } // namespace sessions |
OLD | NEW |