blob: 0eb890fef05a115eace42637680a3d6a12f57729 [file] [log] [blame]
/*
* Copyright (C) 2008 Kevin Ollivier <kevino@theolliviers.com> All Rights Reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY APPLE INC. ``AS IS'' AND ANY
* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
* OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
#include "config.h"
#include "PluginData.h"
#include "NotImplemented.h"
#include "PluginDatabase.h"
#include "PluginPackage.h"
namespace WebCore {
void PluginData::initPlugins(const Page*)
{
PluginDatabase* db = PluginDatabase::installedPlugins();
const Vector<PluginPackage*> &plugins = db->plugins();
for (unsigned int i = 0; i < plugins.size(); ++i) {
PluginInfo info;
PluginPackage* package = plugins[i];
info.name = package->name();
info.file = package->fileName();
info.desc = package->description();
const MIMEToDescriptionsMap& mimeToDescriptions = package->mimeToDescriptions();
MIMEToDescriptionsMap::const_iterator end = mimeToDescriptions.end();
for (MIMEToDescriptionsMap::const_iterator it = mimeToDescriptions.begin(); it != end; ++it) {
MimeClassInfo mime;
mime.type = it->first;
mime.desc = it->second;
mime.extensions = package->mimeToExtensions().get(mime.type);
info.mimes.append(mime);
}
m_plugins.append(info);
}
}
void PluginData::refresh()
{
notImplemented();
}
};