16 #ifndef ALEXA_CLIENT_SDK_AVSGATEWAYMANAGER_INCLUDE_AVSGATEWAYMANAGER_POSTCONNECTVERIFYGATEWAYSENDER_H_ 17 #define ALEXA_CLIENT_SDK_AVSGATEWAYMANAGER_INCLUDE_AVSGATEWAYMANAGER_POSTCONNECTVERIFYGATEWAYSENDER_H_ 30 namespace avsGatewayManager {
37 ,
public std::enable_shared_from_this<PostConnectVerifyGatewaySender> {
46 static std::shared_ptr<PostConnectVerifyGatewaySender>
create(
47 std::function<
void(
const std::shared_ptr<PostConnectVerifyGatewaySender>&)> gatewayVerifiedCallback,
48 std::shared_ptr<avsCommon::utils::metrics::MetricRecorderInterface>
metricRecorder =
nullptr);
59 const std::shared_ptr<avsCommon::sdkInterfaces::MessageSenderInterface>& messageSender)
override;
72 enum class VerifyGatewayReturnCode {
90 std::function<
void(
const std::shared_ptr<PostConnectVerifyGatewaySender>&)> gatewayVerifiedCallback,
91 std::shared_ptr<avsCommon::utils::metrics::MetricRecorderInterface>
metricRecorder);
99 VerifyGatewayReturnCode sendVerifyGateway(
100 const std::shared_ptr<avsCommon::sdkInterfaces::MessageSenderInterface>& messageSender);
111 void wait(
int retryAttempt);
114 std::function<void(const std::shared_ptr<PostConnectVerifyGatewaySender>&)> m_gatewayVerifiedCallback;
117 std::shared_ptr<avsCommon::utils::metrics::MetricRecorderInterface> m_metricRecorder;
126 std::shared_ptr<avsCommon::avs::WaitableMessageRequest> m_postConnectRequest;
135 #endif // ALEXA_CLIENT_SDK_AVSGATEWAYMANAGER_INCLUDE_AVSGATEWAYMANAGER_POSTCONNECTVERIFYGATEWAYSENDER_H_
unsigned int getOperationPriority() override
~PostConnectVerifyGatewaySender()
Definition: WaitEvent.h:32
static std::shared_ptr< avsCommon::utils::metrics::MetricRecorderInterface > metricRecorder
Metric recorder shared ptr.
Definition: BaseAPLCapabilityAgentTest.cpp:261
void abortOperation() override
static std::shared_ptr< PostConnectVerifyGatewaySender > create(std::function< void(const std::shared_ptr< PostConnectVerifyGatewaySender > &)> gatewayVerifiedCallback, std::shared_ptr< avsCommon::utils::metrics::MetricRecorderInterface > metricRecorder=nullptr)
Whether or not curl logs should be emitted.
Definition: AVSConnectionManager.h:36
Definition: PostConnectVerifyGatewaySender.h:35
Definition: PostConnectOperationInterface.h:30
bool performOperation(const std::shared_ptr< avsCommon::sdkInterfaces::MessageSenderInterface > &messageSender) override