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

Side by Side Diff: chrome/browser/history/history_service.h

Issue 934083003: Cleanup HistoryService and HistoryBackend interface (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@android-backend-provider
Patch Set: Created 5 years, 10 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 (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_HISTORY_HISTORY_SERVICE_H_ 5 #ifndef CHROME_BROWSER_HISTORY_HISTORY_SERVICE_H_
6 #define CHROME_BROWSER_HISTORY_HISTORY_SERVICE_H_ 6 #define CHROME_BROWSER_HISTORY_HISTORY_SERVICE_H_
7 7
8 #include <set> 8 #include <set>
9 #include <string> 9 #include <string>
10 #include <vector> 10 #include <vector>
(...skipping 15 matching lines...) Expand all
26 #include "chrome/browser/history/delete_directive_handler.h" 26 #include "chrome/browser/history/delete_directive_handler.h"
27 #include "chrome/browser/history/typed_url_syncable_service.h" 27 #include "chrome/browser/history/typed_url_syncable_service.h"
28 #include "components/favicon_base/favicon_callback.h" 28 #include "components/favicon_base/favicon_callback.h"
29 #include "components/favicon_base/favicon_usage_data.h" 29 #include "components/favicon_base/favicon_usage_data.h"
30 #include "components/history/core/browser/keyword_id.h" 30 #include "components/history/core/browser/keyword_id.h"
31 #include "components/keyed_service/core/keyed_service.h" 31 #include "components/keyed_service/core/keyed_service.h"
32 #include "sql/init_status.h" 32 #include "sql/init_status.h"
33 #include "sync/api/syncable_service.h" 33 #include "sync/api/syncable_service.h"
34 #include "ui/base/page_transition_types.h" 34 #include "ui/base/page_transition_types.h"
35 35
36 #if defined(OS_ANDROID)
37 class AndroidHistoryProviderService;
38 #endif
39
40 class GURL; 36 class GURL;
41 class PageUsageRequest; 37 class PageUsageRequest;
42 class SkBitmap; 38 class SkBitmap;
43 39
44 namespace base { 40 namespace base {
45 class FilePath; 41 class FilePath;
46 class Thread; 42 class Thread;
47 } 43 }
48 44
49 namespace history { 45 namespace history {
(...skipping 24 matching lines...) Expand all
74 // (eventually) information about autocomplete. 70 // (eventually) information about autocomplete.
75 // 71 //
76 // This service is thread safe. Each request callback is invoked in the 72 // This service is thread safe. Each request callback is invoked in the
77 // thread that made the request. 73 // thread that made the request.
78 class HistoryService : public syncer::SyncableService, public KeyedService { 74 class HistoryService : public syncer::SyncableService, public KeyedService {
79 public: 75 public:
80 // Miscellaneous commonly-used types. 76 // Miscellaneous commonly-used types.
81 typedef std::vector<history::PageUsageData*> PageUsageDataList; 77 typedef std::vector<history::PageUsageData*> PageUsageDataList;
82 78
83 // Must call Init after construction. The empty constructor provided only for 79 // Must call Init after construction. The empty constructor provided only for
84 // unit tests. When using the full constructor, |history_client| and |profile| 80 // unit tests. When using the full constructor, |history_client| may only be
85 // should only be null during testing, while |visit_delegate| may be null if 81 // null during testing, while |visit_delegate| may be null if the embedder use
86 // the embedder use another way to track visited links. 82 // another way to track visited links.
87 HistoryService(); 83 HistoryService();
88 HistoryService(history::HistoryClient* history_client, 84 HistoryService(history::HistoryClient* history_client,
89 scoped_ptr<history::VisitDelegate> visit_delegate); 85 scoped_ptr<history::VisitDelegate> visit_delegate);
90 ~HistoryService() override; 86 ~HistoryService() override;
91 87
92 // Initializes the history service, returning true on success. On false, do 88 // Initializes the history service, returning true on success. On false, do
93 // not call any other functions. The given directory will be used for storing 89 // not call any other functions. The given directory will be used for storing
94 // the history files. |languages| is a comma-separated list of languages to 90 // the history files. |languages| is a comma-separated list of languages to
95 // use when interpreting URLs, it must not be empty (except during testing). 91 // use when interpreting URLs, it must not be empty (except during testing).
96 bool Init(const std::string& languages, 92 bool Init(const std::string& languages,
(...skipping 707 matching lines...) Expand 10 before | Expand all | Expand 10 after
804 scoped_ptr<history::VisitDelegate> visit_delegate_; 800 scoped_ptr<history::VisitDelegate> visit_delegate_;
805 801
806 // The history client, may be null when testing. The object should otherwise 802 // The history client, may be null when testing. The object should otherwise
807 // outlive |HistoryService|. 803 // outlive |HistoryService|.
808 history::HistoryClient* history_client_; 804 history::HistoryClient* history_client_;
809 805
810 // Has the backend finished loading? The backend is loaded once Init has 806 // Has the backend finished loading? The backend is loaded once Init has
811 // completed. 807 // completed.
812 bool backend_loaded_; 808 bool backend_loaded_;
813 809
814 // Cached values from Init(), used whenever we need to reload the backend.
815 base::FilePath history_dir_;
816 bool no_db_;
817
818 // The index used for quick history lookups. 810 // The index used for quick history lookups.
819 // TODO(mrossetti): Move in_memory_url_index out of history_service. 811 // TODO(mrossetti): Move in_memory_url_index out of history_service.
820 // See http://crbug.com/138321 812 // See http://crbug.com/138321
821 scoped_ptr<history::InMemoryURLIndex> in_memory_url_index_; 813 scoped_ptr<history::InMemoryURLIndex> in_memory_url_index_;
822 814
823 ObserverList<history::HistoryServiceObserver> observers_; 815 ObserverList<history::HistoryServiceObserver> observers_;
824 base::CallbackList<void(const std::set<GURL>&)> 816 base::CallbackList<void(const std::set<GURL>&)>
825 favicon_changed_callback_list_; 817 favicon_changed_callback_list_;
826 818
827 history::DeleteDirectiveHandler delete_directive_handler_; 819 history::DeleteDirectiveHandler delete_directive_handler_;
828 820
829 // All vended weak pointers are invalidated in Cleanup(). 821 // All vended weak pointers are invalidated in Cleanup().
830 base::WeakPtrFactory<HistoryService> weak_ptr_factory_; 822 base::WeakPtrFactory<HistoryService> weak_ptr_factory_;
831 823
832 DISALLOW_COPY_AND_ASSIGN(HistoryService); 824 DISALLOW_COPY_AND_ASSIGN(HistoryService);
833 }; 825 };
834 826
835 #endif // CHROME_BROWSER_HISTORY_HISTORY_SERVICE_H_ 827 #endif // CHROME_BROWSER_HISTORY_HISTORY_SERVICE_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698