OLD | NEW |
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2013 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 EXTENSIONS_COMMON_EXTENSION_H_ | 5 #ifndef EXTENSIONS_COMMON_EXTENSION_H_ |
6 #define EXTENSIONS_COMMON_EXTENSION_H_ | 6 #define EXTENSIONS_COMMON_EXTENSION_H_ |
7 | 7 |
8 #include <algorithm> | 8 #include <algorithm> |
9 #include <iosfwd> | 9 #include <iosfwd> |
10 #include <map> | 10 #include <map> |
(...skipping 333 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
344 bool is_legacy_packaged_app() const; | 344 bool is_legacy_packaged_app() const; |
345 bool is_extension() const; | 345 bool is_extension() const; |
346 bool is_shared_module() const; | 346 bool is_shared_module() const; |
347 bool is_theme() const; | 347 bool is_theme() const; |
348 | 348 |
349 bool can_be_incognito_enabled() const; | 349 bool can_be_incognito_enabled() const; |
350 | 350 |
351 void AddWebExtentPattern(const URLPattern& pattern); | 351 void AddWebExtentPattern(const URLPattern& pattern); |
352 const URLPatternSet& web_extent() const { return extent_; } | 352 const URLPatternSet& web_extent() const { return extent_; } |
353 | 353 |
354 bool HasPlatformSpecificResources() const; | |
355 bool HasResourcesForPlatform(const std::string& arch) const; | |
356 | |
357 private: | 354 private: |
358 friend class base::RefCountedThreadSafe<Extension>; | 355 friend class base::RefCountedThreadSafe<Extension>; |
359 | 356 |
360 // Chooses the extension ID for an extension based on a variety of criteria. | 357 // Chooses the extension ID for an extension based on a variety of criteria. |
361 // The chosen ID will be set in |manifest|. | 358 // The chosen ID will be set in |manifest|. |
362 static bool InitExtensionID(extensions::Manifest* manifest, | 359 static bool InitExtensionID(extensions::Manifest* manifest, |
363 const base::FilePath& path, | 360 const base::FilePath& path, |
364 const ExtensionId& explicit_id, | 361 const ExtensionId& explicit_id, |
365 int creation_flags, | 362 int creation_flags, |
366 base::string16* error); | 363 base::string16* error); |
(...skipping 109 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
476 bool display_in_new_tab_page_; | 473 bool display_in_new_tab_page_; |
477 | 474 |
478 // Whether the extension has host permissions or user script patterns that | 475 // Whether the extension has host permissions or user script patterns that |
479 // imply access to file:/// scheme URLs (the user may not have actually | 476 // imply access to file:/// scheme URLs (the user may not have actually |
480 // granted it that access). | 477 // granted it that access). |
481 bool wants_file_access_; | 478 bool wants_file_access_; |
482 | 479 |
483 // The flags that were passed to InitFromValue. | 480 // The flags that were passed to InitFromValue. |
484 int creation_flags_; | 481 int creation_flags_; |
485 | 482 |
486 // The set of archs for which platform-specific resources are present in | |
487 // this extension installation. | |
488 std::set<std::string> platform_specific_resource_archs_; | |
489 | |
490 DISALLOW_COPY_AND_ASSIGN(Extension); | 483 DISALLOW_COPY_AND_ASSIGN(Extension); |
491 }; | 484 }; |
492 | 485 |
493 typedef std::vector<scoped_refptr<const Extension> > ExtensionList; | 486 typedef std::vector<scoped_refptr<const Extension> > ExtensionList; |
494 typedef std::set<ExtensionId> ExtensionIdSet; | 487 typedef std::set<ExtensionId> ExtensionIdSet; |
495 typedef std::vector<ExtensionId> ExtensionIdList; | 488 typedef std::vector<ExtensionId> ExtensionIdList; |
496 | 489 |
497 // Handy struct to pass core extension info around. | 490 // Handy struct to pass core extension info around. |
498 struct ExtensionInfo { | 491 struct ExtensionInfo { |
499 ExtensionInfo(const base::DictionaryValue* manifest, | 492 ExtensionInfo(const base::DictionaryValue* manifest, |
(...skipping 71 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
571 | 564 |
572 UpdatedExtensionPermissionsInfo( | 565 UpdatedExtensionPermissionsInfo( |
573 const Extension* extension, | 566 const Extension* extension, |
574 const PermissionSet* permissions, | 567 const PermissionSet* permissions, |
575 Reason reason); | 568 Reason reason); |
576 }; | 569 }; |
577 | 570 |
578 } // namespace extensions | 571 } // namespace extensions |
579 | 572 |
580 #endif // EXTENSIONS_COMMON_EXTENSION_H_ | 573 #endif // EXTENSIONS_COMMON_EXTENSION_H_ |
OLD | NEW |