using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Paho.MqttDotnet
{
///
/// 表示Mqtt连接选项
///
unsafe class MqttConnectOptions : MqttOptionsBase
{
///
/// 空指针
///
private static readonly void* NULL = (void*)0;
///
/// 执行成功
///
/// 上下文
/// 数据
protected override void MQTTAsync_onSuccess(IntPtr context, void* successData)
{
var code = ConnectError.ConnectionAccepted;
base.RaiseOnCompleted(context, code);
}
///
/// 执行失败
///
/// 上下文
/// 数据
protected override void MQTTAsync_onFailure(IntPtr context, MQTTAsync_failureData* failureData)
{
if (failureData == NULL)
{
var ex = new MqttException(MqttError.Failure);
base.RaiseOnException(context, ex);
}
else if (failureData->code < 0)
{
var ex = new MqttException(failureData->code);
base.RaiseOnException(context, ex);
}
else
{
var code = (ConnectError)failureData->code;
base.RaiseOnCompleted(context, code);
}
}
}
}