Index: extensions/renderer/renderer_extension_registry.cc |
diff --git a/extensions/renderer/renderer_extension_registry.cc b/extensions/renderer/renderer_extension_registry.cc |
new file mode 100644 |
index 0000000000000000000000000000000000000000..274d827a0646ba7d22c8b784b915fd19538898b2 |
--- /dev/null |
+++ b/extensions/renderer/renderer_extension_registry.cc |
@@ -0,0 +1,95 @@ |
+// Copyright 2015 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. |
+ |
+#include "extensions/renderer/renderer_extension_registry.h" |
+ |
+#include "base/lazy_instance.h" |
+#include "base/logging.h" |
+ |
+namespace extensions { |
+ |
+namespace { |
+ |
+base::LazyInstance<RendererExtensionRegistry> g_renderer_extension_registry = |
+ LAZY_INSTANCE_INITIALIZER; |
+} |
not at google - send to devlin
2015/08/18 18:42:50
Standard style is to have a blank line here, and e
annekao
2015/08/18 20:21:12
Done.
|
+ |
+RendererExtensionRegistry::RendererExtensionRegistry() {} |
+ |
+RendererExtensionRegistry::~RendererExtensionRegistry() {} |
+ |
+// static |
+RendererExtensionRegistry* RendererExtensionRegistry::Get() { |
+ return g_renderer_extension_registry.Pointer(); |
+} |
+ |
+const ExtensionSet* RendererExtensionRegistry::GetMainThreadExtensionSet() |
+ const { |
not at google - send to devlin
2015/08/18 18:42:49
DCHECK(content::RenderThread::Get());
In fact, I'
annekao
2015/08/18 20:21:12
Done.
|
+ base::AutoLock lock(lock_); |
+ return &extensions_; |
+} |
+ |
+size_t RendererExtensionRegistry::size() const { |
+ base::AutoLock lock(lock_); |
+ return extensions_.size(); |
+} |
+ |
+bool RendererExtensionRegistry::is_empty() const { |
+ base::AutoLock lock(lock_); |
+ return extensions_.is_empty(); |
+} |
+ |
+bool RendererExtensionRegistry::Contains( |
+ const std::string& extension_id) const { |
+ base::AutoLock lock(lock_); |
+ return extensions_.Contains(extension_id); |
+} |
+ |
+bool RendererExtensionRegistry::Insert( |
+ const scoped_refptr<const Extension>& extension) { |
+ base::AutoLock lock(lock_); |
+ return extensions_.Insert(extension); |
+} |
+ |
+bool RendererExtensionRegistry::Remove(const std::string& id) { |
+ base::AutoLock lock(lock_); |
+ return extensions_.Remove(id); |
+} |
+ |
+std::string RendererExtensionRegistry::GetExtensionOrAppIDByURL( |
+ const GURL& url) const { |
+ base::AutoLock lock(lock_); |
+ return extensions_.GetExtensionOrAppIDByURL(url); |
+} |
+ |
+const Extension* RendererExtensionRegistry::GetExtensionOrAppByURL( |
+ const GURL& url) const { |
+ base::AutoLock lock(lock_); |
+ return extensions_.GetExtensionOrAppByURL(url); |
+} |
+ |
+const Extension* RendererExtensionRegistry::GetHostedAppByURL( |
+ const GURL& url) const { |
+ base::AutoLock lock(lock_); |
+ return extensions_.GetHostedAppByURL(url); |
+} |
+ |
+const Extension* RendererExtensionRegistry::GetByID( |
+ const std::string& id) const { |
+ base::AutoLock lock(lock_); |
+ return extensions_.GetByID(id); |
+} |
+ |
+ExtensionIdSet RendererExtensionRegistry::GetIDs() const { |
+ base::AutoLock lock(lock_); |
+ return extensions_.GetIDs(); |
+} |
+ |
+bool RendererExtensionRegistry::ExtensionBindingsAllowed( |
+ const GURL& url) const { |
+ base::AutoLock lock(lock_); |
+ return extensions_.ExtensionBindingsAllowed(url); |
+} |
+ |
+} // namespace extensions |