From 47df131e7fd7e07fa01a33e4705cffd8262021b7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E4=B9=9D?= <366193849@qq.com> Date: Thu, 1 Dec 2022 00:56:05 +0800 Subject: [PATCH] Avoid to check the type of propertyWriter parameter (#1600) Refactor code of MqttBufferWriter --- Source/MQTTnet/Formatter/MqttBufferWriter.cs | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/Source/MQTTnet/Formatter/MqttBufferWriter.cs b/Source/MQTTnet/Formatter/MqttBufferWriter.cs index 8757f12e..7e740630 100644 --- a/Source/MQTTnet/Formatter/MqttBufferWriter.cs +++ b/Source/MQTTnet/Formatter/MqttBufferWriter.cs @@ -66,7 +66,7 @@ namespace MQTTnet.Formatter public static int GetVariableByteIntegerSize(uint value) { // From RFC: Table 2.4 Size of Remaining Length field - + // 0 (0x00) to 127 (0x7F) if (value <= 127) { @@ -103,18 +103,12 @@ namespace MQTTnet.Formatter public void Write(MqttBufferWriter propertyWriter) { - if (propertyWriter is MqttBufferWriter writer) - { - WriteBinary(writer._buffer, 0, writer.Length); - return; - } - if (propertyWriter == null) { throw new ArgumentNullException(nameof(propertyWriter)); } - throw new InvalidOperationException($"{nameof(propertyWriter)} must be of type {nameof(MqttBufferWriter)}"); + WriteBinary(propertyWriter._buffer, 0, propertyWriter.Length); } public void WriteBinary(byte[] buffer, int offset, int count)