Index: chrome/common/extensions/api/i18n/default_locale_handler.cc |
diff --git a/chrome/common/extensions/api/i18n/default_locale_handler.cc b/chrome/common/extensions/api/i18n/default_locale_handler.cc |
deleted file mode 100644 |
index 549c780628c5befe84a1e105427dc9047525a3e4..0000000000000000000000000000000000000000 |
--- a/chrome/common/extensions/api/i18n/default_locale_handler.cc |
+++ /dev/null |
@@ -1,119 +0,0 @@ |
-// Copyright (c) 2013 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/common/extensions/api/i18n/default_locale_handler.h" |
- |
-#include "base/files/file_enumerator.h" |
-#include "base/files/file_util.h" |
-#include "base/memory/scoped_ptr.h" |
-#include "base/strings/string_util.h" |
-#include "base/strings/stringprintf.h" |
-#include "base/strings/utf_string_conversions.h" |
-#include "base/values.h" |
-#include "extensions/common/constants.h" |
-#include "extensions/common/extension_l10n_util.h" |
-#include "extensions/common/manifest.h" |
-#include "extensions/common/manifest_constants.h" |
-#include "grit/extensions_strings.h" |
-#include "ui/base/l10n/l10n_util.h" |
- |
-namespace extensions { |
- |
-namespace keys = manifest_keys; |
-namespace errors = manifest_errors; |
- |
-// static |
-const std::string& LocaleInfo::GetDefaultLocale(const Extension* extension) { |
- LocaleInfo* info = static_cast<LocaleInfo*>( |
- extension->GetManifestData(keys::kDefaultLocale)); |
- return info ? info->default_locale : base::EmptyString(); |
-} |
- |
-DefaultLocaleHandler::DefaultLocaleHandler() { |
-} |
- |
-DefaultLocaleHandler::~DefaultLocaleHandler() { |
-} |
- |
-bool DefaultLocaleHandler::Parse(Extension* extension, base::string16* error) { |
- scoped_ptr<LocaleInfo> info(new LocaleInfo); |
- if (!extension->manifest()->GetString(keys::kDefaultLocale, |
- &info->default_locale) || |
- !l10n_util::IsValidLocaleSyntax(info->default_locale)) { |
- *error = base::ASCIIToUTF16(manifest_errors::kInvalidDefaultLocale); |
- return false; |
- } |
- extension->SetManifestData(keys::kDefaultLocale, info.release()); |
- return true; |
-} |
- |
-bool DefaultLocaleHandler::Validate( |
- const Extension* extension, |
- std::string* error, |
- std::vector<InstallWarning>* warnings) const { |
- // default_locale and _locales have to be both present or both missing. |
- const base::FilePath path = extension->path().Append(kLocaleFolder); |
- bool path_exists = base::PathExists(path); |
- std::string default_locale = |
- extensions::LocaleInfo::GetDefaultLocale(extension); |
- |
- // If both default locale and _locales folder are empty, skip verification. |
- if (default_locale.empty() && !path_exists) |
- return true; |
- |
- if (default_locale.empty() && path_exists) { |
- *error = l10n_util::GetStringUTF8( |
- IDS_EXTENSION_LOCALES_NO_DEFAULT_LOCALE_SPECIFIED); |
- return false; |
- } else if (!default_locale.empty() && !path_exists) { |
- *error = errors::kLocalesTreeMissing; |
- return false; |
- } |
- |
- // Treat all folders under _locales as valid locales. |
- base::FileEnumerator locales(path, false, base::FileEnumerator::DIRECTORIES); |
- |
- std::set<std::string> all_locales; |
- extension_l10n_util::GetAllLocales(&all_locales); |
- const base::FilePath default_locale_path = path.AppendASCII(default_locale); |
- bool has_default_locale_message_file = false; |
- |
- base::FilePath locale_path; |
- while (!(locale_path = locales.Next()).empty()) { |
- if (extension_l10n_util::ShouldSkipValidation(path, locale_path, |
- all_locales)) |
- continue; |
- |
- base::FilePath messages_path = locale_path.Append(kMessagesFilename); |
- |
- if (!base::PathExists(messages_path)) { |
- *error = base::StringPrintf( |
- "%s %s", errors::kLocalesMessagesFileMissing, |
- base::UTF16ToUTF8(messages_path.LossyDisplayName()).c_str()); |
- return false; |
- } |
- |
- if (locale_path == default_locale_path) |
- has_default_locale_message_file = true; |
- } |
- |
- // Only message file for default locale has to exist. |
- if (!has_default_locale_message_file) { |
- *error = errors::kLocalesNoDefaultMessages; |
- return false; |
- } |
- |
- return true; |
-} |
- |
-bool DefaultLocaleHandler::AlwaysValidateForType(Manifest::Type type) const { |
- // Required to validate _locales directory; see Validate. |
- return true; |
-} |
- |
-const std::vector<std::string> DefaultLocaleHandler::Keys() const { |
- return SingleKey(keys::kDefaultLocale); |
-} |
- |
-} // namespace extensions |