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

Side by Side Diff: chrome/browser/extensions/crx_installer.h

Issue 322893002: Cleanup: Make ExtensionService::OnExtensionInstalled take a bitmask instead of (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: more win compile fixes 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_BROWSER_EXTENSIONS_CRX_INSTALLER_H_ 5 #ifndef CHROME_BROWSER_EXTENSIONS_CRX_INSTALLER_H_
6 #define CHROME_BROWSER_EXTENSIONS_CRX_INSTALLER_H_ 6 #define CHROME_BROWSER_EXTENSIONS_CRX_INSTALLER_H_
7 7
8 #include <string> 8 #include <string>
9 9
10 #include "base/compiler_specific.h" 10 #include "base/compiler_specific.h"
11 #include "base/files/file_path.h" 11 #include "base/files/file_path.h"
12 #include "base/memory/ref_counted.h" 12 #include "base/memory/ref_counted.h"
13 #include "base/memory/weak_ptr.h" 13 #include "base/memory/weak_ptr.h"
14 #include "base/version.h" 14 #include "base/version.h"
15 #include "chrome/browser/extensions/blacklist.h" 15 #include "chrome/browser/extensions/blacklist.h"
16 #include "chrome/browser/extensions/extension_install_prompt.h" 16 #include "chrome/browser/extensions/extension_install_prompt.h"
17 #include "chrome/browser/extensions/extension_installer.h" 17 #include "chrome/browser/extensions/extension_installer.h"
18 #include "chrome/browser/extensions/extension_service.h"
18 #include "chrome/browser/extensions/sandboxed_unpacker.h" 19 #include "chrome/browser/extensions/sandboxed_unpacker.h"
19 #include "chrome/browser/extensions/webstore_installer.h" 20 #include "chrome/browser/extensions/webstore_installer.h"
20 #include "chrome/common/extensions/extension_constants.h" 21 #include "chrome/common/extensions/extension_constants.h"
22 #include "extensions/browser/install_flag.h"
21 #include "extensions/common/extension.h" 23 #include "extensions/common/extension.h"
22 #include "extensions/common/manifest.h" 24 #include "extensions/common/manifest.h"
23 #include "sync/api/string_ordinal.h" 25 #include "sync/api/string_ordinal.h"
24 26
25 class ExtensionService; 27 class ExtensionService;
26 class ExtensionServiceTest; 28 class ExtensionServiceTest;
27 class SkBitmap; 29 class SkBitmap;
28 struct WebApplicationInfo; 30 struct WebApplicationInfo;
29 31
30 namespace base { 32 namespace base {
(...skipping 142 matching lines...) Expand 10 before | Expand all | Expand 10 after
173 } 175 }
174 176
175 void set_page_ordinal(const syncer::StringOrdinal& page_ordinal) { 177 void set_page_ordinal(const syncer::StringOrdinal& page_ordinal) {
176 page_ordinal_ = page_ordinal; 178 page_ordinal_ = page_ordinal;
177 } 179 }
178 180
179 void set_error_on_unsupported_requirements(bool val) { 181 void set_error_on_unsupported_requirements(bool val) {
180 error_on_unsupported_requirements_ = val; 182 error_on_unsupported_requirements_ = val;
181 } 183 }
182 184
183 void set_install_wait_for_idle(bool val) { 185 void set_install_immediately(bool val) {
184 install_wait_for_idle_ = val; 186 if (val)
187 install_flags_ |= kInstallFlagInstallImmediately;
188 else
189 install_flags_ &= ~kInstallFlagInstallImmediately;
185 } 190 }
186 191
187 void set_is_ephemeral(bool val) { 192 void set_is_ephemeral(bool val) {
188 is_ephemeral_ = val; 193 if (val)
194 install_flags_ |= kInstallFlagIsEphemeral;
195 else
196 install_flags_ &= ~kInstallFlagIsEphemeral;
189 } 197 }
190 198
191 bool did_handle_successfully() const { return did_handle_successfully_; } 199 bool did_handle_successfully() const { return did_handle_successfully_; }
192 200
193 Profile* profile() { return installer_.profile(); } 201 Profile* profile() { return installer_.profile(); }
194 202
195 const Extension* extension() { return installer_.extension().get(); } 203 const Extension* extension() { return installer_.extension().get(); }
196 204
197 private: 205 private:
198 friend class ::ExtensionServiceTest; 206 friend class ::ExtensionServiceTest;
(...skipping 185 matching lines...) Expand 10 before | Expand all | Expand 10 after
384 // initiating the installation can be removed. This is different than whether 392 // initiating the installation can be removed. This is different than whether
385 // there was an error; if there was an error that rejects installation we 393 // there was an error; if there was an error that rejects installation we
386 // still consider the installation 'handled'. 394 // still consider the installation 'handled'.
387 bool did_handle_successfully_; 395 bool did_handle_successfully_;
388 396
389 // Whether we should produce an error if the manifest declares requirements 397 // Whether we should produce an error if the manifest declares requirements
390 // that are not met. If false and there is an unmet requirement, the install 398 // that are not met. If false and there is an unmet requirement, the install
391 // will continue but the extension will be distabled. 399 // will continue but the extension will be distabled.
392 bool error_on_unsupported_requirements_; 400 bool error_on_unsupported_requirements_;
393 401
394 bool has_requirement_errors_;
395
396 extensions::BlacklistState blacklist_state_;
397
398 bool install_wait_for_idle_;
399
400 // Sequenced task runner where file I/O operations will be performed. 402 // Sequenced task runner where file I/O operations will be performed.
401 scoped_refptr<base::SequencedTaskRunner> installer_task_runner_; 403 scoped_refptr<base::SequencedTaskRunner> installer_task_runner_;
402 404
403 // Used to show the install dialog. 405 // Used to show the install dialog.
404 ExtensionInstallPrompt::ShowDialogCallback show_dialog_callback_; 406 ExtensionInstallPrompt::ShowDialogCallback show_dialog_callback_;
405 407
406 // Whether the update is initiated by the user from the extension settings 408 // Whether the update is initiated by the user from the extension settings
407 // page. 409 // page.
408 bool update_from_settings_page_; 410 bool update_from_settings_page_;
409 411
410 // True if an ephemeral app is being installed. 412 // The flags for ExtensionService::OnExtensionInstalled.
411 bool is_ephemeral_; 413 int install_flags_;
412 414
413 // Gives access to common methods and data of an extension installer. 415 // Gives access to common methods and data of an extension installer.
414 ExtensionInstaller installer_; 416 ExtensionInstaller installer_;
415 417
416 DISALLOW_COPY_AND_ASSIGN(CrxInstaller); 418 DISALLOW_COPY_AND_ASSIGN(CrxInstaller);
417 }; 419 };
418 420
419 } // namespace extensions 421 } // namespace extensions
420 422
421 #endif // CHROME_BROWSER_EXTENSIONS_CRX_INSTALLER_H_ 423 #endif // CHROME_BROWSER_EXTENSIONS_CRX_INSTALLER_H_
OLDNEW
« no previous file with comments | « chrome/browser/extensions/chrome_app_sorting_unittest.cc ('k') | chrome/browser/extensions/crx_installer.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698