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::sampleApplications::ipcServerSampleApp::ipc::DoNotDisturbHandler Class Reference

#include <DoNotDisturbHandler.h>

Inheritance diagram for alexaClientSDK::sampleApplications::ipcServerSampleApp::ipc::DoNotDisturbHandler:
Inheritance graph
Collaboration diagram for alexaClientSDK::sampleApplications::ipcServerSampleApp::ipc::DoNotDisturbHandler:
Collaboration graph

Public Member Functions

void dispatchSetDoNotDisturbState (bool enabled)
void registerHandlers ()
 Register this handler for its namespace and its methods for the corresponding namespace functions. More...
RequiresShutdown Functions
void doShutdown () override
- Public Member Functions inherited from alexaClientSDK::sampleApplications::ipcServerSampleApp::ipc::IPCHandlerBase
void invokeMethod (const std::string &methodName, const std::string &message)
 ~IPCHandlerBase ()
- Public Member Functions inherited from alexaClientSDK::avsCommon::utils::RequiresShutdown
 RequiresShutdown (const std::string &name)
virtual ~RequiresShutdown ()
 Destructor. More...
const std::string & name () const
void shutdown ()
bool isShutdown () const

Static Public Member Functions

static std::shared_ptr< DoNotDisturbHandlercreate (std::shared_ptr< IPCHandlerRegistrationInterface > ipcHandlerRegistrar, std::shared_ptr< DoNotDisturbHandlerInterface > doNotDisturbComponent)

Additional Inherited Members

- Public Types inherited from alexaClientSDK::sampleApplications::ipcServerSampleApp::ipc::IPCHandlerBase
using IPCMessageHandler = std::function< void(const std::string &)>
 Alias for the message handler function. More...
- Protected Member Functions inherited from alexaClientSDK::sampleApplications::ipcServerSampleApp::ipc::IPCHandlerBase
 IPCHandlerBase (const std::string &namespaceName, std::shared_ptr< alexaClientSDK::avsCommon::utils::threading::Executor > executor)
bool registerIPCMessageHandlerMethod (const std::string &methodName, IPCMessageHandler handlerFunction)
bool deregisterIPCMessageHandlerMethod (const std::string &methodName)
- Protected Attributes inherited from alexaClientSDK::sampleApplications::ipcServerSampleApp::ipc::IPCHandlerBase
std::string m_namespaceName
 Name of the namespace of the realized IPC handler class. More...
std::unordered_map< std::string, IPCMessageHandlerm_messageHandlers
 Dictionary to hold the IPC message handler methods. More...
std::shared_ptr< alexaClientSDK::avsCommon::utils::threading::Executorm_executor
 Executor context to support operations asynchronously. More...

Detailed Description

A contract for the handler that will handle the DoNotDisturb namespace messages coming from the IPC client.

Member Function Documentation

◆ create()

static std::shared_ptr<DoNotDisturbHandler> alexaClientSDK::sampleApplications::ipcServerSampleApp::ipc::DoNotDisturbHandler::create ( std::shared_ptr< IPCHandlerRegistrationInterface ipcHandlerRegistrar,
std::shared_ptr< DoNotDisturbHandlerInterface doNotDisturbComponent 

Create an instance of DoNotDisturbHandler

ipcHandlerRegistrarUsed to register DoNotDisturbHandler.
doNotDisturbComponentHandles the parsed DoNotDisturb payloads.
Shared pointer to DoNotDisturbHandler

◆ dispatchSetDoNotDisturbState()

void alexaClientSDK::sampleApplications::ipcServerSampleApp::ipc::DoNotDisturbHandler::dispatchSetDoNotDisturbState ( bool  enabled)

Sends a setDoNotDisturbState IPC message to the IPC client.

enabledStates whether do not disturb setting is enabled.

◆ doShutdown()

void alexaClientSDK::sampleApplications::ipcServerSampleApp::ipc::DoNotDisturbHandler::doShutdown ( )

Prepares/enables this object to be deleted. This should be the last function called on this object prior to deleting (or resetting) its shared_ptr.

  • Attempting to call functions on this object after calling shutdown() can result in undefined behavior.
  • Neglecting to call shutdown() on this object can result in resource leaks or other undefined behavior.

Implements alexaClientSDK::avsCommon::utils::RequiresShutdown.

◆ registerHandlers()

void alexaClientSDK::sampleApplications::ipcServerSampleApp::ipc::DoNotDisturbHandler::registerHandlers ( )

Register this handler for its namespace and its methods for the corresponding namespace functions.

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

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