16 #ifndef ALEXA_CLIENT_SDK_AVSGATEWAYMANAGER_INCLUDE_AVSGATEWAYMANAGER_AVSGATEWAYMANAGER_H_ 17 #define ALEXA_CLIENT_SDK_AVSGATEWAYMANAGER_INCLUDE_AVSGATEWAYMANAGER_AVSGATEWAYMANAGER_H_ 22 #include <unordered_set> 35 namespace avsGatewayManager {
64 std::unique_ptr<storage::AVSGatewayManagerStorageInterface> avsGatewayManagerStorage,
65 const std::shared_ptr<avsCommon::sdkInterfaces::AuthDelegateInterface>& authDelegate,
66 const std::shared_ptr<registrationManager::CustomerDataManagerInterface>& customerDataManager,
67 const std::shared_ptr<avsCommon::utils::configuration::ConfigurationNode>& configurationRoot,
68 const std::shared_ptr<
71 std::shared_ptr<avsCommon::utils::metrics::MetricRecorderInterface>
metricRecorder);
84 static std::shared_ptr<AVSGatewayManager>
create(
85 std::shared_ptr<storage::AVSGatewayManagerStorageInterface> avsGatewayManagerStorage,
86 std::shared_ptr<registrationManager::CustomerDataManagerInterface> customerDataManager,
88 std::shared_ptr<avsCommon::sdkInterfaces::AuthDelegateInterface> authDelegate =
nullptr,
89 std::shared_ptr<avsCommon::utils::metrics::MetricRecorderInterface> metricRecorder =
nullptr);
94 std::shared_ptr<avsCommon::sdkInterfaces::AVSGatewayAssignerInterface> avsGatewayAssigner)
override;
97 void addObserver(std::shared_ptr<avsCommon::sdkInterfaces::AVSGatewayObserverInterface> observer)
override;
98 void removeObserver(std::shared_ptr<avsCommon::sdkInterfaces::AVSGatewayObserverInterface> observer)
override;
118 const std::shared_ptr<avsCommon::sdkInterfaces::PostConnectOperationInterface>& verifyGatewaySender);
135 std::shared_ptr<storage::AVSGatewayManagerStorageInterface> avsGatewayManagerStorage,
136 std::shared_ptr<registrationManager::CustomerDataManagerInterface> customerDataManager,
137 std::shared_ptr<avsCommon::sdkInterfaces::AuthDelegateInterface> authDelegate,
138 std::shared_ptr<avsCommon::utils::metrics::MetricRecorderInterface> metricRecorder,
154 bool saveStateLocked();
157 std::shared_ptr<storage::AVSGatewayManagerStorageInterface> m_avsGatewayStorage;
160 std::shared_ptr<avsCommon::sdkInterfaces::AVSGatewayAssignerInterface> m_avsGatewayAssigner;
163 std::shared_ptr<avsCommon::utils::metrics::MetricRecorderInterface> m_metricRecorder;
166 mutable std::mutex m_mutex;
169 std::shared_ptr<avsCommon::sdkInterfaces::PostConnectOperationInterface> m_currentVerifyGatewaySender;
172 const std::shared_ptr<avsCommon::sdkInterfaces::AuthDelegateInterface> m_authDelegate;
178 std::unordered_set<std::shared_ptr<avsCommon::sdkInterfaces::AVSGatewayObserverInterface>> m_observers;
184 #endif // ALEXA_CLIENT_SDK_AVSGATEWAYMANAGER_INCLUDE_AVSGATEWAYMANAGER_AVSGATEWAYMANAGER_H_ Definition: AVSGatewayManagerInterface.h:33
Definition: ConfigurationNode.h:71
void addObserver(std::shared_ptr< avsCommon::sdkInterfaces::AVSGatewayObserverInterface > observer) override
bool setGatewayURL(const std::string &avsGatewayURL) override
::std::string string
Definition: gtest-port.h:1097
void removeObserver(std::shared_ptr< avsCommon::sdkInterfaces::AVSGatewayObserverInterface > observer) override
static std::shared_ptr< avsCommon::utils::metrics::MetricRecorderInterface > metricRecorder
Metric recorder shared ptr.
Definition: BaseAPLCapabilityAgentTest.cpp:261
bool setAVSGatewayAssigner(std::shared_ptr< avsCommon::sdkInterfaces::AVSGatewayAssignerInterface > avsGatewayAssigner) override
void clearData() override
static std::shared_ptr< avsCommon::sdkInterfaces::AVSGatewayManagerInterface > createAVSGatewayManagerInterface(std::unique_ptr< storage::AVSGatewayManagerStorageInterface > avsGatewayManagerStorage, const std::shared_ptr< avsCommon::sdkInterfaces::AuthDelegateInterface > &authDelegate, const std::shared_ptr< registrationManager::CustomerDataManagerInterface > &customerDataManager, const std::shared_ptr< avsCommon::utils::configuration::ConfigurationNode > &configurationRoot, const std::shared_ptr< acsdkPostConnectOperationProviderRegistrarInterfaces::PostConnectOperationProviderRegistrarInterface > &providerRegistrar, std::shared_ptr< avsCommon::utils::metrics::MetricRecorderInterface > metricRecorder)
Definition: GatewayVerifyState.h:27
Whether or not curl logs should be emitted.
Definition: AVSConnectionManager.h:36
Definition: AVSGatewayManager.h:47
std::shared_ptr< avsCommon::sdkInterfaces::PostConnectOperationInterface > createPostConnectOperation() override
Definition: PostConnectOperationProviderInterface.h:30
Definition: PostConnectOperationProviderRegistrarInterface.h:32
void onGatewayVerified(const std::shared_ptr< avsCommon::sdkInterfaces::PostConnectOperationInterface > &verifyGatewaySender)
static std::shared_ptr< AVSGatewayManager > create(std::shared_ptr< storage::AVSGatewayManagerStorageInterface > avsGatewayManagerStorage, std::shared_ptr< registrationManager::CustomerDataManagerInterface > customerDataManager, const avsCommon::utils::configuration::ConfigurationNode &configurationRoot, std::shared_ptr< avsCommon::sdkInterfaces::AuthDelegateInterface > authDelegate=nullptr, std::shared_ptr< avsCommon::utils::metrics::MetricRecorderInterface > metricRecorder=nullptr)
Definition: CustomerDataHandler.h:34
std::string getGatewayURL() const override