Chromium Code Reviews| Index: chrome/browser/extensions/installed_extension_loader.h |
| diff --git a/chrome/browser/extensions/installed_extension_loader.h b/chrome/browser/extensions/installed_extension_loader.h |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..a76189d8e4b15abfad4a14f0b5a7bb3e171cc7f0 |
| --- /dev/null |
| +++ b/chrome/browser/extensions/installed_extension_loader.h |
| @@ -0,0 +1,48 @@ |
| +// Copyright (c) 2011 The Chromium Authors. All rights reserved. |
| +// Use of this source code is governed by a BSD-style license that can be |
| +// found in the LICENSE file. |
| + |
| +#ifndef CHROME_BROWSER_EXTENSIONS_INSTALLED_EXTENSION_LOADER_H_ |
| +#define CHROME_BROWSER_EXTENSIONS_INSTALLED_EXTENSION_LOADER_H_ |
| +#pragma once |
| + |
| +#include "base/memory/ref_counted.h" |
| + |
| +class Extension; |
| +class ExtensionInfo; |
| +class ExtensionPrefs; |
| +class ExtensionService; |
| + |
| +namespace extensions { |
| + |
| +// Loads installed extensions from the prefs. |
| +class InstalledExtensionLoader |
|
Aaron Boodman
2011/10/31 22:33:25
You could get rid of the "Extension" from the clas
Yoyo Zhou
2011/11/01 21:50:57
Done.
|
| + : public base::RefCountedThreadSafe<InstalledExtensionLoader> { |
| + public: |
| + InstalledExtensionLoader(ExtensionService* extension_service, |
| + ExtensionPrefs* extension_prefs); |
| + virtual ~InstalledExtensionLoader(); |
| + |
| + ExtensionService* extension_service() { return extension_service_; } |
| + |
| + ExtensionPrefs* extension_prefs() { return extension_prefs_; } |
| + |
| + // Loads extension from prefs. |
| + void Load(const ExtensionInfo& info, bool write_to_prefs); |
| + |
| + // Loads all installed extensions (used by startup and testing code). |
| + void LoadAllExtensions(); |
| + |
| + private: |
| + // Returns the flags that should be used with Extension::Create() for an |
| + // extension that is already installed. |
| + int GetCreationFlags(const ExtensionInfo* info); |
| + |
| + ExtensionService* extension_service_; |
| + |
| + ExtensionPrefs* extension_prefs_; |
| +}; |
| + |
| +} // namespace extensions |
| + |
| +#endif // CHROME_BROWSER_EXTENSIONS_INSTALLED_EXTENSION_LOADER_H_ |