iotgateway/Plugins/Plugin/PlatformHandler/PlatformHandlerFactory.cs

27 lines
1021 B
C#
Raw Permalink Normal View History

2025-01-11 15:23:33 +00:00
using IoTGateway.Model;
using Microsoft.Extensions.Logging;
using MQTTnet.Extensions.ManagedClient;
using PluginInterface;
namespace Plugin.PlatformHandler
{
public static class PlatformHandlerFactory
{
public static IPlatformHandler CreateHandler(IoTPlatformType platform, IManagedMqttClient mqttClient, ILogger<MessageService> logger, EventHandler<RpcRequest> onExcRpc)
{
switch (platform)
{
case IoTPlatformType.ThingsBoard:
return new ThingsBoardHandler(mqttClient, logger, onExcRpc);
case IoTPlatformType.ThingsCloud:
return new ThingsCloudHandler(mqttClient, logger, onExcRpc);
2025-01-13 01:08:33 +00:00
case IoTPlatformType.ThingsPanel:
return new ThingsPanelHandler(mqttClient, logger, onExcRpc);
2025-01-11 15:23:33 +00:00
case IoTPlatformType.IoTSharp:
default:
return new IoTSharpHandler(mqttClient, logger, onExcRpc);
}
}
}
}