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

#include <LibcurlHTTP2Connection.h>

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

Public Member Functions

 ~LibcurlHTTP2Connection ()
 
HTTP2ConnectionInterface methods.
std::shared_ptr< avsCommon::utils::http2::HTTP2RequestInterfacecreateAndSendRequest (const http2::HTTP2RequestConfig &config) override
 
void disconnect () override
 
void addObserver (std::shared_ptr< avsCommon::utils::http2::HTTP2ConnectionObserverInterface > observer) override
 
void removeObserver (std::shared_ptr< avsCommon::utils::http2::HTTP2ConnectionObserverInterface > observer) override
 
- Public Member Functions inherited from alexaClientSDK::avsCommon::utils::http2::HTTP2ConnectionInterface
virtual ~HTTP2ConnectionInterface ()=default
 
virtual void addObserver (std::shared_ptr< HTTP2ConnectionObserverInterface > observer)=0
 
virtual void removeObserver (std::shared_ptr< HTTP2ConnectionObserverInterface > observer)=0
 

Static Public Member Functions

static std::shared_ptr< LibcurlHTTP2Connectioncreate (const std::shared_ptr< LibcurlSetCurlOptionsCallbackInterface > &setCurlOptionsCallback=nullptr)
 

Protected Member Functions

 LibcurlHTTP2Connection (const std::shared_ptr< LibcurlSetCurlOptionsCallbackInterface > &setCurlOptionsCallback=nullptr)
 

Constructor & Destructor Documentation

◆ ~LibcurlHTTP2Connection()

alexaClientSDK::avsCommon::utils::libcurlUtils::LibcurlHTTP2Connection::~LibcurlHTTP2Connection ( )

Destructor.

◆ LibcurlHTTP2Connection()

alexaClientSDK::avsCommon::utils::libcurlUtils::LibcurlHTTP2Connection::LibcurlHTTP2Connection ( const std::shared_ptr< LibcurlSetCurlOptionsCallbackInterface > &  setCurlOptionsCallback = nullptr)
protected

Constructor.

Parameters
setCurlOptionsCallbackThe optional LibcurlSetCurlOptionsCallbackInterface to set curl options when a new http2 connection is being created.

Member Function Documentation

◆ addObserver()

void alexaClientSDK::avsCommon::utils::libcurlUtils::LibcurlHTTP2Connection::addObserver ( std::shared_ptr< avsCommon::utils::http2::HTTP2ConnectionObserverInterface observer)
override

◆ create()

std::shared_ptr< LibcurlHTTP2Connection > alexaClientSDK::avsCommon::utils::libcurlUtils::LibcurlHTTP2Connection::create ( const std::shared_ptr< LibcurlSetCurlOptionsCallbackInterface > &  setCurlOptionsCallback = nullptr)
static

Create an LibcurlHTTP2Connection.

Parameters
setCurlOptionsCallbackThe optional LibcurlSetCurlOptionsCallbackInterface to set curl options when a new http2 connection is being created.
Returns
The new LibcurlHTTP2Connection or nullptr if the operation fails.

◆ createAndSendRequest()

std::shared_ptr< HTTP2RequestInterface > alexaClientSDK::avsCommon::utils::libcurlUtils::LibcurlHTTP2Connection::createAndSendRequest ( const http2::HTTP2RequestConfig config)
overridevirtual

Create an HTTP2 request. Send it immediately.

Parameters
configThe configuration object which defines the request.
Returns
A new HTTP2GetRequest instance.

Implements alexaClientSDK::avsCommon::utils::http2::HTTP2ConnectionInterface.

◆ disconnect()

void alexaClientSDK::avsCommon::utils::libcurlUtils::LibcurlHTTP2Connection::disconnect ( )
overridevirtual

Terminate the HTTP2 connection, forcing immediate termination of any active requests.

Implements alexaClientSDK::avsCommon::utils::http2::HTTP2ConnectionInterface.

◆ removeObserver()

void alexaClientSDK::avsCommon::utils::libcurlUtils::LibcurlHTTP2Connection::removeObserver ( std::shared_ptr< avsCommon::utils::http2::HTTP2ConnectionObserverInterface observer)
override

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

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