/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include namespace Aws { namespace Lightsail { namespace Model { /** */ class AWS_LIGHTSAIL_API GetAlarmsRequest : public LightsailRequest { public: GetAlarmsRequest(); // Service request name is the Operation name which will send this request out, // each operation should has unique request name, so that we can get operation's name from this request. // Note: this is not true for response, multiple operations may have the same response name, // so we can not get operation's name from response. inline virtual const char* GetServiceRequestName() const override { return "GetAlarms"; } Aws::String SerializePayload() const override; Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; /** *

The name of the alarm.

Specify an alarm name to return information * about a specific alarm.

*/ inline const Aws::String& GetAlarmName() const{ return m_alarmName; } /** *

The name of the alarm.

Specify an alarm name to return information * about a specific alarm.

*/ inline bool AlarmNameHasBeenSet() const { return m_alarmNameHasBeenSet; } /** *

The name of the alarm.

Specify an alarm name to return information * about a specific alarm.

*/ inline void SetAlarmName(const Aws::String& value) { m_alarmNameHasBeenSet = true; m_alarmName = value; } /** *

The name of the alarm.

Specify an alarm name to return information * about a specific alarm.

*/ inline void SetAlarmName(Aws::String&& value) { m_alarmNameHasBeenSet = true; m_alarmName = std::move(value); } /** *

The name of the alarm.

Specify an alarm name to return information * about a specific alarm.

*/ inline void SetAlarmName(const char* value) { m_alarmNameHasBeenSet = true; m_alarmName.assign(value); } /** *

The name of the alarm.

Specify an alarm name to return information * about a specific alarm.

*/ inline GetAlarmsRequest& WithAlarmName(const Aws::String& value) { SetAlarmName(value); return *this;} /** *

The name of the alarm.

Specify an alarm name to return information * about a specific alarm.

*/ inline GetAlarmsRequest& WithAlarmName(Aws::String&& value) { SetAlarmName(std::move(value)); return *this;} /** *

The name of the alarm.

Specify an alarm name to return information * about a specific alarm.

*/ inline GetAlarmsRequest& WithAlarmName(const char* value) { SetAlarmName(value); return *this;} /** *

The token to advance to the next page of results from your request.

To * get a page token, perform an initial GetAlarms request. If your * results are paginated, the response will return a next page token that you can * specify as the page token in a subsequent request.

*/ inline const Aws::String& GetPageToken() const{ return m_pageToken; } /** *

The token to advance to the next page of results from your request.

To * get a page token, perform an initial GetAlarms request. If your * results are paginated, the response will return a next page token that you can * specify as the page token in a subsequent request.

*/ inline bool PageTokenHasBeenSet() const { return m_pageTokenHasBeenSet; } /** *

The token to advance to the next page of results from your request.

To * get a page token, perform an initial GetAlarms request. If your * results are paginated, the response will return a next page token that you can * specify as the page token in a subsequent request.

*/ inline void SetPageToken(const Aws::String& value) { m_pageTokenHasBeenSet = true; m_pageToken = value; } /** *

The token to advance to the next page of results from your request.

To * get a page token, perform an initial GetAlarms request. If your * results are paginated, the response will return a next page token that you can * specify as the page token in a subsequent request.

*/ inline void SetPageToken(Aws::String&& value) { m_pageTokenHasBeenSet = true; m_pageToken = std::move(value); } /** *

The token to advance to the next page of results from your request.

To * get a page token, perform an initial GetAlarms request. If your * results are paginated, the response will return a next page token that you can * specify as the page token in a subsequent request.

*/ inline void SetPageToken(const char* value) { m_pageTokenHasBeenSet = true; m_pageToken.assign(value); } /** *

The token to advance to the next page of results from your request.

To * get a page token, perform an initial GetAlarms request. If your * results are paginated, the response will return a next page token that you can * specify as the page token in a subsequent request.

*/ inline GetAlarmsRequest& WithPageToken(const Aws::String& value) { SetPageToken(value); return *this;} /** *

The token to advance to the next page of results from your request.

To * get a page token, perform an initial GetAlarms request. If your * results are paginated, the response will return a next page token that you can * specify as the page token in a subsequent request.

*/ inline GetAlarmsRequest& WithPageToken(Aws::String&& value) { SetPageToken(std::move(value)); return *this;} /** *

The token to advance to the next page of results from your request.

To * get a page token, perform an initial GetAlarms request. If your * results are paginated, the response will return a next page token that you can * specify as the page token in a subsequent request.

*/ inline GetAlarmsRequest& WithPageToken(const char* value) { SetPageToken(value); return *this;} /** *

The name of the Lightsail resource being monitored by the alarm.

*

Specify a monitored resource name to return information about all alarms for * a specific resource.

*/ inline const Aws::String& GetMonitoredResourceName() const{ return m_monitoredResourceName; } /** *

The name of the Lightsail resource being monitored by the alarm.

*

Specify a monitored resource name to return information about all alarms for * a specific resource.

*/ inline bool MonitoredResourceNameHasBeenSet() const { return m_monitoredResourceNameHasBeenSet; } /** *

The name of the Lightsail resource being monitored by the alarm.

*

Specify a monitored resource name to return information about all alarms for * a specific resource.

*/ inline void SetMonitoredResourceName(const Aws::String& value) { m_monitoredResourceNameHasBeenSet = true; m_monitoredResourceName = value; } /** *

The name of the Lightsail resource being monitored by the alarm.

*

Specify a monitored resource name to return information about all alarms for * a specific resource.

*/ inline void SetMonitoredResourceName(Aws::String&& value) { m_monitoredResourceNameHasBeenSet = true; m_monitoredResourceName = std::move(value); } /** *

The name of the Lightsail resource being monitored by the alarm.

*

Specify a monitored resource name to return information about all alarms for * a specific resource.

*/ inline void SetMonitoredResourceName(const char* value) { m_monitoredResourceNameHasBeenSet = true; m_monitoredResourceName.assign(value); } /** *

The name of the Lightsail resource being monitored by the alarm.

*

Specify a monitored resource name to return information about all alarms for * a specific resource.

*/ inline GetAlarmsRequest& WithMonitoredResourceName(const Aws::String& value) { SetMonitoredResourceName(value); return *this;} /** *

The name of the Lightsail resource being monitored by the alarm.

*

Specify a monitored resource name to return information about all alarms for * a specific resource.

*/ inline GetAlarmsRequest& WithMonitoredResourceName(Aws::String&& value) { SetMonitoredResourceName(std::move(value)); return *this;} /** *

The name of the Lightsail resource being monitored by the alarm.

*

Specify a monitored resource name to return information about all alarms for * a specific resource.

*/ inline GetAlarmsRequest& WithMonitoredResourceName(const char* value) { SetMonitoredResourceName(value); return *this;} private: Aws::String m_alarmName; bool m_alarmNameHasBeenSet; Aws::String m_pageToken; bool m_pageTokenHasBeenSet; Aws::String m_monitoredResourceName; bool m_monitoredResourceNameHasBeenSet; }; } // namespace Model } // namespace Lightsail } // namespace Aws