plugin-manager: allow looking plugins by name

This commit is contained in:
Aleksander Morgado
2013-11-22 23:40:05 +01:00
parent 9641d27518
commit abb88a5e0a
2 changed files with 26 additions and 0 deletions

View File

@@ -50,6 +50,28 @@ struct _MMPluginManagerPrivate {
MMPlugin *generic; MMPlugin *generic;
}; };
/*****************************************************************************/
/* Look for plugin */
MMPlugin *
mm_plugin_manager_peek_plugin (MMPluginManager *self,
const gchar *plugin_name)
{
GList *l;
if (self->priv->generic && g_str_equal (plugin_name, mm_plugin_get_name (self->priv->generic)))
return self->priv->generic;
for (l = self->priv->plugins; l; l = g_list_next (l)) {
MMPlugin *plugin = MM_PLUGIN (l->data);
if (g_str_equal (plugin_name, mm_plugin_get_name (plugin)))
return plugin;
}
return NULL;
}
/*****************************************************************************/ /*****************************************************************************/
/* Find device support */ /* Find device support */

View File

@@ -58,4 +58,8 @@ gboolean mm_plugin_manager_find_device_support_finish (MMPluginManager *self,
GAsyncResult *result, GAsyncResult *result,
GError **error); GError **error);
/* Get plugin */
MMPlugin *mm_plugin_manager_peek_plugin (MMPluginManager *self,
const gchar *plugin_name);
#endif /* MM_PLUGIN_MANAGER_H */ #endif /* MM_PLUGIN_MANAGER_H */