/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include A RUM app monitor collects telemetry data from your application and sends
* that data to RUM. The data includes performance and reliability information such
* as page load time, client-side errors, and user behavior.See
* Also:
AWS API
* Reference
A structure that contains much of the configuration data for the app * monitor.
*/ inline const AppMonitorConfiguration& GetAppMonitorConfiguration() const{ return m_appMonitorConfiguration; } /** *A structure that contains much of the configuration data for the app * monitor.
*/ inline bool AppMonitorConfigurationHasBeenSet() const { return m_appMonitorConfigurationHasBeenSet; } /** *A structure that contains much of the configuration data for the app * monitor.
*/ inline void SetAppMonitorConfiguration(const AppMonitorConfiguration& value) { m_appMonitorConfigurationHasBeenSet = true; m_appMonitorConfiguration = value; } /** *A structure that contains much of the configuration data for the app * monitor.
*/ inline void SetAppMonitorConfiguration(AppMonitorConfiguration&& value) { m_appMonitorConfigurationHasBeenSet = true; m_appMonitorConfiguration = std::move(value); } /** *A structure that contains much of the configuration data for the app * monitor.
*/ inline AppMonitor& WithAppMonitorConfiguration(const AppMonitorConfiguration& value) { SetAppMonitorConfiguration(value); return *this;} /** *A structure that contains much of the configuration data for the app * monitor.
*/ inline AppMonitor& WithAppMonitorConfiguration(AppMonitorConfiguration&& value) { SetAppMonitorConfiguration(std::move(value)); return *this;} /** *The date and time that this app monitor was created.
*/ inline const Aws::String& GetCreated() const{ return m_created; } /** *The date and time that this app monitor was created.
*/ inline bool CreatedHasBeenSet() const { return m_createdHasBeenSet; } /** *The date and time that this app monitor was created.
*/ inline void SetCreated(const Aws::String& value) { m_createdHasBeenSet = true; m_created = value; } /** *The date and time that this app monitor was created.
*/ inline void SetCreated(Aws::String&& value) { m_createdHasBeenSet = true; m_created = std::move(value); } /** *The date and time that this app monitor was created.
*/ inline void SetCreated(const char* value) { m_createdHasBeenSet = true; m_created.assign(value); } /** *The date and time that this app monitor was created.
*/ inline AppMonitor& WithCreated(const Aws::String& value) { SetCreated(value); return *this;} /** *The date and time that this app monitor was created.
*/ inline AppMonitor& WithCreated(Aws::String&& value) { SetCreated(std::move(value)); return *this;} /** *The date and time that this app monitor was created.
*/ inline AppMonitor& WithCreated(const char* value) { SetCreated(value); return *this;} /** *Specifies whether this app monitor allows the web client to define and send * custom events.
For more information about custom events, see Send * custom events.
*/ inline const CustomEvents& GetCustomEvents() const{ return m_customEvents; } /** *Specifies whether this app monitor allows the web client to define and send * custom events.
For more information about custom events, see Send * custom events.
*/ inline bool CustomEventsHasBeenSet() const { return m_customEventsHasBeenSet; } /** *Specifies whether this app monitor allows the web client to define and send * custom events.
For more information about custom events, see Send * custom events.
*/ inline void SetCustomEvents(const CustomEvents& value) { m_customEventsHasBeenSet = true; m_customEvents = value; } /** *Specifies whether this app monitor allows the web client to define and send * custom events.
For more information about custom events, see Send * custom events.
*/ inline void SetCustomEvents(CustomEvents&& value) { m_customEventsHasBeenSet = true; m_customEvents = std::move(value); } /** *Specifies whether this app monitor allows the web client to define and send * custom events.
For more information about custom events, see Send * custom events.
*/ inline AppMonitor& WithCustomEvents(const CustomEvents& value) { SetCustomEvents(value); return *this;} /** *Specifies whether this app monitor allows the web client to define and send * custom events.
For more information about custom events, see Send * custom events.
*/ inline AppMonitor& WithCustomEvents(CustomEvents&& value) { SetCustomEvents(std::move(value)); return *this;} /** *A structure that contains information about whether this app monitor stores a * copy of the telemetry data that RUM collects using CloudWatch Logs.
*/ inline const DataStorage& GetDataStorage() const{ return m_dataStorage; } /** *A structure that contains information about whether this app monitor stores a * copy of the telemetry data that RUM collects using CloudWatch Logs.
*/ inline bool DataStorageHasBeenSet() const { return m_dataStorageHasBeenSet; } /** *A structure that contains information about whether this app monitor stores a * copy of the telemetry data that RUM collects using CloudWatch Logs.
*/ inline void SetDataStorage(const DataStorage& value) { m_dataStorageHasBeenSet = true; m_dataStorage = value; } /** *A structure that contains information about whether this app monitor stores a * copy of the telemetry data that RUM collects using CloudWatch Logs.
*/ inline void SetDataStorage(DataStorage&& value) { m_dataStorageHasBeenSet = true; m_dataStorage = std::move(value); } /** *A structure that contains information about whether this app monitor stores a * copy of the telemetry data that RUM collects using CloudWatch Logs.
*/ inline AppMonitor& WithDataStorage(const DataStorage& value) { SetDataStorage(value); return *this;} /** *A structure that contains information about whether this app monitor stores a * copy of the telemetry data that RUM collects using CloudWatch Logs.
*/ inline AppMonitor& WithDataStorage(DataStorage&& value) { SetDataStorage(std::move(value)); return *this;} /** *The top-level internet domain name for which your application has * administrative authority.
*/ inline const Aws::String& GetDomain() const{ return m_domain; } /** *The top-level internet domain name for which your application has * administrative authority.
*/ inline bool DomainHasBeenSet() const { return m_domainHasBeenSet; } /** *The top-level internet domain name for which your application has * administrative authority.
*/ inline void SetDomain(const Aws::String& value) { m_domainHasBeenSet = true; m_domain = value; } /** *The top-level internet domain name for which your application has * administrative authority.
*/ inline void SetDomain(Aws::String&& value) { m_domainHasBeenSet = true; m_domain = std::move(value); } /** *The top-level internet domain name for which your application has * administrative authority.
*/ inline void SetDomain(const char* value) { m_domainHasBeenSet = true; m_domain.assign(value); } /** *The top-level internet domain name for which your application has * administrative authority.
*/ inline AppMonitor& WithDomain(const Aws::String& value) { SetDomain(value); return *this;} /** *The top-level internet domain name for which your application has * administrative authority.
*/ inline AppMonitor& WithDomain(Aws::String&& value) { SetDomain(std::move(value)); return *this;} /** *The top-level internet domain name for which your application has * administrative authority.
*/ inline AppMonitor& WithDomain(const char* value) { SetDomain(value); return *this;} /** *The unique ID of this app monitor.
*/ inline const Aws::String& GetId() const{ return m_id; } /** *The unique ID of this app monitor.
*/ inline bool IdHasBeenSet() const { return m_idHasBeenSet; } /** *The unique ID of this app monitor.
*/ inline void SetId(const Aws::String& value) { m_idHasBeenSet = true; m_id = value; } /** *The unique ID of this app monitor.
*/ inline void SetId(Aws::String&& value) { m_idHasBeenSet = true; m_id = std::move(value); } /** *The unique ID of this app monitor.
*/ inline void SetId(const char* value) { m_idHasBeenSet = true; m_id.assign(value); } /** *The unique ID of this app monitor.
*/ inline AppMonitor& WithId(const Aws::String& value) { SetId(value); return *this;} /** *The unique ID of this app monitor.
*/ inline AppMonitor& WithId(Aws::String&& value) { SetId(std::move(value)); return *this;} /** *The unique ID of this app monitor.
*/ inline AppMonitor& WithId(const char* value) { SetId(value); return *this;} /** *The date and time of the most recent changes to this app monitor's * configuration.
*/ inline const Aws::String& GetLastModified() const{ return m_lastModified; } /** *The date and time of the most recent changes to this app monitor's * configuration.
*/ inline bool LastModifiedHasBeenSet() const { return m_lastModifiedHasBeenSet; } /** *The date and time of the most recent changes to this app monitor's * configuration.
*/ inline void SetLastModified(const Aws::String& value) { m_lastModifiedHasBeenSet = true; m_lastModified = value; } /** *The date and time of the most recent changes to this app monitor's * configuration.
*/ inline void SetLastModified(Aws::String&& value) { m_lastModifiedHasBeenSet = true; m_lastModified = std::move(value); } /** *The date and time of the most recent changes to this app monitor's * configuration.
*/ inline void SetLastModified(const char* value) { m_lastModifiedHasBeenSet = true; m_lastModified.assign(value); } /** *The date and time of the most recent changes to this app monitor's * configuration.
*/ inline AppMonitor& WithLastModified(const Aws::String& value) { SetLastModified(value); return *this;} /** *The date and time of the most recent changes to this app monitor's * configuration.
*/ inline AppMonitor& WithLastModified(Aws::String&& value) { SetLastModified(std::move(value)); return *this;} /** *The date and time of the most recent changes to this app monitor's * configuration.
*/ inline AppMonitor& WithLastModified(const char* value) { SetLastModified(value); return *this;} /** *The name of the app monitor.
*/ inline const Aws::String& GetName() const{ return m_name; } /** *The name of the app monitor.
*/ inline bool NameHasBeenSet() const { return m_nameHasBeenSet; } /** *The name of the app monitor.
*/ inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; } /** *The name of the app monitor.
*/ inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); } /** *The name of the app monitor.
*/ inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); } /** *The name of the app monitor.
*/ inline AppMonitor& WithName(const Aws::String& value) { SetName(value); return *this;} /** *The name of the app monitor.
*/ inline AppMonitor& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;} /** *The name of the app monitor.
*/ inline AppMonitor& WithName(const char* value) { SetName(value); return *this;} /** *The current state of the app monitor.
*/ inline const StateEnum& GetState() const{ return m_state; } /** *The current state of the app monitor.
*/ inline bool StateHasBeenSet() const { return m_stateHasBeenSet; } /** *The current state of the app monitor.
*/ inline void SetState(const StateEnum& value) { m_stateHasBeenSet = true; m_state = value; } /** *The current state of the app monitor.
*/ inline void SetState(StateEnum&& value) { m_stateHasBeenSet = true; m_state = std::move(value); } /** *The current state of the app monitor.
*/ inline AppMonitor& WithState(const StateEnum& value) { SetState(value); return *this;} /** *The current state of the app monitor.
*/ inline AppMonitor& WithState(StateEnum&& value) { SetState(std::move(value)); return *this;} /** *The list of tag keys and values associated with this app monitor.
*/ inline const Aws::MapThe list of tag keys and values associated with this app monitor.
*/ inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; } /** *The list of tag keys and values associated with this app monitor.
*/ inline void SetTags(const Aws::MapThe list of tag keys and values associated with this app monitor.
*/ inline void SetTags(Aws::MapThe list of tag keys and values associated with this app monitor.
*/ inline AppMonitor& WithTags(const Aws::MapThe list of tag keys and values associated with this app monitor.
*/ inline AppMonitor& WithTags(Aws::MapThe list of tag keys and values associated with this app monitor.
*/ inline AppMonitor& AddTags(const Aws::String& key, const Aws::String& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, value); return *this; } /** *The list of tag keys and values associated with this app monitor.
*/ inline AppMonitor& AddTags(Aws::String&& key, const Aws::String& value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), value); return *this; } /** *The list of tag keys and values associated with this app monitor.
*/ inline AppMonitor& AddTags(const Aws::String& key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, std::move(value)); return *this; } /** *The list of tag keys and values associated with this app monitor.
*/ inline AppMonitor& AddTags(Aws::String&& key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), std::move(value)); return *this; } /** *The list of tag keys and values associated with this app monitor.
*/ inline AppMonitor& AddTags(const char* key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, std::move(value)); return *this; } /** *The list of tag keys and values associated with this app monitor.
*/ inline AppMonitor& AddTags(Aws::String&& key, const char* value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), value); return *this; } /** *The list of tag keys and values associated with this app monitor.
*/ inline AppMonitor& AddTags(const char* key, const char* value) { m_tagsHasBeenSet = true; m_tags.emplace(key, value); return *this; } private: AppMonitorConfiguration m_appMonitorConfiguration; bool m_appMonitorConfigurationHasBeenSet = false; Aws::String m_created; bool m_createdHasBeenSet = false; CustomEvents m_customEvents; bool m_customEventsHasBeenSet = false; DataStorage m_dataStorage; bool m_dataStorageHasBeenSet = false; Aws::String m_domain; bool m_domainHasBeenSet = false; Aws::String m_id; bool m_idHasBeenSet = false; Aws::String m_lastModified; bool m_lastModifiedHasBeenSet = false; Aws::String m_name; bool m_nameHasBeenSet = false; StateEnum m_state; bool m_stateHasBeenSet = false; Aws::Map