AWS IoT Device SDK C++ v2: secure_tunneling/include/aws/iotsecuretunneling/IotSecureTunnelingClient.h Source File

AWS IoT Device SDK C++ v2 1.14.0 AWS IoT Device SDK C++ v2

IotSecureTunnelingClient.h
Go to the documentation of this file.
1#pragma once
2/* Copyright 2010-2019 Amazon.com, Inc. or its affiliates. All Rights Reserved.
3*
4* Licensed under the Apache License, Version 2.0 (the "License").
5* You may not use this file except in compliance with the License.
6* A copy of the License is located at
7*
8* http://aws.amazon.com/apache2.0
9*
10* or in the "license" file accompanying this file. This file is distributed
11* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
12* express or implied. See the License for the specific language governing
13* permissions and limitations under the License.
14
15* This file is generated
16*/
17#include <aws/iotsecuretunneling/Exports.h>
18
19#include <aws/crt/StlAllocator.h>
20#include <aws/crt/Types.h>
21
22#include <aws/crt/mqtt/MqttClient.h>
23
24namespace Aws
25{
26 namespace Iotsecuretunneling
27 {
28
29 class SecureTunnelingNotifyResponse;
30 class SubscribeToTunnelsNotifyRequest;
31
32 using OnSubscribeComplete = std::function<void(int ioErr)>;
33 using OnPublishComplete = std::function<void(int ioErr)>;
34
35 using OnSubscribeToTunnelsNotifyResponse =
36 std::function<void(Aws::Iotsecuretunneling::SecureTunnelingNotifyResponse *, int ioErr)>;
37
38 class AWS_IOTSECURETUNNELING_API IotSecureTunnelingClient final
39 {
40 public:
41 IotSecureTunnelingClient(const std::shared_ptr<Aws::Crt::Mqtt::MqttConnection> &connection);
42
43 operator bool() const noexcept;
44 int GetLastError() const noexcept;
45
46 bool SubscribeToTunnelsNotify(
47 const Aws::Iotsecuretunneling::SubscribeToTunnelsNotifyRequest &request,
48 Aws::Crt::Mqtt::QOS qos,
49 const OnSubscribeToTunnelsNotifyResponse &handler,
50 const OnSubscribeComplete &onSubAck);
51
52 private:
53 std::shared_ptr<Aws::Crt::Mqtt::MqttConnection> m_connection;
54 };
55
56 } // namespace Iotsecuretunneling
57
58} // namespace Aws
StlAllocator.h
Types.h
Aws::Iotsecuretunneling::IotSecureTunnelingClient
Definition: IotSecureTunnelingClient.h:39
Aws::Iotsecuretunneling::SecureTunnelingNotifyResponse
Definition: SecureTunnelingNotifyResponse.h:29
Aws::Iotsecuretunneling::SubscribeToTunnelsNotifyRequest
Definition: SubscribeToTunnelsNotifyRequest.h:29
MqttClient.h
Aws::Crt::Mqtt::QOS
aws_mqtt_qos QOS
Definition: Types.h:42
Aws::Iotsecuretunneling::OnSubscribeToTunnelsNotifyResponse
std::function< void(Aws::Iotsecuretunneling::SecureTunnelingNotifyResponse *, int ioErr)> OnSubscribeToTunnelsNotifyResponse
Definition: IotSecureTunnelingClient.h:36
Aws::Iotsecuretunneling::OnPublishComplete
std::function< void(int ioErr)> OnPublishComplete
Definition: IotSecureTunnelingClient.h:33
Aws::Iotsecuretunneling::OnSubscribeComplete
std::function< void(int ioErr)> OnSubscribeComplete
Definition: IotSecureTunnelingClient.h:32
Aws
Definition: Api.h:17
Exports.h
AWS_IOTSECURETUNNELING_API
#define AWS_IOTSECURETUNNELING_API
Definition: Exports.h:30