mirror of
https://github.com/eclipse/paho.mqtt.cpp.git
synced 2025-05-09 03:11:23 +08:00
Client always created with v5 (universal) persistence format
This commit is contained in:
parent
90eb5275a9
commit
a588b29bc4
@ -13,7 +13,7 @@
|
||||
//
|
||||
|
||||
/*******************************************************************************
|
||||
* Copyright (c) 2013-2023 Frank Pagliughi <fpagliughi@mindspring.com>
|
||||
* Copyright (c) 2013-2024 Frank Pagliughi <fpagliughi@mindspring.com>
|
||||
*
|
||||
* All rights reserved. This program and the accompanying materials
|
||||
* are made available under the terms of the Eclipse Public License v2.0
|
||||
@ -49,11 +49,9 @@ const int QOS = 1;
|
||||
|
||||
int main(int argc, char* argv[])
|
||||
{
|
||||
// Create a client using MQTT v5
|
||||
mqtt::create_options createOpts(MQTTVERSION_5);
|
||||
mqtt::async_client cli(SERVER_ADDRESS, CLIENT_ID, createOpts);
|
||||
mqtt::async_client cli(SERVER_ADDRESS, CLIENT_ID);
|
||||
|
||||
auto connOpts = mqtt::connect_options_builder()
|
||||
auto connOpts = mqtt::connect_options_builder::v5()
|
||||
.clean_start(false)
|
||||
.properties({
|
||||
{mqtt::property::SESSION_EXPIRY_INTERVAL, 604800}
|
||||
|
@ -15,7 +15,7 @@
|
||||
//
|
||||
|
||||
/*******************************************************************************
|
||||
* Copyright (c) 2019-2023 Frank Pagliughi <fpagliughi@mindspring.com>
|
||||
* Copyright (c) 2019-2024 Frank Pagliughi <fpagliughi@mindspring.com>
|
||||
*
|
||||
* All rights reserved. This program and the accompanying materials
|
||||
* are made available under the terms of the Eclipse Public License v2.0
|
||||
@ -59,15 +59,16 @@ int main(int argc, char* argv[])
|
||||
constexpr int QOS = 1;
|
||||
const string REQ_TOPIC_HDR { "requests/math/" };
|
||||
|
||||
// Create a client using MQTT v5
|
||||
mqtt::create_options createOpts(MQTTVERSION_5);
|
||||
mqtt::async_client cli(SERVER_ADDRESS, "", createOpts);
|
||||
// Create a client
|
||||
mqtt::async_client cli(SERVER_ADDRESS, "");
|
||||
|
||||
cli.start_consuming();
|
||||
|
||||
try {
|
||||
cout << "Connecting..." << flush;
|
||||
mqtt::token_ptr tok = cli.connect(); //connOpts);
|
||||
auto connOpts = mqtt::connect_options::v5();
|
||||
|
||||
mqtt::token_ptr tok = cli.connect(connOpts);
|
||||
auto connRsp = tok->get_connect_response();
|
||||
cout << "OK (" << connRsp.get_server_uri() << ")" << endl;
|
||||
|
||||
|
@ -51,7 +51,7 @@ async_client::async_client(const string& serverURI, const string& clientId,
|
||||
: serverURI_(serverURI), clientId_(clientId),
|
||||
mqttVersion_(MQTTVERSION_DEFAULT), userCallback_(nullptr)
|
||||
{
|
||||
create_options opts(MQTTVERSION_DEFAULT, maxBufferedMessages);
|
||||
create_options opts(MQTTVERSION_5, maxBufferedMessages);
|
||||
|
||||
int rc = MQTTAsync_createWithOptions(&cli_, serverURI.c_str(), clientId.c_str(),
|
||||
MQTTCLIENT_PERSISTENCE_DEFAULT,
|
||||
@ -76,10 +76,13 @@ async_client::async_client(const string& serverURI, const string& clientId,
|
||||
: serverURI_(serverURI), clientId_(clientId),
|
||||
mqttVersion_(opts.opts_.MQTTVersion), userCallback_(nullptr)
|
||||
{
|
||||
create_options v5opts { opts };
|
||||
v5opts.set_mqtt_version(MQTTVERSION_5);
|
||||
|
||||
int rc = MQTTAsync_createWithOptions(&cli_, serverURI.c_str(), clientId.c_str(),
|
||||
MQTTCLIENT_PERSISTENCE_DEFAULT,
|
||||
const_cast<char*>(persistDir.c_str()),
|
||||
const_cast<MQTTAsync_createOptions*>(&opts.opts_));
|
||||
&v5opts.opts_);
|
||||
if (rc != 0)
|
||||
throw exception(rc);
|
||||
}
|
||||
@ -92,10 +95,13 @@ async_client::async_client(const string& serverURI, const string& clientId,
|
||||
{
|
||||
int rc = MQTTASYNC_SUCCESS;
|
||||
|
||||
create_options v5opts { opts };
|
||||
v5opts.set_mqtt_version(MQTTVERSION_5);
|
||||
|
||||
if (!persistence) {
|
||||
rc = MQTTAsync_createWithOptions(&cli_, serverURI.c_str(), clientId.c_str(),
|
||||
MQTTCLIENT_PERSISTENCE_NONE, nullptr,
|
||||
const_cast<MQTTAsync_createOptions*>(&opts.opts_));
|
||||
&v5opts.opts_);
|
||||
}
|
||||
else {
|
||||
persist_.reset(new MQTTClient_persistence {
|
||||
@ -112,7 +118,7 @@ async_client::async_client(const string& serverURI, const string& clientId,
|
||||
|
||||
rc = MQTTAsync_createWithOptions(&cli_, serverURI.c_str(), clientId.c_str(),
|
||||
MQTTCLIENT_PERSISTENCE_USER, persist_.get(),
|
||||
const_cast<MQTTAsync_createOptions*>(&opts.opts_));
|
||||
&v5opts.opts_);
|
||||
}
|
||||
if (rc != 0)
|
||||
throw exception(rc);
|
||||
|
Loading…
x
Reference in New Issue
Block a user