![]()  | 
  
    AlexaClientSDK
    3.0.0
    
   A cross-platform, modular SDK for interacting with the Alexa Voice Service 
   | 
 
#include <MessageRequestQueueInterface.h>

Public Member Functions | |
| virtual | ~MessageRequestQueueInterface ()=default | 
| virtual void | enqueueRequest (std::shared_ptr< avsCommon::avs::MessageRequest > messageRequest)=0 | 
| virtual avsCommon::utils::Optional< std::chrono::time_point< std::chrono::steady_clock > > | peekRequestTime ()=0 | 
| virtual std::shared_ptr< avsCommon::avs::MessageRequest > | dequeueOldestRequest ()=0 | 
| virtual std::shared_ptr< avsCommon::avs::MessageRequest > | dequeueSendableRequest ()=0 | 
| virtual bool | isMessageRequestAvailable () const =0 | 
| virtual void | setWaitingForSendAcknowledgement ()=0 | 
| virtual void | clearWaitingForSendAcknowledgement ()=0 | 
| virtual bool | empty () const =0 | 
| virtual void | clear ()=0 | 
An interface that abstracts queueing MessageRequests. 
      
  | 
  virtualdefault | 
Destructor.
      
  | 
  pure virtual | 
Clears all queue of MessageRequests. 
Implemented in alexaClientSDK::acl::SynchronizedMessageRequestQueue, and alexaClientSDK::acl::MessageRequestQueue.
      
  | 
  pure virtual | 
Clear the flag indicating that the queue is waiting for a send to be acknowledged.
Implemented in alexaClientSDK::acl::SynchronizedMessageRequestQueue, and alexaClientSDK::acl::MessageRequestQueue.
      
  | 
  pure virtual | 
Dequeues the oldest MessageRequest regardless of whether or not the queue is waiting for a response.
MessageRequest if available, else return nullptr. Implemented in alexaClientSDK::acl::SynchronizedMessageRequestQueue, and alexaClientSDK::acl::MessageRequestQueue.
      
  | 
  pure virtual | 
Dequeues the next available MessageRequest taking into account if the queue is waiting for a response to a previously sent message and if any messages that do not care about sequencing are in the queue.
MessageRequest if available, else return nullptr. Implemented in alexaClientSDK::acl::SynchronizedMessageRequestQueue, and alexaClientSDK::acl::MessageRequestQueue.
      
  | 
  pure virtual | 
Checks if there are any queued MessageRequests.
Implemented in alexaClientSDK::acl::SynchronizedMessageRequestQueue, and alexaClientSDK::acl::MessageRequestQueue.
      
  | 
  pure virtual | 
Enqueues a MessageRequest. 
Implemented in alexaClientSDK::acl::SynchronizedMessageRequestQueue, and alexaClientSDK::acl::MessageRequestQueue.
      
  | 
  pure virtual | 
This method checks if there is a MessageRequest available to be sent.
MessageRequest is available to be sent, else false. Implemented in alexaClientSDK::acl::SynchronizedMessageRequestQueue, and alexaClientSDK::acl::MessageRequestQueue.
      
  | 
  pure virtual | 
Peek at the next item in the queue and retrieve the time that the request was queued.
Implemented in alexaClientSDK::acl::SynchronizedMessageRequestQueue, and alexaClientSDK::acl::MessageRequestQueue.
      
  | 
  pure virtual | 
Sets the flag indicating that the queue is waiting for a send to be acknowledged.
Implemented in alexaClientSDK::acl::SynchronizedMessageRequestQueue, and alexaClientSDK::acl::MessageRequestQueue.
AlexaClientSDK 3.0.0 - Copyright 2016-2022 Amazon.com, Inc. or its affiliates. All Rights Reserved. Licensed under the Apache License, Version 2.0