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

Side by Side Diff: chrome/browser/plugins/plugin_finder.cc

Issue 104493005: Update some uses of Value in chrome/browser to use the base:: namespace. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: fix Created 7 years 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 #include "chrome/browser/plugins/plugin_finder.h" 5 #include "chrome/browser/plugins/plugin_finder.h"
6 6
7 #include "base/bind.h" 7 #include "base/bind.h"
8 #include "base/json/json_reader.h" 8 #include "base/json/json_reader.h"
9 #include "base/message_loop/message_loop.h" 9 #include "base/message_loop/message_loop.h"
10 #include "base/prefs/pref_registry_simple.h" 10 #include "base/prefs/pref_registry_simple.h"
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after
46 // Gets the plug-in group name as the plug-in name if it is not empty or 46 // Gets the plug-in group name as the plug-in name if it is not empty or
47 // the filename without extension if the name is empty. 47 // the filename without extension if the name is empty.
48 static base::string16 GetGroupName(const content::WebPluginInfo& plugin) { 48 static base::string16 GetGroupName(const content::WebPluginInfo& plugin) {
49 if (!plugin.name.empty()) 49 if (!plugin.name.empty())
50 return plugin.name; 50 return plugin.name;
51 51
52 return plugin.path.BaseName().RemoveExtension().AsUTF16Unsafe(); 52 return plugin.path.BaseName().RemoveExtension().AsUTF16Unsafe();
53 } 53 }
54 54
55 void LoadMimeTypes(bool matching_mime_types, 55 void LoadMimeTypes(bool matching_mime_types,
56 const DictionaryValue* plugin_dict, 56 const base::DictionaryValue* plugin_dict,
57 PluginMetadata* plugin) { 57 PluginMetadata* plugin) {
58 const ListValue* mime_types = NULL; 58 const base::ListValue* mime_types = NULL;
59 std::string list_key = 59 std::string list_key =
60 matching_mime_types ? "matching_mime_types" : "mime_types"; 60 matching_mime_types ? "matching_mime_types" : "mime_types";
61 if (!plugin_dict->GetList(list_key, &mime_types)) 61 if (!plugin_dict->GetList(list_key, &mime_types))
62 return; 62 return;
63 63
64 bool success = false; 64 bool success = false;
65 for (ListValue::const_iterator mime_type_it = mime_types->begin(); 65 for (base::ListValue::const_iterator mime_type_it = mime_types->begin();
66 mime_type_it != mime_types->end(); ++mime_type_it) { 66 mime_type_it != mime_types->end(); ++mime_type_it) {
67 std::string mime_type_str; 67 std::string mime_type_str;
68 success = (*mime_type_it)->GetAsString(&mime_type_str); 68 success = (*mime_type_it)->GetAsString(&mime_type_str);
69 DCHECK(success); 69 DCHECK(success);
70 if (matching_mime_types) { 70 if (matching_mime_types) {
71 plugin->AddMatchingMimeType(mime_type_str); 71 plugin->AddMatchingMimeType(mime_type_str);
72 } else { 72 } else {
73 plugin->AddMimeType(mime_type_str); 73 plugin->AddMimeType(mime_type_str);
74 } 74 }
75 } 75 }
76 } 76 }
77 77
78 PluginMetadata* CreatePluginMetadata( 78 PluginMetadata* CreatePluginMetadata(
79 const std::string& identifier, 79 const std::string& identifier,
80 const DictionaryValue* plugin_dict) { 80 const base::DictionaryValue* plugin_dict) {
81 std::string url; 81 std::string url;
82 bool success = plugin_dict->GetString("url", &url); 82 bool success = plugin_dict->GetString("url", &url);
83 std::string help_url; 83 std::string help_url;
84 plugin_dict->GetString("help_url", &help_url); 84 plugin_dict->GetString("help_url", &help_url);
85 base::string16 name; 85 base::string16 name;
86 success = plugin_dict->GetString("name", &name); 86 success = plugin_dict->GetString("name", &name);
87 DCHECK(success); 87 DCHECK(success);
88 bool display_url = false; 88 bool display_url = false;
89 plugin_dict->GetBoolean("displayurl", &display_url); 89 plugin_dict->GetBoolean("displayurl", &display_url);
90 base::string16 group_name_matcher; 90 base::string16 group_name_matcher;
91 success = plugin_dict->GetString("group_name_matcher", &group_name_matcher); 91 success = plugin_dict->GetString("group_name_matcher", &group_name_matcher);
92 DCHECK(success); 92 DCHECK(success);
93 std::string language_str; 93 std::string language_str;
94 plugin_dict->GetString("lang", &language_str); 94 plugin_dict->GetString("lang", &language_str);
95 95
96 PluginMetadata* plugin = new PluginMetadata(identifier, 96 PluginMetadata* plugin = new PluginMetadata(identifier,
97 name, 97 name,
98 display_url, 98 display_url,
99 GURL(url), 99 GURL(url),
100 GURL(help_url), 100 GURL(help_url),
101 group_name_matcher, 101 group_name_matcher,
102 language_str); 102 language_str);
103 const ListValue* versions = NULL; 103 const base::ListValue* versions = NULL;
104 if (plugin_dict->GetList("versions", &versions)) { 104 if (plugin_dict->GetList("versions", &versions)) {
105 for (ListValue::const_iterator it = versions->begin(); 105 for (base::ListValue::const_iterator it = versions->begin();
106 it != versions->end(); ++it) { 106 it != versions->end(); ++it) {
107 DictionaryValue* version_dict = NULL; 107 base::DictionaryValue* version_dict = NULL;
108 if (!(*it)->GetAsDictionary(&version_dict)) { 108 if (!(*it)->GetAsDictionary(&version_dict)) {
109 NOTREACHED(); 109 NOTREACHED();
110 continue; 110 continue;
111 } 111 }
112 std::string version; 112 std::string version;
113 success = version_dict->GetString("version", &version); 113 success = version_dict->GetString("version", &version);
114 DCHECK(success); 114 DCHECK(success);
115 std::string status_str; 115 std::string status_str;
116 success = version_dict->GetString("status", &status_str); 116 success = version_dict->GetString("status", &status_str);
117 DCHECK(success); 117 DCHECK(success);
(...skipping 25 matching lines...) Expand all
143 } 143 }
144 144
145 PluginFinder::PluginFinder() : version_(-1) { 145 PluginFinder::PluginFinder() : version_(-1) {
146 DCHECK(content::BrowserThread::CurrentlyOn(content::BrowserThread::UI)); 146 DCHECK(content::BrowserThread::CurrentlyOn(content::BrowserThread::UI));
147 } 147 }
148 148
149 void PluginFinder::Init() { 149 void PluginFinder::Init() {
150 DCHECK(content::BrowserThread::CurrentlyOn(content::BrowserThread::UI)); 150 DCHECK(content::BrowserThread::CurrentlyOn(content::BrowserThread::UI));
151 // Load the built-in plug-in list first. If we have a newer version stored 151 // Load the built-in plug-in list first. If we have a newer version stored
152 // locally or download one, we will replace this one with it. 152 // locally or download one, we will replace this one with it.
153 scoped_ptr<DictionaryValue> plugin_list(LoadBuiltInPluginList()); 153 scoped_ptr<base::DictionaryValue> plugin_list(LoadBuiltInPluginList());
154 DCHECK(plugin_list); 154 DCHECK(plugin_list);
155 ReinitializePlugins(plugin_list.get()); 155 ReinitializePlugins(plugin_list.get());
156 } 156 }
157 157
158 // static 158 // static
159 DictionaryValue* PluginFinder::LoadBuiltInPluginList() { 159 base::DictionaryValue* PluginFinder::LoadBuiltInPluginList() {
160 base::StringPiece json_resource( 160 base::StringPiece json_resource(
161 ResourceBundle::GetSharedInstance().GetRawDataResource( 161 ResourceBundle::GetSharedInstance().GetRawDataResource(
162 IDR_PLUGIN_DB_JSON)); 162 IDR_PLUGIN_DB_JSON));
163 std::string error_str; 163 std::string error_str;
164 scoped_ptr<base::Value> value(base::JSONReader::ReadAndReturnError( 164 scoped_ptr<base::Value> value(base::JSONReader::ReadAndReturnError(
165 json_resource, 165 json_resource,
166 base::JSON_PARSE_RFC, 166 base::JSON_PARSE_RFC,
167 NULL, 167 NULL,
168 &error_str)); 168 &error_str));
169 if (!value.get()) { 169 if (!value.get()) {
(...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after
236 const char kVersionKey[] = "x-version"; 236 const char kVersionKey[] = "x-version";
237 plugin_list->GetInteger(kVersionKey, &version); 237 plugin_list->GetInteger(kVersionKey, &version);
238 if (version <= version_) 238 if (version <= version_)
239 return; 239 return;
240 240
241 version_ = version; 241 version_ = version;
242 242
243 STLDeleteValues(&identifier_plugin_); 243 STLDeleteValues(&identifier_plugin_);
244 identifier_plugin_.clear(); 244 identifier_plugin_.clear();
245 245
246 for (DictionaryValue::Iterator plugin_it(*plugin_list); 246 for (base::DictionaryValue::Iterator plugin_it(*plugin_list);
247 !plugin_it.IsAtEnd(); plugin_it.Advance()) { 247 !plugin_it.IsAtEnd(); plugin_it.Advance()) {
248 const DictionaryValue* plugin = NULL; 248 const base::DictionaryValue* plugin = NULL;
249 const std::string& identifier = plugin_it.key(); 249 const std::string& identifier = plugin_it.key();
250 if (plugin_list->GetDictionaryWithoutPathExpansion(identifier, &plugin)) { 250 if (plugin_list->GetDictionaryWithoutPathExpansion(identifier, &plugin)) {
251 DCHECK(!identifier_plugin_[identifier]); 251 DCHECK(!identifier_plugin_[identifier]);
252 identifier_plugin_[identifier] = CreatePluginMetadata(identifier, plugin); 252 identifier_plugin_[identifier] = CreatePluginMetadata(identifier, plugin);
253 253
254 #if defined(ENABLE_PLUGIN_INSTALLATION) 254 #if defined(ENABLE_PLUGIN_INSTALLATION)
255 if (installers_.find(identifier) == installers_.end()) 255 if (installers_.find(identifier) == installers_.end())
256 installers_[identifier] = new PluginInstaller(); 256 installers_[identifier] = new PluginInstaller();
257 #endif 257 #endif
258 } 258 }
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after
295 metadata->AddMatchingMimeType(plugin.mime_types[i].mime_type); 295 metadata->AddMatchingMimeType(plugin.mime_types[i].mime_type);
296 296
297 DCHECK(metadata->MatchesPlugin(plugin)); 297 DCHECK(metadata->MatchesPlugin(plugin));
298 if (identifier_plugin_.find(identifier) != identifier_plugin_.end()) 298 if (identifier_plugin_.find(identifier) != identifier_plugin_.end())
299 identifier = GetLongIdentifier(plugin); 299 identifier = GetLongIdentifier(plugin);
300 300
301 DCHECK(identifier_plugin_.find(identifier) == identifier_plugin_.end()); 301 DCHECK(identifier_plugin_.find(identifier) == identifier_plugin_.end());
302 identifier_plugin_[identifier] = metadata; 302 identifier_plugin_[identifier] = metadata;
303 return metadata->Clone(); 303 return metadata->Clone();
304 } 304 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698