plugin-manager: allow looking plugins by name
This commit is contained in:
@@ -50,6 +50,28 @@ struct _MMPluginManagerPrivate {
|
||||
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 */
|
||||
|
||||
|
@@ -58,4 +58,8 @@ gboolean mm_plugin_manager_find_device_support_finish (MMPluginManager *self,
|
||||
GAsyncResult *result,
|
||||
GError **error);
|
||||
|
||||
/* Get plugin */
|
||||
MMPlugin *mm_plugin_manager_peek_plugin (MMPluginManager *self,
|
||||
const gchar *plugin_name);
|
||||
|
||||
#endif /* MM_PLUGIN_MANAGER_H */
|
||||
|
Reference in New Issue
Block a user