diff options
Diffstat (limited to 'chromium/components/translate/common/translate_util.cc')
-rw-r--r-- | chromium/components/translate/common/translate_util.cc | 125 |
1 files changed, 0 insertions, 125 deletions
diff --git a/chromium/components/translate/common/translate_util.cc b/chromium/components/translate/common/translate_util.cc deleted file mode 100644 index 0ed624de7d9..00000000000 --- a/chromium/components/translate/common/translate_util.cc +++ /dev/null @@ -1,125 +0,0 @@ -// Copyright 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 "components/translate/common/translate_util.h" - -#include "base/basictypes.h" -#include "base/command_line.h" -#include "base/logging.h" -#include "base/strings/string_split.h" -#include "components/translate/common/translate_switches.h" -#include "url/gurl.h" - -namespace { - -// Split the |language| into two parts. For example, if |language| is 'en-US', -// this will be split into the main part 'en' and the tail part '-US'. -void SplitIntoMainAndTail(const std::string& language, - std::string* main_part, - std::string* tail_part) { - DCHECK(main_part); - DCHECK(tail_part); - - std::vector<std::string> chunks; - base::SplitString(language, '-', &chunks); - if (chunks.size() == 0u) - return; - - *main_part = chunks[0]; - *tail_part = language.substr(main_part->size()); -} - -} // namespace - -namespace translate { - -struct LanguageCodePair { - // Code used in supporting list of Translate. - const char* const translate_language; - - // Code used in Chrome internal. - const char* const chrome_language; -}; - -// Some languages are treated as same languages in Translate even though they -// are different to be exact. -// -// If this table is updated, please sync this with the synonym table in -// chrome/browser/resources/options/language_options.js -const LanguageCodePair kLanguageCodeSimilitudes[] = { - {"no", "nb"}, - {"tl", "fil"}, -}; - -// Some languages have changed codes over the years and sometimes the older -// codes are used, so we must see them as synonyms. -// -// If this table is updated, please sync this with the synonym table in -// chrome/browser/resources/options/language_options.js -const LanguageCodePair kLanguageCodeSynonyms[] = { - {"iw", "he"}, - {"jw", "jv"}, -}; - -const char kSecurityOrigin[] = "https://translate.googleapis.com/"; - -void ToTranslateLanguageSynonym(std::string* language) { - for (size_t i = 0; i < arraysize(kLanguageCodeSimilitudes); ++i) { - if (*language == kLanguageCodeSimilitudes[i].chrome_language) { - *language = kLanguageCodeSimilitudes[i].translate_language; - return; - } - } - - std::string main_part, tail_part; - SplitIntoMainAndTail(*language, &main_part, &tail_part); - if (main_part.empty()) - return; - - // Apply linear search here because number of items in the list is just four. - for (size_t i = 0; i < arraysize(kLanguageCodeSynonyms); ++i) { - if (main_part == kLanguageCodeSynonyms[i].chrome_language) { - main_part = std::string(kLanguageCodeSynonyms[i].translate_language); - break; - } - } - - *language = main_part + tail_part; -} - -void ToChromeLanguageSynonym(std::string* language) { - for (size_t i = 0; i < arraysize(kLanguageCodeSimilitudes); ++i) { - if (*language == kLanguageCodeSimilitudes[i].translate_language) { - *language = kLanguageCodeSimilitudes[i].chrome_language; - return; - } - } - - std::string main_part, tail_part; - SplitIntoMainAndTail(*language, &main_part, &tail_part); - if (main_part.empty()) - return; - - // Apply liner search here because number of items in the list is just four. - for (size_t i = 0; i < arraysize(kLanguageCodeSynonyms); ++i) { - if (main_part == kLanguageCodeSynonyms[i].translate_language) { - main_part = std::string(kLanguageCodeSynonyms[i].chrome_language); - break; - } - } - - *language = main_part + tail_part; -} - -GURL GetTranslateSecurityOrigin() { - std::string security_origin(kSecurityOrigin); - CommandLine* command_line = CommandLine::ForCurrentProcess(); - if (command_line->HasSwitch(switches::kTranslateSecurityOrigin)) { - security_origin = - command_line->GetSwitchValueASCII(switches::kTranslateSecurityOrigin); - } - return GURL(security_origin); -} - -} // namespace translate |