Files
softbus_daemon/src/core/plugin_system/PluginManager.cpp
2026-03-26 17:22:52 +08:00

25 lines
662 B
C++

#include "core/plugin_system/PluginManager.h"
namespace softbus::core::plugin_system
{
void PluginManager::registerProtocolPlugin(std::shared_ptr<IProtocolPlugin> plugin)
{
if (!plugin) {
return;
}
m_protocolPlugins.insert(plugin->pluginId(), std::move(plugin));
}
std::shared_ptr<IProtocolPlugin> PluginManager::selectProtocolPlugin(const QString& protocolHint) const
{
for (auto it = m_protocolPlugins.constBegin(); it != m_protocolPlugins.constEnd(); ++it) {
if (it.value() && it.value()->supports(protocolHint)) {
return it.value();
}
}
return {};
}
} // namespace softbus::core::plugin_system