56 const aws_mqtt5_packet_publish_view &raw_options,
129 PublishPacket &WithMessageExpiryIntervalSec(uint32_t second) noexcept;
195 bool initializeRawOptions(aws_mqtt5_packet_publish_view &raw_options) noexcept;
205 const ByteCursor &getPayload() const noexcept;
216 Mqtt5::
QOS getQOS() const noexcept;
227 bool getRetain() const noexcept;
237 const Crt::
String &getTopic() const noexcept;
264 const Crt::
Optional<uint32_t> &getMessageExpiryIntervalSec() const noexcept;
276 const Crt::
Optional<uint16_t> &getTopicAlias() const noexcept;
310 const Crt::
Vector<uint32_t> &getSubscriptionIdentifiers() const noexcept;
396 Crt::
Optional<uint32_t> m_messageExpiryIntervalSec;
406 Crt::
Optional<uint16_t> m_topicAlias;
446 Crt::
Vector<uint32_t> m_subscriptionIdentifiers;
460 ByteBuf m_correlationDataStorage;
461 Crt::
String m_responseTopicString;
462 struct aws_mqtt5_user_property *m_userPropertiesStorage;
482 const aws_mqtt5_negotiated_settings &negotiated_settings,
494 uint32_t getSessionExpiryIntervalSec()
const noexcept;
500 uint16_t getReceiveMaximumFromServer()
const noexcept;
508 uint32_t getMaximumPacketSizeBytes()
const noexcept;
513 uint32_t getMaximumPacketSizeToServer()
const noexcept;
518 uint16_t getTopicAliasMaximumToServer()
const noexcept;
523 uint16_t getTopicAliasMaximumToClient()
const noexcept;
532 uint16_t getServerKeepAliveSec()
const noexcept;
543 uint16_t getServerKeepAlive()
const noexcept;
548 bool getRetainAvailable()
const noexcept;
553 bool getWildcardSubscriptionsAvailable()
const noexcept;
558 bool getSubscriptionIdentifiersAvailable()
const noexcept;
563 bool getSharedSubscriptionsAvailable()
const noexcept;
568 bool getRejoinedSession()
const noexcept;
590 Mqtt5::
QOS m_maximumQOS;
595 uint32_t m_sessionExpiryIntervalSec;
600 uint16_t m_receiveMaximumFromServer;
605 uint32_t m_maximumPacketSizeBytes;
610 uint16_t m_topicAliasMaximumToServer;
615 uint16_t m_topicAliasMaximumToClient;
622 uint16_t m_serverKeepAliveSec;
627 bool m_retainAvailable;
632 bool m_wildcardSubscriptionsAvailable;
637 bool m_subscriptionIdentifiersAvailable;
642 bool m_sharedSubscriptionsAvailable;
647 bool m_rejoinedSession;
689 ConnectPacket &WithKeepAliveIntervalSec(uint16_t keepAliveInteralSeconds) noexcept;
742 ConnectPacket &WithSessionExpiryIntervalSec(uint32_t sessionExpiryIntervalSeconds) noexcept;
756 ConnectPacket &WithRequestResponseInformation(
bool requestResponseInformation) noexcept;
770 ConnectPacket &WithRequestProblemInformation(
bool requestProblemInformation) noexcept;
783 ConnectPacket &WithReceiveMaximum(uint16_t receiveMaximum) noexcept;
795 ConnectPacket &WithMaximumPacketSizeBytes(uint32_t maximumPacketSizeBytes) noexcept;
810 ConnectPacket &WithWillDelayIntervalSec(uint32_t willDelayIntervalSeconds) noexcept;
823 ConnectPacket &WithWill(std::shared_ptr<PublishPacket> will) noexcept;
875 uint16_t getKeepAliveIntervalSec() const noexcept;
889 const Crt::
String &getClientId() const noexcept;
923 const Crt::
Optional<uint32_t> &getSessionExpiryIntervalSec() const noexcept;
935 const Crt::
Optional<
bool> &getRequestResponseInformation() const noexcept;
947 const Crt::
Optional<
bool> &getRequestProblemInformation() const noexcept;
958 const Crt::
Optional<uint16_t> &getReceiveMaximum() const noexcept;
971 const Crt::
Optional<uint32_t> &getMaximumPacketSizeBytes() const noexcept;
982 const Crt::
Optional<uint32_t> &getMaximumPacketSizeToServer() const noexcept;
996 const Crt::
Optional<uint32_t> &getWillDelayIntervalSec() const noexcept;
1028 bool initializeRawOptions(aws_mqtt5_packet_connect_view &raw_options,
Allocator *allocator) noexcept;
1049 uint16_t m_keepAliveIntervalSec;
1088 Crt::
Optional<uint32_t> m_sessionExpiryIntervalSec;
1098 Crt::
Optional<
bool> m_requestResponseInformation;
1107 Crt::
Optional<
bool> m_requestProblemInformation;
1116 Crt::
Optional<uint16_t> m_receiveMaximum;
1125 Crt::
Optional<uint32_t> m_maximumPacketSizeBytes;
1136 Crt::
Optional<uint32_t> m_willDelayIntervalSeconds;
1158 struct aws_byte_cursor m_usernameCursor;
1159 struct aws_byte_buf m_passowrdStorage;
1160 struct aws_mqtt5_packet_publish_view m_willStorage;
1161 struct aws_mqtt5_user_property *m_userPropertiesStorage;
1162 uint8_t m_requestResponseInformationStorage;
1163 uint8_t m_requestProblemInformationStorage;
1174 const aws_mqtt5_packet_connack_view &packet,
1188 bool getSessionPresent() const noexcept;
1210 const Crt::
Optional<uint32_t> &getSessionExpiryIntervalSec() const noexcept;
1224 const Crt::
Optional<uint32_t> &getSessionExpiryInterval() const noexcept;
1236 const Crt::
Optional<uint16_t> &getReceiveMaximum() const noexcept;
1246 const Crt::
Optional<
QOS> &getMaximumQOS() const noexcept;
1257 const Crt::
Optional<
bool> &getRetainAvailable() const noexcept;
1268 const Crt::
Optional<uint32_t> &getMaximumPacketSize() const noexcept;
1279 const Crt::
Optional<
String> &getAssignedClientIdentifier() const noexcept;
1289 const Crt::
Optional<uint16_t> getTopicAliasMaximum() const noexcept;
1320 const Crt::
Optional<
bool> &getWildcardSubscriptionsAvailable() const noexcept;
1331 const Crt::
Optional<
bool> &getSubscriptionIdentifiersAvailable() const noexcept;
1342 const Crt::
Optional<
bool> &getSharedSubscriptionsAvailable() const noexcept;
1353 const Crt::
Optional<uint16_t> &getServerKeepAliveSec() const noexcept;
1365 const Crt::
Optional<uint16_t> &getServerKeepAlive() const noexcept;
1376 const Crt::
Optional<
String> &getResponseInformation() const noexcept;
1389 const Crt::
Optional<
String> &getServerReference() const noexcept;
1404 bool m_sessionPresent;
1421 Crt::
Optional<uint32_t> m_sessionExpiryIntervalSec;
1430 Crt::
Optional<uint16_t> m_receiveMaximum;
1446 Crt::
Optional<
bool> m_retainAvailable;
1455 Crt::
Optional<uint32_t> m_maximumPacketSize;
1472 Crt::
Optional<uint16_t> m_topicAliasMaximum;
1489 Crt::
Optional<
bool> m_wildcardSubscriptionsAvailable;
1498 Crt::
Optional<
bool> m_subscriptionIdentifiersAvailable;
1507 Crt::
Optional<
bool> m_sharedSubscriptionsAvailable;
1516 Crt::
Optional<uint16_t> m_serverKeepAliveSec;
1555 const aws_mqtt5_packet_disconnect_view &raw_options,
1560 bool initializeRawOptions(aws_mqtt5_packet_disconnect_view &raw_options) noexcept;
1584 DisconnectPacket &WithSessionExpiryIntervalSec(
const uint32_t sessionExpiryIntervalSeconds) noexcept;
1666 const Crt::
Optional<uint32_t> &getSessionExpiryIntervalSec() const noexcept;
1676 const Crt::
Optional<Crt::
String> &getReasonString() const noexcept;
1689 const Crt::
Optional<Crt::
String> &getServerReference() const noexcept;
1726 Crt::
Optional<uint32_t> m_sessionExpiryIntervalSec;
1757 struct aws_byte_cursor m_reasonStringCursor;
1758 struct aws_byte_cursor m_serverReferenceCursor;
1759 struct aws_mqtt5_user_property *m_userPropertiesStorage;
1770 const aws_mqtt5_packet_puback_view &packet,
1793 const Crt::
Optional<Crt::
String> &getReasonString() const noexcept;
1870 std::shared_ptr<IPacket>
getAck()
const {
return m_ack; };
1941 Subscription &WithRetainAsPublished(
bool retain) noexcept;
1969 bool initializeRawOptions(aws_mqtt5_subscription_view &raw_options)
const noexcept;
1986 Crt::
String m_topicFilter;
2012 bool m_retainAsPublished;
2079 SubscribePacket &WithSubscriptionIdentifier(uint32_t subscriptionIdentifier) noexcept;
2108 bool initializeRawOptions(aws_mqtt5_packet_subscribe_view &raw_options) noexcept;
2134 Crt::
Optional<uint32_t> m_subscriptionIdentifier;
2147 struct aws_mqtt5_subscription_view *m_subscriptionViewStorage;
2148 struct aws_mqtt5_user_property *m_userPropertiesStorage;
2159 const aws_mqtt5_packet_suback_view &packet,
2293 bool initializeRawOptions(aws_mqtt5_packet_unsubscribe_view &raw_options) noexcept;
2323 struct aws_array_list m_topicFiltersList;
2324 struct aws_mqtt5_user_property *m_userPropertiesStorage;
2335 const aws_mqtt5_packet_unsuback_view &packet,