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

Side by Side Diff: chrome/common/extensions/extension_permission_set.h

Issue 10065040: RefCounted types should not have public destructors, chrome/ remaining parts (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 8 years, 8 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_COMMON_EXTENSIONS_EXTENSION_PERMISSION_SET_H_ 5 #ifndef CHROME_COMMON_EXTENSIONS_EXTENSION_PERMISSION_SET_H_
6 #define CHROME_COMMON_EXTENSIONS_EXTENSION_PERMISSION_SET_H_ 6 #define CHROME_COMMON_EXTENSIONS_EXTENSION_PERMISSION_SET_H_
7 #pragma once 7 #pragma once
8 8
9 #include <map> 9 #include <map>
10 #include <set> 10 #include <set>
(...skipping 276 matching lines...) Expand 10 before | Expand all | Expand 10 after
287 // manifest, |apis| and |hosts|. 287 // manifest, |apis| and |hosts|.
288 ExtensionPermissionSet(const Extension* extension, 288 ExtensionPermissionSet(const Extension* extension,
289 const ExtensionAPIPermissionSet& apis, 289 const ExtensionAPIPermissionSet& apis,
290 const URLPatternSet& explicit_hosts); 290 const URLPatternSet& explicit_hosts);
291 291
292 // Creates a new permission set based on the specified data. 292 // Creates a new permission set based on the specified data.
293 ExtensionPermissionSet(const ExtensionAPIPermissionSet& apis, 293 ExtensionPermissionSet(const ExtensionAPIPermissionSet& apis,
294 const URLPatternSet& explicit_hosts, 294 const URLPatternSet& explicit_hosts,
295 const URLPatternSet& scriptable_hosts); 295 const URLPatternSet& scriptable_hosts);
296 296
297 ~ExtensionPermissionSet();
298
299 // Creates a new permission set equal to |set1| - |set2|, passing ownership of 297 // Creates a new permission set equal to |set1| - |set2|, passing ownership of
300 // the new set to the caller. 298 // the new set to the caller.
301 static ExtensionPermissionSet* CreateDifference( 299 static ExtensionPermissionSet* CreateDifference(
302 const ExtensionPermissionSet* set1, const ExtensionPermissionSet* set2); 300 const ExtensionPermissionSet* set1, const ExtensionPermissionSet* set2);
303 301
304 // Creates a new permission set equal to the intersection of |set1| and 302 // Creates a new permission set equal to the intersection of |set1| and
305 // |set2|, passing ownership of the new set to the caller. 303 // |set2|, passing ownership of the new set to the caller.
306 static ExtensionPermissionSet* CreateIntersection( 304 static ExtensionPermissionSet* CreateIntersection(
307 const ExtensionPermissionSet* set1, const ExtensionPermissionSet* set2); 305 const ExtensionPermissionSet* set1, const ExtensionPermissionSet* set2);
308 306
(...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after
378 376
379 const URLPatternSet& effective_hosts() const { return effective_hosts_; } 377 const URLPatternSet& effective_hosts() const { return effective_hosts_; }
380 378
381 const URLPatternSet& explicit_hosts() const { return explicit_hosts_; } 379 const URLPatternSet& explicit_hosts() const { return explicit_hosts_; }
382 380
383 const URLPatternSet& scriptable_hosts() const { return scriptable_hosts_; } 381 const URLPatternSet& scriptable_hosts() const { return scriptable_hosts_; }
384 382
385 private: 383 private:
386 FRIEND_TEST_ALL_PREFIXES(ExtensionPermissionsTest, 384 FRIEND_TEST_ALL_PREFIXES(ExtensionPermissionsTest,
387 HasLessHostPrivilegesThan); 385 HasLessHostPrivilegesThan);
386 friend class base::RefCountedThreadSafe<ExtensionPermissionSet>;
388 387
389 friend class base::RefCountedThreadSafe<ExtensionPermissionSet>; 388 ~ExtensionPermissionSet();
390 389
391 static std::set<std::string> GetDistinctHosts( 390 static std::set<std::string> GetDistinctHosts(
392 const URLPatternSet& host_patterns, 391 const URLPatternSet& host_patterns,
393 bool include_rcd, 392 bool include_rcd,
394 bool exclude_file_scheme); 393 bool exclude_file_scheme);
395 394
396 // Initializes the set based on |extension|'s manifest data. 395 // Initializes the set based on |extension|'s manifest data.
397 void InitImplicitExtensionPermissions(const Extension* extension); 396 void InitImplicitExtensionPermissions(const Extension* extension);
398 397
399 // Initializes the effective host permission based on the data in this set. 398 // Initializes the effective host permission based on the data in this set.
(...skipping 22 matching lines...) Expand all
422 421
423 // The list of hosts that can be scripted by content scripts. 422 // The list of hosts that can be scripted by content scripts.
424 // TODO(jstritar): Rename to "user_script_hosts_"? 423 // TODO(jstritar): Rename to "user_script_hosts_"?
425 URLPatternSet scriptable_hosts_; 424 URLPatternSet scriptable_hosts_;
426 425
427 // The list of hosts this effectively grants access to. 426 // The list of hosts this effectively grants access to.
428 URLPatternSet effective_hosts_; 427 URLPatternSet effective_hosts_;
429 }; 428 };
430 429
431 #endif // CHROME_COMMON_EXTENSIONS_EXTENSION_PERMISSION_SET_H_ 430 #endif // CHROME_COMMON_EXTENSIONS_EXTENSION_PERMISSION_SET_H_
OLDNEW
« no previous file with comments | « no previous file | chrome/common/json_pref_store.h » ('j') | chrome/service/cloud_print/cloud_print_proxy_backend.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698