63 {
64 const lib::ConfigSession* configSession =
65 subProtocolContext->getSocketConnection()->getConfigInstance()->getSubCommand<lib::ConfigSession>();
66 const lib::ConfigSubscribe* configSubscribe =
67 subProtocolContext->getSocketConnection()->getConfigInstance()->getSubCommand<lib::ConfigSubscribe>();
68 const lib::ConfigPublish* configPublish =
69 subProtocolContext->getSocketConnection()->getConfigInstance()->getSubCommand<lib::ConfigPublish>();
70
71 return new iot::mqtt::client::SubProtocol(
72 subProtocolContext,
73 getName(),
74 new ::mqtt::mqttcli::lib::Mqtt(subProtocolContext->getSocketConnection()->getConnectionName(),
75 configSession->getClientId(),
76 configSession->getQoS(),
77 configSession->getKeepAlive(),
78 !configSession->getRetainSession(),
79 configSession->getWillTopic(),
80 configSession->getWillMessage(),
81 configSession->getWillQoS(),
82 configSession->getWillRetain(),
83 configSession->getUsername(),
84 configSession->getPassword(),
85 configSubscribe->getTopic(),
86 configPublish->getTopic(),
87 configPublish->getMessage(),
88 configPublish->getRetain()));
89 }