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

#include <HTTP2TransportFactory.h>

Inheritance diagram for alexaClientSDK::acl::HTTP2TransportFactory:
Inheritance graph
[legend]
Collaboration diagram for alexaClientSDK::acl::HTTP2TransportFactory:
Collaboration graph
[legend]

Public Member Functions

 HTTP2TransportFactory (std::shared_ptr< avsCommon::utils::http2::HTTP2ConnectionFactoryInterface > connectionFactory, std::shared_ptr< PostConnectFactoryInterface > postConnectFactory, std::shared_ptr< avsCommon::utils::metrics::MetricRecorderInterface > metricRecorder=nullptr, std::shared_ptr< avsCommon::sdkInterfaces::EventTracerInterface > eventTracer=nullptr)
 
 HTTP2TransportFactory ()=delete
 
TransportFactoryInterface methods.
std::shared_ptr< TransportInterfacecreateTransport (std::shared_ptr< avsCommon::sdkInterfaces::AuthDelegateInterface > authDelegate, std::shared_ptr< avsCommon::avs::attachment::AttachmentManagerInterface > attachmentManager, const std::string &avsGateway, std::shared_ptr< MessageConsumerInterface > messageConsumerInterface, std::shared_ptr< TransportObserverInterface > transportObserverInterface, std::shared_ptr< SynchronizedMessageRequestQueue > sharedMessageRequestQueue) override
 
- Public Member Functions inherited from alexaClientSDK::acl::TransportFactoryInterface
virtual ~TransportFactoryInterface ()=default
 

Static Public Member Functions

static std::shared_ptr< TransportFactoryInterfacecreateTransportFactoryInterface (const std::shared_ptr< avsCommon::utils::http2::HTTP2ConnectionFactoryInterface > &connectionFactory, const std::shared_ptr< PostConnectFactoryInterface > &postConnectFactory, const std::shared_ptr< avsCommon::utils::metrics::MetricRecorderInterface > &metricRecorder, const std::shared_ptr< avsCommon::sdkInterfaces::EventTracerInterface > &eventTracer)
 

Detailed Description

An HTTP2TransportFactory creates HTTP2Transport objects.

Constructor & Destructor Documentation

◆ HTTP2TransportFactory() [1/2]

alexaClientSDK::acl::HTTP2TransportFactory::HTTP2TransportFactory ( std::shared_ptr< avsCommon::utils::http2::HTTP2ConnectionFactoryInterface connectionFactory,
std::shared_ptr< PostConnectFactoryInterface postConnectFactory,
std::shared_ptr< avsCommon::utils::metrics::MetricRecorderInterface metricRecorder = nullptr,
std::shared_ptr< avsCommon::sdkInterfaces::EventTracerInterface eventTracer = nullptr 
)

HTTP2TransportFactory constructor.

Deprecated:
Parameters
connectionFactoryObject used to create instances of HTTP2ConnectionInterface.
postConnectFactoryObject used to create instances of the PostConnectInterface.
metricRecorderThe metric recorder.
eventTracerObject used to trace events sent to AVS.

◆ HTTP2TransportFactory() [2/2]

alexaClientSDK::acl::HTTP2TransportFactory::HTTP2TransportFactory ( )
delete

Deleted default constructor.

Member Function Documentation

◆ createTransport()

std::shared_ptr<TransportInterface> alexaClientSDK::acl::HTTP2TransportFactory::createTransport ( std::shared_ptr< avsCommon::sdkInterfaces::AuthDelegateInterface authDelegate,
std::shared_ptr< avsCommon::avs::attachment::AttachmentManagerInterface attachmentManager,
const std::string &  avsGateway,
std::shared_ptr< MessageConsumerInterface messageConsumerInterface,
std::shared_ptr< TransportObserverInterface transportObserverInterface,
std::shared_ptr< SynchronizedMessageRequestQueue sharedMessageRequestQueue 
)
overridevirtual

Creates a new transport.

Parameters
authDelegateThe AuthDelegateInterface to use for authentication and authorization with AVS.
attachmentManagerThe attachment manager that manages the attachments.
avsGatewayThe URL for the AVS server we will connect to.
messageConsumerInterfaceThe object which should be notified on messages which arrive from AVS.
transportObserverInterfaceA pointer to the transport observer the new transport should notify.
sharedRequestQueueRequest queue shared by all instances of TransportInterface.
Returns
A new MessageRouter object.

Implements alexaClientSDK::acl::TransportFactoryInterface.

◆ createTransportFactoryInterface()

static std::shared_ptr<TransportFactoryInterface> alexaClientSDK::acl::HTTP2TransportFactory::createTransportFactoryInterface ( const std::shared_ptr< avsCommon::utils::http2::HTTP2ConnectionFactoryInterface > &  connectionFactory,
const std::shared_ptr< PostConnectFactoryInterface > &  postConnectFactory,
const std::shared_ptr< avsCommon::utils::metrics::MetricRecorderInterface > &  metricRecorder,
const std::shared_ptr< avsCommon::sdkInterfaces::EventTracerInterface > &  eventTracer 
)
static

Factory to create instances of TransportFactoryInterface.

Parameters
connectionFactoryObject used to create instances of HTTP2ConnectionInterface.
postConnectFactoryObject used to create instances of the PostConnectInterface.
metricRecorderThe metric recorder.
eventTracerObject used to trace events sent to AVS.

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