Moved ExternalExtensionLoaders/Providers into extensions namespace

Moved ExternalExtensionLoader, ExternalExtensionProviderImpl,
ExternalExtensionProviderInterface, ExternalRegistryExtensionLoader,
ExternalPrefsExtensionLoader, and ExternalPolicyExtensionLoader into extensions
namespace. Renamed appropriately.

BUG=136873, 117261


Review URL: https://chromiumcodereview.appspot.com/10692168

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@146847 0039d316-1c4b-4281-b951-d872f2087c98
diff --git a/chrome/browser/extensions/external_loader.cc b/chrome/browser/extensions/external_loader.cc
new file mode 100644
index 0000000..3bbd6609
--- /dev/null
+++ b/chrome/browser/extensions/external_loader.cc
@@ -0,0 +1,49 @@
+// Copyright (c) 2012 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 "chrome/browser/extensions/external_loader.h"
+
+#include "base/logging.h"
+#include "base/values.h"
+#include "chrome/browser/extensions/external_provider_impl.h"
+#include "content/public/browser/browser_thread.h"
+
+using content::BrowserThread;
+
+namespace extensions {
+
+ExternalLoader::ExternalLoader()
+    : owner_(NULL),
+      running_(false) {
+}
+
+void ExternalLoader::Init(ExternalProviderImpl* owner) {
+  CHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
+  owner_ = owner;
+}
+
+const FilePath ExternalLoader::GetBaseCrxFilePath() {
+  CHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
+
+  // By default, relative paths are not supported.
+  // Subclasses that wish to support them should override this method.
+  return FilePath();
+}
+
+void ExternalLoader::OwnerShutdown() {
+  CHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
+  owner_ = NULL;
+}
+
+ExternalLoader::~ExternalLoader() {}
+
+void ExternalLoader::LoadFinished() {
+  CHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
+  running_ = false;
+  if (owner_) {
+    owner_->SetPrefs(prefs_.release());
+  }
+}
+
+}  // namespace extensions