AlexaClientSDK  1.25.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::capabilitiesDelegate::PostConnectCapabilitiesPublisher Class Reference

#include <PostConnectCapabilitiesPublisher.h>

Inheritance diagram for alexaClientSDK::capabilitiesDelegate::PostConnectCapabilitiesPublisher:
Inheritance graph
[legend]
Collaboration diagram for alexaClientSDK::capabilitiesDelegate::PostConnectCapabilitiesPublisher:
Collaboration graph
[legend]

Public Member Functions

 ~PostConnectCapabilitiesPublisher ()
 
unsigned int getOperationPriority () override
 
bool performOperation (const std::shared_ptr< avsCommon::sdkInterfaces::MessageSenderInterface > &messageSender) override
 
void abortOperation () override
 
- Public Member Functions inherited from alexaClientSDK::avsCommon::sdkInterfaces::PostConnectOperationInterface
virtual ~PostConnectOperationInterface ()=default
 

Static Public Member Functions

static std::shared_ptr< PostConnectCapabilitiesPublishercreate (const std::shared_ptr< DiscoveryEventSenderInterface > &discoveryEventSender)
 

Additional Inherited Members

- Static Public Attributes inherited from alexaClientSDK::avsCommon::sdkInterfaces::PostConnectOperationInterface
static constexpr unsigned int VERIFY_GATEWAY_PRIORITY = 50
 Operation priority for AVS Gateway Verification. More...
 
static constexpr unsigned int ENDPOINT_DISCOVERY_PRIORITY = 100
 Operation priority for Publishing Capabilities to AVS. More...
 
static constexpr unsigned int SYNCHRONIZE_STATE_PRIORITY = 150
 Operation priority for sending SynchronizeState event to AVS. More...
 

Detailed Description

This class is responsible publishing Discovery.AddOrUpdateReport and Discovery.DeleteReport events in the post connecting state.

: A new instance of the PostConnectCapabilitiesPublisher will be created as part of the post connect sequence.

Constructor & Destructor Documentation

◆ ~PostConnectCapabilitiesPublisher()

alexaClientSDK::capabilitiesDelegate::PostConnectCapabilitiesPublisher::~PostConnectCapabilitiesPublisher ( )

Destructor.

Member Function Documentation

◆ abortOperation()

void alexaClientSDK::capabilitiesDelegate::PostConnectCapabilitiesPublisher::abortOperation ( )
overridevirtual

Aborts an operation that is currently being executed using the performOperation() method.

Note: This method will be called from a different thread from where the performOperation() is being called from.

Implements alexaClientSDK::avsCommon::sdkInterfaces::PostConnectOperationInterface.

◆ create()

std::shared_ptr< PostConnectCapabilitiesPublisher > alexaClientSDK::capabilitiesDelegate::PostConnectCapabilitiesPublisher::create ( const std::shared_ptr< DiscoveryEventSenderInterface > &  discoveryEventSender)
static

Creates a new instance of the PostConnectCapabilitiesPublisher.

Parameters
discoveryEventSenderThe DiscoveryEventSender to send discovery events.
Returns
a new instance of the PostConnectCapabilitiesPublisher.

◆ getOperationPriority()

unsigned int alexaClientSDK::capabilitiesDelegate::PostConnectCapabilitiesPublisher::getOperationPriority ( )
overridevirtual

PostConnectOperationInterface Methods.

Implements alexaClientSDK::avsCommon::sdkInterfaces::PostConnectOperationInterface.

◆ performOperation()

bool alexaClientSDK::capabilitiesDelegate::PostConnectCapabilitiesPublisher::performOperation ( const std::shared_ptr< avsCommon::sdkInterfaces::MessageSenderInterface > &  messageSender)
overridevirtual

Performs the post connect operation. The implementation should ensure that the performOperation returns immediately after the abortOperation() method is called.

Note
: The performOperation() method is not expected to be called twice.
Parameters
messageSender- The MessageSenderInterface to send post connect message.
Returns
True if the post connect operation is successful, else false.

Ensure that performOperation method cannot be called twice in a row.

Implements alexaClientSDK::avsCommon::sdkInterfaces::PostConnectOperationInterface.


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

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