Non puoi selezionare più di 25 argomenti
Gli argomenti devono iniziare con una lettera o un numero, possono includere trattini ('-') e possono essere lunghi fino a 35 caratteri.
|
- using System;
-
- namespace MQTTnet.Packets
- {
- public static class MqttPacketExtensions
- {
- public static TResponsePacket CreateResponse<TResponsePacket>(this MqttBasePacket packet)
- {
- if (packet == null) throw new ArgumentNullException(nameof(packet));
-
- var responsePacket = Activator.CreateInstance<TResponsePacket>();
-
- if (responsePacket is IMqttPacketWithIdentifier responsePacketWithIdentifier)
- {
- if (!(packet is IMqttPacketWithIdentifier requestPacketWithIdentifier))
- {
- throw new InvalidOperationException("Response packet has PacketIdentifier but request packet does not.");
- }
-
- responsePacketWithIdentifier.PacketIdentifier = requestPacketWithIdentifier.PacketIdentifier;
- }
-
- return responsePacket;
- }
- }
- }
|