AlexaClientSDK  3.0.0
A cross-platform, modular SDK for interacting with the Alexa Voice Service
Public Member Functions | List of all members
alexaClientSDK::avsCommon::utils::libcurlUtils::LibcurlHTTP2Request Class Reference

#include <LibcurlHTTP2Request.h>

Inheritance diagram for alexaClientSDK::avsCommon::utils::libcurlUtils::LibcurlHTTP2Request:
Inheritance graph
[legend]
Collaboration diagram for alexaClientSDK::avsCommon::utils::libcurlUtils::LibcurlHTTP2Request:
Collaboration graph
[legend]

Public Member Functions

 LibcurlHTTP2Request (const alexaClientSDK::avsCommon::utils::http2::HTTP2RequestConfig &config, const std::shared_ptr< LibcurlSetCurlOptionsCallbackInterface > &setCurlOptionsCallback, std::string id="")
 
CURL * getCurlHandle ()
 
void reportCompletion (http2::HTTP2ResponseFinishedStatus status)
 
void reportResponseCode ()
 
bool hasProgressTimedOut () const
 
bool isIntermittentTransferExpected () const
 
void setTimeOfLastTransfer ()
 
void unPause ()
 
bool isPaused () const
 
bool isCancelled () const
 
HTTP2RequestInterface methods.
bool cancel () override
 
std::string getId () const override
 
- Public Member Functions inherited from alexaClientSDK::avsCommon::utils::http2::HTTP2RequestInterface
virtual ~HTTP2RequestInterface ()=default
 

Constructor & Destructor Documentation

◆ LibcurlHTTP2Request()

alexaClientSDK::avsCommon::utils::libcurlUtils::LibcurlHTTP2Request::LibcurlHTTP2Request ( const alexaClientSDK::avsCommon::utils::http2::HTTP2RequestConfig config,
const std::shared_ptr< LibcurlSetCurlOptionsCallbackInterface > &  setCurlOptionsCallback,
std::string  id = "" 
)

Constructor.

Parameters
configThe HTTP2RequestConfig used for this request.
setCurlOptionsCallbackThe LibcurlSetCurlOptionsCallbackInterface to set curl options when creating http2 conenction.
idName used to identify this request.

Member Function Documentation

◆ cancel()

bool alexaClientSDK::avsCommon::utils::libcurlUtils::LibcurlHTTP2Request::cancel ( )
overridevirtual

Cancel this HTTP2Request.

Returns
Whether cancelling this request was triggered.

Implements alexaClientSDK::avsCommon::utils::http2::HTTP2RequestInterface.

◆ getCurlHandle()

CURL* alexaClientSDK::avsCommon::utils::libcurlUtils::LibcurlHTTP2Request::getCurlHandle ( )

Gets the CURL easy handle associated with this stream

Returns
The associated curl easy handle for the stream

◆ getId()

std::string alexaClientSDK::avsCommon::utils::libcurlUtils::LibcurlHTTP2Request::getId ( ) const
overridevirtual

Get an integer uniquely identifying this request.

Returns
An integer uniquely identifying this request.

Implements alexaClientSDK::avsCommon::utils::http2::HTTP2RequestInterface.

◆ hasProgressTimedOut()

bool alexaClientSDK::avsCommon::utils::libcurlUtils::LibcurlHTTP2Request::hasProgressTimedOut ( ) const

Return whether or not the activity timeout has been reached.

Returns
Whether or not the activity timeout has been reached.

◆ isCancelled()

bool alexaClientSDK::avsCommon::utils::libcurlUtils::LibcurlHTTP2Request::isCancelled ( ) const

Return whether this request has been cancelled.

Returns
whether this request has been cancelled.

◆ isIntermittentTransferExpected()

bool alexaClientSDK::avsCommon::utils::libcurlUtils::LibcurlHTTP2Request::isIntermittentTransferExpected ( ) const

Whether this request expects that transfer will happen intermittently.

Returns
Whether this request expects that transfer will happen intermittently.

◆ isPaused()

bool alexaClientSDK::avsCommon::utils::libcurlUtils::LibcurlHTTP2Request::isPaused ( ) const

Return whether this stream has pending transfers.

Returns
whether this stream has been paused.

◆ reportCompletion()

void alexaClientSDK::avsCommon::utils::libcurlUtils::LibcurlHTTP2Request::reportCompletion ( http2::HTTP2ResponseFinishedStatus  status)

Notify the HTTP2ResponseSinkInterface that the transfer is complete with the appropriate HTTP2ResponseFinishedStatus code.

Parameters
statusThe finished status to report.

◆ reportResponseCode()

void alexaClientSDK::avsCommon::utils::libcurlUtils::LibcurlHTTP2Request::reportResponseCode ( )

If the response code has been received and not previously reported, notify the HTTP2ResponseSinkInterface that the response code has been received.

◆ setTimeOfLastTransfer()

void alexaClientSDK::avsCommon::utils::libcurlUtils::LibcurlHTTP2Request::setTimeOfLastTransfer ( )
inline

Sets the time of last transfer to the current time.

◆ unPause()

void alexaClientSDK::avsCommon::utils::libcurlUtils::LibcurlHTTP2Request::unPause ( )

Un-pause read and write for this request.


The documentation for this class was generated from the following file:

AlexaClientSDK 3.0.0 - Copyright 2016-2022 Amazon.com, Inc. or its affiliates. All Rights Reserved. Licensed under the Apache License, Version 2.0