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

Side by Side Diff: chrome/utility/profile_import_handler.h

Issue 323693002: Split printing utility IPC messages into its own file. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 6 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_UTILITY_PROFILE_IMPORT_HANDLER_H_ 5 #ifndef CHROME_UTILITY_PROFILE_IMPORT_HANDLER_H_
6 #define CHROME_UTILITY_PROFILE_IMPORT_HANDLER_H_ 6 #define CHROME_UTILITY_PROFILE_IMPORT_HANDLER_H_
7 7
8 #include "base/basictypes.h" 8 #include "base/basictypes.h"
9 #include "base/compiler_specific.h" 9 #include "base/compiler_specific.h"
10 #include "base/memory/ref_counted.h" 10 #include "base/memory/ref_counted.h"
11 #include "base/memory/scoped_ptr.h" 11 #include "base/memory/scoped_ptr.h"
12 #include "chrome/utility/utility_message_handler.h" 12 #include "chrome/utility/utility_message_handler.h"
13 13
14 class ExternalProcessImporterBridge; 14 class ExternalProcessImporterBridge;
15 class Importer; 15 class Importer;
16 16
17 namespace base { 17 namespace base {
18 class DictionaryValue; 18 class DictionaryValue;
19 class Thread; 19 class Thread;
20 } 20 }
21 21
22 namespace importer { 22 namespace importer {
23 struct SourceProfile; 23 struct SourceProfile;
24 } 24 }
25 25
26 namespace chrome {
27
28 // Dispatches IPCs for out of process profile import. 26 // Dispatches IPCs for out of process profile import.
29 class ProfileImportHandler : public UtilityMessageHandler { 27 class ProfileImportHandler : public UtilityMessageHandler {
30 public: 28 public:
31 ProfileImportHandler(); 29 ProfileImportHandler();
32 virtual ~ProfileImportHandler(); 30 virtual ~ProfileImportHandler();
33 31
34 // IPC::Listener: 32 // IPC::Listener:
35 virtual bool OnMessageReceived(const IPC::Message& message) OVERRIDE; 33 virtual bool OnMessageReceived(const IPC::Message& message) OVERRIDE;
36 34
37 private: 35 private:
38 void OnImportStart( 36 void OnImportStart(
39 const importer::SourceProfile& source_profile, 37 const importer::SourceProfile& source_profile,
40 uint16 items, 38 uint16 items,
41 const base::DictionaryValue& localized_strings); 39 const base::DictionaryValue& localized_strings);
42 void OnImportCancel(); 40 void OnImportCancel();
43 void OnImportItemFinished(uint16 item); 41 void OnImportItemFinished(uint16 item);
44 42
45 // The following are used with out of process profile import: 43 // The following are used with out of process profile import:
46 void ImporterCleanup(); 44 void ImporterCleanup();
47 45
48 static bool Send(IPC::Message* message);
49
50 // Thread that importer runs on, while ProfileImportThread handles messages 46 // Thread that importer runs on, while ProfileImportThread handles messages
51 // from the browser process. 47 // from the browser process.
52 scoped_ptr<base::Thread> import_thread_; 48 scoped_ptr<base::Thread> import_thread_;
53 49
54 // Bridge object is passed to importer, so that it can send IPC calls 50 // Bridge object is passed to importer, so that it can send IPC calls
55 // directly back to the ProfileImportProcessHost. 51 // directly back to the ProfileImportProcessHost.
56 scoped_refptr<ExternalProcessImporterBridge> bridge_; 52 scoped_refptr<ExternalProcessImporterBridge> bridge_;
57 53
58 // A bitmask of importer::ImportItem. 54 // A bitmask of importer::ImportItem.
59 uint16 items_to_import_; 55 uint16 items_to_import_;
60 56
61 // Importer of the appropriate type (Firefox, Safari, IE, etc.) 57 // Importer of the appropriate type (Firefox, Safari, IE, etc.)
62 scoped_refptr<Importer> importer_; 58 scoped_refptr<Importer> importer_;
63 }; 59 };
64 60
65 } // namespace chrome
66
67 #endif // CHROME_UTILITY_PROFILE_IMPORT_HANDLER_H_ 61 #endif // CHROME_UTILITY_PROFILE_IMPORT_HANDLER_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698