/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include #include #include namespace Aws { template class AmazonWebServiceResult; namespace Utils { namespace Json { class JsonValue; } // namespace Json } // namespace Utils namespace StorageGateway { namespace Model { /** *

A JSON object containing the following fields:

See Also:

AWS * API Reference

*/ class DescribeGatewayInformationResult { public: AWS_STORAGEGATEWAY_API DescribeGatewayInformationResult(); AWS_STORAGEGATEWAY_API DescribeGatewayInformationResult(const Aws::AmazonWebServiceResult& result); AWS_STORAGEGATEWAY_API DescribeGatewayInformationResult& operator=(const Aws::AmazonWebServiceResult& result); inline const Aws::String& GetGatewayARN() const{ return m_gatewayARN; } inline void SetGatewayARN(const Aws::String& value) { m_gatewayARN = value; } inline void SetGatewayARN(Aws::String&& value) { m_gatewayARN = std::move(value); } inline void SetGatewayARN(const char* value) { m_gatewayARN.assign(value); } inline DescribeGatewayInformationResult& WithGatewayARN(const Aws::String& value) { SetGatewayARN(value); return *this;} inline DescribeGatewayInformationResult& WithGatewayARN(Aws::String&& value) { SetGatewayARN(std::move(value)); return *this;} inline DescribeGatewayInformationResult& WithGatewayARN(const char* value) { SetGatewayARN(value); return *this;} /** *

The unique identifier assigned to your gateway during activation. This ID * becomes part of the gateway Amazon Resource Name (ARN), which you use as input * for other operations.

*/ inline const Aws::String& GetGatewayId() const{ return m_gatewayId; } /** *

The unique identifier assigned to your gateway during activation. This ID * becomes part of the gateway Amazon Resource Name (ARN), which you use as input * for other operations.

*/ inline void SetGatewayId(const Aws::String& value) { m_gatewayId = value; } /** *

The unique identifier assigned to your gateway during activation. This ID * becomes part of the gateway Amazon Resource Name (ARN), which you use as input * for other operations.

*/ inline void SetGatewayId(Aws::String&& value) { m_gatewayId = std::move(value); } /** *

The unique identifier assigned to your gateway during activation. This ID * becomes part of the gateway Amazon Resource Name (ARN), which you use as input * for other operations.

*/ inline void SetGatewayId(const char* value) { m_gatewayId.assign(value); } /** *

The unique identifier assigned to your gateway during activation. This ID * becomes part of the gateway Amazon Resource Name (ARN), which you use as input * for other operations.

*/ inline DescribeGatewayInformationResult& WithGatewayId(const Aws::String& value) { SetGatewayId(value); return *this;} /** *

The unique identifier assigned to your gateway during activation. This ID * becomes part of the gateway Amazon Resource Name (ARN), which you use as input * for other operations.

*/ inline DescribeGatewayInformationResult& WithGatewayId(Aws::String&& value) { SetGatewayId(std::move(value)); return *this;} /** *

The unique identifier assigned to your gateway during activation. This ID * becomes part of the gateway Amazon Resource Name (ARN), which you use as input * for other operations.

*/ inline DescribeGatewayInformationResult& WithGatewayId(const char* value) { SetGatewayId(value); return *this;} /** *

The name you configured for your gateway.

*/ inline const Aws::String& GetGatewayName() const{ return m_gatewayName; } /** *

The name you configured for your gateway.

*/ inline void SetGatewayName(const Aws::String& value) { m_gatewayName = value; } /** *

The name you configured for your gateway.

*/ inline void SetGatewayName(Aws::String&& value) { m_gatewayName = std::move(value); } /** *

The name you configured for your gateway.

*/ inline void SetGatewayName(const char* value) { m_gatewayName.assign(value); } /** *

The name you configured for your gateway.

*/ inline DescribeGatewayInformationResult& WithGatewayName(const Aws::String& value) { SetGatewayName(value); return *this;} /** *

The name you configured for your gateway.

*/ inline DescribeGatewayInformationResult& WithGatewayName(Aws::String&& value) { SetGatewayName(std::move(value)); return *this;} /** *

The name you configured for your gateway.

*/ inline DescribeGatewayInformationResult& WithGatewayName(const char* value) { SetGatewayName(value); return *this;} /** *

A value that indicates the time zone configured for the gateway.

*/ inline const Aws::String& GetGatewayTimezone() const{ return m_gatewayTimezone; } /** *

A value that indicates the time zone configured for the gateway.

*/ inline void SetGatewayTimezone(const Aws::String& value) { m_gatewayTimezone = value; } /** *

A value that indicates the time zone configured for the gateway.

*/ inline void SetGatewayTimezone(Aws::String&& value) { m_gatewayTimezone = std::move(value); } /** *

A value that indicates the time zone configured for the gateway.

*/ inline void SetGatewayTimezone(const char* value) { m_gatewayTimezone.assign(value); } /** *

A value that indicates the time zone configured for the gateway.

*/ inline DescribeGatewayInformationResult& WithGatewayTimezone(const Aws::String& value) { SetGatewayTimezone(value); return *this;} /** *

A value that indicates the time zone configured for the gateway.

*/ inline DescribeGatewayInformationResult& WithGatewayTimezone(Aws::String&& value) { SetGatewayTimezone(std::move(value)); return *this;} /** *

A value that indicates the time zone configured for the gateway.

*/ inline DescribeGatewayInformationResult& WithGatewayTimezone(const char* value) { SetGatewayTimezone(value); return *this;} /** *

A value that indicates the operating state of the gateway.

*/ inline const Aws::String& GetGatewayState() const{ return m_gatewayState; } /** *

A value that indicates the operating state of the gateway.

*/ inline void SetGatewayState(const Aws::String& value) { m_gatewayState = value; } /** *

A value that indicates the operating state of the gateway.

*/ inline void SetGatewayState(Aws::String&& value) { m_gatewayState = std::move(value); } /** *

A value that indicates the operating state of the gateway.

*/ inline void SetGatewayState(const char* value) { m_gatewayState.assign(value); } /** *

A value that indicates the operating state of the gateway.

*/ inline DescribeGatewayInformationResult& WithGatewayState(const Aws::String& value) { SetGatewayState(value); return *this;} /** *

A value that indicates the operating state of the gateway.

*/ inline DescribeGatewayInformationResult& WithGatewayState(Aws::String&& value) { SetGatewayState(std::move(value)); return *this;} /** *

A value that indicates the operating state of the gateway.

*/ inline DescribeGatewayInformationResult& WithGatewayState(const char* value) { SetGatewayState(value); return *this;} /** *

A NetworkInterface array that contains descriptions of the gateway * network interfaces.

*/ inline const Aws::Vector& GetGatewayNetworkInterfaces() const{ return m_gatewayNetworkInterfaces; } /** *

A NetworkInterface array that contains descriptions of the gateway * network interfaces.

*/ inline void SetGatewayNetworkInterfaces(const Aws::Vector& value) { m_gatewayNetworkInterfaces = value; } /** *

A NetworkInterface array that contains descriptions of the gateway * network interfaces.

*/ inline void SetGatewayNetworkInterfaces(Aws::Vector&& value) { m_gatewayNetworkInterfaces = std::move(value); } /** *

A NetworkInterface array that contains descriptions of the gateway * network interfaces.

*/ inline DescribeGatewayInformationResult& WithGatewayNetworkInterfaces(const Aws::Vector& value) { SetGatewayNetworkInterfaces(value); return *this;} /** *

A NetworkInterface array that contains descriptions of the gateway * network interfaces.

*/ inline DescribeGatewayInformationResult& WithGatewayNetworkInterfaces(Aws::Vector&& value) { SetGatewayNetworkInterfaces(std::move(value)); return *this;} /** *

A NetworkInterface array that contains descriptions of the gateway * network interfaces.

*/ inline DescribeGatewayInformationResult& AddGatewayNetworkInterfaces(const NetworkInterface& value) { m_gatewayNetworkInterfaces.push_back(value); return *this; } /** *

A NetworkInterface array that contains descriptions of the gateway * network interfaces.

*/ inline DescribeGatewayInformationResult& AddGatewayNetworkInterfaces(NetworkInterface&& value) { m_gatewayNetworkInterfaces.push_back(std::move(value)); return *this; } /** *

The type of the gateway.

*/ inline const Aws::String& GetGatewayType() const{ return m_gatewayType; } /** *

The type of the gateway.

*/ inline void SetGatewayType(const Aws::String& value) { m_gatewayType = value; } /** *

The type of the gateway.

*/ inline void SetGatewayType(Aws::String&& value) { m_gatewayType = std::move(value); } /** *

The type of the gateway.

*/ inline void SetGatewayType(const char* value) { m_gatewayType.assign(value); } /** *

The type of the gateway.

*/ inline DescribeGatewayInformationResult& WithGatewayType(const Aws::String& value) { SetGatewayType(value); return *this;} /** *

The type of the gateway.

*/ inline DescribeGatewayInformationResult& WithGatewayType(Aws::String&& value) { SetGatewayType(std::move(value)); return *this;} /** *

The type of the gateway.

*/ inline DescribeGatewayInformationResult& WithGatewayType(const char* value) { SetGatewayType(value); return *this;} /** *

The date on which an update to the gateway is available. This date is in the * time zone of the gateway. If the gateway is not available for an update this * field is not returned in the response.

*/ inline const Aws::String& GetNextUpdateAvailabilityDate() const{ return m_nextUpdateAvailabilityDate; } /** *

The date on which an update to the gateway is available. This date is in the * time zone of the gateway. If the gateway is not available for an update this * field is not returned in the response.

*/ inline void SetNextUpdateAvailabilityDate(const Aws::String& value) { m_nextUpdateAvailabilityDate = value; } /** *

The date on which an update to the gateway is available. This date is in the * time zone of the gateway. If the gateway is not available for an update this * field is not returned in the response.

*/ inline void SetNextUpdateAvailabilityDate(Aws::String&& value) { m_nextUpdateAvailabilityDate = std::move(value); } /** *

The date on which an update to the gateway is available. This date is in the * time zone of the gateway. If the gateway is not available for an update this * field is not returned in the response.

*/ inline void SetNextUpdateAvailabilityDate(const char* value) { m_nextUpdateAvailabilityDate.assign(value); } /** *

The date on which an update to the gateway is available. This date is in the * time zone of the gateway. If the gateway is not available for an update this * field is not returned in the response.

*/ inline DescribeGatewayInformationResult& WithNextUpdateAvailabilityDate(const Aws::String& value) { SetNextUpdateAvailabilityDate(value); return *this;} /** *

The date on which an update to the gateway is available. This date is in the * time zone of the gateway. If the gateway is not available for an update this * field is not returned in the response.

*/ inline DescribeGatewayInformationResult& WithNextUpdateAvailabilityDate(Aws::String&& value) { SetNextUpdateAvailabilityDate(std::move(value)); return *this;} /** *

The date on which an update to the gateway is available. This date is in the * time zone of the gateway. If the gateway is not available for an update this * field is not returned in the response.

*/ inline DescribeGatewayInformationResult& WithNextUpdateAvailabilityDate(const char* value) { SetNextUpdateAvailabilityDate(value); return *this;} /** *

The date on which the last software update was applied to the gateway. If the * gateway has never been updated, this field does not return a value in the * response. This only only exist and returns once it have been chosen and set by * the SGW service, based on the OS version of the gateway VM

*/ inline const Aws::String& GetLastSoftwareUpdate() const{ return m_lastSoftwareUpdate; } /** *

The date on which the last software update was applied to the gateway. If the * gateway has never been updated, this field does not return a value in the * response. This only only exist and returns once it have been chosen and set by * the SGW service, based on the OS version of the gateway VM

*/ inline void SetLastSoftwareUpdate(const Aws::String& value) { m_lastSoftwareUpdate = value; } /** *

The date on which the last software update was applied to the gateway. If the * gateway has never been updated, this field does not return a value in the * response. This only only exist and returns once it have been chosen and set by * the SGW service, based on the OS version of the gateway VM

*/ inline void SetLastSoftwareUpdate(Aws::String&& value) { m_lastSoftwareUpdate = std::move(value); } /** *

The date on which the last software update was applied to the gateway. If the * gateway has never been updated, this field does not return a value in the * response. This only only exist and returns once it have been chosen and set by * the SGW service, based on the OS version of the gateway VM

*/ inline void SetLastSoftwareUpdate(const char* value) { m_lastSoftwareUpdate.assign(value); } /** *

The date on which the last software update was applied to the gateway. If the * gateway has never been updated, this field does not return a value in the * response. This only only exist and returns once it have been chosen and set by * the SGW service, based on the OS version of the gateway VM

*/ inline DescribeGatewayInformationResult& WithLastSoftwareUpdate(const Aws::String& value) { SetLastSoftwareUpdate(value); return *this;} /** *

The date on which the last software update was applied to the gateway. If the * gateway has never been updated, this field does not return a value in the * response. This only only exist and returns once it have been chosen and set by * the SGW service, based on the OS version of the gateway VM

*/ inline DescribeGatewayInformationResult& WithLastSoftwareUpdate(Aws::String&& value) { SetLastSoftwareUpdate(std::move(value)); return *this;} /** *

The date on which the last software update was applied to the gateway. If the * gateway has never been updated, this field does not return a value in the * response. This only only exist and returns once it have been chosen and set by * the SGW service, based on the OS version of the gateway VM

*/ inline DescribeGatewayInformationResult& WithLastSoftwareUpdate(const char* value) { SetLastSoftwareUpdate(value); return *this;} /** *

The ID of the Amazon EC2 instance that was used to launch the gateway.

*/ inline const Aws::String& GetEc2InstanceId() const{ return m_ec2InstanceId; } /** *

The ID of the Amazon EC2 instance that was used to launch the gateway.

*/ inline void SetEc2InstanceId(const Aws::String& value) { m_ec2InstanceId = value; } /** *

The ID of the Amazon EC2 instance that was used to launch the gateway.

*/ inline void SetEc2InstanceId(Aws::String&& value) { m_ec2InstanceId = std::move(value); } /** *

The ID of the Amazon EC2 instance that was used to launch the gateway.

*/ inline void SetEc2InstanceId(const char* value) { m_ec2InstanceId.assign(value); } /** *

The ID of the Amazon EC2 instance that was used to launch the gateway.

*/ inline DescribeGatewayInformationResult& WithEc2InstanceId(const Aws::String& value) { SetEc2InstanceId(value); return *this;} /** *

The ID of the Amazon EC2 instance that was used to launch the gateway.

*/ inline DescribeGatewayInformationResult& WithEc2InstanceId(Aws::String&& value) { SetEc2InstanceId(std::move(value)); return *this;} /** *

The ID of the Amazon EC2 instance that was used to launch the gateway.

*/ inline DescribeGatewayInformationResult& WithEc2InstanceId(const char* value) { SetEc2InstanceId(value); return *this;} /** *

The Amazon Web Services Region where the Amazon EC2 instance is located.

*/ inline const Aws::String& GetEc2InstanceRegion() const{ return m_ec2InstanceRegion; } /** *

The Amazon Web Services Region where the Amazon EC2 instance is located.

*/ inline void SetEc2InstanceRegion(const Aws::String& value) { m_ec2InstanceRegion = value; } /** *

The Amazon Web Services Region where the Amazon EC2 instance is located.

*/ inline void SetEc2InstanceRegion(Aws::String&& value) { m_ec2InstanceRegion = std::move(value); } /** *

The Amazon Web Services Region where the Amazon EC2 instance is located.

*/ inline void SetEc2InstanceRegion(const char* value) { m_ec2InstanceRegion.assign(value); } /** *

The Amazon Web Services Region where the Amazon EC2 instance is located.

*/ inline DescribeGatewayInformationResult& WithEc2InstanceRegion(const Aws::String& value) { SetEc2InstanceRegion(value); return *this;} /** *

The Amazon Web Services Region where the Amazon EC2 instance is located.

*/ inline DescribeGatewayInformationResult& WithEc2InstanceRegion(Aws::String&& value) { SetEc2InstanceRegion(std::move(value)); return *this;} /** *

The Amazon Web Services Region where the Amazon EC2 instance is located.

*/ inline DescribeGatewayInformationResult& WithEc2InstanceRegion(const char* value) { SetEc2InstanceRegion(value); return *this;} /** *

A list of up to 50 tags assigned to the gateway, sorted alphabetically by key * name. Each tag is a key-value pair. For a gateway with more than 10 tags * assigned, you can view all tags using the ListTagsForResource API * operation.

*/ inline const Aws::Vector& GetTags() const{ return m_tags; } /** *

A list of up to 50 tags assigned to the gateway, sorted alphabetically by key * name. Each tag is a key-value pair. For a gateway with more than 10 tags * assigned, you can view all tags using the ListTagsForResource API * operation.

*/ inline void SetTags(const Aws::Vector& value) { m_tags = value; } /** *

A list of up to 50 tags assigned to the gateway, sorted alphabetically by key * name. Each tag is a key-value pair. For a gateway with more than 10 tags * assigned, you can view all tags using the ListTagsForResource API * operation.

*/ inline void SetTags(Aws::Vector&& value) { m_tags = std::move(value); } /** *

A list of up to 50 tags assigned to the gateway, sorted alphabetically by key * name. Each tag is a key-value pair. For a gateway with more than 10 tags * assigned, you can view all tags using the ListTagsForResource API * operation.

*/ inline DescribeGatewayInformationResult& WithTags(const Aws::Vector& value) { SetTags(value); return *this;} /** *

A list of up to 50 tags assigned to the gateway, sorted alphabetically by key * name. Each tag is a key-value pair. For a gateway with more than 10 tags * assigned, you can view all tags using the ListTagsForResource API * operation.

*/ inline DescribeGatewayInformationResult& WithTags(Aws::Vector&& value) { SetTags(std::move(value)); return *this;} /** *

A list of up to 50 tags assigned to the gateway, sorted alphabetically by key * name. Each tag is a key-value pair. For a gateway with more than 10 tags * assigned, you can view all tags using the ListTagsForResource API * operation.

*/ inline DescribeGatewayInformationResult& AddTags(const Tag& value) { m_tags.push_back(value); return *this; } /** *

A list of up to 50 tags assigned to the gateway, sorted alphabetically by key * name. Each tag is a key-value pair. For a gateway with more than 10 tags * assigned, you can view all tags using the ListTagsForResource API * operation.

*/ inline DescribeGatewayInformationResult& AddTags(Tag&& value) { m_tags.push_back(std::move(value)); return *this; } /** *

The configuration settings for the virtual private cloud (VPC) endpoint for * your gateway.

*/ inline const Aws::String& GetVPCEndpoint() const{ return m_vPCEndpoint; } /** *

The configuration settings for the virtual private cloud (VPC) endpoint for * your gateway.

*/ inline void SetVPCEndpoint(const Aws::String& value) { m_vPCEndpoint = value; } /** *

The configuration settings for the virtual private cloud (VPC) endpoint for * your gateway.

*/ inline void SetVPCEndpoint(Aws::String&& value) { m_vPCEndpoint = std::move(value); } /** *

The configuration settings for the virtual private cloud (VPC) endpoint for * your gateway.

*/ inline void SetVPCEndpoint(const char* value) { m_vPCEndpoint.assign(value); } /** *

The configuration settings for the virtual private cloud (VPC) endpoint for * your gateway.

*/ inline DescribeGatewayInformationResult& WithVPCEndpoint(const Aws::String& value) { SetVPCEndpoint(value); return *this;} /** *

The configuration settings for the virtual private cloud (VPC) endpoint for * your gateway.

*/ inline DescribeGatewayInformationResult& WithVPCEndpoint(Aws::String&& value) { SetVPCEndpoint(std::move(value)); return *this;} /** *

The configuration settings for the virtual private cloud (VPC) endpoint for * your gateway.

*/ inline DescribeGatewayInformationResult& WithVPCEndpoint(const char* value) { SetVPCEndpoint(value); return *this;} /** *

The Amazon Resource Name (ARN) of the Amazon CloudWatch log group that is * used to monitor events in the gateway. This field only only exist and returns * once it have been chosen and set by the SGW service, based on the OS version of * the gateway VM

*/ inline const Aws::String& GetCloudWatchLogGroupARN() const{ return m_cloudWatchLogGroupARN; } /** *

The Amazon Resource Name (ARN) of the Amazon CloudWatch log group that is * used to monitor events in the gateway. This field only only exist and returns * once it have been chosen and set by the SGW service, based on the OS version of * the gateway VM

*/ inline void SetCloudWatchLogGroupARN(const Aws::String& value) { m_cloudWatchLogGroupARN = value; } /** *

The Amazon Resource Name (ARN) of the Amazon CloudWatch log group that is * used to monitor events in the gateway. This field only only exist and returns * once it have been chosen and set by the SGW service, based on the OS version of * the gateway VM

*/ inline void SetCloudWatchLogGroupARN(Aws::String&& value) { m_cloudWatchLogGroupARN = std::move(value); } /** *

The Amazon Resource Name (ARN) of the Amazon CloudWatch log group that is * used to monitor events in the gateway. This field only only exist and returns * once it have been chosen and set by the SGW service, based on the OS version of * the gateway VM

*/ inline void SetCloudWatchLogGroupARN(const char* value) { m_cloudWatchLogGroupARN.assign(value); } /** *

The Amazon Resource Name (ARN) of the Amazon CloudWatch log group that is * used to monitor events in the gateway. This field only only exist and returns * once it have been chosen and set by the SGW service, based on the OS version of * the gateway VM

*/ inline DescribeGatewayInformationResult& WithCloudWatchLogGroupARN(const Aws::String& value) { SetCloudWatchLogGroupARN(value); return *this;} /** *

The Amazon Resource Name (ARN) of the Amazon CloudWatch log group that is * used to monitor events in the gateway. This field only only exist and returns * once it have been chosen and set by the SGW service, based on the OS version of * the gateway VM

*/ inline DescribeGatewayInformationResult& WithCloudWatchLogGroupARN(Aws::String&& value) { SetCloudWatchLogGroupARN(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the Amazon CloudWatch log group that is * used to monitor events in the gateway. This field only only exist and returns * once it have been chosen and set by the SGW service, based on the OS version of * the gateway VM

*/ inline DescribeGatewayInformationResult& WithCloudWatchLogGroupARN(const char* value) { SetCloudWatchLogGroupARN(value); return *this;} /** *

The type of hardware or software platform on which the gateway is * running.

*/ inline const HostEnvironment& GetHostEnvironment() const{ return m_hostEnvironment; } /** *

The type of hardware or software platform on which the gateway is * running.

*/ inline void SetHostEnvironment(const HostEnvironment& value) { m_hostEnvironment = value; } /** *

The type of hardware or software platform on which the gateway is * running.

*/ inline void SetHostEnvironment(HostEnvironment&& value) { m_hostEnvironment = std::move(value); } /** *

The type of hardware or software platform on which the gateway is * running.

*/ inline DescribeGatewayInformationResult& WithHostEnvironment(const HostEnvironment& value) { SetHostEnvironment(value); return *this;} /** *

The type of hardware or software platform on which the gateway is * running.

*/ inline DescribeGatewayInformationResult& WithHostEnvironment(HostEnvironment&& value) { SetHostEnvironment(std::move(value)); return *this;} /** *

The type of endpoint for your gateway.

Valid Values: * STANDARD | FIPS

*/ inline const Aws::String& GetEndpointType() const{ return m_endpointType; } /** *

The type of endpoint for your gateway.

Valid Values: * STANDARD | FIPS

*/ inline void SetEndpointType(const Aws::String& value) { m_endpointType = value; } /** *

The type of endpoint for your gateway.

Valid Values: * STANDARD | FIPS

*/ inline void SetEndpointType(Aws::String&& value) { m_endpointType = std::move(value); } /** *

The type of endpoint for your gateway.

Valid Values: * STANDARD | FIPS

*/ inline void SetEndpointType(const char* value) { m_endpointType.assign(value); } /** *

The type of endpoint for your gateway.

Valid Values: * STANDARD | FIPS

*/ inline DescribeGatewayInformationResult& WithEndpointType(const Aws::String& value) { SetEndpointType(value); return *this;} /** *

The type of endpoint for your gateway.

Valid Values: * STANDARD | FIPS

*/ inline DescribeGatewayInformationResult& WithEndpointType(Aws::String&& value) { SetEndpointType(std::move(value)); return *this;} /** *

The type of endpoint for your gateway.

Valid Values: * STANDARD | FIPS

*/ inline DescribeGatewayInformationResult& WithEndpointType(const char* value) { SetEndpointType(value); return *this;} /** *

Date after which this gateway will not receive software updates for new * features.

*/ inline const Aws::String& GetSoftwareUpdatesEndDate() const{ return m_softwareUpdatesEndDate; } /** *

Date after which this gateway will not receive software updates for new * features.

*/ inline void SetSoftwareUpdatesEndDate(const Aws::String& value) { m_softwareUpdatesEndDate = value; } /** *

Date after which this gateway will not receive software updates for new * features.

*/ inline void SetSoftwareUpdatesEndDate(Aws::String&& value) { m_softwareUpdatesEndDate = std::move(value); } /** *

Date after which this gateway will not receive software updates for new * features.

*/ inline void SetSoftwareUpdatesEndDate(const char* value) { m_softwareUpdatesEndDate.assign(value); } /** *

Date after which this gateway will not receive software updates for new * features.

*/ inline DescribeGatewayInformationResult& WithSoftwareUpdatesEndDate(const Aws::String& value) { SetSoftwareUpdatesEndDate(value); return *this;} /** *

Date after which this gateway will not receive software updates for new * features.

*/ inline DescribeGatewayInformationResult& WithSoftwareUpdatesEndDate(Aws::String&& value) { SetSoftwareUpdatesEndDate(std::move(value)); return *this;} /** *

Date after which this gateway will not receive software updates for new * features.

*/ inline DescribeGatewayInformationResult& WithSoftwareUpdatesEndDate(const char* value) { SetSoftwareUpdatesEndDate(value); return *this;} /** *

Date after which this gateway will not receive software updates for new * features and bug fixes.

*/ inline const Aws::String& GetDeprecationDate() const{ return m_deprecationDate; } /** *

Date after which this gateway will not receive software updates for new * features and bug fixes.

*/ inline void SetDeprecationDate(const Aws::String& value) { m_deprecationDate = value; } /** *

Date after which this gateway will not receive software updates for new * features and bug fixes.

*/ inline void SetDeprecationDate(Aws::String&& value) { m_deprecationDate = std::move(value); } /** *

Date after which this gateway will not receive software updates for new * features and bug fixes.

*/ inline void SetDeprecationDate(const char* value) { m_deprecationDate.assign(value); } /** *

Date after which this gateway will not receive software updates for new * features and bug fixes.

*/ inline DescribeGatewayInformationResult& WithDeprecationDate(const Aws::String& value) { SetDeprecationDate(value); return *this;} /** *

Date after which this gateway will not receive software updates for new * features and bug fixes.

*/ inline DescribeGatewayInformationResult& WithDeprecationDate(Aws::String&& value) { SetDeprecationDate(std::move(value)); return *this;} /** *

Date after which this gateway will not receive software updates for new * features and bug fixes.

*/ inline DescribeGatewayInformationResult& WithDeprecationDate(const char* value) { SetDeprecationDate(value); return *this;} /** *

Specifies the size of the gateway's metadata cache.

*/ inline const GatewayCapacity& GetGatewayCapacity() const{ return m_gatewayCapacity; } /** *

Specifies the size of the gateway's metadata cache.

*/ inline void SetGatewayCapacity(const GatewayCapacity& value) { m_gatewayCapacity = value; } /** *

Specifies the size of the gateway's metadata cache.

*/ inline void SetGatewayCapacity(GatewayCapacity&& value) { m_gatewayCapacity = std::move(value); } /** *

Specifies the size of the gateway's metadata cache.

*/ inline DescribeGatewayInformationResult& WithGatewayCapacity(const GatewayCapacity& value) { SetGatewayCapacity(value); return *this;} /** *

Specifies the size of the gateway's metadata cache.

*/ inline DescribeGatewayInformationResult& WithGatewayCapacity(GatewayCapacity&& value) { SetGatewayCapacity(std::move(value)); return *this;} /** *

A list of the metadata cache sizes that the gateway can support based on its * current hardware specifications.

*/ inline const Aws::Vector& GetSupportedGatewayCapacities() const{ return m_supportedGatewayCapacities; } /** *

A list of the metadata cache sizes that the gateway can support based on its * current hardware specifications.

*/ inline void SetSupportedGatewayCapacities(const Aws::Vector& value) { m_supportedGatewayCapacities = value; } /** *

A list of the metadata cache sizes that the gateway can support based on its * current hardware specifications.

*/ inline void SetSupportedGatewayCapacities(Aws::Vector&& value) { m_supportedGatewayCapacities = std::move(value); } /** *

A list of the metadata cache sizes that the gateway can support based on its * current hardware specifications.

*/ inline DescribeGatewayInformationResult& WithSupportedGatewayCapacities(const Aws::Vector& value) { SetSupportedGatewayCapacities(value); return *this;} /** *

A list of the metadata cache sizes that the gateway can support based on its * current hardware specifications.

*/ inline DescribeGatewayInformationResult& WithSupportedGatewayCapacities(Aws::Vector&& value) { SetSupportedGatewayCapacities(std::move(value)); return *this;} /** *

A list of the metadata cache sizes that the gateway can support based on its * current hardware specifications.

*/ inline DescribeGatewayInformationResult& AddSupportedGatewayCapacities(const GatewayCapacity& value) { m_supportedGatewayCapacities.push_back(value); return *this; } /** *

A list of the metadata cache sizes that the gateway can support based on its * current hardware specifications.

*/ inline DescribeGatewayInformationResult& AddSupportedGatewayCapacities(GatewayCapacity&& value) { m_supportedGatewayCapacities.push_back(std::move(value)); return *this; } /** *

A unique identifier for the specific instance of the host platform running * the gateway. This value is only available for certain host environments, and its * format depends on the host environment type.

*/ inline const Aws::String& GetHostEnvironmentId() const{ return m_hostEnvironmentId; } /** *

A unique identifier for the specific instance of the host platform running * the gateway. This value is only available for certain host environments, and its * format depends on the host environment type.

*/ inline void SetHostEnvironmentId(const Aws::String& value) { m_hostEnvironmentId = value; } /** *

A unique identifier for the specific instance of the host platform running * the gateway. This value is only available for certain host environments, and its * format depends on the host environment type.

*/ inline void SetHostEnvironmentId(Aws::String&& value) { m_hostEnvironmentId = std::move(value); } /** *

A unique identifier for the specific instance of the host platform running * the gateway. This value is only available for certain host environments, and its * format depends on the host environment type.

*/ inline void SetHostEnvironmentId(const char* value) { m_hostEnvironmentId.assign(value); } /** *

A unique identifier for the specific instance of the host platform running * the gateway. This value is only available for certain host environments, and its * format depends on the host environment type.

*/ inline DescribeGatewayInformationResult& WithHostEnvironmentId(const Aws::String& value) { SetHostEnvironmentId(value); return *this;} /** *

A unique identifier for the specific instance of the host platform running * the gateway. This value is only available for certain host environments, and its * format depends on the host environment type.

*/ inline DescribeGatewayInformationResult& WithHostEnvironmentId(Aws::String&& value) { SetHostEnvironmentId(std::move(value)); return *this;} /** *

A unique identifier for the specific instance of the host platform running * the gateway. This value is only available for certain host environments, and its * format depends on the host environment type.

*/ inline DescribeGatewayInformationResult& WithHostEnvironmentId(const char* value) { SetHostEnvironmentId(value); return *this;} inline const Aws::String& GetRequestId() const{ return m_requestId; } inline void SetRequestId(const Aws::String& value) { m_requestId = value; } inline void SetRequestId(Aws::String&& value) { m_requestId = std::move(value); } inline void SetRequestId(const char* value) { m_requestId.assign(value); } inline DescribeGatewayInformationResult& WithRequestId(const Aws::String& value) { SetRequestId(value); return *this;} inline DescribeGatewayInformationResult& WithRequestId(Aws::String&& value) { SetRequestId(std::move(value)); return *this;} inline DescribeGatewayInformationResult& WithRequestId(const char* value) { SetRequestId(value); return *this;} private: Aws::String m_gatewayARN; Aws::String m_gatewayId; Aws::String m_gatewayName; Aws::String m_gatewayTimezone; Aws::String m_gatewayState; Aws::Vector m_gatewayNetworkInterfaces; Aws::String m_gatewayType; Aws::String m_nextUpdateAvailabilityDate; Aws::String m_lastSoftwareUpdate; Aws::String m_ec2InstanceId; Aws::String m_ec2InstanceRegion; Aws::Vector m_tags; Aws::String m_vPCEndpoint; Aws::String m_cloudWatchLogGroupARN; HostEnvironment m_hostEnvironment; Aws::String m_endpointType; Aws::String m_softwareUpdatesEndDate; Aws::String m_deprecationDate; GatewayCapacity m_gatewayCapacity; Aws::Vector m_supportedGatewayCapacities; Aws::String m_hostEnvironmentId; Aws::String m_requestId; }; } // namespace Model } // namespace StorageGateway } // namespace Aws