16 #ifndef ACSDKDEVICESETTINGSMANAGER_DEVICESETTINGSMANAGERBUILDER_H_ 17 #define ACSDKDEVICESETTINGSMANAGER_DEVICESETTINGSMANAGERBUILDER_H_ 42 namespace acsdkDeviceSettingsManager {
65 std::shared_ptr<settings::storage::DeviceSettingStorageInterface> settingStorage,
66 std::shared_ptr<avsCommon::sdkInterfaces::MessageSenderInterface> messageSender,
67 std::shared_ptr<avsCommon::sdkInterfaces::AVSConnectionManagerInterface> connectionManager,
68 std::shared_ptr<registrationManager::CustomerDataManagerInterface> dataManager,
69 std::shared_ptr<avsCommon::sdkInterfaces::LocaleAssetsManagerInterface> localeAssetsManager,
70 std::shared_ptr<capabilityAgents::doNotDisturb::DoNotDisturbCapabilityAgent> doNotDisturbCapabilityAgent,
71 const std::shared_ptr<avsCommon::utils::metrics::MetricRecorderInterface>&
metricRecorder,
72 std::shared_ptr<avsCommon::sdkInterfaces::SystemTimeZoneInterface> systemTimezone =
nullptr);
84 std::shared_ptr<settings::storage::DeviceSettingStorageInterface> settingStorage,
85 std::shared_ptr<avsCommon::sdkInterfaces::MessageSenderInterface> messageSender,
86 std::shared_ptr<avsCommon::sdkInterfaces::AVSConnectionManagerInterface> connectionManager,
87 std::shared_ptr<registrationManager::CustomerDataManagerInterface> dataManager,
88 const std::shared_ptr<avsCommon::utils::metrics::MetricRecorderInterface>& metricRecorder);
98 const std::shared_ptr<capabilityAgents::doNotDisturb::DoNotDisturbCapabilityAgent>& dndCA);
129 std::shared_ptr<avsCommon::sdkInterfaces::SystemTimeZoneInterface> systemTimeZone =
nullptr);
138 std::shared_ptr<avsCommon::sdkInterfaces::LocaleAssetsManagerInterface> localeAssetsManager);
148 std::shared_ptr<avsCommon::sdkInterfaces::LocaleAssetsManagerInterface> localeAssetsManager);
164 template <
size_t index>
165 std::shared_ptr<SettingType<index>>
getSetting()
const;
174 template <
size_t index>
182 std::unique_ptr<settings::DeviceSettingsManager>
build()
override;
195 template <
size_t index,
class ProtocolT>
198 const ValueType<index>& defaultValue,
199 std::function<
bool(
const ValueType<index>&)> applyFn = std::function<
bool(
const ValueType<index>&)>());
202 std::shared_ptr<settings::storage::DeviceSettingStorageInterface> m_settingStorage;
205 std::shared_ptr<avsCommon::sdkInterfaces::MessageSenderInterface> m_messageSender;
208 std::shared_ptr<avsCommon::sdkInterfaces::AVSConnectionManagerInterface> m_connectionManager;
211 std::shared_ptr<registrationManager::CustomerDataManagerInterface> m_dataManager;
214 std::shared_ptr<avsCommon::utils::metrics::MetricRecorderInterface> m_metricRecorder;
220 template <
size_t index>
223 return std::get<index>(m_settingConfigs);
226 template <
size_t index>
228 return std::get<index>(m_settingConfigs).setting;
234 #endif // ACSDKDEVICESETTINGSMANAGER_DEVICESETTINGSMANAGERBUILDER_H_ DeviceSettingsManagerBuilder & withNetworkInfoSetting()
DeviceSettingsManagerBuilder & withWakeWordConfirmationSetting()
DeviceSettingsManagerBuilder & withLocaleAndWakeWordsSettings(std::shared_ptr< avsCommon::sdkInterfaces::LocaleAssetsManagerInterface > localeAssetsManager)
std::shared_ptr< SettingType< index > > getSetting() const
Definition: DeviceSettingsManagerBuilder.h:227
DeviceSettingsManagerBuilder(std::shared_ptr< settings::storage::DeviceSettingStorageInterface > settingStorage, std::shared_ptr< avsCommon::sdkInterfaces::MessageSenderInterface > messageSender, std::shared_ptr< avsCommon::sdkInterfaces::AVSConnectionManagerInterface > connectionManager, std::shared_ptr< registrationManager::CustomerDataManagerInterface > dataManager, const std::shared_ptr< avsCommon::utils::metrics::MetricRecorderInterface > &metricRecorder)
Definition: SettingsManagerBuilderBase.h:35
DeviceSettingsManagerBuilder & withSpeechConfirmationSetting()
DeviceSettingsManagerBuilder & withDoNotDisturbSetting(const std::shared_ptr< capabilityAgents::doNotDisturb::DoNotDisturbCapabilityAgent > &dndCA)
static std::shared_ptr< avsCommon::utils::metrics::MetricRecorderInterface > metricRecorder
Metric recorder shared ptr.
Definition: BaseAPLCapabilityAgentTest.cpp:261
DeviceSettingsManagerBuilder & withLocaleSetting(std::shared_ptr< avsCommon::sdkInterfaces::LocaleAssetsManagerInterface > localeAssetsManager)
static std::shared_ptr< settings::DeviceSettingsManager > createDeviceSettingsManager(std::shared_ptr< settings::storage::DeviceSettingStorageInterface > settingStorage, std::shared_ptr< avsCommon::sdkInterfaces::MessageSenderInterface > messageSender, std::shared_ptr< avsCommon::sdkInterfaces::AVSConnectionManagerInterface > connectionManager, std::shared_ptr< registrationManager::CustomerDataManagerInterface > dataManager, std::shared_ptr< avsCommon::sdkInterfaces::LocaleAssetsManagerInterface > localeAssetsManager, std::shared_ptr< capabilityAgents::doNotDisturb::DoNotDisturbCapabilityAgent > doNotDisturbCapabilityAgent, const std::shared_ptr< avsCommon::utils::metrics::MetricRecorderInterface > &metricRecorder, std::shared_ptr< avsCommon::sdkInterfaces::SystemTimeZoneInterface > systemTimezone=nullptr)
Definition: DeviceSettingsManagerBuilder.h:47
Definition: SettingsManager.h:43
Whether or not curl logs should be emitted.
Definition: AVSConnectionManager.h:36
settings::SettingConfiguration< SettingType< index > > getConfiguration() const
Definition: DeviceSettingsManagerBuilder.h:222
std::unique_ptr< settings::DeviceSettingsManager > build() override
DeviceSettingsManagerBuilder & withTimeZoneSetting(std::shared_ptr< avsCommon::sdkInterfaces::SystemTimeZoneInterface > systemTimeZone=nullptr)
DeviceSettingsManagerBuilder & withAlarmVolumeRampSetting()