mirror of
https://github.com/dotnet/MQTTnet.git
synced 2026-10-16 17:23:04 +08:00
28 lines
904 B
C#
28 lines
904 B
C#
using System;
|
|
using MQTTnet.Packets;
|
|
using MQTTnet.Server.Internal;
|
|
|
|
namespace MQTTnet.Formatter
|
|
{
|
|
public sealed class MqttSubAckPacketFactory
|
|
{
|
|
public MqttSubAckPacket Create(MqttSubscribePacket subscribePacket, SubscribeResult subscribeResult)
|
|
{
|
|
if (subscribePacket == null) throw new ArgumentNullException(nameof(subscribePacket));
|
|
if (subscribeResult == null) throw new ArgumentNullException(nameof(subscribeResult));
|
|
|
|
var subAckPacket = new MqttSubAckPacket
|
|
{
|
|
PacketIdentifier = subscribePacket.PacketIdentifier
|
|
};
|
|
|
|
// MQTTv3.1.1
|
|
subAckPacket.ReturnCodes.AddRange(subscribeResult.ReturnCodes);
|
|
|
|
// MQTTv5.0.0
|
|
subAckPacket.ReasonCodes.AddRange(subscribeResult.ReasonCodes);
|
|
|
|
return subAckPacket;
|
|
}
|
|
}
|
|
} |