feat(hos_client_create, hos_client_destory): 多次调用destory不会导致重复释放

This commit is contained in:
彭宣正
2020-12-14 17:24:58 +08:00
parent 505d529c32
commit 10b370e486
55976 changed files with 8544395 additions and 2 deletions

View File

@@ -0,0 +1,21 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/core/Region.h>
#include <aws/core/utils/memory/stl/AWSString.h>
namespace Aws
{
namespace StorageGateway
{
namespace StorageGatewayEndpoint
{
AWS_STORAGEGATEWAY_API Aws::String ForRegion(const Aws::String& regionName, bool useDualStack = false);
} // namespace StorageGatewayEndpoint
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,23 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/core/client/AWSErrorMarshaller.h>
namespace Aws
{
namespace Client
{
class AWS_STORAGEGATEWAY_API StorageGatewayErrorMarshaller : public Aws::Client::JsonErrorMarshaller
{
public:
Aws::Client::AWSError<Aws::Client::CoreErrors> FindErrorByName(const char* exceptionName) const override;
};
} // namespace Client
} // namespace Aws

View File

@@ -0,0 +1,72 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/core/client/AWSError.h>
#include <aws/core/client/CoreErrors.h>
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
namespace Aws
{
namespace StorageGateway
{
enum class StorageGatewayErrors
{
//From Core//
//////////////////////////////////////////////////////////////////////////////////////////
INCOMPLETE_SIGNATURE = 0,
INTERNAL_FAILURE = 1,
INVALID_ACTION = 2,
INVALID_CLIENT_TOKEN_ID = 3,
INVALID_PARAMETER_COMBINATION = 4,
INVALID_QUERY_PARAMETER = 5,
INVALID_PARAMETER_VALUE = 6,
MISSING_ACTION = 7, // SDK should never allow
MISSING_AUTHENTICATION_TOKEN = 8, // SDK should never allow
MISSING_PARAMETER = 9, // SDK should never allow
OPT_IN_REQUIRED = 10,
REQUEST_EXPIRED = 11,
SERVICE_UNAVAILABLE = 12,
THROTTLING = 13,
VALIDATION = 14,
ACCESS_DENIED = 15,
RESOURCE_NOT_FOUND = 16,
UNRECOGNIZED_CLIENT = 17,
MALFORMED_QUERY_STRING = 18,
SLOW_DOWN = 19,
REQUEST_TIME_TOO_SKEWED = 20,
INVALID_SIGNATURE = 21,
SIGNATURE_DOES_NOT_MATCH = 22,
INVALID_ACCESS_KEY_ID = 23,
REQUEST_TIMEOUT = 24,
NETWORK_CONNECTION = 99,
UNKNOWN = 100,
///////////////////////////////////////////////////////////////////////////////////////////
INVALID_GATEWAY_REQUEST= static_cast<int>(Aws::Client::CoreErrors::SERVICE_EXTENSION_START_RANGE) + 1
};
class AWS_STORAGEGATEWAY_API StorageGatewayError : public Aws::Client::AWSError<StorageGatewayErrors>
{
public:
StorageGatewayError() {}
StorageGatewayError(const Aws::Client::AWSError<Aws::Client::CoreErrors>& rhs) : Aws::Client::AWSError<StorageGatewayErrors>(rhs) {}
StorageGatewayError(Aws::Client::AWSError<Aws::Client::CoreErrors>&& rhs) : Aws::Client::AWSError<StorageGatewayErrors>(rhs) {}
StorageGatewayError(const Aws::Client::AWSError<StorageGatewayErrors>& rhs) : Aws::Client::AWSError<StorageGatewayErrors>(rhs) {}
StorageGatewayError(Aws::Client::AWSError<StorageGatewayErrors>&& rhs) : Aws::Client::AWSError<StorageGatewayErrors>(rhs) {}
template <typename T>
T GetModeledError();
};
namespace StorageGatewayErrorMapper
{
AWS_STORAGEGATEWAY_API Aws::Client::AWSError<Aws::Client::CoreErrors> GetErrorForName(const char* errorName);
}
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,42 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/core/AmazonSerializableWebServiceRequest.h>
#include <aws/core/utils/UnreferencedParam.h>
#include <aws/core/http/HttpRequest.h>
namespace Aws
{
namespace StorageGateway
{
class AWS_STORAGEGATEWAY_API StorageGatewayRequest : public Aws::AmazonSerializableWebServiceRequest
{
public:
virtual ~StorageGatewayRequest () {}
void AddParametersToRequest(Aws::Http::HttpRequest& httpRequest) const { AWS_UNREFERENCED_PARAM(httpRequest); }
inline Aws::Http::HeaderValueCollection GetHeaders() const override
{
auto headers = GetRequestSpecificHeaders();
if(headers.size() == 0 || (headers.size() > 0 && headers.count(Aws::Http::CONTENT_TYPE_HEADER) == 0))
{
headers.emplace(Aws::Http::HeaderValuePair(Aws::Http::CONTENT_TYPE_HEADER, Aws::AMZN_JSON_CONTENT_TYPE_1_1 ));
}
headers.emplace(Aws::Http::HeaderValuePair(Aws::Http::API_VERSION_HEADER, "2013-06-30"));
return headers;
}
protected:
virtual Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const { return Aws::Http::HeaderValueCollection(); }
};
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,29 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#ifdef _MSC_VER
//disable windows complaining about max template size.
#pragma warning (disable : 4503)
#endif // _MSC_VER
#if defined (USE_WINDOWS_DLL_SEMANTICS) || defined (_WIN32)
#ifdef _MSC_VER
#pragma warning(disable : 4251)
#endif // _MSC_VER
#ifdef USE_IMPORT_EXPORT
#ifdef AWS_STORAGEGATEWAY_EXPORTS
#define AWS_STORAGEGATEWAY_API __declspec(dllexport)
#else
#define AWS_STORAGEGATEWAY_API __declspec(dllimport)
#endif /* AWS_STORAGEGATEWAY_EXPORTS */
#else
#define AWS_STORAGEGATEWAY_API
#endif // USE_IMPORT_EXPORT
#else // defined (USE_WINDOWS_DLL_SEMANTICS) || defined (WIN32)
#define AWS_STORAGEGATEWAY_API
#endif // defined (USE_WINDOWS_DLL_SEMANTICS) || defined (WIN32)

View File

@@ -0,0 +1,662 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/storagegateway/StorageGatewayRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/storagegateway/model/Tag.h>
#include <utility>
namespace Aws
{
namespace StorageGateway
{
namespace Model
{
/**
* <p>A JSON object containing one or more of the following fields:</p> <ul> <li>
* <p> <a>ActivateGatewayInput$ActivationKey</a> </p> </li> <li> <p>
* <a>ActivateGatewayInput$GatewayName</a> </p> </li> <li> <p>
* <a>ActivateGatewayInput$GatewayRegion</a> </p> </li> <li> <p>
* <a>ActivateGatewayInput$GatewayTimezone</a> </p> </li> <li> <p>
* <a>ActivateGatewayInput$GatewayType</a> </p> </li> <li> <p>
* <a>ActivateGatewayInput$MediumChangerType</a> </p> </li> <li> <p>
* <a>ActivateGatewayInput$TapeDriveType</a> </p> </li> </ul><p><h3>See Also:</h3>
* <a
* href="http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/ActivateGatewayInput">AWS
* API Reference</a></p>
*/
class AWS_STORAGEGATEWAY_API ActivateGatewayRequest : public StorageGatewayRequest
{
public:
ActivateGatewayRequest();
// 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 "ActivateGateway"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
/**
* <p>Your gateway activation key. You can obtain the activation key by sending an
* HTTP GET request with redirects enabled to the gateway IP address (port 80). The
* redirect URL returned in the response provides you the activation key for your
* gateway in the query string parameter <code>activationKey</code>. It may also
* include other activation-related parameters, however, these are merely defaults
* -- the arguments you pass to the <code>ActivateGateway</code> API call determine
* the actual configuration of your gateway.</p> <p>For more information, see <a
* href="https://docs.aws.amazon.com/storagegateway/latest/userguide/get-activation-key.html">Getting
* activation key</a> in the <i>AWS Storage Gateway User Guide</i>.</p>
*/
inline const Aws::String& GetActivationKey() const{ return m_activationKey; }
/**
* <p>Your gateway activation key. You can obtain the activation key by sending an
* HTTP GET request with redirects enabled to the gateway IP address (port 80). The
* redirect URL returned in the response provides you the activation key for your
* gateway in the query string parameter <code>activationKey</code>. It may also
* include other activation-related parameters, however, these are merely defaults
* -- the arguments you pass to the <code>ActivateGateway</code> API call determine
* the actual configuration of your gateway.</p> <p>For more information, see <a
* href="https://docs.aws.amazon.com/storagegateway/latest/userguide/get-activation-key.html">Getting
* activation key</a> in the <i>AWS Storage Gateway User Guide</i>.</p>
*/
inline bool ActivationKeyHasBeenSet() const { return m_activationKeyHasBeenSet; }
/**
* <p>Your gateway activation key. You can obtain the activation key by sending an
* HTTP GET request with redirects enabled to the gateway IP address (port 80). The
* redirect URL returned in the response provides you the activation key for your
* gateway in the query string parameter <code>activationKey</code>. It may also
* include other activation-related parameters, however, these are merely defaults
* -- the arguments you pass to the <code>ActivateGateway</code> API call determine
* the actual configuration of your gateway.</p> <p>For more information, see <a
* href="https://docs.aws.amazon.com/storagegateway/latest/userguide/get-activation-key.html">Getting
* activation key</a> in the <i>AWS Storage Gateway User Guide</i>.</p>
*/
inline void SetActivationKey(const Aws::String& value) { m_activationKeyHasBeenSet = true; m_activationKey = value; }
/**
* <p>Your gateway activation key. You can obtain the activation key by sending an
* HTTP GET request with redirects enabled to the gateway IP address (port 80). The
* redirect URL returned in the response provides you the activation key for your
* gateway in the query string parameter <code>activationKey</code>. It may also
* include other activation-related parameters, however, these are merely defaults
* -- the arguments you pass to the <code>ActivateGateway</code> API call determine
* the actual configuration of your gateway.</p> <p>For more information, see <a
* href="https://docs.aws.amazon.com/storagegateway/latest/userguide/get-activation-key.html">Getting
* activation key</a> in the <i>AWS Storage Gateway User Guide</i>.</p>
*/
inline void SetActivationKey(Aws::String&& value) { m_activationKeyHasBeenSet = true; m_activationKey = std::move(value); }
/**
* <p>Your gateway activation key. You can obtain the activation key by sending an
* HTTP GET request with redirects enabled to the gateway IP address (port 80). The
* redirect URL returned in the response provides you the activation key for your
* gateway in the query string parameter <code>activationKey</code>. It may also
* include other activation-related parameters, however, these are merely defaults
* -- the arguments you pass to the <code>ActivateGateway</code> API call determine
* the actual configuration of your gateway.</p> <p>For more information, see <a
* href="https://docs.aws.amazon.com/storagegateway/latest/userguide/get-activation-key.html">Getting
* activation key</a> in the <i>AWS Storage Gateway User Guide</i>.</p>
*/
inline void SetActivationKey(const char* value) { m_activationKeyHasBeenSet = true; m_activationKey.assign(value); }
/**
* <p>Your gateway activation key. You can obtain the activation key by sending an
* HTTP GET request with redirects enabled to the gateway IP address (port 80). The
* redirect URL returned in the response provides you the activation key for your
* gateway in the query string parameter <code>activationKey</code>. It may also
* include other activation-related parameters, however, these are merely defaults
* -- the arguments you pass to the <code>ActivateGateway</code> API call determine
* the actual configuration of your gateway.</p> <p>For more information, see <a
* href="https://docs.aws.amazon.com/storagegateway/latest/userguide/get-activation-key.html">Getting
* activation key</a> in the <i>AWS Storage Gateway User Guide</i>.</p>
*/
inline ActivateGatewayRequest& WithActivationKey(const Aws::String& value) { SetActivationKey(value); return *this;}
/**
* <p>Your gateway activation key. You can obtain the activation key by sending an
* HTTP GET request with redirects enabled to the gateway IP address (port 80). The
* redirect URL returned in the response provides you the activation key for your
* gateway in the query string parameter <code>activationKey</code>. It may also
* include other activation-related parameters, however, these are merely defaults
* -- the arguments you pass to the <code>ActivateGateway</code> API call determine
* the actual configuration of your gateway.</p> <p>For more information, see <a
* href="https://docs.aws.amazon.com/storagegateway/latest/userguide/get-activation-key.html">Getting
* activation key</a> in the <i>AWS Storage Gateway User Guide</i>.</p>
*/
inline ActivateGatewayRequest& WithActivationKey(Aws::String&& value) { SetActivationKey(std::move(value)); return *this;}
/**
* <p>Your gateway activation key. You can obtain the activation key by sending an
* HTTP GET request with redirects enabled to the gateway IP address (port 80). The
* redirect URL returned in the response provides you the activation key for your
* gateway in the query string parameter <code>activationKey</code>. It may also
* include other activation-related parameters, however, these are merely defaults
* -- the arguments you pass to the <code>ActivateGateway</code> API call determine
* the actual configuration of your gateway.</p> <p>For more information, see <a
* href="https://docs.aws.amazon.com/storagegateway/latest/userguide/get-activation-key.html">Getting
* activation key</a> in the <i>AWS Storage Gateway User Guide</i>.</p>
*/
inline ActivateGatewayRequest& WithActivationKey(const char* value) { SetActivationKey(value); return *this;}
/**
* <p>The name you configured for your gateway.</p>
*/
inline const Aws::String& GetGatewayName() const{ return m_gatewayName; }
/**
* <p>The name you configured for your gateway.</p>
*/
inline bool GatewayNameHasBeenSet() const { return m_gatewayNameHasBeenSet; }
/**
* <p>The name you configured for your gateway.</p>
*/
inline void SetGatewayName(const Aws::String& value) { m_gatewayNameHasBeenSet = true; m_gatewayName = value; }
/**
* <p>The name you configured for your gateway.</p>
*/
inline void SetGatewayName(Aws::String&& value) { m_gatewayNameHasBeenSet = true; m_gatewayName = std::move(value); }
/**
* <p>The name you configured for your gateway.</p>
*/
inline void SetGatewayName(const char* value) { m_gatewayNameHasBeenSet = true; m_gatewayName.assign(value); }
/**
* <p>The name you configured for your gateway.</p>
*/
inline ActivateGatewayRequest& WithGatewayName(const Aws::String& value) { SetGatewayName(value); return *this;}
/**
* <p>The name you configured for your gateway.</p>
*/
inline ActivateGatewayRequest& WithGatewayName(Aws::String&& value) { SetGatewayName(std::move(value)); return *this;}
/**
* <p>The name you configured for your gateway.</p>
*/
inline ActivateGatewayRequest& WithGatewayName(const char* value) { SetGatewayName(value); return *this;}
/**
* <p>A value that indicates the time zone you want to set for the gateway. The
* time zone is of the format "GMT-hr:mm" or "GMT+hr:mm". For example, GMT-4:00
* indicates the time is 4 hours behind GMT. GMT+2:00 indicates the time is 2 hours
* ahead of GMT. The time zone is used, for example, for scheduling snapshots and
* your gateway's maintenance schedule.</p>
*/
inline const Aws::String& GetGatewayTimezone() const{ return m_gatewayTimezone; }
/**
* <p>A value that indicates the time zone you want to set for the gateway. The
* time zone is of the format "GMT-hr:mm" or "GMT+hr:mm". For example, GMT-4:00
* indicates the time is 4 hours behind GMT. GMT+2:00 indicates the time is 2 hours
* ahead of GMT. The time zone is used, for example, for scheduling snapshots and
* your gateway's maintenance schedule.</p>
*/
inline bool GatewayTimezoneHasBeenSet() const { return m_gatewayTimezoneHasBeenSet; }
/**
* <p>A value that indicates the time zone you want to set for the gateway. The
* time zone is of the format "GMT-hr:mm" or "GMT+hr:mm". For example, GMT-4:00
* indicates the time is 4 hours behind GMT. GMT+2:00 indicates the time is 2 hours
* ahead of GMT. The time zone is used, for example, for scheduling snapshots and
* your gateway's maintenance schedule.</p>
*/
inline void SetGatewayTimezone(const Aws::String& value) { m_gatewayTimezoneHasBeenSet = true; m_gatewayTimezone = value; }
/**
* <p>A value that indicates the time zone you want to set for the gateway. The
* time zone is of the format "GMT-hr:mm" or "GMT+hr:mm". For example, GMT-4:00
* indicates the time is 4 hours behind GMT. GMT+2:00 indicates the time is 2 hours
* ahead of GMT. The time zone is used, for example, for scheduling snapshots and
* your gateway's maintenance schedule.</p>
*/
inline void SetGatewayTimezone(Aws::String&& value) { m_gatewayTimezoneHasBeenSet = true; m_gatewayTimezone = std::move(value); }
/**
* <p>A value that indicates the time zone you want to set for the gateway. The
* time zone is of the format "GMT-hr:mm" or "GMT+hr:mm". For example, GMT-4:00
* indicates the time is 4 hours behind GMT. GMT+2:00 indicates the time is 2 hours
* ahead of GMT. The time zone is used, for example, for scheduling snapshots and
* your gateway's maintenance schedule.</p>
*/
inline void SetGatewayTimezone(const char* value) { m_gatewayTimezoneHasBeenSet = true; m_gatewayTimezone.assign(value); }
/**
* <p>A value that indicates the time zone you want to set for the gateway. The
* time zone is of the format "GMT-hr:mm" or "GMT+hr:mm". For example, GMT-4:00
* indicates the time is 4 hours behind GMT. GMT+2:00 indicates the time is 2 hours
* ahead of GMT. The time zone is used, for example, for scheduling snapshots and
* your gateway's maintenance schedule.</p>
*/
inline ActivateGatewayRequest& WithGatewayTimezone(const Aws::String& value) { SetGatewayTimezone(value); return *this;}
/**
* <p>A value that indicates the time zone you want to set for the gateway. The
* time zone is of the format "GMT-hr:mm" or "GMT+hr:mm". For example, GMT-4:00
* indicates the time is 4 hours behind GMT. GMT+2:00 indicates the time is 2 hours
* ahead of GMT. The time zone is used, for example, for scheduling snapshots and
* your gateway's maintenance schedule.</p>
*/
inline ActivateGatewayRequest& WithGatewayTimezone(Aws::String&& value) { SetGatewayTimezone(std::move(value)); return *this;}
/**
* <p>A value that indicates the time zone you want to set for the gateway. The
* time zone is of the format "GMT-hr:mm" or "GMT+hr:mm". For example, GMT-4:00
* indicates the time is 4 hours behind GMT. GMT+2:00 indicates the time is 2 hours
* ahead of GMT. The time zone is used, for example, for scheduling snapshots and
* your gateway's maintenance schedule.</p>
*/
inline ActivateGatewayRequest& WithGatewayTimezone(const char* value) { SetGatewayTimezone(value); return *this;}
/**
* <p>A value that indicates the AWS Region where you want to store your data. The
* gateway AWS Region specified must be the same AWS Region as the AWS Region in
* your <code>Host</code> header in the request. For more information about
* available AWS Regions and endpoints for AWS Storage Gateway, see <a
* href="https://docs.aws.amazon.com/general/latest/gr/sg.html">AWS Storage Gateway
* endpoints and quotas</a> in the <i>AWS General Reference</i>.</p> <p>Valid
* Values: See <a href="https://docs.aws.amazon.com/general/latest/gr/sg.html">AWS
* Storage Gateway endpoints and quotas</a> in the <i>AWS General Reference</i>.
* </p>
*/
inline const Aws::String& GetGatewayRegion() const{ return m_gatewayRegion; }
/**
* <p>A value that indicates the AWS Region where you want to store your data. The
* gateway AWS Region specified must be the same AWS Region as the AWS Region in
* your <code>Host</code> header in the request. For more information about
* available AWS Regions and endpoints for AWS Storage Gateway, see <a
* href="https://docs.aws.amazon.com/general/latest/gr/sg.html">AWS Storage Gateway
* endpoints and quotas</a> in the <i>AWS General Reference</i>.</p> <p>Valid
* Values: See <a href="https://docs.aws.amazon.com/general/latest/gr/sg.html">AWS
* Storage Gateway endpoints and quotas</a> in the <i>AWS General Reference</i>.
* </p>
*/
inline bool GatewayRegionHasBeenSet() const { return m_gatewayRegionHasBeenSet; }
/**
* <p>A value that indicates the AWS Region where you want to store your data. The
* gateway AWS Region specified must be the same AWS Region as the AWS Region in
* your <code>Host</code> header in the request. For more information about
* available AWS Regions and endpoints for AWS Storage Gateway, see <a
* href="https://docs.aws.amazon.com/general/latest/gr/sg.html">AWS Storage Gateway
* endpoints and quotas</a> in the <i>AWS General Reference</i>.</p> <p>Valid
* Values: See <a href="https://docs.aws.amazon.com/general/latest/gr/sg.html">AWS
* Storage Gateway endpoints and quotas</a> in the <i>AWS General Reference</i>.
* </p>
*/
inline void SetGatewayRegion(const Aws::String& value) { m_gatewayRegionHasBeenSet = true; m_gatewayRegion = value; }
/**
* <p>A value that indicates the AWS Region where you want to store your data. The
* gateway AWS Region specified must be the same AWS Region as the AWS Region in
* your <code>Host</code> header in the request. For more information about
* available AWS Regions and endpoints for AWS Storage Gateway, see <a
* href="https://docs.aws.amazon.com/general/latest/gr/sg.html">AWS Storage Gateway
* endpoints and quotas</a> in the <i>AWS General Reference</i>.</p> <p>Valid
* Values: See <a href="https://docs.aws.amazon.com/general/latest/gr/sg.html">AWS
* Storage Gateway endpoints and quotas</a> in the <i>AWS General Reference</i>.
* </p>
*/
inline void SetGatewayRegion(Aws::String&& value) { m_gatewayRegionHasBeenSet = true; m_gatewayRegion = std::move(value); }
/**
* <p>A value that indicates the AWS Region where you want to store your data. The
* gateway AWS Region specified must be the same AWS Region as the AWS Region in
* your <code>Host</code> header in the request. For more information about
* available AWS Regions and endpoints for AWS Storage Gateway, see <a
* href="https://docs.aws.amazon.com/general/latest/gr/sg.html">AWS Storage Gateway
* endpoints and quotas</a> in the <i>AWS General Reference</i>.</p> <p>Valid
* Values: See <a href="https://docs.aws.amazon.com/general/latest/gr/sg.html">AWS
* Storage Gateway endpoints and quotas</a> in the <i>AWS General Reference</i>.
* </p>
*/
inline void SetGatewayRegion(const char* value) { m_gatewayRegionHasBeenSet = true; m_gatewayRegion.assign(value); }
/**
* <p>A value that indicates the AWS Region where you want to store your data. The
* gateway AWS Region specified must be the same AWS Region as the AWS Region in
* your <code>Host</code> header in the request. For more information about
* available AWS Regions and endpoints for AWS Storage Gateway, see <a
* href="https://docs.aws.amazon.com/general/latest/gr/sg.html">AWS Storage Gateway
* endpoints and quotas</a> in the <i>AWS General Reference</i>.</p> <p>Valid
* Values: See <a href="https://docs.aws.amazon.com/general/latest/gr/sg.html">AWS
* Storage Gateway endpoints and quotas</a> in the <i>AWS General Reference</i>.
* </p>
*/
inline ActivateGatewayRequest& WithGatewayRegion(const Aws::String& value) { SetGatewayRegion(value); return *this;}
/**
* <p>A value that indicates the AWS Region where you want to store your data. The
* gateway AWS Region specified must be the same AWS Region as the AWS Region in
* your <code>Host</code> header in the request. For more information about
* available AWS Regions and endpoints for AWS Storage Gateway, see <a
* href="https://docs.aws.amazon.com/general/latest/gr/sg.html">AWS Storage Gateway
* endpoints and quotas</a> in the <i>AWS General Reference</i>.</p> <p>Valid
* Values: See <a href="https://docs.aws.amazon.com/general/latest/gr/sg.html">AWS
* Storage Gateway endpoints and quotas</a> in the <i>AWS General Reference</i>.
* </p>
*/
inline ActivateGatewayRequest& WithGatewayRegion(Aws::String&& value) { SetGatewayRegion(std::move(value)); return *this;}
/**
* <p>A value that indicates the AWS Region where you want to store your data. The
* gateway AWS Region specified must be the same AWS Region as the AWS Region in
* your <code>Host</code> header in the request. For more information about
* available AWS Regions and endpoints for AWS Storage Gateway, see <a
* href="https://docs.aws.amazon.com/general/latest/gr/sg.html">AWS Storage Gateway
* endpoints and quotas</a> in the <i>AWS General Reference</i>.</p> <p>Valid
* Values: See <a href="https://docs.aws.amazon.com/general/latest/gr/sg.html">AWS
* Storage Gateway endpoints and quotas</a> in the <i>AWS General Reference</i>.
* </p>
*/
inline ActivateGatewayRequest& WithGatewayRegion(const char* value) { SetGatewayRegion(value); return *this;}
/**
* <p>A value that defines the type of gateway to activate. The type specified is
* critical to all later functions of the gateway and cannot be changed after
* activation. The default value is <code>CACHED</code>.</p> <p>Valid Values:
* <code>STORED</code> | <code>CACHED</code> | <code>VTL</code> |
* <code>FILE_S3</code> </p>
*/
inline const Aws::String& GetGatewayType() const{ return m_gatewayType; }
/**
* <p>A value that defines the type of gateway to activate. The type specified is
* critical to all later functions of the gateway and cannot be changed after
* activation. The default value is <code>CACHED</code>.</p> <p>Valid Values:
* <code>STORED</code> | <code>CACHED</code> | <code>VTL</code> |
* <code>FILE_S3</code> </p>
*/
inline bool GatewayTypeHasBeenSet() const { return m_gatewayTypeHasBeenSet; }
/**
* <p>A value that defines the type of gateway to activate. The type specified is
* critical to all later functions of the gateway and cannot be changed after
* activation. The default value is <code>CACHED</code>.</p> <p>Valid Values:
* <code>STORED</code> | <code>CACHED</code> | <code>VTL</code> |
* <code>FILE_S3</code> </p>
*/
inline void SetGatewayType(const Aws::String& value) { m_gatewayTypeHasBeenSet = true; m_gatewayType = value; }
/**
* <p>A value that defines the type of gateway to activate. The type specified is
* critical to all later functions of the gateway and cannot be changed after
* activation. The default value is <code>CACHED</code>.</p> <p>Valid Values:
* <code>STORED</code> | <code>CACHED</code> | <code>VTL</code> |
* <code>FILE_S3</code> </p>
*/
inline void SetGatewayType(Aws::String&& value) { m_gatewayTypeHasBeenSet = true; m_gatewayType = std::move(value); }
/**
* <p>A value that defines the type of gateway to activate. The type specified is
* critical to all later functions of the gateway and cannot be changed after
* activation. The default value is <code>CACHED</code>.</p> <p>Valid Values:
* <code>STORED</code> | <code>CACHED</code> | <code>VTL</code> |
* <code>FILE_S3</code> </p>
*/
inline void SetGatewayType(const char* value) { m_gatewayTypeHasBeenSet = true; m_gatewayType.assign(value); }
/**
* <p>A value that defines the type of gateway to activate. The type specified is
* critical to all later functions of the gateway and cannot be changed after
* activation. The default value is <code>CACHED</code>.</p> <p>Valid Values:
* <code>STORED</code> | <code>CACHED</code> | <code>VTL</code> |
* <code>FILE_S3</code> </p>
*/
inline ActivateGatewayRequest& WithGatewayType(const Aws::String& value) { SetGatewayType(value); return *this;}
/**
* <p>A value that defines the type of gateway to activate. The type specified is
* critical to all later functions of the gateway and cannot be changed after
* activation. The default value is <code>CACHED</code>.</p> <p>Valid Values:
* <code>STORED</code> | <code>CACHED</code> | <code>VTL</code> |
* <code>FILE_S3</code> </p>
*/
inline ActivateGatewayRequest& WithGatewayType(Aws::String&& value) { SetGatewayType(std::move(value)); return *this;}
/**
* <p>A value that defines the type of gateway to activate. The type specified is
* critical to all later functions of the gateway and cannot be changed after
* activation. The default value is <code>CACHED</code>.</p> <p>Valid Values:
* <code>STORED</code> | <code>CACHED</code> | <code>VTL</code> |
* <code>FILE_S3</code> </p>
*/
inline ActivateGatewayRequest& WithGatewayType(const char* value) { SetGatewayType(value); return *this;}
/**
* <p>The value that indicates the type of tape drive to use for tape gateway. This
* field is optional.</p> <p>Valid Values: <code>IBM-ULT3580-TD5</code> </p>
*/
inline const Aws::String& GetTapeDriveType() const{ return m_tapeDriveType; }
/**
* <p>The value that indicates the type of tape drive to use for tape gateway. This
* field is optional.</p> <p>Valid Values: <code>IBM-ULT3580-TD5</code> </p>
*/
inline bool TapeDriveTypeHasBeenSet() const { return m_tapeDriveTypeHasBeenSet; }
/**
* <p>The value that indicates the type of tape drive to use for tape gateway. This
* field is optional.</p> <p>Valid Values: <code>IBM-ULT3580-TD5</code> </p>
*/
inline void SetTapeDriveType(const Aws::String& value) { m_tapeDriveTypeHasBeenSet = true; m_tapeDriveType = value; }
/**
* <p>The value that indicates the type of tape drive to use for tape gateway. This
* field is optional.</p> <p>Valid Values: <code>IBM-ULT3580-TD5</code> </p>
*/
inline void SetTapeDriveType(Aws::String&& value) { m_tapeDriveTypeHasBeenSet = true; m_tapeDriveType = std::move(value); }
/**
* <p>The value that indicates the type of tape drive to use for tape gateway. This
* field is optional.</p> <p>Valid Values: <code>IBM-ULT3580-TD5</code> </p>
*/
inline void SetTapeDriveType(const char* value) { m_tapeDriveTypeHasBeenSet = true; m_tapeDriveType.assign(value); }
/**
* <p>The value that indicates the type of tape drive to use for tape gateway. This
* field is optional.</p> <p>Valid Values: <code>IBM-ULT3580-TD5</code> </p>
*/
inline ActivateGatewayRequest& WithTapeDriveType(const Aws::String& value) { SetTapeDriveType(value); return *this;}
/**
* <p>The value that indicates the type of tape drive to use for tape gateway. This
* field is optional.</p> <p>Valid Values: <code>IBM-ULT3580-TD5</code> </p>
*/
inline ActivateGatewayRequest& WithTapeDriveType(Aws::String&& value) { SetTapeDriveType(std::move(value)); return *this;}
/**
* <p>The value that indicates the type of tape drive to use for tape gateway. This
* field is optional.</p> <p>Valid Values: <code>IBM-ULT3580-TD5</code> </p>
*/
inline ActivateGatewayRequest& WithTapeDriveType(const char* value) { SetTapeDriveType(value); return *this;}
/**
* <p>The value that indicates the type of medium changer to use for tape gateway.
* This field is optional.</p> <p>Valid Values: <code>STK-L700</code> |
* <code>AWS-Gateway-VTL</code> | <code>IBM-03584L32-0402</code> </p>
*/
inline const Aws::String& GetMediumChangerType() const{ return m_mediumChangerType; }
/**
* <p>The value that indicates the type of medium changer to use for tape gateway.
* This field is optional.</p> <p>Valid Values: <code>STK-L700</code> |
* <code>AWS-Gateway-VTL</code> | <code>IBM-03584L32-0402</code> </p>
*/
inline bool MediumChangerTypeHasBeenSet() const { return m_mediumChangerTypeHasBeenSet; }
/**
* <p>The value that indicates the type of medium changer to use for tape gateway.
* This field is optional.</p> <p>Valid Values: <code>STK-L700</code> |
* <code>AWS-Gateway-VTL</code> | <code>IBM-03584L32-0402</code> </p>
*/
inline void SetMediumChangerType(const Aws::String& value) { m_mediumChangerTypeHasBeenSet = true; m_mediumChangerType = value; }
/**
* <p>The value that indicates the type of medium changer to use for tape gateway.
* This field is optional.</p> <p>Valid Values: <code>STK-L700</code> |
* <code>AWS-Gateway-VTL</code> | <code>IBM-03584L32-0402</code> </p>
*/
inline void SetMediumChangerType(Aws::String&& value) { m_mediumChangerTypeHasBeenSet = true; m_mediumChangerType = std::move(value); }
/**
* <p>The value that indicates the type of medium changer to use for tape gateway.
* This field is optional.</p> <p>Valid Values: <code>STK-L700</code> |
* <code>AWS-Gateway-VTL</code> | <code>IBM-03584L32-0402</code> </p>
*/
inline void SetMediumChangerType(const char* value) { m_mediumChangerTypeHasBeenSet = true; m_mediumChangerType.assign(value); }
/**
* <p>The value that indicates the type of medium changer to use for tape gateway.
* This field is optional.</p> <p>Valid Values: <code>STK-L700</code> |
* <code>AWS-Gateway-VTL</code> | <code>IBM-03584L32-0402</code> </p>
*/
inline ActivateGatewayRequest& WithMediumChangerType(const Aws::String& value) { SetMediumChangerType(value); return *this;}
/**
* <p>The value that indicates the type of medium changer to use for tape gateway.
* This field is optional.</p> <p>Valid Values: <code>STK-L700</code> |
* <code>AWS-Gateway-VTL</code> | <code>IBM-03584L32-0402</code> </p>
*/
inline ActivateGatewayRequest& WithMediumChangerType(Aws::String&& value) { SetMediumChangerType(std::move(value)); return *this;}
/**
* <p>The value that indicates the type of medium changer to use for tape gateway.
* This field is optional.</p> <p>Valid Values: <code>STK-L700</code> |
* <code>AWS-Gateway-VTL</code> | <code>IBM-03584L32-0402</code> </p>
*/
inline ActivateGatewayRequest& WithMediumChangerType(const char* value) { SetMediumChangerType(value); return *this;}
/**
* <p>A list of up to 50 tags that you can assign to the gateway. Each tag is a
* key-value pair.</p> <p>Valid characters for key and value are letters,
* spaces, and numbers that can be represented in UTF-8 format, and the following
* special characters: + - = . _ : / @. The maximum length of a tag's key is 128
* characters, and the maximum length for a tag's value is 256 characters.</p>
*
*/
inline const Aws::Vector<Tag>& GetTags() const{ return m_tags; }
/**
* <p>A list of up to 50 tags that you can assign to the gateway. Each tag is a
* key-value pair.</p> <p>Valid characters for key and value are letters,
* spaces, and numbers that can be represented in UTF-8 format, and the following
* special characters: + - = . _ : / @. The maximum length of a tag's key is 128
* characters, and the maximum length for a tag's value is 256 characters.</p>
*
*/
inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
/**
* <p>A list of up to 50 tags that you can assign to the gateway. Each tag is a
* key-value pair.</p> <p>Valid characters for key and value are letters,
* spaces, and numbers that can be represented in UTF-8 format, and the following
* special characters: + - = . _ : / @. The maximum length of a tag's key is 128
* characters, and the maximum length for a tag's value is 256 characters.</p>
*
*/
inline void SetTags(const Aws::Vector<Tag>& value) { m_tagsHasBeenSet = true; m_tags = value; }
/**
* <p>A list of up to 50 tags that you can assign to the gateway. Each tag is a
* key-value pair.</p> <p>Valid characters for key and value are letters,
* spaces, and numbers that can be represented in UTF-8 format, and the following
* special characters: + - = . _ : / @. The maximum length of a tag's key is 128
* characters, and the maximum length for a tag's value is 256 characters.</p>
*
*/
inline void SetTags(Aws::Vector<Tag>&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); }
/**
* <p>A list of up to 50 tags that you can assign to the gateway. Each tag is a
* key-value pair.</p> <p>Valid characters for key and value are letters,
* spaces, and numbers that can be represented in UTF-8 format, and the following
* special characters: + - = . _ : / @. The maximum length of a tag's key is 128
* characters, and the maximum length for a tag's value is 256 characters.</p>
*
*/
inline ActivateGatewayRequest& WithTags(const Aws::Vector<Tag>& value) { SetTags(value); return *this;}
/**
* <p>A list of up to 50 tags that you can assign to the gateway. Each tag is a
* key-value pair.</p> <p>Valid characters for key and value are letters,
* spaces, and numbers that can be represented in UTF-8 format, and the following
* special characters: + - = . _ : / @. The maximum length of a tag's key is 128
* characters, and the maximum length for a tag's value is 256 characters.</p>
*
*/
inline ActivateGatewayRequest& WithTags(Aws::Vector<Tag>&& value) { SetTags(std::move(value)); return *this;}
/**
* <p>A list of up to 50 tags that you can assign to the gateway. Each tag is a
* key-value pair.</p> <p>Valid characters for key and value are letters,
* spaces, and numbers that can be represented in UTF-8 format, and the following
* special characters: + - = . _ : / @. The maximum length of a tag's key is 128
* characters, and the maximum length for a tag's value is 256 characters.</p>
*
*/
inline ActivateGatewayRequest& AddTags(const Tag& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; }
/**
* <p>A list of up to 50 tags that you can assign to the gateway. Each tag is a
* key-value pair.</p> <p>Valid characters for key and value are letters,
* spaces, and numbers that can be represented in UTF-8 format, and the following
* special characters: + - = . _ : / @. The maximum length of a tag's key is 128
* characters, and the maximum length for a tag's value is 256 characters.</p>
*
*/
inline ActivateGatewayRequest& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; }
private:
Aws::String m_activationKey;
bool m_activationKeyHasBeenSet;
Aws::String m_gatewayName;
bool m_gatewayNameHasBeenSet;
Aws::String m_gatewayTimezone;
bool m_gatewayTimezoneHasBeenSet;
Aws::String m_gatewayRegion;
bool m_gatewayRegionHasBeenSet;
Aws::String m_gatewayType;
bool m_gatewayTypeHasBeenSet;
Aws::String m_tapeDriveType;
bool m_tapeDriveTypeHasBeenSet;
Aws::String m_mediumChangerType;
bool m_mediumChangerTypeHasBeenSet;
Aws::Vector<Tag> m_tags;
bool m_tagsHasBeenSet;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,74 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace StorageGateway
{
namespace Model
{
/**
* <p>AWS Storage Gateway returns the Amazon Resource Name (ARN) of the activated
* gateway. It is a string made of information such as your account, gateway name,
* and AWS Region. This ARN is used to reference the gateway in other API
* operations as well as resource-based authorization.</p> <p>For gateways
* activated prior to September 02, 2015, the gateway ARN contains the gateway name
* rather than the gateway ID. Changing the name of the gateway has no effect on
* the gateway ARN.</p> <p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/ActivateGatewayOutput">AWS
* API Reference</a></p>
*/
class AWS_STORAGEGATEWAY_API ActivateGatewayResult
{
public:
ActivateGatewayResult();
ActivateGatewayResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
ActivateGatewayResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& 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 ActivateGatewayResult& WithGatewayARN(const Aws::String& value) { SetGatewayARN(value); return *this;}
inline ActivateGatewayResult& WithGatewayARN(Aws::String&& value) { SetGatewayARN(std::move(value)); return *this;}
inline ActivateGatewayResult& WithGatewayARN(const char* value) { SetGatewayARN(value); return *this;}
private:
Aws::String m_gatewayARN;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,36 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
namespace Aws
{
namespace StorageGateway
{
namespace Model
{
enum class ActiveDirectoryStatus
{
NOT_SET,
ACCESS_DENIED,
DETACHED,
JOINED,
JOINING,
NETWORK_ERROR,
TIMEOUT,
UNKNOWN_ERROR
};
namespace ActiveDirectoryStatusMapper
{
AWS_STORAGEGATEWAY_API ActiveDirectoryStatus GetActiveDirectoryStatusForName(const Aws::String& name);
AWS_STORAGEGATEWAY_API Aws::String GetNameForActiveDirectoryStatus(ActiveDirectoryStatus value);
} // namespace ActiveDirectoryStatusMapper
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,137 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/storagegateway/StorageGatewayRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <utility>
namespace Aws
{
namespace StorageGateway
{
namespace Model
{
/**
*/
class AWS_STORAGEGATEWAY_API AddCacheRequest : public StorageGatewayRequest
{
public:
AddCacheRequest();
// 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 "AddCache"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
inline const Aws::String& GetGatewayARN() const{ return m_gatewayARN; }
inline bool GatewayARNHasBeenSet() const { return m_gatewayARNHasBeenSet; }
inline void SetGatewayARN(const Aws::String& value) { m_gatewayARNHasBeenSet = true; m_gatewayARN = value; }
inline void SetGatewayARN(Aws::String&& value) { m_gatewayARNHasBeenSet = true; m_gatewayARN = std::move(value); }
inline void SetGatewayARN(const char* value) { m_gatewayARNHasBeenSet = true; m_gatewayARN.assign(value); }
inline AddCacheRequest& WithGatewayARN(const Aws::String& value) { SetGatewayARN(value); return *this;}
inline AddCacheRequest& WithGatewayARN(Aws::String&& value) { SetGatewayARN(std::move(value)); return *this;}
inline AddCacheRequest& WithGatewayARN(const char* value) { SetGatewayARN(value); return *this;}
/**
* <p>An array of strings that identify disks that are to be configured as working
* storage. Each string has a minimum length of 1 and maximum length of 300. You
* can get the disk IDs from the <a>ListLocalDisks</a> API.</p>
*/
inline const Aws::Vector<Aws::String>& GetDiskIds() const{ return m_diskIds; }
/**
* <p>An array of strings that identify disks that are to be configured as working
* storage. Each string has a minimum length of 1 and maximum length of 300. You
* can get the disk IDs from the <a>ListLocalDisks</a> API.</p>
*/
inline bool DiskIdsHasBeenSet() const { return m_diskIdsHasBeenSet; }
/**
* <p>An array of strings that identify disks that are to be configured as working
* storage. Each string has a minimum length of 1 and maximum length of 300. You
* can get the disk IDs from the <a>ListLocalDisks</a> API.</p>
*/
inline void SetDiskIds(const Aws::Vector<Aws::String>& value) { m_diskIdsHasBeenSet = true; m_diskIds = value; }
/**
* <p>An array of strings that identify disks that are to be configured as working
* storage. Each string has a minimum length of 1 and maximum length of 300. You
* can get the disk IDs from the <a>ListLocalDisks</a> API.</p>
*/
inline void SetDiskIds(Aws::Vector<Aws::String>&& value) { m_diskIdsHasBeenSet = true; m_diskIds = std::move(value); }
/**
* <p>An array of strings that identify disks that are to be configured as working
* storage. Each string has a minimum length of 1 and maximum length of 300. You
* can get the disk IDs from the <a>ListLocalDisks</a> API.</p>
*/
inline AddCacheRequest& WithDiskIds(const Aws::Vector<Aws::String>& value) { SetDiskIds(value); return *this;}
/**
* <p>An array of strings that identify disks that are to be configured as working
* storage. Each string has a minimum length of 1 and maximum length of 300. You
* can get the disk IDs from the <a>ListLocalDisks</a> API.</p>
*/
inline AddCacheRequest& WithDiskIds(Aws::Vector<Aws::String>&& value) { SetDiskIds(std::move(value)); return *this;}
/**
* <p>An array of strings that identify disks that are to be configured as working
* storage. Each string has a minimum length of 1 and maximum length of 300. You
* can get the disk IDs from the <a>ListLocalDisks</a> API.</p>
*/
inline AddCacheRequest& AddDiskIds(const Aws::String& value) { m_diskIdsHasBeenSet = true; m_diskIds.push_back(value); return *this; }
/**
* <p>An array of strings that identify disks that are to be configured as working
* storage. Each string has a minimum length of 1 and maximum length of 300. You
* can get the disk IDs from the <a>ListLocalDisks</a> API.</p>
*/
inline AddCacheRequest& AddDiskIds(Aws::String&& value) { m_diskIdsHasBeenSet = true; m_diskIds.push_back(std::move(value)); return *this; }
/**
* <p>An array of strings that identify disks that are to be configured as working
* storage. Each string has a minimum length of 1 and maximum length of 300. You
* can get the disk IDs from the <a>ListLocalDisks</a> API.</p>
*/
inline AddCacheRequest& AddDiskIds(const char* value) { m_diskIdsHasBeenSet = true; m_diskIds.push_back(value); return *this; }
private:
Aws::String m_gatewayARN;
bool m_gatewayARNHasBeenSet;
Aws::Vector<Aws::String> m_diskIds;
bool m_diskIdsHasBeenSet;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,63 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace StorageGateway
{
namespace Model
{
class AWS_STORAGEGATEWAY_API AddCacheResult
{
public:
AddCacheResult();
AddCacheResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
AddCacheResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& 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 AddCacheResult& WithGatewayARN(const Aws::String& value) { SetGatewayARN(value); return *this;}
inline AddCacheResult& WithGatewayARN(Aws::String&& value) { SetGatewayARN(std::move(value)); return *this;}
inline AddCacheResult& WithGatewayARN(const char* value) { SetGatewayARN(value); return *this;}
private:
Aws::String m_gatewayARN;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,166 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/storagegateway/StorageGatewayRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/storagegateway/model/Tag.h>
#include <utility>
namespace Aws
{
namespace StorageGateway
{
namespace Model
{
/**
* <p>AddTagsToResourceInput</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/AddTagsToResourceInput">AWS
* API Reference</a></p>
*/
class AWS_STORAGEGATEWAY_API AddTagsToResourceRequest : public StorageGatewayRequest
{
public:
AddTagsToResourceRequest();
// 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 "AddTagsToResource"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
/**
* <p>The Amazon Resource Name (ARN) of the resource you want to add tags to.</p>
*/
inline const Aws::String& GetResourceARN() const{ return m_resourceARN; }
/**
* <p>The Amazon Resource Name (ARN) of the resource you want to add tags to.</p>
*/
inline bool ResourceARNHasBeenSet() const { return m_resourceARNHasBeenSet; }
/**
* <p>The Amazon Resource Name (ARN) of the resource you want to add tags to.</p>
*/
inline void SetResourceARN(const Aws::String& value) { m_resourceARNHasBeenSet = true; m_resourceARN = value; }
/**
* <p>The Amazon Resource Name (ARN) of the resource you want to add tags to.</p>
*/
inline void SetResourceARN(Aws::String&& value) { m_resourceARNHasBeenSet = true; m_resourceARN = std::move(value); }
/**
* <p>The Amazon Resource Name (ARN) of the resource you want to add tags to.</p>
*/
inline void SetResourceARN(const char* value) { m_resourceARNHasBeenSet = true; m_resourceARN.assign(value); }
/**
* <p>The Amazon Resource Name (ARN) of the resource you want to add tags to.</p>
*/
inline AddTagsToResourceRequest& WithResourceARN(const Aws::String& value) { SetResourceARN(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the resource you want to add tags to.</p>
*/
inline AddTagsToResourceRequest& WithResourceARN(Aws::String&& value) { SetResourceARN(std::move(value)); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the resource you want to add tags to.</p>
*/
inline AddTagsToResourceRequest& WithResourceARN(const char* value) { SetResourceARN(value); return *this;}
/**
* <p>The key-value pair that represents the tag you want to add to the resource.
* The value can be an empty string.</p> <p>Valid characters for key and
* value are letters, spaces, and numbers representable in UTF-8 format, and the
* following special characters: + - = . _ : / @. The maximum length of a tag's key
* is 128 characters, and the maximum length for a tag's value is 256.</p>
*/
inline const Aws::Vector<Tag>& GetTags() const{ return m_tags; }
/**
* <p>The key-value pair that represents the tag you want to add to the resource.
* The value can be an empty string.</p> <p>Valid characters for key and
* value are letters, spaces, and numbers representable in UTF-8 format, and the
* following special characters: + - = . _ : / @. The maximum length of a tag's key
* is 128 characters, and the maximum length for a tag's value is 256.</p>
*/
inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
/**
* <p>The key-value pair that represents the tag you want to add to the resource.
* The value can be an empty string.</p> <p>Valid characters for key and
* value are letters, spaces, and numbers representable in UTF-8 format, and the
* following special characters: + - = . _ : / @. The maximum length of a tag's key
* is 128 characters, and the maximum length for a tag's value is 256.</p>
*/
inline void SetTags(const Aws::Vector<Tag>& value) { m_tagsHasBeenSet = true; m_tags = value; }
/**
* <p>The key-value pair that represents the tag you want to add to the resource.
* The value can be an empty string.</p> <p>Valid characters for key and
* value are letters, spaces, and numbers representable in UTF-8 format, and the
* following special characters: + - = . _ : / @. The maximum length of a tag's key
* is 128 characters, and the maximum length for a tag's value is 256.</p>
*/
inline void SetTags(Aws::Vector<Tag>&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); }
/**
* <p>The key-value pair that represents the tag you want to add to the resource.
* The value can be an empty string.</p> <p>Valid characters for key and
* value are letters, spaces, and numbers representable in UTF-8 format, and the
* following special characters: + - = . _ : / @. The maximum length of a tag's key
* is 128 characters, and the maximum length for a tag's value is 256.</p>
*/
inline AddTagsToResourceRequest& WithTags(const Aws::Vector<Tag>& value) { SetTags(value); return *this;}
/**
* <p>The key-value pair that represents the tag you want to add to the resource.
* The value can be an empty string.</p> <p>Valid characters for key and
* value are letters, spaces, and numbers representable in UTF-8 format, and the
* following special characters: + - = . _ : / @. The maximum length of a tag's key
* is 128 characters, and the maximum length for a tag's value is 256.</p>
*/
inline AddTagsToResourceRequest& WithTags(Aws::Vector<Tag>&& value) { SetTags(std::move(value)); return *this;}
/**
* <p>The key-value pair that represents the tag you want to add to the resource.
* The value can be an empty string.</p> <p>Valid characters for key and
* value are letters, spaces, and numbers representable in UTF-8 format, and the
* following special characters: + - = . _ : / @. The maximum length of a tag's key
* is 128 characters, and the maximum length for a tag's value is 256.</p>
*/
inline AddTagsToResourceRequest& AddTags(const Tag& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; }
/**
* <p>The key-value pair that represents the tag you want to add to the resource.
* The value can be an empty string.</p> <p>Valid characters for key and
* value are letters, spaces, and numbers representable in UTF-8 format, and the
* following special characters: + - = . _ : / @. The maximum length of a tag's key
* is 128 characters, and the maximum length for a tag's value is 256.</p>
*/
inline AddTagsToResourceRequest& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; }
private:
Aws::String m_resourceARN;
bool m_resourceARNHasBeenSet;
Aws::Vector<Tag> m_tags;
bool m_tagsHasBeenSet;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,82 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace StorageGateway
{
namespace Model
{
/**
* <p>AddTagsToResourceOutput</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/AddTagsToResourceOutput">AWS
* API Reference</a></p>
*/
class AWS_STORAGEGATEWAY_API AddTagsToResourceResult
{
public:
AddTagsToResourceResult();
AddTagsToResourceResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
AddTagsToResourceResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>The Amazon Resource Name (ARN) of the resource you want to add tags to.</p>
*/
inline const Aws::String& GetResourceARN() const{ return m_resourceARN; }
/**
* <p>The Amazon Resource Name (ARN) of the resource you want to add tags to.</p>
*/
inline void SetResourceARN(const Aws::String& value) { m_resourceARN = value; }
/**
* <p>The Amazon Resource Name (ARN) of the resource you want to add tags to.</p>
*/
inline void SetResourceARN(Aws::String&& value) { m_resourceARN = std::move(value); }
/**
* <p>The Amazon Resource Name (ARN) of the resource you want to add tags to.</p>
*/
inline void SetResourceARN(const char* value) { m_resourceARN.assign(value); }
/**
* <p>The Amazon Resource Name (ARN) of the resource you want to add tags to.</p>
*/
inline AddTagsToResourceResult& WithResourceARN(const Aws::String& value) { SetResourceARN(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the resource you want to add tags to.</p>
*/
inline AddTagsToResourceResult& WithResourceARN(Aws::String&& value) { SetResourceARN(std::move(value)); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the resource you want to add tags to.</p>
*/
inline AddTagsToResourceResult& WithResourceARN(const char* value) { SetResourceARN(value); return *this;}
private:
Aws::String m_resourceARN;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,137 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/storagegateway/StorageGatewayRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <utility>
namespace Aws
{
namespace StorageGateway
{
namespace Model
{
/**
*/
class AWS_STORAGEGATEWAY_API AddUploadBufferRequest : public StorageGatewayRequest
{
public:
AddUploadBufferRequest();
// 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 "AddUploadBuffer"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
inline const Aws::String& GetGatewayARN() const{ return m_gatewayARN; }
inline bool GatewayARNHasBeenSet() const { return m_gatewayARNHasBeenSet; }
inline void SetGatewayARN(const Aws::String& value) { m_gatewayARNHasBeenSet = true; m_gatewayARN = value; }
inline void SetGatewayARN(Aws::String&& value) { m_gatewayARNHasBeenSet = true; m_gatewayARN = std::move(value); }
inline void SetGatewayARN(const char* value) { m_gatewayARNHasBeenSet = true; m_gatewayARN.assign(value); }
inline AddUploadBufferRequest& WithGatewayARN(const Aws::String& value) { SetGatewayARN(value); return *this;}
inline AddUploadBufferRequest& WithGatewayARN(Aws::String&& value) { SetGatewayARN(std::move(value)); return *this;}
inline AddUploadBufferRequest& WithGatewayARN(const char* value) { SetGatewayARN(value); return *this;}
/**
* <p>An array of strings that identify disks that are to be configured as working
* storage. Each string has a minimum length of 1 and maximum length of 300. You
* can get the disk IDs from the <a>ListLocalDisks</a> API.</p>
*/
inline const Aws::Vector<Aws::String>& GetDiskIds() const{ return m_diskIds; }
/**
* <p>An array of strings that identify disks that are to be configured as working
* storage. Each string has a minimum length of 1 and maximum length of 300. You
* can get the disk IDs from the <a>ListLocalDisks</a> API.</p>
*/
inline bool DiskIdsHasBeenSet() const { return m_diskIdsHasBeenSet; }
/**
* <p>An array of strings that identify disks that are to be configured as working
* storage. Each string has a minimum length of 1 and maximum length of 300. You
* can get the disk IDs from the <a>ListLocalDisks</a> API.</p>
*/
inline void SetDiskIds(const Aws::Vector<Aws::String>& value) { m_diskIdsHasBeenSet = true; m_diskIds = value; }
/**
* <p>An array of strings that identify disks that are to be configured as working
* storage. Each string has a minimum length of 1 and maximum length of 300. You
* can get the disk IDs from the <a>ListLocalDisks</a> API.</p>
*/
inline void SetDiskIds(Aws::Vector<Aws::String>&& value) { m_diskIdsHasBeenSet = true; m_diskIds = std::move(value); }
/**
* <p>An array of strings that identify disks that are to be configured as working
* storage. Each string has a minimum length of 1 and maximum length of 300. You
* can get the disk IDs from the <a>ListLocalDisks</a> API.</p>
*/
inline AddUploadBufferRequest& WithDiskIds(const Aws::Vector<Aws::String>& value) { SetDiskIds(value); return *this;}
/**
* <p>An array of strings that identify disks that are to be configured as working
* storage. Each string has a minimum length of 1 and maximum length of 300. You
* can get the disk IDs from the <a>ListLocalDisks</a> API.</p>
*/
inline AddUploadBufferRequest& WithDiskIds(Aws::Vector<Aws::String>&& value) { SetDiskIds(std::move(value)); return *this;}
/**
* <p>An array of strings that identify disks that are to be configured as working
* storage. Each string has a minimum length of 1 and maximum length of 300. You
* can get the disk IDs from the <a>ListLocalDisks</a> API.</p>
*/
inline AddUploadBufferRequest& AddDiskIds(const Aws::String& value) { m_diskIdsHasBeenSet = true; m_diskIds.push_back(value); return *this; }
/**
* <p>An array of strings that identify disks that are to be configured as working
* storage. Each string has a minimum length of 1 and maximum length of 300. You
* can get the disk IDs from the <a>ListLocalDisks</a> API.</p>
*/
inline AddUploadBufferRequest& AddDiskIds(Aws::String&& value) { m_diskIdsHasBeenSet = true; m_diskIds.push_back(std::move(value)); return *this; }
/**
* <p>An array of strings that identify disks that are to be configured as working
* storage. Each string has a minimum length of 1 and maximum length of 300. You
* can get the disk IDs from the <a>ListLocalDisks</a> API.</p>
*/
inline AddUploadBufferRequest& AddDiskIds(const char* value) { m_diskIdsHasBeenSet = true; m_diskIds.push_back(value); return *this; }
private:
Aws::String m_gatewayARN;
bool m_gatewayARNHasBeenSet;
Aws::Vector<Aws::String> m_diskIds;
bool m_diskIdsHasBeenSet;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,63 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace StorageGateway
{
namespace Model
{
class AWS_STORAGEGATEWAY_API AddUploadBufferResult
{
public:
AddUploadBufferResult();
AddUploadBufferResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
AddUploadBufferResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& 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 AddUploadBufferResult& WithGatewayARN(const Aws::String& value) { SetGatewayARN(value); return *this;}
inline AddUploadBufferResult& WithGatewayARN(Aws::String&& value) { SetGatewayARN(std::move(value)); return *this;}
inline AddUploadBufferResult& WithGatewayARN(const char* value) { SetGatewayARN(value); return *this;}
private:
Aws::String m_gatewayARN;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,142 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/storagegateway/StorageGatewayRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <utility>
namespace Aws
{
namespace StorageGateway
{
namespace Model
{
/**
* <p>A JSON object containing one or more of the following fields:</p> <ul> <li>
* <p> <a>AddWorkingStorageInput$DiskIds</a> </p> </li> </ul><p><h3>See Also:</h3>
* <a
* href="http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/AddWorkingStorageInput">AWS
* API Reference</a></p>
*/
class AWS_STORAGEGATEWAY_API AddWorkingStorageRequest : public StorageGatewayRequest
{
public:
AddWorkingStorageRequest();
// 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 "AddWorkingStorage"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
inline const Aws::String& GetGatewayARN() const{ return m_gatewayARN; }
inline bool GatewayARNHasBeenSet() const { return m_gatewayARNHasBeenSet; }
inline void SetGatewayARN(const Aws::String& value) { m_gatewayARNHasBeenSet = true; m_gatewayARN = value; }
inline void SetGatewayARN(Aws::String&& value) { m_gatewayARNHasBeenSet = true; m_gatewayARN = std::move(value); }
inline void SetGatewayARN(const char* value) { m_gatewayARNHasBeenSet = true; m_gatewayARN.assign(value); }
inline AddWorkingStorageRequest& WithGatewayARN(const Aws::String& value) { SetGatewayARN(value); return *this;}
inline AddWorkingStorageRequest& WithGatewayARN(Aws::String&& value) { SetGatewayARN(std::move(value)); return *this;}
inline AddWorkingStorageRequest& WithGatewayARN(const char* value) { SetGatewayARN(value); return *this;}
/**
* <p>An array of strings that identify disks that are to be configured as working
* storage. Each string has a minimum length of 1 and maximum length of 300. You
* can get the disk IDs from the <a>ListLocalDisks</a> API.</p>
*/
inline const Aws::Vector<Aws::String>& GetDiskIds() const{ return m_diskIds; }
/**
* <p>An array of strings that identify disks that are to be configured as working
* storage. Each string has a minimum length of 1 and maximum length of 300. You
* can get the disk IDs from the <a>ListLocalDisks</a> API.</p>
*/
inline bool DiskIdsHasBeenSet() const { return m_diskIdsHasBeenSet; }
/**
* <p>An array of strings that identify disks that are to be configured as working
* storage. Each string has a minimum length of 1 and maximum length of 300. You
* can get the disk IDs from the <a>ListLocalDisks</a> API.</p>
*/
inline void SetDiskIds(const Aws::Vector<Aws::String>& value) { m_diskIdsHasBeenSet = true; m_diskIds = value; }
/**
* <p>An array of strings that identify disks that are to be configured as working
* storage. Each string has a minimum length of 1 and maximum length of 300. You
* can get the disk IDs from the <a>ListLocalDisks</a> API.</p>
*/
inline void SetDiskIds(Aws::Vector<Aws::String>&& value) { m_diskIdsHasBeenSet = true; m_diskIds = std::move(value); }
/**
* <p>An array of strings that identify disks that are to be configured as working
* storage. Each string has a minimum length of 1 and maximum length of 300. You
* can get the disk IDs from the <a>ListLocalDisks</a> API.</p>
*/
inline AddWorkingStorageRequest& WithDiskIds(const Aws::Vector<Aws::String>& value) { SetDiskIds(value); return *this;}
/**
* <p>An array of strings that identify disks that are to be configured as working
* storage. Each string has a minimum length of 1 and maximum length of 300. You
* can get the disk IDs from the <a>ListLocalDisks</a> API.</p>
*/
inline AddWorkingStorageRequest& WithDiskIds(Aws::Vector<Aws::String>&& value) { SetDiskIds(std::move(value)); return *this;}
/**
* <p>An array of strings that identify disks that are to be configured as working
* storage. Each string has a minimum length of 1 and maximum length of 300. You
* can get the disk IDs from the <a>ListLocalDisks</a> API.</p>
*/
inline AddWorkingStorageRequest& AddDiskIds(const Aws::String& value) { m_diskIdsHasBeenSet = true; m_diskIds.push_back(value); return *this; }
/**
* <p>An array of strings that identify disks that are to be configured as working
* storage. Each string has a minimum length of 1 and maximum length of 300. You
* can get the disk IDs from the <a>ListLocalDisks</a> API.</p>
*/
inline AddWorkingStorageRequest& AddDiskIds(Aws::String&& value) { m_diskIdsHasBeenSet = true; m_diskIds.push_back(std::move(value)); return *this; }
/**
* <p>An array of strings that identify disks that are to be configured as working
* storage. Each string has a minimum length of 1 and maximum length of 300. You
* can get the disk IDs from the <a>ListLocalDisks</a> API.</p>
*/
inline AddWorkingStorageRequest& AddDiskIds(const char* value) { m_diskIdsHasBeenSet = true; m_diskIds.push_back(value); return *this; }
private:
Aws::String m_gatewayARN;
bool m_gatewayARNHasBeenSet;
Aws::Vector<Aws::String> m_diskIds;
bool m_diskIdsHasBeenSet;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,69 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace StorageGateway
{
namespace Model
{
/**
* <p>A JSON object containing the Amazon Resource Name (ARN) of the gateway for
* which working storage was configured.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/AddWorkingStorageOutput">AWS
* API Reference</a></p>
*/
class AWS_STORAGEGATEWAY_API AddWorkingStorageResult
{
public:
AddWorkingStorageResult();
AddWorkingStorageResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
AddWorkingStorageResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& 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 AddWorkingStorageResult& WithGatewayARN(const Aws::String& value) { SetGatewayARN(value); return *this;}
inline AddWorkingStorageResult& WithGatewayARN(Aws::String&& value) { SetGatewayARN(std::move(value)); return *this;}
inline AddWorkingStorageResult& WithGatewayARN(const char* value) { SetGatewayARN(value); return *this;}
private:
Aws::String m_gatewayARN;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,225 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/storagegateway/StorageGatewayRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace StorageGateway
{
namespace Model
{
/**
*/
class AWS_STORAGEGATEWAY_API AssignTapePoolRequest : public StorageGatewayRequest
{
public:
AssignTapePoolRequest();
// 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 "AssignTapePool"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
/**
* <p>The unique Amazon Resource Name (ARN) of the virtual tape that you want to
* add to the tape pool.</p>
*/
inline const Aws::String& GetTapeARN() const{ return m_tapeARN; }
/**
* <p>The unique Amazon Resource Name (ARN) of the virtual tape that you want to
* add to the tape pool.</p>
*/
inline bool TapeARNHasBeenSet() const { return m_tapeARNHasBeenSet; }
/**
* <p>The unique Amazon Resource Name (ARN) of the virtual tape that you want to
* add to the tape pool.</p>
*/
inline void SetTapeARN(const Aws::String& value) { m_tapeARNHasBeenSet = true; m_tapeARN = value; }
/**
* <p>The unique Amazon Resource Name (ARN) of the virtual tape that you want to
* add to the tape pool.</p>
*/
inline void SetTapeARN(Aws::String&& value) { m_tapeARNHasBeenSet = true; m_tapeARN = std::move(value); }
/**
* <p>The unique Amazon Resource Name (ARN) of the virtual tape that you want to
* add to the tape pool.</p>
*/
inline void SetTapeARN(const char* value) { m_tapeARNHasBeenSet = true; m_tapeARN.assign(value); }
/**
* <p>The unique Amazon Resource Name (ARN) of the virtual tape that you want to
* add to the tape pool.</p>
*/
inline AssignTapePoolRequest& WithTapeARN(const Aws::String& value) { SetTapeARN(value); return *this;}
/**
* <p>The unique Amazon Resource Name (ARN) of the virtual tape that you want to
* add to the tape pool.</p>
*/
inline AssignTapePoolRequest& WithTapeARN(Aws::String&& value) { SetTapeARN(std::move(value)); return *this;}
/**
* <p>The unique Amazon Resource Name (ARN) of the virtual tape that you want to
* add to the tape pool.</p>
*/
inline AssignTapePoolRequest& WithTapeARN(const char* value) { SetTapeARN(value); return *this;}
/**
* <p>The ID of the pool that you want to add your tape to for archiving. The tape
* in this pool is archived in the S3 storage class that is associated with the
* pool. When you use your backup application to eject the tape, the tape is
* archived directly into the storage class (S3 Glacier or S3 Glacier Deep Archive)
* that corresponds to the pool.</p> <p>Valid Values: <code>GLACIER</code> |
* <code>DEEP_ARCHIVE</code> </p>
*/
inline const Aws::String& GetPoolId() const{ return m_poolId; }
/**
* <p>The ID of the pool that you want to add your tape to for archiving. The tape
* in this pool is archived in the S3 storage class that is associated with the
* pool. When you use your backup application to eject the tape, the tape is
* archived directly into the storage class (S3 Glacier or S3 Glacier Deep Archive)
* that corresponds to the pool.</p> <p>Valid Values: <code>GLACIER</code> |
* <code>DEEP_ARCHIVE</code> </p>
*/
inline bool PoolIdHasBeenSet() const { return m_poolIdHasBeenSet; }
/**
* <p>The ID of the pool that you want to add your tape to for archiving. The tape
* in this pool is archived in the S3 storage class that is associated with the
* pool. When you use your backup application to eject the tape, the tape is
* archived directly into the storage class (S3 Glacier or S3 Glacier Deep Archive)
* that corresponds to the pool.</p> <p>Valid Values: <code>GLACIER</code> |
* <code>DEEP_ARCHIVE</code> </p>
*/
inline void SetPoolId(const Aws::String& value) { m_poolIdHasBeenSet = true; m_poolId = value; }
/**
* <p>The ID of the pool that you want to add your tape to for archiving. The tape
* in this pool is archived in the S3 storage class that is associated with the
* pool. When you use your backup application to eject the tape, the tape is
* archived directly into the storage class (S3 Glacier or S3 Glacier Deep Archive)
* that corresponds to the pool.</p> <p>Valid Values: <code>GLACIER</code> |
* <code>DEEP_ARCHIVE</code> </p>
*/
inline void SetPoolId(Aws::String&& value) { m_poolIdHasBeenSet = true; m_poolId = std::move(value); }
/**
* <p>The ID of the pool that you want to add your tape to for archiving. The tape
* in this pool is archived in the S3 storage class that is associated with the
* pool. When you use your backup application to eject the tape, the tape is
* archived directly into the storage class (S3 Glacier or S3 Glacier Deep Archive)
* that corresponds to the pool.</p> <p>Valid Values: <code>GLACIER</code> |
* <code>DEEP_ARCHIVE</code> </p>
*/
inline void SetPoolId(const char* value) { m_poolIdHasBeenSet = true; m_poolId.assign(value); }
/**
* <p>The ID of the pool that you want to add your tape to for archiving. The tape
* in this pool is archived in the S3 storage class that is associated with the
* pool. When you use your backup application to eject the tape, the tape is
* archived directly into the storage class (S3 Glacier or S3 Glacier Deep Archive)
* that corresponds to the pool.</p> <p>Valid Values: <code>GLACIER</code> |
* <code>DEEP_ARCHIVE</code> </p>
*/
inline AssignTapePoolRequest& WithPoolId(const Aws::String& value) { SetPoolId(value); return *this;}
/**
* <p>The ID of the pool that you want to add your tape to for archiving. The tape
* in this pool is archived in the S3 storage class that is associated with the
* pool. When you use your backup application to eject the tape, the tape is
* archived directly into the storage class (S3 Glacier or S3 Glacier Deep Archive)
* that corresponds to the pool.</p> <p>Valid Values: <code>GLACIER</code> |
* <code>DEEP_ARCHIVE</code> </p>
*/
inline AssignTapePoolRequest& WithPoolId(Aws::String&& value) { SetPoolId(std::move(value)); return *this;}
/**
* <p>The ID of the pool that you want to add your tape to for archiving. The tape
* in this pool is archived in the S3 storage class that is associated with the
* pool. When you use your backup application to eject the tape, the tape is
* archived directly into the storage class (S3 Glacier or S3 Glacier Deep Archive)
* that corresponds to the pool.</p> <p>Valid Values: <code>GLACIER</code> |
* <code>DEEP_ARCHIVE</code> </p>
*/
inline AssignTapePoolRequest& WithPoolId(const char* value) { SetPoolId(value); return *this;}
/**
* <p>Set permissions to bypass governance retention. If the lock type of the
* archived tape is <code>Governance</code>, the tape's archived age is not older
* than <code>RetentionLockInDays</code>, and the user does not already have
* <code>BypassGovernanceRetention</code>, setting this to TRUE enables the user to
* bypass the retention lock. This parameter is set to true by default for calls
* from the console.</p> <p>Valid values: <code>TRUE</code> | <code>FALSE</code>
* </p>
*/
inline bool GetBypassGovernanceRetention() const{ return m_bypassGovernanceRetention; }
/**
* <p>Set permissions to bypass governance retention. If the lock type of the
* archived tape is <code>Governance</code>, the tape's archived age is not older
* than <code>RetentionLockInDays</code>, and the user does not already have
* <code>BypassGovernanceRetention</code>, setting this to TRUE enables the user to
* bypass the retention lock. This parameter is set to true by default for calls
* from the console.</p> <p>Valid values: <code>TRUE</code> | <code>FALSE</code>
* </p>
*/
inline bool BypassGovernanceRetentionHasBeenSet() const { return m_bypassGovernanceRetentionHasBeenSet; }
/**
* <p>Set permissions to bypass governance retention. If the lock type of the
* archived tape is <code>Governance</code>, the tape's archived age is not older
* than <code>RetentionLockInDays</code>, and the user does not already have
* <code>BypassGovernanceRetention</code>, setting this to TRUE enables the user to
* bypass the retention lock. This parameter is set to true by default for calls
* from the console.</p> <p>Valid values: <code>TRUE</code> | <code>FALSE</code>
* </p>
*/
inline void SetBypassGovernanceRetention(bool value) { m_bypassGovernanceRetentionHasBeenSet = true; m_bypassGovernanceRetention = value; }
/**
* <p>Set permissions to bypass governance retention. If the lock type of the
* archived tape is <code>Governance</code>, the tape's archived age is not older
* than <code>RetentionLockInDays</code>, and the user does not already have
* <code>BypassGovernanceRetention</code>, setting this to TRUE enables the user to
* bypass the retention lock. This parameter is set to true by default for calls
* from the console.</p> <p>Valid values: <code>TRUE</code> | <code>FALSE</code>
* </p>
*/
inline AssignTapePoolRequest& WithBypassGovernanceRetention(bool value) { SetBypassGovernanceRetention(value); return *this;}
private:
Aws::String m_tapeARN;
bool m_tapeARNHasBeenSet;
Aws::String m_poolId;
bool m_poolIdHasBeenSet;
bool m_bypassGovernanceRetention;
bool m_bypassGovernanceRetentionHasBeenSet;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,84 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace StorageGateway
{
namespace Model
{
class AWS_STORAGEGATEWAY_API AssignTapePoolResult
{
public:
AssignTapePoolResult();
AssignTapePoolResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
AssignTapePoolResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>The unique Amazon Resource Names (ARN) of the virtual tape that was added to
* the tape pool.</p>
*/
inline const Aws::String& GetTapeARN() const{ return m_tapeARN; }
/**
* <p>The unique Amazon Resource Names (ARN) of the virtual tape that was added to
* the tape pool.</p>
*/
inline void SetTapeARN(const Aws::String& value) { m_tapeARN = value; }
/**
* <p>The unique Amazon Resource Names (ARN) of the virtual tape that was added to
* the tape pool.</p>
*/
inline void SetTapeARN(Aws::String&& value) { m_tapeARN = std::move(value); }
/**
* <p>The unique Amazon Resource Names (ARN) of the virtual tape that was added to
* the tape pool.</p>
*/
inline void SetTapeARN(const char* value) { m_tapeARN.assign(value); }
/**
* <p>The unique Amazon Resource Names (ARN) of the virtual tape that was added to
* the tape pool.</p>
*/
inline AssignTapePoolResult& WithTapeARN(const Aws::String& value) { SetTapeARN(value); return *this;}
/**
* <p>The unique Amazon Resource Names (ARN) of the virtual tape that was added to
* the tape pool.</p>
*/
inline AssignTapePoolResult& WithTapeARN(Aws::String&& value) { SetTapeARN(std::move(value)); return *this;}
/**
* <p>The unique Amazon Resource Names (ARN) of the virtual tape that was added to
* the tape pool.</p>
*/
inline AssignTapePoolResult& WithTapeARN(const char* value) { SetTapeARN(value); return *this;}
private:
Aws::String m_tapeARN;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,368 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/storagegateway/StorageGatewayRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace StorageGateway
{
namespace Model
{
/**
* <p>AttachVolumeInput</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/AttachVolumeInput">AWS
* API Reference</a></p>
*/
class AWS_STORAGEGATEWAY_API AttachVolumeRequest : public StorageGatewayRequest
{
public:
AttachVolumeRequest();
// 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 "AttachVolume"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
/**
* <p>The Amazon Resource Name (ARN) of the gateway that you want to attach the
* volume to.</p>
*/
inline const Aws::String& GetGatewayARN() const{ return m_gatewayARN; }
/**
* <p>The Amazon Resource Name (ARN) of the gateway that you want to attach the
* volume to.</p>
*/
inline bool GatewayARNHasBeenSet() const { return m_gatewayARNHasBeenSet; }
/**
* <p>The Amazon Resource Name (ARN) of the gateway that you want to attach the
* volume to.</p>
*/
inline void SetGatewayARN(const Aws::String& value) { m_gatewayARNHasBeenSet = true; m_gatewayARN = value; }
/**
* <p>The Amazon Resource Name (ARN) of the gateway that you want to attach the
* volume to.</p>
*/
inline void SetGatewayARN(Aws::String&& value) { m_gatewayARNHasBeenSet = true; m_gatewayARN = std::move(value); }
/**
* <p>The Amazon Resource Name (ARN) of the gateway that you want to attach the
* volume to.</p>
*/
inline void SetGatewayARN(const char* value) { m_gatewayARNHasBeenSet = true; m_gatewayARN.assign(value); }
/**
* <p>The Amazon Resource Name (ARN) of the gateway that you want to attach the
* volume to.</p>
*/
inline AttachVolumeRequest& WithGatewayARN(const Aws::String& value) { SetGatewayARN(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the gateway that you want to attach the
* volume to.</p>
*/
inline AttachVolumeRequest& WithGatewayARN(Aws::String&& value) { SetGatewayARN(std::move(value)); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the gateway that you want to attach the
* volume to.</p>
*/
inline AttachVolumeRequest& WithGatewayARN(const char* value) { SetGatewayARN(value); return *this;}
/**
* <p>The name of the iSCSI target used by an initiator to connect to a volume and
* used as a suffix for the target ARN. For example, specifying
* <code>TargetName</code> as <i>myvolume</i> results in the target ARN of
* <code>arn:aws:storagegateway:us-east-2:111122223333:gateway/sgw-12A3456B/target/iqn.1997-05.com.amazon:myvolume</code>.
* The target name must be unique across all volumes on a gateway.</p> <p>If you
* don't specify a value, Storage Gateway uses the value that was previously used
* for this volume as the new target name.</p>
*/
inline const Aws::String& GetTargetName() const{ return m_targetName; }
/**
* <p>The name of the iSCSI target used by an initiator to connect to a volume and
* used as a suffix for the target ARN. For example, specifying
* <code>TargetName</code> as <i>myvolume</i> results in the target ARN of
* <code>arn:aws:storagegateway:us-east-2:111122223333:gateway/sgw-12A3456B/target/iqn.1997-05.com.amazon:myvolume</code>.
* The target name must be unique across all volumes on a gateway.</p> <p>If you
* don't specify a value, Storage Gateway uses the value that was previously used
* for this volume as the new target name.</p>
*/
inline bool TargetNameHasBeenSet() const { return m_targetNameHasBeenSet; }
/**
* <p>The name of the iSCSI target used by an initiator to connect to a volume and
* used as a suffix for the target ARN. For example, specifying
* <code>TargetName</code> as <i>myvolume</i> results in the target ARN of
* <code>arn:aws:storagegateway:us-east-2:111122223333:gateway/sgw-12A3456B/target/iqn.1997-05.com.amazon:myvolume</code>.
* The target name must be unique across all volumes on a gateway.</p> <p>If you
* don't specify a value, Storage Gateway uses the value that was previously used
* for this volume as the new target name.</p>
*/
inline void SetTargetName(const Aws::String& value) { m_targetNameHasBeenSet = true; m_targetName = value; }
/**
* <p>The name of the iSCSI target used by an initiator to connect to a volume and
* used as a suffix for the target ARN. For example, specifying
* <code>TargetName</code> as <i>myvolume</i> results in the target ARN of
* <code>arn:aws:storagegateway:us-east-2:111122223333:gateway/sgw-12A3456B/target/iqn.1997-05.com.amazon:myvolume</code>.
* The target name must be unique across all volumes on a gateway.</p> <p>If you
* don't specify a value, Storage Gateway uses the value that was previously used
* for this volume as the new target name.</p>
*/
inline void SetTargetName(Aws::String&& value) { m_targetNameHasBeenSet = true; m_targetName = std::move(value); }
/**
* <p>The name of the iSCSI target used by an initiator to connect to a volume and
* used as a suffix for the target ARN. For example, specifying
* <code>TargetName</code> as <i>myvolume</i> results in the target ARN of
* <code>arn:aws:storagegateway:us-east-2:111122223333:gateway/sgw-12A3456B/target/iqn.1997-05.com.amazon:myvolume</code>.
* The target name must be unique across all volumes on a gateway.</p> <p>If you
* don't specify a value, Storage Gateway uses the value that was previously used
* for this volume as the new target name.</p>
*/
inline void SetTargetName(const char* value) { m_targetNameHasBeenSet = true; m_targetName.assign(value); }
/**
* <p>The name of the iSCSI target used by an initiator to connect to a volume and
* used as a suffix for the target ARN. For example, specifying
* <code>TargetName</code> as <i>myvolume</i> results in the target ARN of
* <code>arn:aws:storagegateway:us-east-2:111122223333:gateway/sgw-12A3456B/target/iqn.1997-05.com.amazon:myvolume</code>.
* The target name must be unique across all volumes on a gateway.</p> <p>If you
* don't specify a value, Storage Gateway uses the value that was previously used
* for this volume as the new target name.</p>
*/
inline AttachVolumeRequest& WithTargetName(const Aws::String& value) { SetTargetName(value); return *this;}
/**
* <p>The name of the iSCSI target used by an initiator to connect to a volume and
* used as a suffix for the target ARN. For example, specifying
* <code>TargetName</code> as <i>myvolume</i> results in the target ARN of
* <code>arn:aws:storagegateway:us-east-2:111122223333:gateway/sgw-12A3456B/target/iqn.1997-05.com.amazon:myvolume</code>.
* The target name must be unique across all volumes on a gateway.</p> <p>If you
* don't specify a value, Storage Gateway uses the value that was previously used
* for this volume as the new target name.</p>
*/
inline AttachVolumeRequest& WithTargetName(Aws::String&& value) { SetTargetName(std::move(value)); return *this;}
/**
* <p>The name of the iSCSI target used by an initiator to connect to a volume and
* used as a suffix for the target ARN. For example, specifying
* <code>TargetName</code> as <i>myvolume</i> results in the target ARN of
* <code>arn:aws:storagegateway:us-east-2:111122223333:gateway/sgw-12A3456B/target/iqn.1997-05.com.amazon:myvolume</code>.
* The target name must be unique across all volumes on a gateway.</p> <p>If you
* don't specify a value, Storage Gateway uses the value that was previously used
* for this volume as the new target name.</p>
*/
inline AttachVolumeRequest& WithTargetName(const char* value) { SetTargetName(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the volume to attach to the specified
* gateway.</p>
*/
inline const Aws::String& GetVolumeARN() const{ return m_volumeARN; }
/**
* <p>The Amazon Resource Name (ARN) of the volume to attach to the specified
* gateway.</p>
*/
inline bool VolumeARNHasBeenSet() const { return m_volumeARNHasBeenSet; }
/**
* <p>The Amazon Resource Name (ARN) of the volume to attach to the specified
* gateway.</p>
*/
inline void SetVolumeARN(const Aws::String& value) { m_volumeARNHasBeenSet = true; m_volumeARN = value; }
/**
* <p>The Amazon Resource Name (ARN) of the volume to attach to the specified
* gateway.</p>
*/
inline void SetVolumeARN(Aws::String&& value) { m_volumeARNHasBeenSet = true; m_volumeARN = std::move(value); }
/**
* <p>The Amazon Resource Name (ARN) of the volume to attach to the specified
* gateway.</p>
*/
inline void SetVolumeARN(const char* value) { m_volumeARNHasBeenSet = true; m_volumeARN.assign(value); }
/**
* <p>The Amazon Resource Name (ARN) of the volume to attach to the specified
* gateway.</p>
*/
inline AttachVolumeRequest& WithVolumeARN(const Aws::String& value) { SetVolumeARN(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the volume to attach to the specified
* gateway.</p>
*/
inline AttachVolumeRequest& WithVolumeARN(Aws::String&& value) { SetVolumeARN(std::move(value)); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the volume to attach to the specified
* gateway.</p>
*/
inline AttachVolumeRequest& WithVolumeARN(const char* value) { SetVolumeARN(value); return *this;}
/**
* <p>The network interface of the gateway on which to expose the iSCSI target.
* Only IPv4 addresses are accepted. Use <a>DescribeGatewayInformation</a> to get a
* list of the network interfaces available on a gateway.</p> <p>Valid Values: A
* valid IP address.</p>
*/
inline const Aws::String& GetNetworkInterfaceId() const{ return m_networkInterfaceId; }
/**
* <p>The network interface of the gateway on which to expose the iSCSI target.
* Only IPv4 addresses are accepted. Use <a>DescribeGatewayInformation</a> to get a
* list of the network interfaces available on a gateway.</p> <p>Valid Values: A
* valid IP address.</p>
*/
inline bool NetworkInterfaceIdHasBeenSet() const { return m_networkInterfaceIdHasBeenSet; }
/**
* <p>The network interface of the gateway on which to expose the iSCSI target.
* Only IPv4 addresses are accepted. Use <a>DescribeGatewayInformation</a> to get a
* list of the network interfaces available on a gateway.</p> <p>Valid Values: A
* valid IP address.</p>
*/
inline void SetNetworkInterfaceId(const Aws::String& value) { m_networkInterfaceIdHasBeenSet = true; m_networkInterfaceId = value; }
/**
* <p>The network interface of the gateway on which to expose the iSCSI target.
* Only IPv4 addresses are accepted. Use <a>DescribeGatewayInformation</a> to get a
* list of the network interfaces available on a gateway.</p> <p>Valid Values: A
* valid IP address.</p>
*/
inline void SetNetworkInterfaceId(Aws::String&& value) { m_networkInterfaceIdHasBeenSet = true; m_networkInterfaceId = std::move(value); }
/**
* <p>The network interface of the gateway on which to expose the iSCSI target.
* Only IPv4 addresses are accepted. Use <a>DescribeGatewayInformation</a> to get a
* list of the network interfaces available on a gateway.</p> <p>Valid Values: A
* valid IP address.</p>
*/
inline void SetNetworkInterfaceId(const char* value) { m_networkInterfaceIdHasBeenSet = true; m_networkInterfaceId.assign(value); }
/**
* <p>The network interface of the gateway on which to expose the iSCSI target.
* Only IPv4 addresses are accepted. Use <a>DescribeGatewayInformation</a> to get a
* list of the network interfaces available on a gateway.</p> <p>Valid Values: A
* valid IP address.</p>
*/
inline AttachVolumeRequest& WithNetworkInterfaceId(const Aws::String& value) { SetNetworkInterfaceId(value); return *this;}
/**
* <p>The network interface of the gateway on which to expose the iSCSI target.
* Only IPv4 addresses are accepted. Use <a>DescribeGatewayInformation</a> to get a
* list of the network interfaces available on a gateway.</p> <p>Valid Values: A
* valid IP address.</p>
*/
inline AttachVolumeRequest& WithNetworkInterfaceId(Aws::String&& value) { SetNetworkInterfaceId(std::move(value)); return *this;}
/**
* <p>The network interface of the gateway on which to expose the iSCSI target.
* Only IPv4 addresses are accepted. Use <a>DescribeGatewayInformation</a> to get a
* list of the network interfaces available on a gateway.</p> <p>Valid Values: A
* valid IP address.</p>
*/
inline AttachVolumeRequest& WithNetworkInterfaceId(const char* value) { SetNetworkInterfaceId(value); return *this;}
/**
* <p>The unique device ID or other distinguishing data that identifies the local
* disk used to create the volume. This value is only required when you are
* attaching a stored volume.</p>
*/
inline const Aws::String& GetDiskId() const{ return m_diskId; }
/**
* <p>The unique device ID or other distinguishing data that identifies the local
* disk used to create the volume. This value is only required when you are
* attaching a stored volume.</p>
*/
inline bool DiskIdHasBeenSet() const { return m_diskIdHasBeenSet; }
/**
* <p>The unique device ID or other distinguishing data that identifies the local
* disk used to create the volume. This value is only required when you are
* attaching a stored volume.</p>
*/
inline void SetDiskId(const Aws::String& value) { m_diskIdHasBeenSet = true; m_diskId = value; }
/**
* <p>The unique device ID or other distinguishing data that identifies the local
* disk used to create the volume. This value is only required when you are
* attaching a stored volume.</p>
*/
inline void SetDiskId(Aws::String&& value) { m_diskIdHasBeenSet = true; m_diskId = std::move(value); }
/**
* <p>The unique device ID or other distinguishing data that identifies the local
* disk used to create the volume. This value is only required when you are
* attaching a stored volume.</p>
*/
inline void SetDiskId(const char* value) { m_diskIdHasBeenSet = true; m_diskId.assign(value); }
/**
* <p>The unique device ID or other distinguishing data that identifies the local
* disk used to create the volume. This value is only required when you are
* attaching a stored volume.</p>
*/
inline AttachVolumeRequest& WithDiskId(const Aws::String& value) { SetDiskId(value); return *this;}
/**
* <p>The unique device ID or other distinguishing data that identifies the local
* disk used to create the volume. This value is only required when you are
* attaching a stored volume.</p>
*/
inline AttachVolumeRequest& WithDiskId(Aws::String&& value) { SetDiskId(std::move(value)); return *this;}
/**
* <p>The unique device ID or other distinguishing data that identifies the local
* disk used to create the volume. This value is only required when you are
* attaching a stored volume.</p>
*/
inline AttachVolumeRequest& WithDiskId(const char* value) { SetDiskId(value); return *this;}
private:
Aws::String m_gatewayARN;
bool m_gatewayARNHasBeenSet;
Aws::String m_targetName;
bool m_targetNameHasBeenSet;
Aws::String m_volumeARN;
bool m_volumeARNHasBeenSet;
Aws::String m_networkInterfaceId;
bool m_networkInterfaceIdHasBeenSet;
Aws::String m_diskId;
bool m_diskIdHasBeenSet;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,134 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace StorageGateway
{
namespace Model
{
/**
* <p>AttachVolumeOutput</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/AttachVolumeOutput">AWS
* API Reference</a></p>
*/
class AWS_STORAGEGATEWAY_API AttachVolumeResult
{
public:
AttachVolumeResult();
AttachVolumeResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
AttachVolumeResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>The Amazon Resource Name (ARN) of the volume that was attached to the
* gateway.</p>
*/
inline const Aws::String& GetVolumeARN() const{ return m_volumeARN; }
/**
* <p>The Amazon Resource Name (ARN) of the volume that was attached to the
* gateway.</p>
*/
inline void SetVolumeARN(const Aws::String& value) { m_volumeARN = value; }
/**
* <p>The Amazon Resource Name (ARN) of the volume that was attached to the
* gateway.</p>
*/
inline void SetVolumeARN(Aws::String&& value) { m_volumeARN = std::move(value); }
/**
* <p>The Amazon Resource Name (ARN) of the volume that was attached to the
* gateway.</p>
*/
inline void SetVolumeARN(const char* value) { m_volumeARN.assign(value); }
/**
* <p>The Amazon Resource Name (ARN) of the volume that was attached to the
* gateway.</p>
*/
inline AttachVolumeResult& WithVolumeARN(const Aws::String& value) { SetVolumeARN(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the volume that was attached to the
* gateway.</p>
*/
inline AttachVolumeResult& WithVolumeARN(Aws::String&& value) { SetVolumeARN(std::move(value)); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the volume that was attached to the
* gateway.</p>
*/
inline AttachVolumeResult& WithVolumeARN(const char* value) { SetVolumeARN(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the volume target, which includes the iSCSI
* name for the initiator that was used to connect to the target.</p>
*/
inline const Aws::String& GetTargetARN() const{ return m_targetARN; }
/**
* <p>The Amazon Resource Name (ARN) of the volume target, which includes the iSCSI
* name for the initiator that was used to connect to the target.</p>
*/
inline void SetTargetARN(const Aws::String& value) { m_targetARN = value; }
/**
* <p>The Amazon Resource Name (ARN) of the volume target, which includes the iSCSI
* name for the initiator that was used to connect to the target.</p>
*/
inline void SetTargetARN(Aws::String&& value) { m_targetARN = std::move(value); }
/**
* <p>The Amazon Resource Name (ARN) of the volume target, which includes the iSCSI
* name for the initiator that was used to connect to the target.</p>
*/
inline void SetTargetARN(const char* value) { m_targetARN.assign(value); }
/**
* <p>The Amazon Resource Name (ARN) of the volume target, which includes the iSCSI
* name for the initiator that was used to connect to the target.</p>
*/
inline AttachVolumeResult& WithTargetARN(const Aws::String& value) { SetTargetARN(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the volume target, which includes the iSCSI
* name for the initiator that was used to connect to the target.</p>
*/
inline AttachVolumeResult& WithTargetARN(Aws::String&& value) { SetTargetARN(std::move(value)); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the volume target, which includes the iSCSI
* name for the initiator that was used to connect to the target.</p>
*/
inline AttachVolumeResult& WithTargetARN(const char* value) { SetTargetARN(value); return *this;}
private:
Aws::String m_volumeARN;
Aws::String m_targetARN;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,136 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/storagegateway/model/AutomaticTapeCreationRule.h>
#include <utility>
namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace StorageGateway
{
namespace Model
{
/**
* <p>Information about the gateway's automatic tape creation policies, including
* the automatic tape creation rules and the gateway that is using the
* policies.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/AutomaticTapeCreationPolicyInfo">AWS
* API Reference</a></p>
*/
class AWS_STORAGEGATEWAY_API AutomaticTapeCreationPolicyInfo
{
public:
AutomaticTapeCreationPolicyInfo();
AutomaticTapeCreationPolicyInfo(Aws::Utils::Json::JsonView jsonValue);
AutomaticTapeCreationPolicyInfo& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>An automatic tape creation policy consists of a list of automatic tape
* creation rules. This returns the rules that determine when and how to
* automatically create new tapes.</p>
*/
inline const Aws::Vector<AutomaticTapeCreationRule>& GetAutomaticTapeCreationRules() const{ return m_automaticTapeCreationRules; }
/**
* <p>An automatic tape creation policy consists of a list of automatic tape
* creation rules. This returns the rules that determine when and how to
* automatically create new tapes.</p>
*/
inline bool AutomaticTapeCreationRulesHasBeenSet() const { return m_automaticTapeCreationRulesHasBeenSet; }
/**
* <p>An automatic tape creation policy consists of a list of automatic tape
* creation rules. This returns the rules that determine when and how to
* automatically create new tapes.</p>
*/
inline void SetAutomaticTapeCreationRules(const Aws::Vector<AutomaticTapeCreationRule>& value) { m_automaticTapeCreationRulesHasBeenSet = true; m_automaticTapeCreationRules = value; }
/**
* <p>An automatic tape creation policy consists of a list of automatic tape
* creation rules. This returns the rules that determine when and how to
* automatically create new tapes.</p>
*/
inline void SetAutomaticTapeCreationRules(Aws::Vector<AutomaticTapeCreationRule>&& value) { m_automaticTapeCreationRulesHasBeenSet = true; m_automaticTapeCreationRules = std::move(value); }
/**
* <p>An automatic tape creation policy consists of a list of automatic tape
* creation rules. This returns the rules that determine when and how to
* automatically create new tapes.</p>
*/
inline AutomaticTapeCreationPolicyInfo& WithAutomaticTapeCreationRules(const Aws::Vector<AutomaticTapeCreationRule>& value) { SetAutomaticTapeCreationRules(value); return *this;}
/**
* <p>An automatic tape creation policy consists of a list of automatic tape
* creation rules. This returns the rules that determine when and how to
* automatically create new tapes.</p>
*/
inline AutomaticTapeCreationPolicyInfo& WithAutomaticTapeCreationRules(Aws::Vector<AutomaticTapeCreationRule>&& value) { SetAutomaticTapeCreationRules(std::move(value)); return *this;}
/**
* <p>An automatic tape creation policy consists of a list of automatic tape
* creation rules. This returns the rules that determine when and how to
* automatically create new tapes.</p>
*/
inline AutomaticTapeCreationPolicyInfo& AddAutomaticTapeCreationRules(const AutomaticTapeCreationRule& value) { m_automaticTapeCreationRulesHasBeenSet = true; m_automaticTapeCreationRules.push_back(value); return *this; }
/**
* <p>An automatic tape creation policy consists of a list of automatic tape
* creation rules. This returns the rules that determine when and how to
* automatically create new tapes.</p>
*/
inline AutomaticTapeCreationPolicyInfo& AddAutomaticTapeCreationRules(AutomaticTapeCreationRule&& value) { m_automaticTapeCreationRulesHasBeenSet = true; m_automaticTapeCreationRules.push_back(std::move(value)); return *this; }
inline const Aws::String& GetGatewayARN() const{ return m_gatewayARN; }
inline bool GatewayARNHasBeenSet() const { return m_gatewayARNHasBeenSet; }
inline void SetGatewayARN(const Aws::String& value) { m_gatewayARNHasBeenSet = true; m_gatewayARN = value; }
inline void SetGatewayARN(Aws::String&& value) { m_gatewayARNHasBeenSet = true; m_gatewayARN = std::move(value); }
inline void SetGatewayARN(const char* value) { m_gatewayARNHasBeenSet = true; m_gatewayARN.assign(value); }
inline AutomaticTapeCreationPolicyInfo& WithGatewayARN(const Aws::String& value) { SetGatewayARN(value); return *this;}
inline AutomaticTapeCreationPolicyInfo& WithGatewayARN(Aws::String&& value) { SetGatewayARN(std::move(value)); return *this;}
inline AutomaticTapeCreationPolicyInfo& WithGatewayARN(const char* value) { SetGatewayARN(value); return *this;}
private:
Aws::Vector<AutomaticTapeCreationRule> m_automaticTapeCreationRules;
bool m_automaticTapeCreationRulesHasBeenSet;
Aws::String m_gatewayARN;
bool m_gatewayARNHasBeenSet;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,304 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace StorageGateway
{
namespace Model
{
/**
* <p>An automatic tape creation policy consists of automatic tape creation rules
* where each rule defines when and how to create new tapes. For more information
* about automatic tape creation, see <a
* href="https://docs.aws.amazon.com/storagegateway/latest/userguide/GettingStartedCreateTapes.html#CreateTapesAutomatically">Creating
* Tapes Automatically</a>.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/AutomaticTapeCreationRule">AWS
* API Reference</a></p>
*/
class AWS_STORAGEGATEWAY_API AutomaticTapeCreationRule
{
public:
AutomaticTapeCreationRule();
AutomaticTapeCreationRule(Aws::Utils::Json::JsonView jsonValue);
AutomaticTapeCreationRule& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>A prefix that you append to the barcode of the virtual tape that you are
* creating. This prefix makes the barcode unique.</p> <p>The prefix must be
* 1-4 characters in length and must be one of the uppercase letters from A to
* Z.</p>
*/
inline const Aws::String& GetTapeBarcodePrefix() const{ return m_tapeBarcodePrefix; }
/**
* <p>A prefix that you append to the barcode of the virtual tape that you are
* creating. This prefix makes the barcode unique.</p> <p>The prefix must be
* 1-4 characters in length and must be one of the uppercase letters from A to
* Z.</p>
*/
inline bool TapeBarcodePrefixHasBeenSet() const { return m_tapeBarcodePrefixHasBeenSet; }
/**
* <p>A prefix that you append to the barcode of the virtual tape that you are
* creating. This prefix makes the barcode unique.</p> <p>The prefix must be
* 1-4 characters in length and must be one of the uppercase letters from A to
* Z.</p>
*/
inline void SetTapeBarcodePrefix(const Aws::String& value) { m_tapeBarcodePrefixHasBeenSet = true; m_tapeBarcodePrefix = value; }
/**
* <p>A prefix that you append to the barcode of the virtual tape that you are
* creating. This prefix makes the barcode unique.</p> <p>The prefix must be
* 1-4 characters in length and must be one of the uppercase letters from A to
* Z.</p>
*/
inline void SetTapeBarcodePrefix(Aws::String&& value) { m_tapeBarcodePrefixHasBeenSet = true; m_tapeBarcodePrefix = std::move(value); }
/**
* <p>A prefix that you append to the barcode of the virtual tape that you are
* creating. This prefix makes the barcode unique.</p> <p>The prefix must be
* 1-4 characters in length and must be one of the uppercase letters from A to
* Z.</p>
*/
inline void SetTapeBarcodePrefix(const char* value) { m_tapeBarcodePrefixHasBeenSet = true; m_tapeBarcodePrefix.assign(value); }
/**
* <p>A prefix that you append to the barcode of the virtual tape that you are
* creating. This prefix makes the barcode unique.</p> <p>The prefix must be
* 1-4 characters in length and must be one of the uppercase letters from A to
* Z.</p>
*/
inline AutomaticTapeCreationRule& WithTapeBarcodePrefix(const Aws::String& value) { SetTapeBarcodePrefix(value); return *this;}
/**
* <p>A prefix that you append to the barcode of the virtual tape that you are
* creating. This prefix makes the barcode unique.</p> <p>The prefix must be
* 1-4 characters in length and must be one of the uppercase letters from A to
* Z.</p>
*/
inline AutomaticTapeCreationRule& WithTapeBarcodePrefix(Aws::String&& value) { SetTapeBarcodePrefix(std::move(value)); return *this;}
/**
* <p>A prefix that you append to the barcode of the virtual tape that you are
* creating. This prefix makes the barcode unique.</p> <p>The prefix must be
* 1-4 characters in length and must be one of the uppercase letters from A to
* Z.</p>
*/
inline AutomaticTapeCreationRule& WithTapeBarcodePrefix(const char* value) { SetTapeBarcodePrefix(value); return *this;}
/**
* <p>The ID of the pool that you want to add your tape to for archiving. The tape
* in this pool is archived in the Amazon S3 storage class that is associated with
* the pool. When you use your backup application to eject the tape, the tape is
* archived directly into the storage class (S3 Glacier or S3 Glacier Deep Archive)
* that corresponds to the pool.</p> <p>Valid Values: <code>GLACIER</code> |
* <code>DEEP_ARCHIVE</code> </p>
*/
inline const Aws::String& GetPoolId() const{ return m_poolId; }
/**
* <p>The ID of the pool that you want to add your tape to for archiving. The tape
* in this pool is archived in the Amazon S3 storage class that is associated with
* the pool. When you use your backup application to eject the tape, the tape is
* archived directly into the storage class (S3 Glacier or S3 Glacier Deep Archive)
* that corresponds to the pool.</p> <p>Valid Values: <code>GLACIER</code> |
* <code>DEEP_ARCHIVE</code> </p>
*/
inline bool PoolIdHasBeenSet() const { return m_poolIdHasBeenSet; }
/**
* <p>The ID of the pool that you want to add your tape to for archiving. The tape
* in this pool is archived in the Amazon S3 storage class that is associated with
* the pool. When you use your backup application to eject the tape, the tape is
* archived directly into the storage class (S3 Glacier or S3 Glacier Deep Archive)
* that corresponds to the pool.</p> <p>Valid Values: <code>GLACIER</code> |
* <code>DEEP_ARCHIVE</code> </p>
*/
inline void SetPoolId(const Aws::String& value) { m_poolIdHasBeenSet = true; m_poolId = value; }
/**
* <p>The ID of the pool that you want to add your tape to for archiving. The tape
* in this pool is archived in the Amazon S3 storage class that is associated with
* the pool. When you use your backup application to eject the tape, the tape is
* archived directly into the storage class (S3 Glacier or S3 Glacier Deep Archive)
* that corresponds to the pool.</p> <p>Valid Values: <code>GLACIER</code> |
* <code>DEEP_ARCHIVE</code> </p>
*/
inline void SetPoolId(Aws::String&& value) { m_poolIdHasBeenSet = true; m_poolId = std::move(value); }
/**
* <p>The ID of the pool that you want to add your tape to for archiving. The tape
* in this pool is archived in the Amazon S3 storage class that is associated with
* the pool. When you use your backup application to eject the tape, the tape is
* archived directly into the storage class (S3 Glacier or S3 Glacier Deep Archive)
* that corresponds to the pool.</p> <p>Valid Values: <code>GLACIER</code> |
* <code>DEEP_ARCHIVE</code> </p>
*/
inline void SetPoolId(const char* value) { m_poolIdHasBeenSet = true; m_poolId.assign(value); }
/**
* <p>The ID of the pool that you want to add your tape to for archiving. The tape
* in this pool is archived in the Amazon S3 storage class that is associated with
* the pool. When you use your backup application to eject the tape, the tape is
* archived directly into the storage class (S3 Glacier or S3 Glacier Deep Archive)
* that corresponds to the pool.</p> <p>Valid Values: <code>GLACIER</code> |
* <code>DEEP_ARCHIVE</code> </p>
*/
inline AutomaticTapeCreationRule& WithPoolId(const Aws::String& value) { SetPoolId(value); return *this;}
/**
* <p>The ID of the pool that you want to add your tape to for archiving. The tape
* in this pool is archived in the Amazon S3 storage class that is associated with
* the pool. When you use your backup application to eject the tape, the tape is
* archived directly into the storage class (S3 Glacier or S3 Glacier Deep Archive)
* that corresponds to the pool.</p> <p>Valid Values: <code>GLACIER</code> |
* <code>DEEP_ARCHIVE</code> </p>
*/
inline AutomaticTapeCreationRule& WithPoolId(Aws::String&& value) { SetPoolId(std::move(value)); return *this;}
/**
* <p>The ID of the pool that you want to add your tape to for archiving. The tape
* in this pool is archived in the Amazon S3 storage class that is associated with
* the pool. When you use your backup application to eject the tape, the tape is
* archived directly into the storage class (S3 Glacier or S3 Glacier Deep Archive)
* that corresponds to the pool.</p> <p>Valid Values: <code>GLACIER</code> |
* <code>DEEP_ARCHIVE</code> </p>
*/
inline AutomaticTapeCreationRule& WithPoolId(const char* value) { SetPoolId(value); return *this;}
/**
* <p>The size, in bytes, of the virtual tape capacity.</p>
*/
inline long long GetTapeSizeInBytes() const{ return m_tapeSizeInBytes; }
/**
* <p>The size, in bytes, of the virtual tape capacity.</p>
*/
inline bool TapeSizeInBytesHasBeenSet() const { return m_tapeSizeInBytesHasBeenSet; }
/**
* <p>The size, in bytes, of the virtual tape capacity.</p>
*/
inline void SetTapeSizeInBytes(long long value) { m_tapeSizeInBytesHasBeenSet = true; m_tapeSizeInBytes = value; }
/**
* <p>The size, in bytes, of the virtual tape capacity.</p>
*/
inline AutomaticTapeCreationRule& WithTapeSizeInBytes(long long value) { SetTapeSizeInBytes(value); return *this;}
/**
* <p>The minimum number of available virtual tapes that the gateway maintains at
* all times. If the number of tapes on the gateway goes below this value, the
* gateway creates as many new tapes as are needed to have
* <code>MinimumNumTapes</code> on the gateway. For more information about
* automatic tape creation, see <a
* href="https://docs.aws.amazon.com/storagegateway/latest/userguide/GettingStartedCreateTapes.html#CreateTapesAutomatically">Creating
* Tapes Automatically</a>.</p>
*/
inline int GetMinimumNumTapes() const{ return m_minimumNumTapes; }
/**
* <p>The minimum number of available virtual tapes that the gateway maintains at
* all times. If the number of tapes on the gateway goes below this value, the
* gateway creates as many new tapes as are needed to have
* <code>MinimumNumTapes</code> on the gateway. For more information about
* automatic tape creation, see <a
* href="https://docs.aws.amazon.com/storagegateway/latest/userguide/GettingStartedCreateTapes.html#CreateTapesAutomatically">Creating
* Tapes Automatically</a>.</p>
*/
inline bool MinimumNumTapesHasBeenSet() const { return m_minimumNumTapesHasBeenSet; }
/**
* <p>The minimum number of available virtual tapes that the gateway maintains at
* all times. If the number of tapes on the gateway goes below this value, the
* gateway creates as many new tapes as are needed to have
* <code>MinimumNumTapes</code> on the gateway. For more information about
* automatic tape creation, see <a
* href="https://docs.aws.amazon.com/storagegateway/latest/userguide/GettingStartedCreateTapes.html#CreateTapesAutomatically">Creating
* Tapes Automatically</a>.</p>
*/
inline void SetMinimumNumTapes(int value) { m_minimumNumTapesHasBeenSet = true; m_minimumNumTapes = value; }
/**
* <p>The minimum number of available virtual tapes that the gateway maintains at
* all times. If the number of tapes on the gateway goes below this value, the
* gateway creates as many new tapes as are needed to have
* <code>MinimumNumTapes</code> on the gateway. For more information about
* automatic tape creation, see <a
* href="https://docs.aws.amazon.com/storagegateway/latest/userguide/GettingStartedCreateTapes.html#CreateTapesAutomatically">Creating
* Tapes Automatically</a>.</p>
*/
inline AutomaticTapeCreationRule& WithMinimumNumTapes(int value) { SetMinimumNumTapes(value); return *this;}
/**
* <p>Set to <code>true</code> to indicate that tapes are to be archived as
* write-once-read-many (WORM). Set to <code>false</code> when WORM is not enabled
* for tapes.</p>
*/
inline bool GetWorm() const{ return m_worm; }
/**
* <p>Set to <code>true</code> to indicate that tapes are to be archived as
* write-once-read-many (WORM). Set to <code>false</code> when WORM is not enabled
* for tapes.</p>
*/
inline bool WormHasBeenSet() const { return m_wormHasBeenSet; }
/**
* <p>Set to <code>true</code> to indicate that tapes are to be archived as
* write-once-read-many (WORM). Set to <code>false</code> when WORM is not enabled
* for tapes.</p>
*/
inline void SetWorm(bool value) { m_wormHasBeenSet = true; m_worm = value; }
/**
* <p>Set to <code>true</code> to indicate that tapes are to be archived as
* write-once-read-many (WORM). Set to <code>false</code> when WORM is not enabled
* for tapes.</p>
*/
inline AutomaticTapeCreationRule& WithWorm(bool value) { SetWorm(value); return *this;}
private:
Aws::String m_tapeBarcodePrefix;
bool m_tapeBarcodePrefixHasBeenSet;
Aws::String m_poolId;
bool m_poolIdHasBeenSet;
long long m_tapeSizeInBytes;
bool m_tapeSizeInBytesHasBeenSet;
int m_minimumNumTapes;
bool m_minimumNumTapesHasBeenSet;
bool m_worm;
bool m_wormHasBeenSet;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,32 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
namespace Aws
{
namespace StorageGateway
{
namespace Model
{
enum class AvailabilityMonitorTestStatus
{
NOT_SET,
COMPLETE,
FAILED,
PENDING
};
namespace AvailabilityMonitorTestStatusMapper
{
AWS_STORAGEGATEWAY_API AvailabilityMonitorTestStatus GetAvailabilityMonitorTestStatusForName(const Aws::String& name);
AWS_STORAGEGATEWAY_API Aws::String GetNameForAvailabilityMonitorTestStatus(AvailabilityMonitorTestStatus value);
} // namespace AvailabilityMonitorTestStatusMapper
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,82 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace StorageGateway
{
namespace Model
{
/**
* <p>Lists refresh cache information.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/CacheAttributes">AWS
* API Reference</a></p>
*/
class AWS_STORAGEGATEWAY_API CacheAttributes
{
public:
CacheAttributes();
CacheAttributes(Aws::Utils::Json::JsonView jsonValue);
CacheAttributes& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>Refreshes a file share's cache by using Time To Live (TTL). TTL is the length
* of time since the last refresh after which access to the directory would cause
* the file gateway to first refresh that directory's contents from the Amazon S3
* bucket. The TTL duration is in seconds.</p> <p>Valid Values: 300 to 2,592,000
* seconds (5 minutes to 30 days)</p>
*/
inline int GetCacheStaleTimeoutInSeconds() const{ return m_cacheStaleTimeoutInSeconds; }
/**
* <p>Refreshes a file share's cache by using Time To Live (TTL). TTL is the length
* of time since the last refresh after which access to the directory would cause
* the file gateway to first refresh that directory's contents from the Amazon S3
* bucket. The TTL duration is in seconds.</p> <p>Valid Values: 300 to 2,592,000
* seconds (5 minutes to 30 days)</p>
*/
inline bool CacheStaleTimeoutInSecondsHasBeenSet() const { return m_cacheStaleTimeoutInSecondsHasBeenSet; }
/**
* <p>Refreshes a file share's cache by using Time To Live (TTL). TTL is the length
* of time since the last refresh after which access to the directory would cause
* the file gateway to first refresh that directory's contents from the Amazon S3
* bucket. The TTL duration is in seconds.</p> <p>Valid Values: 300 to 2,592,000
* seconds (5 minutes to 30 days)</p>
*/
inline void SetCacheStaleTimeoutInSeconds(int value) { m_cacheStaleTimeoutInSecondsHasBeenSet = true; m_cacheStaleTimeoutInSeconds = value; }
/**
* <p>Refreshes a file share's cache by using Time To Live (TTL). TTL is the length
* of time since the last refresh after which access to the directory would cause
* the file gateway to first refresh that directory's contents from the Amazon S3
* bucket. The TTL duration is in seconds.</p> <p>Valid Values: 300 to 2,592,000
* seconds (5 minutes to 30 days)</p>
*/
inline CacheAttributes& WithCacheStaleTimeoutInSeconds(int value) { SetCacheStaleTimeoutInSeconds(value); return *this;}
private:
int m_cacheStaleTimeoutInSeconds;
bool m_cacheStaleTimeoutInSecondsHasBeenSet;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,674 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/storagegateway/model/VolumeiSCSIAttributes.h>
#include <aws/core/utils/DateTime.h>
#include <utility>
namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace StorageGateway
{
namespace Model
{
/**
* <p>Describes an iSCSI cached volume.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/CachediSCSIVolume">AWS
* API Reference</a></p>
*/
class AWS_STORAGEGATEWAY_API CachediSCSIVolume
{
public:
CachediSCSIVolume();
CachediSCSIVolume(Aws::Utils::Json::JsonView jsonValue);
CachediSCSIVolume& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>The Amazon Resource Name (ARN) of the storage volume.</p>
*/
inline const Aws::String& GetVolumeARN() const{ return m_volumeARN; }
/**
* <p>The Amazon Resource Name (ARN) of the storage volume.</p>
*/
inline bool VolumeARNHasBeenSet() const { return m_volumeARNHasBeenSet; }
/**
* <p>The Amazon Resource Name (ARN) of the storage volume.</p>
*/
inline void SetVolumeARN(const Aws::String& value) { m_volumeARNHasBeenSet = true; m_volumeARN = value; }
/**
* <p>The Amazon Resource Name (ARN) of the storage volume.</p>
*/
inline void SetVolumeARN(Aws::String&& value) { m_volumeARNHasBeenSet = true; m_volumeARN = std::move(value); }
/**
* <p>The Amazon Resource Name (ARN) of the storage volume.</p>
*/
inline void SetVolumeARN(const char* value) { m_volumeARNHasBeenSet = true; m_volumeARN.assign(value); }
/**
* <p>The Amazon Resource Name (ARN) of the storage volume.</p>
*/
inline CachediSCSIVolume& WithVolumeARN(const Aws::String& value) { SetVolumeARN(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the storage volume.</p>
*/
inline CachediSCSIVolume& WithVolumeARN(Aws::String&& value) { SetVolumeARN(std::move(value)); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the storage volume.</p>
*/
inline CachediSCSIVolume& WithVolumeARN(const char* value) { SetVolumeARN(value); return *this;}
/**
* <p>The unique identifier of the volume, e.g., vol-AE4B946D.</p>
*/
inline const Aws::String& GetVolumeId() const{ return m_volumeId; }
/**
* <p>The unique identifier of the volume, e.g., vol-AE4B946D.</p>
*/
inline bool VolumeIdHasBeenSet() const { return m_volumeIdHasBeenSet; }
/**
* <p>The unique identifier of the volume, e.g., vol-AE4B946D.</p>
*/
inline void SetVolumeId(const Aws::String& value) { m_volumeIdHasBeenSet = true; m_volumeId = value; }
/**
* <p>The unique identifier of the volume, e.g., vol-AE4B946D.</p>
*/
inline void SetVolumeId(Aws::String&& value) { m_volumeIdHasBeenSet = true; m_volumeId = std::move(value); }
/**
* <p>The unique identifier of the volume, e.g., vol-AE4B946D.</p>
*/
inline void SetVolumeId(const char* value) { m_volumeIdHasBeenSet = true; m_volumeId.assign(value); }
/**
* <p>The unique identifier of the volume, e.g., vol-AE4B946D.</p>
*/
inline CachediSCSIVolume& WithVolumeId(const Aws::String& value) { SetVolumeId(value); return *this;}
/**
* <p>The unique identifier of the volume, e.g., vol-AE4B946D.</p>
*/
inline CachediSCSIVolume& WithVolumeId(Aws::String&& value) { SetVolumeId(std::move(value)); return *this;}
/**
* <p>The unique identifier of the volume, e.g., vol-AE4B946D.</p>
*/
inline CachediSCSIVolume& WithVolumeId(const char* value) { SetVolumeId(value); return *this;}
/**
* <p>One of the VolumeType enumeration values that describes the type of the
* volume.</p>
*/
inline const Aws::String& GetVolumeType() const{ return m_volumeType; }
/**
* <p>One of the VolumeType enumeration values that describes the type of the
* volume.</p>
*/
inline bool VolumeTypeHasBeenSet() const { return m_volumeTypeHasBeenSet; }
/**
* <p>One of the VolumeType enumeration values that describes the type of the
* volume.</p>
*/
inline void SetVolumeType(const Aws::String& value) { m_volumeTypeHasBeenSet = true; m_volumeType = value; }
/**
* <p>One of the VolumeType enumeration values that describes the type of the
* volume.</p>
*/
inline void SetVolumeType(Aws::String&& value) { m_volumeTypeHasBeenSet = true; m_volumeType = std::move(value); }
/**
* <p>One of the VolumeType enumeration values that describes the type of the
* volume.</p>
*/
inline void SetVolumeType(const char* value) { m_volumeTypeHasBeenSet = true; m_volumeType.assign(value); }
/**
* <p>One of the VolumeType enumeration values that describes the type of the
* volume.</p>
*/
inline CachediSCSIVolume& WithVolumeType(const Aws::String& value) { SetVolumeType(value); return *this;}
/**
* <p>One of the VolumeType enumeration values that describes the type of the
* volume.</p>
*/
inline CachediSCSIVolume& WithVolumeType(Aws::String&& value) { SetVolumeType(std::move(value)); return *this;}
/**
* <p>One of the VolumeType enumeration values that describes the type of the
* volume.</p>
*/
inline CachediSCSIVolume& WithVolumeType(const char* value) { SetVolumeType(value); return *this;}
/**
* <p>One of the VolumeStatus values that indicates the state of the storage
* volume.</p>
*/
inline const Aws::String& GetVolumeStatus() const{ return m_volumeStatus; }
/**
* <p>One of the VolumeStatus values that indicates the state of the storage
* volume.</p>
*/
inline bool VolumeStatusHasBeenSet() const { return m_volumeStatusHasBeenSet; }
/**
* <p>One of the VolumeStatus values that indicates the state of the storage
* volume.</p>
*/
inline void SetVolumeStatus(const Aws::String& value) { m_volumeStatusHasBeenSet = true; m_volumeStatus = value; }
/**
* <p>One of the VolumeStatus values that indicates the state of the storage
* volume.</p>
*/
inline void SetVolumeStatus(Aws::String&& value) { m_volumeStatusHasBeenSet = true; m_volumeStatus = std::move(value); }
/**
* <p>One of the VolumeStatus values that indicates the state of the storage
* volume.</p>
*/
inline void SetVolumeStatus(const char* value) { m_volumeStatusHasBeenSet = true; m_volumeStatus.assign(value); }
/**
* <p>One of the VolumeStatus values that indicates the state of the storage
* volume.</p>
*/
inline CachediSCSIVolume& WithVolumeStatus(const Aws::String& value) { SetVolumeStatus(value); return *this;}
/**
* <p>One of the VolumeStatus values that indicates the state of the storage
* volume.</p>
*/
inline CachediSCSIVolume& WithVolumeStatus(Aws::String&& value) { SetVolumeStatus(std::move(value)); return *this;}
/**
* <p>One of the VolumeStatus values that indicates the state of the storage
* volume.</p>
*/
inline CachediSCSIVolume& WithVolumeStatus(const char* value) { SetVolumeStatus(value); return *this;}
/**
* <p>A value that indicates whether a storage volume is attached to or detached
* from a gateway. For more information, see <a
* href="https://docs.aws.amazon.com/storagegateway/latest/userguide/managing-volumes.html#attach-detach-volume">Moving
* your volumes to a different gateway</a>.</p>
*/
inline const Aws::String& GetVolumeAttachmentStatus() const{ return m_volumeAttachmentStatus; }
/**
* <p>A value that indicates whether a storage volume is attached to or detached
* from a gateway. For more information, see <a
* href="https://docs.aws.amazon.com/storagegateway/latest/userguide/managing-volumes.html#attach-detach-volume">Moving
* your volumes to a different gateway</a>.</p>
*/
inline bool VolumeAttachmentStatusHasBeenSet() const { return m_volumeAttachmentStatusHasBeenSet; }
/**
* <p>A value that indicates whether a storage volume is attached to or detached
* from a gateway. For more information, see <a
* href="https://docs.aws.amazon.com/storagegateway/latest/userguide/managing-volumes.html#attach-detach-volume">Moving
* your volumes to a different gateway</a>.</p>
*/
inline void SetVolumeAttachmentStatus(const Aws::String& value) { m_volumeAttachmentStatusHasBeenSet = true; m_volumeAttachmentStatus = value; }
/**
* <p>A value that indicates whether a storage volume is attached to or detached
* from a gateway. For more information, see <a
* href="https://docs.aws.amazon.com/storagegateway/latest/userguide/managing-volumes.html#attach-detach-volume">Moving
* your volumes to a different gateway</a>.</p>
*/
inline void SetVolumeAttachmentStatus(Aws::String&& value) { m_volumeAttachmentStatusHasBeenSet = true; m_volumeAttachmentStatus = std::move(value); }
/**
* <p>A value that indicates whether a storage volume is attached to or detached
* from a gateway. For more information, see <a
* href="https://docs.aws.amazon.com/storagegateway/latest/userguide/managing-volumes.html#attach-detach-volume">Moving
* your volumes to a different gateway</a>.</p>
*/
inline void SetVolumeAttachmentStatus(const char* value) { m_volumeAttachmentStatusHasBeenSet = true; m_volumeAttachmentStatus.assign(value); }
/**
* <p>A value that indicates whether a storage volume is attached to or detached
* from a gateway. For more information, see <a
* href="https://docs.aws.amazon.com/storagegateway/latest/userguide/managing-volumes.html#attach-detach-volume">Moving
* your volumes to a different gateway</a>.</p>
*/
inline CachediSCSIVolume& WithVolumeAttachmentStatus(const Aws::String& value) { SetVolumeAttachmentStatus(value); return *this;}
/**
* <p>A value that indicates whether a storage volume is attached to or detached
* from a gateway. For more information, see <a
* href="https://docs.aws.amazon.com/storagegateway/latest/userguide/managing-volumes.html#attach-detach-volume">Moving
* your volumes to a different gateway</a>.</p>
*/
inline CachediSCSIVolume& WithVolumeAttachmentStatus(Aws::String&& value) { SetVolumeAttachmentStatus(std::move(value)); return *this;}
/**
* <p>A value that indicates whether a storage volume is attached to or detached
* from a gateway. For more information, see <a
* href="https://docs.aws.amazon.com/storagegateway/latest/userguide/managing-volumes.html#attach-detach-volume">Moving
* your volumes to a different gateway</a>.</p>
*/
inline CachediSCSIVolume& WithVolumeAttachmentStatus(const char* value) { SetVolumeAttachmentStatus(value); return *this;}
/**
* <p>The size, in bytes, of the volume capacity.</p>
*/
inline long long GetVolumeSizeInBytes() const{ return m_volumeSizeInBytes; }
/**
* <p>The size, in bytes, of the volume capacity.</p>
*/
inline bool VolumeSizeInBytesHasBeenSet() const { return m_volumeSizeInBytesHasBeenSet; }
/**
* <p>The size, in bytes, of the volume capacity.</p>
*/
inline void SetVolumeSizeInBytes(long long value) { m_volumeSizeInBytesHasBeenSet = true; m_volumeSizeInBytes = value; }
/**
* <p>The size, in bytes, of the volume capacity.</p>
*/
inline CachediSCSIVolume& WithVolumeSizeInBytes(long long value) { SetVolumeSizeInBytes(value); return *this;}
/**
* <p>Represents the percentage complete if the volume is restoring or
* bootstrapping that represents the percent of data transferred. This field does
* not appear in the response if the cached volume is not restoring or
* bootstrapping.</p>
*/
inline double GetVolumeProgress() const{ return m_volumeProgress; }
/**
* <p>Represents the percentage complete if the volume is restoring or
* bootstrapping that represents the percent of data transferred. This field does
* not appear in the response if the cached volume is not restoring or
* bootstrapping.</p>
*/
inline bool VolumeProgressHasBeenSet() const { return m_volumeProgressHasBeenSet; }
/**
* <p>Represents the percentage complete if the volume is restoring or
* bootstrapping that represents the percent of data transferred. This field does
* not appear in the response if the cached volume is not restoring or
* bootstrapping.</p>
*/
inline void SetVolumeProgress(double value) { m_volumeProgressHasBeenSet = true; m_volumeProgress = value; }
/**
* <p>Represents the percentage complete if the volume is restoring or
* bootstrapping that represents the percent of data transferred. This field does
* not appear in the response if the cached volume is not restoring or
* bootstrapping.</p>
*/
inline CachediSCSIVolume& WithVolumeProgress(double value) { SetVolumeProgress(value); return *this;}
/**
* <p>If the cached volume was created from a snapshot, this field contains the
* snapshot ID used, e.g., snap-78e22663. Otherwise, this field is not
* included.</p>
*/
inline const Aws::String& GetSourceSnapshotId() const{ return m_sourceSnapshotId; }
/**
* <p>If the cached volume was created from a snapshot, this field contains the
* snapshot ID used, e.g., snap-78e22663. Otherwise, this field is not
* included.</p>
*/
inline bool SourceSnapshotIdHasBeenSet() const { return m_sourceSnapshotIdHasBeenSet; }
/**
* <p>If the cached volume was created from a snapshot, this field contains the
* snapshot ID used, e.g., snap-78e22663. Otherwise, this field is not
* included.</p>
*/
inline void SetSourceSnapshotId(const Aws::String& value) { m_sourceSnapshotIdHasBeenSet = true; m_sourceSnapshotId = value; }
/**
* <p>If the cached volume was created from a snapshot, this field contains the
* snapshot ID used, e.g., snap-78e22663. Otherwise, this field is not
* included.</p>
*/
inline void SetSourceSnapshotId(Aws::String&& value) { m_sourceSnapshotIdHasBeenSet = true; m_sourceSnapshotId = std::move(value); }
/**
* <p>If the cached volume was created from a snapshot, this field contains the
* snapshot ID used, e.g., snap-78e22663. Otherwise, this field is not
* included.</p>
*/
inline void SetSourceSnapshotId(const char* value) { m_sourceSnapshotIdHasBeenSet = true; m_sourceSnapshotId.assign(value); }
/**
* <p>If the cached volume was created from a snapshot, this field contains the
* snapshot ID used, e.g., snap-78e22663. Otherwise, this field is not
* included.</p>
*/
inline CachediSCSIVolume& WithSourceSnapshotId(const Aws::String& value) { SetSourceSnapshotId(value); return *this;}
/**
* <p>If the cached volume was created from a snapshot, this field contains the
* snapshot ID used, e.g., snap-78e22663. Otherwise, this field is not
* included.</p>
*/
inline CachediSCSIVolume& WithSourceSnapshotId(Aws::String&& value) { SetSourceSnapshotId(std::move(value)); return *this;}
/**
* <p>If the cached volume was created from a snapshot, this field contains the
* snapshot ID used, e.g., snap-78e22663. Otherwise, this field is not
* included.</p>
*/
inline CachediSCSIVolume& WithSourceSnapshotId(const char* value) { SetSourceSnapshotId(value); return *this;}
/**
* <p>An <a>VolumeiSCSIAttributes</a> object that represents a collection of iSCSI
* attributes for one stored volume.</p>
*/
inline const VolumeiSCSIAttributes& GetVolumeiSCSIAttributes() const{ return m_volumeiSCSIAttributes; }
/**
* <p>An <a>VolumeiSCSIAttributes</a> object that represents a collection of iSCSI
* attributes for one stored volume.</p>
*/
inline bool VolumeiSCSIAttributesHasBeenSet() const { return m_volumeiSCSIAttributesHasBeenSet; }
/**
* <p>An <a>VolumeiSCSIAttributes</a> object that represents a collection of iSCSI
* attributes for one stored volume.</p>
*/
inline void SetVolumeiSCSIAttributes(const VolumeiSCSIAttributes& value) { m_volumeiSCSIAttributesHasBeenSet = true; m_volumeiSCSIAttributes = value; }
/**
* <p>An <a>VolumeiSCSIAttributes</a> object that represents a collection of iSCSI
* attributes for one stored volume.</p>
*/
inline void SetVolumeiSCSIAttributes(VolumeiSCSIAttributes&& value) { m_volumeiSCSIAttributesHasBeenSet = true; m_volumeiSCSIAttributes = std::move(value); }
/**
* <p>An <a>VolumeiSCSIAttributes</a> object that represents a collection of iSCSI
* attributes for one stored volume.</p>
*/
inline CachediSCSIVolume& WithVolumeiSCSIAttributes(const VolumeiSCSIAttributes& value) { SetVolumeiSCSIAttributes(value); return *this;}
/**
* <p>An <a>VolumeiSCSIAttributes</a> object that represents a collection of iSCSI
* attributes for one stored volume.</p>
*/
inline CachediSCSIVolume& WithVolumeiSCSIAttributes(VolumeiSCSIAttributes&& value) { SetVolumeiSCSIAttributes(std::move(value)); return *this;}
/**
* <p>The date the volume was created. Volumes created prior to March 28, 2017
* dont have this timestamp.</p>
*/
inline const Aws::Utils::DateTime& GetCreatedDate() const{ return m_createdDate; }
/**
* <p>The date the volume was created. Volumes created prior to March 28, 2017
* dont have this timestamp.</p>
*/
inline bool CreatedDateHasBeenSet() const { return m_createdDateHasBeenSet; }
/**
* <p>The date the volume was created. Volumes created prior to March 28, 2017
* dont have this timestamp.</p>
*/
inline void SetCreatedDate(const Aws::Utils::DateTime& value) { m_createdDateHasBeenSet = true; m_createdDate = value; }
/**
* <p>The date the volume was created. Volumes created prior to March 28, 2017
* dont have this timestamp.</p>
*/
inline void SetCreatedDate(Aws::Utils::DateTime&& value) { m_createdDateHasBeenSet = true; m_createdDate = std::move(value); }
/**
* <p>The date the volume was created. Volumes created prior to March 28, 2017
* dont have this timestamp.</p>
*/
inline CachediSCSIVolume& WithCreatedDate(const Aws::Utils::DateTime& value) { SetCreatedDate(value); return *this;}
/**
* <p>The date the volume was created. Volumes created prior to March 28, 2017
* dont have this timestamp.</p>
*/
inline CachediSCSIVolume& WithCreatedDate(Aws::Utils::DateTime&& value) { SetCreatedDate(std::move(value)); return *this;}
/**
* <p>The size of the data stored on the volume in bytes. This value is calculated
* based on the number of blocks that are touched, instead of the actual amount of
* data written. This value can be useful for sequential write patterns but less
* accurate for random write patterns. <code>VolumeUsedInBytes</code> is different
* from the compressed size of the volume, which is the value that is used to
* calculate your bill.</p> <p>This value is not available for volumes
* created prior to May 13, 2015, until you store data on the volume.</p>
*/
inline long long GetVolumeUsedInBytes() const{ return m_volumeUsedInBytes; }
/**
* <p>The size of the data stored on the volume in bytes. This value is calculated
* based on the number of blocks that are touched, instead of the actual amount of
* data written. This value can be useful for sequential write patterns but less
* accurate for random write patterns. <code>VolumeUsedInBytes</code> is different
* from the compressed size of the volume, which is the value that is used to
* calculate your bill.</p> <p>This value is not available for volumes
* created prior to May 13, 2015, until you store data on the volume.</p>
*/
inline bool VolumeUsedInBytesHasBeenSet() const { return m_volumeUsedInBytesHasBeenSet; }
/**
* <p>The size of the data stored on the volume in bytes. This value is calculated
* based on the number of blocks that are touched, instead of the actual amount of
* data written. This value can be useful for sequential write patterns but less
* accurate for random write patterns. <code>VolumeUsedInBytes</code> is different
* from the compressed size of the volume, which is the value that is used to
* calculate your bill.</p> <p>This value is not available for volumes
* created prior to May 13, 2015, until you store data on the volume.</p>
*/
inline void SetVolumeUsedInBytes(long long value) { m_volumeUsedInBytesHasBeenSet = true; m_volumeUsedInBytes = value; }
/**
* <p>The size of the data stored on the volume in bytes. This value is calculated
* based on the number of blocks that are touched, instead of the actual amount of
* data written. This value can be useful for sequential write patterns but less
* accurate for random write patterns. <code>VolumeUsedInBytes</code> is different
* from the compressed size of the volume, which is the value that is used to
* calculate your bill.</p> <p>This value is not available for volumes
* created prior to May 13, 2015, until you store data on the volume.</p>
*/
inline CachediSCSIVolume& WithVolumeUsedInBytes(long long value) { SetVolumeUsedInBytes(value); return *this;}
inline const Aws::String& GetKMSKey() const{ return m_kMSKey; }
inline bool KMSKeyHasBeenSet() const { return m_kMSKeyHasBeenSet; }
inline void SetKMSKey(const Aws::String& value) { m_kMSKeyHasBeenSet = true; m_kMSKey = value; }
inline void SetKMSKey(Aws::String&& value) { m_kMSKeyHasBeenSet = true; m_kMSKey = std::move(value); }
inline void SetKMSKey(const char* value) { m_kMSKeyHasBeenSet = true; m_kMSKey.assign(value); }
inline CachediSCSIVolume& WithKMSKey(const Aws::String& value) { SetKMSKey(value); return *this;}
inline CachediSCSIVolume& WithKMSKey(Aws::String&& value) { SetKMSKey(std::move(value)); return *this;}
inline CachediSCSIVolume& WithKMSKey(const char* value) { SetKMSKey(value); return *this;}
/**
* <p>The name of the iSCSI target used by an initiator to connect to a volume and
* used as a suffix for the target ARN. For example, specifying
* <code>TargetName</code> as <i>myvolume</i> results in the target ARN of
* <code>arn:aws:storagegateway:us-east-2:111122223333:gateway/sgw-12A3456B/target/iqn.1997-05.com.amazon:myvolume</code>.
* The target name must be unique across all volumes on a gateway.</p> <p>If you
* don't specify a value, Storage Gateway uses the value that was previously used
* for this volume as the new target name.</p>
*/
inline const Aws::String& GetTargetName() const{ return m_targetName; }
/**
* <p>The name of the iSCSI target used by an initiator to connect to a volume and
* used as a suffix for the target ARN. For example, specifying
* <code>TargetName</code> as <i>myvolume</i> results in the target ARN of
* <code>arn:aws:storagegateway:us-east-2:111122223333:gateway/sgw-12A3456B/target/iqn.1997-05.com.amazon:myvolume</code>.
* The target name must be unique across all volumes on a gateway.</p> <p>If you
* don't specify a value, Storage Gateway uses the value that was previously used
* for this volume as the new target name.</p>
*/
inline bool TargetNameHasBeenSet() const { return m_targetNameHasBeenSet; }
/**
* <p>The name of the iSCSI target used by an initiator to connect to a volume and
* used as a suffix for the target ARN. For example, specifying
* <code>TargetName</code> as <i>myvolume</i> results in the target ARN of
* <code>arn:aws:storagegateway:us-east-2:111122223333:gateway/sgw-12A3456B/target/iqn.1997-05.com.amazon:myvolume</code>.
* The target name must be unique across all volumes on a gateway.</p> <p>If you
* don't specify a value, Storage Gateway uses the value that was previously used
* for this volume as the new target name.</p>
*/
inline void SetTargetName(const Aws::String& value) { m_targetNameHasBeenSet = true; m_targetName = value; }
/**
* <p>The name of the iSCSI target used by an initiator to connect to a volume and
* used as a suffix for the target ARN. For example, specifying
* <code>TargetName</code> as <i>myvolume</i> results in the target ARN of
* <code>arn:aws:storagegateway:us-east-2:111122223333:gateway/sgw-12A3456B/target/iqn.1997-05.com.amazon:myvolume</code>.
* The target name must be unique across all volumes on a gateway.</p> <p>If you
* don't specify a value, Storage Gateway uses the value that was previously used
* for this volume as the new target name.</p>
*/
inline void SetTargetName(Aws::String&& value) { m_targetNameHasBeenSet = true; m_targetName = std::move(value); }
/**
* <p>The name of the iSCSI target used by an initiator to connect to a volume and
* used as a suffix for the target ARN. For example, specifying
* <code>TargetName</code> as <i>myvolume</i> results in the target ARN of
* <code>arn:aws:storagegateway:us-east-2:111122223333:gateway/sgw-12A3456B/target/iqn.1997-05.com.amazon:myvolume</code>.
* The target name must be unique across all volumes on a gateway.</p> <p>If you
* don't specify a value, Storage Gateway uses the value that was previously used
* for this volume as the new target name.</p>
*/
inline void SetTargetName(const char* value) { m_targetNameHasBeenSet = true; m_targetName.assign(value); }
/**
* <p>The name of the iSCSI target used by an initiator to connect to a volume and
* used as a suffix for the target ARN. For example, specifying
* <code>TargetName</code> as <i>myvolume</i> results in the target ARN of
* <code>arn:aws:storagegateway:us-east-2:111122223333:gateway/sgw-12A3456B/target/iqn.1997-05.com.amazon:myvolume</code>.
* The target name must be unique across all volumes on a gateway.</p> <p>If you
* don't specify a value, Storage Gateway uses the value that was previously used
* for this volume as the new target name.</p>
*/
inline CachediSCSIVolume& WithTargetName(const Aws::String& value) { SetTargetName(value); return *this;}
/**
* <p>The name of the iSCSI target used by an initiator to connect to a volume and
* used as a suffix for the target ARN. For example, specifying
* <code>TargetName</code> as <i>myvolume</i> results in the target ARN of
* <code>arn:aws:storagegateway:us-east-2:111122223333:gateway/sgw-12A3456B/target/iqn.1997-05.com.amazon:myvolume</code>.
* The target name must be unique across all volumes on a gateway.</p> <p>If you
* don't specify a value, Storage Gateway uses the value that was previously used
* for this volume as the new target name.</p>
*/
inline CachediSCSIVolume& WithTargetName(Aws::String&& value) { SetTargetName(std::move(value)); return *this;}
/**
* <p>The name of the iSCSI target used by an initiator to connect to a volume and
* used as a suffix for the target ARN. For example, specifying
* <code>TargetName</code> as <i>myvolume</i> results in the target ARN of
* <code>arn:aws:storagegateway:us-east-2:111122223333:gateway/sgw-12A3456B/target/iqn.1997-05.com.amazon:myvolume</code>.
* The target name must be unique across all volumes on a gateway.</p> <p>If you
* don't specify a value, Storage Gateway uses the value that was previously used
* for this volume as the new target name.</p>
*/
inline CachediSCSIVolume& WithTargetName(const char* value) { SetTargetName(value); return *this;}
private:
Aws::String m_volumeARN;
bool m_volumeARNHasBeenSet;
Aws::String m_volumeId;
bool m_volumeIdHasBeenSet;
Aws::String m_volumeType;
bool m_volumeTypeHasBeenSet;
Aws::String m_volumeStatus;
bool m_volumeStatusHasBeenSet;
Aws::String m_volumeAttachmentStatus;
bool m_volumeAttachmentStatusHasBeenSet;
long long m_volumeSizeInBytes;
bool m_volumeSizeInBytesHasBeenSet;
double m_volumeProgress;
bool m_volumeProgressHasBeenSet;
Aws::String m_sourceSnapshotId;
bool m_sourceSnapshotIdHasBeenSet;
VolumeiSCSIAttributes m_volumeiSCSIAttributes;
bool m_volumeiSCSIAttributesHasBeenSet;
Aws::Utils::DateTime m_createdDate;
bool m_createdDateHasBeenSet;
long long m_volumeUsedInBytes;
bool m_volumeUsedInBytesHasBeenSet;
Aws::String m_kMSKey;
bool m_kMSKeyHasBeenSet;
Aws::String m_targetName;
bool m_targetNameHasBeenSet;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,124 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/storagegateway/StorageGatewayRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace StorageGateway
{
namespace Model
{
/**
* <p>CancelArchivalInput</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/CancelArchivalInput">AWS
* API Reference</a></p>
*/
class AWS_STORAGEGATEWAY_API CancelArchivalRequest : public StorageGatewayRequest
{
public:
CancelArchivalRequest();
// 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 "CancelArchival"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
inline const Aws::String& GetGatewayARN() const{ return m_gatewayARN; }
inline bool GatewayARNHasBeenSet() const { return m_gatewayARNHasBeenSet; }
inline void SetGatewayARN(const Aws::String& value) { m_gatewayARNHasBeenSet = true; m_gatewayARN = value; }
inline void SetGatewayARN(Aws::String&& value) { m_gatewayARNHasBeenSet = true; m_gatewayARN = std::move(value); }
inline void SetGatewayARN(const char* value) { m_gatewayARNHasBeenSet = true; m_gatewayARN.assign(value); }
inline CancelArchivalRequest& WithGatewayARN(const Aws::String& value) { SetGatewayARN(value); return *this;}
inline CancelArchivalRequest& WithGatewayARN(Aws::String&& value) { SetGatewayARN(std::move(value)); return *this;}
inline CancelArchivalRequest& WithGatewayARN(const char* value) { SetGatewayARN(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the virtual tape you want to cancel
* archiving for.</p>
*/
inline const Aws::String& GetTapeARN() const{ return m_tapeARN; }
/**
* <p>The Amazon Resource Name (ARN) of the virtual tape you want to cancel
* archiving for.</p>
*/
inline bool TapeARNHasBeenSet() const { return m_tapeARNHasBeenSet; }
/**
* <p>The Amazon Resource Name (ARN) of the virtual tape you want to cancel
* archiving for.</p>
*/
inline void SetTapeARN(const Aws::String& value) { m_tapeARNHasBeenSet = true; m_tapeARN = value; }
/**
* <p>The Amazon Resource Name (ARN) of the virtual tape you want to cancel
* archiving for.</p>
*/
inline void SetTapeARN(Aws::String&& value) { m_tapeARNHasBeenSet = true; m_tapeARN = std::move(value); }
/**
* <p>The Amazon Resource Name (ARN) of the virtual tape you want to cancel
* archiving for.</p>
*/
inline void SetTapeARN(const char* value) { m_tapeARNHasBeenSet = true; m_tapeARN.assign(value); }
/**
* <p>The Amazon Resource Name (ARN) of the virtual tape you want to cancel
* archiving for.</p>
*/
inline CancelArchivalRequest& WithTapeARN(const Aws::String& value) { SetTapeARN(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the virtual tape you want to cancel
* archiving for.</p>
*/
inline CancelArchivalRequest& WithTapeARN(Aws::String&& value) { SetTapeARN(std::move(value)); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the virtual tape you want to cancel
* archiving for.</p>
*/
inline CancelArchivalRequest& WithTapeARN(const char* value) { SetTapeARN(value); return *this;}
private:
Aws::String m_gatewayARN;
bool m_gatewayARNHasBeenSet;
Aws::String m_tapeARN;
bool m_tapeARNHasBeenSet;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,89 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace StorageGateway
{
namespace Model
{
/**
* <p>CancelArchivalOutput</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/CancelArchivalOutput">AWS
* API Reference</a></p>
*/
class AWS_STORAGEGATEWAY_API CancelArchivalResult
{
public:
CancelArchivalResult();
CancelArchivalResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
CancelArchivalResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>The Amazon Resource Name (ARN) of the virtual tape for which archiving was
* canceled.</p>
*/
inline const Aws::String& GetTapeARN() const{ return m_tapeARN; }
/**
* <p>The Amazon Resource Name (ARN) of the virtual tape for which archiving was
* canceled.</p>
*/
inline void SetTapeARN(const Aws::String& value) { m_tapeARN = value; }
/**
* <p>The Amazon Resource Name (ARN) of the virtual tape for which archiving was
* canceled.</p>
*/
inline void SetTapeARN(Aws::String&& value) { m_tapeARN = std::move(value); }
/**
* <p>The Amazon Resource Name (ARN) of the virtual tape for which archiving was
* canceled.</p>
*/
inline void SetTapeARN(const char* value) { m_tapeARN.assign(value); }
/**
* <p>The Amazon Resource Name (ARN) of the virtual tape for which archiving was
* canceled.</p>
*/
inline CancelArchivalResult& WithTapeARN(const Aws::String& value) { SetTapeARN(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the virtual tape for which archiving was
* canceled.</p>
*/
inline CancelArchivalResult& WithTapeARN(Aws::String&& value) { SetTapeARN(std::move(value)); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the virtual tape for which archiving was
* canceled.</p>
*/
inline CancelArchivalResult& WithTapeARN(const char* value) { SetTapeARN(value); return *this;}
private:
Aws::String m_tapeARN;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,124 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/storagegateway/StorageGatewayRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace StorageGateway
{
namespace Model
{
/**
* <p>CancelRetrievalInput</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/CancelRetrievalInput">AWS
* API Reference</a></p>
*/
class AWS_STORAGEGATEWAY_API CancelRetrievalRequest : public StorageGatewayRequest
{
public:
CancelRetrievalRequest();
// 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 "CancelRetrieval"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
inline const Aws::String& GetGatewayARN() const{ return m_gatewayARN; }
inline bool GatewayARNHasBeenSet() const { return m_gatewayARNHasBeenSet; }
inline void SetGatewayARN(const Aws::String& value) { m_gatewayARNHasBeenSet = true; m_gatewayARN = value; }
inline void SetGatewayARN(Aws::String&& value) { m_gatewayARNHasBeenSet = true; m_gatewayARN = std::move(value); }
inline void SetGatewayARN(const char* value) { m_gatewayARNHasBeenSet = true; m_gatewayARN.assign(value); }
inline CancelRetrievalRequest& WithGatewayARN(const Aws::String& value) { SetGatewayARN(value); return *this;}
inline CancelRetrievalRequest& WithGatewayARN(Aws::String&& value) { SetGatewayARN(std::move(value)); return *this;}
inline CancelRetrievalRequest& WithGatewayARN(const char* value) { SetGatewayARN(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the virtual tape you want to cancel
* retrieval for.</p>
*/
inline const Aws::String& GetTapeARN() const{ return m_tapeARN; }
/**
* <p>The Amazon Resource Name (ARN) of the virtual tape you want to cancel
* retrieval for.</p>
*/
inline bool TapeARNHasBeenSet() const { return m_tapeARNHasBeenSet; }
/**
* <p>The Amazon Resource Name (ARN) of the virtual tape you want to cancel
* retrieval for.</p>
*/
inline void SetTapeARN(const Aws::String& value) { m_tapeARNHasBeenSet = true; m_tapeARN = value; }
/**
* <p>The Amazon Resource Name (ARN) of the virtual tape you want to cancel
* retrieval for.</p>
*/
inline void SetTapeARN(Aws::String&& value) { m_tapeARNHasBeenSet = true; m_tapeARN = std::move(value); }
/**
* <p>The Amazon Resource Name (ARN) of the virtual tape you want to cancel
* retrieval for.</p>
*/
inline void SetTapeARN(const char* value) { m_tapeARNHasBeenSet = true; m_tapeARN.assign(value); }
/**
* <p>The Amazon Resource Name (ARN) of the virtual tape you want to cancel
* retrieval for.</p>
*/
inline CancelRetrievalRequest& WithTapeARN(const Aws::String& value) { SetTapeARN(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the virtual tape you want to cancel
* retrieval for.</p>
*/
inline CancelRetrievalRequest& WithTapeARN(Aws::String&& value) { SetTapeARN(std::move(value)); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the virtual tape you want to cancel
* retrieval for.</p>
*/
inline CancelRetrievalRequest& WithTapeARN(const char* value) { SetTapeARN(value); return *this;}
private:
Aws::String m_gatewayARN;
bool m_gatewayARNHasBeenSet;
Aws::String m_tapeARN;
bool m_tapeARNHasBeenSet;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,89 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace StorageGateway
{
namespace Model
{
/**
* <p>CancelRetrievalOutput</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/CancelRetrievalOutput">AWS
* API Reference</a></p>
*/
class AWS_STORAGEGATEWAY_API CancelRetrievalResult
{
public:
CancelRetrievalResult();
CancelRetrievalResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
CancelRetrievalResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>The Amazon Resource Name (ARN) of the virtual tape for which retrieval was
* canceled.</p>
*/
inline const Aws::String& GetTapeARN() const{ return m_tapeARN; }
/**
* <p>The Amazon Resource Name (ARN) of the virtual tape for which retrieval was
* canceled.</p>
*/
inline void SetTapeARN(const Aws::String& value) { m_tapeARN = value; }
/**
* <p>The Amazon Resource Name (ARN) of the virtual tape for which retrieval was
* canceled.</p>
*/
inline void SetTapeARN(Aws::String&& value) { m_tapeARN = std::move(value); }
/**
* <p>The Amazon Resource Name (ARN) of the virtual tape for which retrieval was
* canceled.</p>
*/
inline void SetTapeARN(const char* value) { m_tapeARN.assign(value); }
/**
* <p>The Amazon Resource Name (ARN) of the virtual tape for which retrieval was
* canceled.</p>
*/
inline CancelRetrievalResult& WithTapeARN(const Aws::String& value) { SetTapeARN(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the virtual tape for which retrieval was
* canceled.</p>
*/
inline CancelRetrievalResult& WithTapeARN(Aws::String&& value) { SetTapeARN(std::move(value)); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the virtual tape for which retrieval was
* canceled.</p>
*/
inline CancelRetrievalResult& WithTapeARN(const char* value) { SetTapeARN(value); return *this;}
private:
Aws::String m_tapeARN;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,31 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
namespace Aws
{
namespace StorageGateway
{
namespace Model
{
enum class CaseSensitivity
{
NOT_SET,
ClientSpecified,
CaseSensitive
};
namespace CaseSensitivityMapper
{
AWS_STORAGEGATEWAY_API CaseSensitivity GetCaseSensitivityForName(const Aws::String& name);
AWS_STORAGEGATEWAY_API Aws::String GetNameForCaseSensitivity(CaseSensitivity value);
} // namespace CaseSensitivityMapper
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,246 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace StorageGateway
{
namespace Model
{
/**
* <p>Describes Challenge-Handshake Authentication Protocol (CHAP) information that
* supports authentication between your gateway and iSCSI initiators.</p><p><h3>See
* Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/ChapInfo">AWS
* API Reference</a></p>
*/
class AWS_STORAGEGATEWAY_API ChapInfo
{
public:
ChapInfo();
ChapInfo(Aws::Utils::Json::JsonView jsonValue);
ChapInfo& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>The Amazon Resource Name (ARN) of the volume.</p> <p>Valid Values: 50 to 500
* lowercase letters, numbers, periods (.), and hyphens (-).</p>
*/
inline const Aws::String& GetTargetARN() const{ return m_targetARN; }
/**
* <p>The Amazon Resource Name (ARN) of the volume.</p> <p>Valid Values: 50 to 500
* lowercase letters, numbers, periods (.), and hyphens (-).</p>
*/
inline bool TargetARNHasBeenSet() const { return m_targetARNHasBeenSet; }
/**
* <p>The Amazon Resource Name (ARN) of the volume.</p> <p>Valid Values: 50 to 500
* lowercase letters, numbers, periods (.), and hyphens (-).</p>
*/
inline void SetTargetARN(const Aws::String& value) { m_targetARNHasBeenSet = true; m_targetARN = value; }
/**
* <p>The Amazon Resource Name (ARN) of the volume.</p> <p>Valid Values: 50 to 500
* lowercase letters, numbers, periods (.), and hyphens (-).</p>
*/
inline void SetTargetARN(Aws::String&& value) { m_targetARNHasBeenSet = true; m_targetARN = std::move(value); }
/**
* <p>The Amazon Resource Name (ARN) of the volume.</p> <p>Valid Values: 50 to 500
* lowercase letters, numbers, periods (.), and hyphens (-).</p>
*/
inline void SetTargetARN(const char* value) { m_targetARNHasBeenSet = true; m_targetARN.assign(value); }
/**
* <p>The Amazon Resource Name (ARN) of the volume.</p> <p>Valid Values: 50 to 500
* lowercase letters, numbers, periods (.), and hyphens (-).</p>
*/
inline ChapInfo& WithTargetARN(const Aws::String& value) { SetTargetARN(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the volume.</p> <p>Valid Values: 50 to 500
* lowercase letters, numbers, periods (.), and hyphens (-).</p>
*/
inline ChapInfo& WithTargetARN(Aws::String&& value) { SetTargetARN(std::move(value)); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the volume.</p> <p>Valid Values: 50 to 500
* lowercase letters, numbers, periods (.), and hyphens (-).</p>
*/
inline ChapInfo& WithTargetARN(const char* value) { SetTargetARN(value); return *this;}
/**
* <p>The secret key that the initiator (for example, the Windows client) must
* provide to participate in mutual CHAP with the target.</p>
*/
inline const Aws::String& GetSecretToAuthenticateInitiator() const{ return m_secretToAuthenticateInitiator; }
/**
* <p>The secret key that the initiator (for example, the Windows client) must
* provide to participate in mutual CHAP with the target.</p>
*/
inline bool SecretToAuthenticateInitiatorHasBeenSet() const { return m_secretToAuthenticateInitiatorHasBeenSet; }
/**
* <p>The secret key that the initiator (for example, the Windows client) must
* provide to participate in mutual CHAP with the target.</p>
*/
inline void SetSecretToAuthenticateInitiator(const Aws::String& value) { m_secretToAuthenticateInitiatorHasBeenSet = true; m_secretToAuthenticateInitiator = value; }
/**
* <p>The secret key that the initiator (for example, the Windows client) must
* provide to participate in mutual CHAP with the target.</p>
*/
inline void SetSecretToAuthenticateInitiator(Aws::String&& value) { m_secretToAuthenticateInitiatorHasBeenSet = true; m_secretToAuthenticateInitiator = std::move(value); }
/**
* <p>The secret key that the initiator (for example, the Windows client) must
* provide to participate in mutual CHAP with the target.</p>
*/
inline void SetSecretToAuthenticateInitiator(const char* value) { m_secretToAuthenticateInitiatorHasBeenSet = true; m_secretToAuthenticateInitiator.assign(value); }
/**
* <p>The secret key that the initiator (for example, the Windows client) must
* provide to participate in mutual CHAP with the target.</p>
*/
inline ChapInfo& WithSecretToAuthenticateInitiator(const Aws::String& value) { SetSecretToAuthenticateInitiator(value); return *this;}
/**
* <p>The secret key that the initiator (for example, the Windows client) must
* provide to participate in mutual CHAP with the target.</p>
*/
inline ChapInfo& WithSecretToAuthenticateInitiator(Aws::String&& value) { SetSecretToAuthenticateInitiator(std::move(value)); return *this;}
/**
* <p>The secret key that the initiator (for example, the Windows client) must
* provide to participate in mutual CHAP with the target.</p>
*/
inline ChapInfo& WithSecretToAuthenticateInitiator(const char* value) { SetSecretToAuthenticateInitiator(value); return *this;}
/**
* <p>The iSCSI initiator that connects to the target.</p>
*/
inline const Aws::String& GetInitiatorName() const{ return m_initiatorName; }
/**
* <p>The iSCSI initiator that connects to the target.</p>
*/
inline bool InitiatorNameHasBeenSet() const { return m_initiatorNameHasBeenSet; }
/**
* <p>The iSCSI initiator that connects to the target.</p>
*/
inline void SetInitiatorName(const Aws::String& value) { m_initiatorNameHasBeenSet = true; m_initiatorName = value; }
/**
* <p>The iSCSI initiator that connects to the target.</p>
*/
inline void SetInitiatorName(Aws::String&& value) { m_initiatorNameHasBeenSet = true; m_initiatorName = std::move(value); }
/**
* <p>The iSCSI initiator that connects to the target.</p>
*/
inline void SetInitiatorName(const char* value) { m_initiatorNameHasBeenSet = true; m_initiatorName.assign(value); }
/**
* <p>The iSCSI initiator that connects to the target.</p>
*/
inline ChapInfo& WithInitiatorName(const Aws::String& value) { SetInitiatorName(value); return *this;}
/**
* <p>The iSCSI initiator that connects to the target.</p>
*/
inline ChapInfo& WithInitiatorName(Aws::String&& value) { SetInitiatorName(std::move(value)); return *this;}
/**
* <p>The iSCSI initiator that connects to the target.</p>
*/
inline ChapInfo& WithInitiatorName(const char* value) { SetInitiatorName(value); return *this;}
/**
* <p>The secret key that the target must provide to participate in mutual CHAP
* with the initiator (e.g., Windows client).</p>
*/
inline const Aws::String& GetSecretToAuthenticateTarget() const{ return m_secretToAuthenticateTarget; }
/**
* <p>The secret key that the target must provide to participate in mutual CHAP
* with the initiator (e.g., Windows client).</p>
*/
inline bool SecretToAuthenticateTargetHasBeenSet() const { return m_secretToAuthenticateTargetHasBeenSet; }
/**
* <p>The secret key that the target must provide to participate in mutual CHAP
* with the initiator (e.g., Windows client).</p>
*/
inline void SetSecretToAuthenticateTarget(const Aws::String& value) { m_secretToAuthenticateTargetHasBeenSet = true; m_secretToAuthenticateTarget = value; }
/**
* <p>The secret key that the target must provide to participate in mutual CHAP
* with the initiator (e.g., Windows client).</p>
*/
inline void SetSecretToAuthenticateTarget(Aws::String&& value) { m_secretToAuthenticateTargetHasBeenSet = true; m_secretToAuthenticateTarget = std::move(value); }
/**
* <p>The secret key that the target must provide to participate in mutual CHAP
* with the initiator (e.g., Windows client).</p>
*/
inline void SetSecretToAuthenticateTarget(const char* value) { m_secretToAuthenticateTargetHasBeenSet = true; m_secretToAuthenticateTarget.assign(value); }
/**
* <p>The secret key that the target must provide to participate in mutual CHAP
* with the initiator (e.g., Windows client).</p>
*/
inline ChapInfo& WithSecretToAuthenticateTarget(const Aws::String& value) { SetSecretToAuthenticateTarget(value); return *this;}
/**
* <p>The secret key that the target must provide to participate in mutual CHAP
* with the initiator (e.g., Windows client).</p>
*/
inline ChapInfo& WithSecretToAuthenticateTarget(Aws::String&& value) { SetSecretToAuthenticateTarget(std::move(value)); return *this;}
/**
* <p>The secret key that the target must provide to participate in mutual CHAP
* with the initiator (e.g., Windows client).</p>
*/
inline ChapInfo& WithSecretToAuthenticateTarget(const char* value) { SetSecretToAuthenticateTarget(value); return *this;}
private:
Aws::String m_targetARN;
bool m_targetARNHasBeenSet;
Aws::String m_secretToAuthenticateInitiator;
bool m_secretToAuthenticateInitiatorHasBeenSet;
Aws::String m_initiatorName;
bool m_initiatorNameHasBeenSet;
Aws::String m_secretToAuthenticateTarget;
bool m_secretToAuthenticateTargetHasBeenSet;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,643 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/storagegateway/StorageGatewayRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/storagegateway/model/Tag.h>
#include <utility>
namespace Aws
{
namespace StorageGateway
{
namespace Model
{
/**
*/
class AWS_STORAGEGATEWAY_API CreateCachediSCSIVolumeRequest : public StorageGatewayRequest
{
public:
CreateCachediSCSIVolumeRequest();
// 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 "CreateCachediSCSIVolume"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
inline const Aws::String& GetGatewayARN() const{ return m_gatewayARN; }
inline bool GatewayARNHasBeenSet() const { return m_gatewayARNHasBeenSet; }
inline void SetGatewayARN(const Aws::String& value) { m_gatewayARNHasBeenSet = true; m_gatewayARN = value; }
inline void SetGatewayARN(Aws::String&& value) { m_gatewayARNHasBeenSet = true; m_gatewayARN = std::move(value); }
inline void SetGatewayARN(const char* value) { m_gatewayARNHasBeenSet = true; m_gatewayARN.assign(value); }
inline CreateCachediSCSIVolumeRequest& WithGatewayARN(const Aws::String& value) { SetGatewayARN(value); return *this;}
inline CreateCachediSCSIVolumeRequest& WithGatewayARN(Aws::String&& value) { SetGatewayARN(std::move(value)); return *this;}
inline CreateCachediSCSIVolumeRequest& WithGatewayARN(const char* value) { SetGatewayARN(value); return *this;}
/**
* <p>The size of the volume in bytes.</p>
*/
inline long long GetVolumeSizeInBytes() const{ return m_volumeSizeInBytes; }
/**
* <p>The size of the volume in bytes.</p>
*/
inline bool VolumeSizeInBytesHasBeenSet() const { return m_volumeSizeInBytesHasBeenSet; }
/**
* <p>The size of the volume in bytes.</p>
*/
inline void SetVolumeSizeInBytes(long long value) { m_volumeSizeInBytesHasBeenSet = true; m_volumeSizeInBytes = value; }
/**
* <p>The size of the volume in bytes.</p>
*/
inline CreateCachediSCSIVolumeRequest& WithVolumeSizeInBytes(long long value) { SetVolumeSizeInBytes(value); return *this;}
/**
* <p>The snapshot ID (e.g. "snap-1122aabb") of the snapshot to restore as the new
* cached volume. Specify this field if you want to create the iSCSI storage volume
* from a snapshot; otherwise, do not include this field. To list snapshots for
* your account use <a
* href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/ApiReference-query-DescribeSnapshots.html">DescribeSnapshots</a>
* in the <i>Amazon Elastic Compute Cloud API Reference</i>.</p>
*/
inline const Aws::String& GetSnapshotId() const{ return m_snapshotId; }
/**
* <p>The snapshot ID (e.g. "snap-1122aabb") of the snapshot to restore as the new
* cached volume. Specify this field if you want to create the iSCSI storage volume
* from a snapshot; otherwise, do not include this field. To list snapshots for
* your account use <a
* href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/ApiReference-query-DescribeSnapshots.html">DescribeSnapshots</a>
* in the <i>Amazon Elastic Compute Cloud API Reference</i>.</p>
*/
inline bool SnapshotIdHasBeenSet() const { return m_snapshotIdHasBeenSet; }
/**
* <p>The snapshot ID (e.g. "snap-1122aabb") of the snapshot to restore as the new
* cached volume. Specify this field if you want to create the iSCSI storage volume
* from a snapshot; otherwise, do not include this field. To list snapshots for
* your account use <a
* href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/ApiReference-query-DescribeSnapshots.html">DescribeSnapshots</a>
* in the <i>Amazon Elastic Compute Cloud API Reference</i>.</p>
*/
inline void SetSnapshotId(const Aws::String& value) { m_snapshotIdHasBeenSet = true; m_snapshotId = value; }
/**
* <p>The snapshot ID (e.g. "snap-1122aabb") of the snapshot to restore as the new
* cached volume. Specify this field if you want to create the iSCSI storage volume
* from a snapshot; otherwise, do not include this field. To list snapshots for
* your account use <a
* href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/ApiReference-query-DescribeSnapshots.html">DescribeSnapshots</a>
* in the <i>Amazon Elastic Compute Cloud API Reference</i>.</p>
*/
inline void SetSnapshotId(Aws::String&& value) { m_snapshotIdHasBeenSet = true; m_snapshotId = std::move(value); }
/**
* <p>The snapshot ID (e.g. "snap-1122aabb") of the snapshot to restore as the new
* cached volume. Specify this field if you want to create the iSCSI storage volume
* from a snapshot; otherwise, do not include this field. To list snapshots for
* your account use <a
* href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/ApiReference-query-DescribeSnapshots.html">DescribeSnapshots</a>
* in the <i>Amazon Elastic Compute Cloud API Reference</i>.</p>
*/
inline void SetSnapshotId(const char* value) { m_snapshotIdHasBeenSet = true; m_snapshotId.assign(value); }
/**
* <p>The snapshot ID (e.g. "snap-1122aabb") of the snapshot to restore as the new
* cached volume. Specify this field if you want to create the iSCSI storage volume
* from a snapshot; otherwise, do not include this field. To list snapshots for
* your account use <a
* href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/ApiReference-query-DescribeSnapshots.html">DescribeSnapshots</a>
* in the <i>Amazon Elastic Compute Cloud API Reference</i>.</p>
*/
inline CreateCachediSCSIVolumeRequest& WithSnapshotId(const Aws::String& value) { SetSnapshotId(value); return *this;}
/**
* <p>The snapshot ID (e.g. "snap-1122aabb") of the snapshot to restore as the new
* cached volume. Specify this field if you want to create the iSCSI storage volume
* from a snapshot; otherwise, do not include this field. To list snapshots for
* your account use <a
* href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/ApiReference-query-DescribeSnapshots.html">DescribeSnapshots</a>
* in the <i>Amazon Elastic Compute Cloud API Reference</i>.</p>
*/
inline CreateCachediSCSIVolumeRequest& WithSnapshotId(Aws::String&& value) { SetSnapshotId(std::move(value)); return *this;}
/**
* <p>The snapshot ID (e.g. "snap-1122aabb") of the snapshot to restore as the new
* cached volume. Specify this field if you want to create the iSCSI storage volume
* from a snapshot; otherwise, do not include this field. To list snapshots for
* your account use <a
* href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/ApiReference-query-DescribeSnapshots.html">DescribeSnapshots</a>
* in the <i>Amazon Elastic Compute Cloud API Reference</i>.</p>
*/
inline CreateCachediSCSIVolumeRequest& WithSnapshotId(const char* value) { SetSnapshotId(value); return *this;}
/**
* <p>The name of the iSCSI target used by an initiator to connect to a volume and
* used as a suffix for the target ARN. For example, specifying
* <code>TargetName</code> as <i>myvolume</i> results in the target ARN of
* <code>arn:aws:storagegateway:us-east-2:111122223333:gateway/sgw-12A3456B/target/iqn.1997-05.com.amazon:myvolume</code>.
* The target name must be unique across all volumes on a gateway.</p> <p>If you
* don't specify a value, Storage Gateway uses the value that was previously used
* for this volume as the new target name.</p>
*/
inline const Aws::String& GetTargetName() const{ return m_targetName; }
/**
* <p>The name of the iSCSI target used by an initiator to connect to a volume and
* used as a suffix for the target ARN. For example, specifying
* <code>TargetName</code> as <i>myvolume</i> results in the target ARN of
* <code>arn:aws:storagegateway:us-east-2:111122223333:gateway/sgw-12A3456B/target/iqn.1997-05.com.amazon:myvolume</code>.
* The target name must be unique across all volumes on a gateway.</p> <p>If you
* don't specify a value, Storage Gateway uses the value that was previously used
* for this volume as the new target name.</p>
*/
inline bool TargetNameHasBeenSet() const { return m_targetNameHasBeenSet; }
/**
* <p>The name of the iSCSI target used by an initiator to connect to a volume and
* used as a suffix for the target ARN. For example, specifying
* <code>TargetName</code> as <i>myvolume</i> results in the target ARN of
* <code>arn:aws:storagegateway:us-east-2:111122223333:gateway/sgw-12A3456B/target/iqn.1997-05.com.amazon:myvolume</code>.
* The target name must be unique across all volumes on a gateway.</p> <p>If you
* don't specify a value, Storage Gateway uses the value that was previously used
* for this volume as the new target name.</p>
*/
inline void SetTargetName(const Aws::String& value) { m_targetNameHasBeenSet = true; m_targetName = value; }
/**
* <p>The name of the iSCSI target used by an initiator to connect to a volume and
* used as a suffix for the target ARN. For example, specifying
* <code>TargetName</code> as <i>myvolume</i> results in the target ARN of
* <code>arn:aws:storagegateway:us-east-2:111122223333:gateway/sgw-12A3456B/target/iqn.1997-05.com.amazon:myvolume</code>.
* The target name must be unique across all volumes on a gateway.</p> <p>If you
* don't specify a value, Storage Gateway uses the value that was previously used
* for this volume as the new target name.</p>
*/
inline void SetTargetName(Aws::String&& value) { m_targetNameHasBeenSet = true; m_targetName = std::move(value); }
/**
* <p>The name of the iSCSI target used by an initiator to connect to a volume and
* used as a suffix for the target ARN. For example, specifying
* <code>TargetName</code> as <i>myvolume</i> results in the target ARN of
* <code>arn:aws:storagegateway:us-east-2:111122223333:gateway/sgw-12A3456B/target/iqn.1997-05.com.amazon:myvolume</code>.
* The target name must be unique across all volumes on a gateway.</p> <p>If you
* don't specify a value, Storage Gateway uses the value that was previously used
* for this volume as the new target name.</p>
*/
inline void SetTargetName(const char* value) { m_targetNameHasBeenSet = true; m_targetName.assign(value); }
/**
* <p>The name of the iSCSI target used by an initiator to connect to a volume and
* used as a suffix for the target ARN. For example, specifying
* <code>TargetName</code> as <i>myvolume</i> results in the target ARN of
* <code>arn:aws:storagegateway:us-east-2:111122223333:gateway/sgw-12A3456B/target/iqn.1997-05.com.amazon:myvolume</code>.
* The target name must be unique across all volumes on a gateway.</p> <p>If you
* don't specify a value, Storage Gateway uses the value that was previously used
* for this volume as the new target name.</p>
*/
inline CreateCachediSCSIVolumeRequest& WithTargetName(const Aws::String& value) { SetTargetName(value); return *this;}
/**
* <p>The name of the iSCSI target used by an initiator to connect to a volume and
* used as a suffix for the target ARN. For example, specifying
* <code>TargetName</code> as <i>myvolume</i> results in the target ARN of
* <code>arn:aws:storagegateway:us-east-2:111122223333:gateway/sgw-12A3456B/target/iqn.1997-05.com.amazon:myvolume</code>.
* The target name must be unique across all volumes on a gateway.</p> <p>If you
* don't specify a value, Storage Gateway uses the value that was previously used
* for this volume as the new target name.</p>
*/
inline CreateCachediSCSIVolumeRequest& WithTargetName(Aws::String&& value) { SetTargetName(std::move(value)); return *this;}
/**
* <p>The name of the iSCSI target used by an initiator to connect to a volume and
* used as a suffix for the target ARN. For example, specifying
* <code>TargetName</code> as <i>myvolume</i> results in the target ARN of
* <code>arn:aws:storagegateway:us-east-2:111122223333:gateway/sgw-12A3456B/target/iqn.1997-05.com.amazon:myvolume</code>.
* The target name must be unique across all volumes on a gateway.</p> <p>If you
* don't specify a value, Storage Gateway uses the value that was previously used
* for this volume as the new target name.</p>
*/
inline CreateCachediSCSIVolumeRequest& WithTargetName(const char* value) { SetTargetName(value); return *this;}
/**
* <p>The ARN for an existing volume. Specifying this ARN makes the new volume into
* an exact copy of the specified existing volume's latest recovery point. The
* <code>VolumeSizeInBytes</code> value for this new volume must be equal to or
* larger than the size of the existing volume, in bytes.</p>
*/
inline const Aws::String& GetSourceVolumeARN() const{ return m_sourceVolumeARN; }
/**
* <p>The ARN for an existing volume. Specifying this ARN makes the new volume into
* an exact copy of the specified existing volume's latest recovery point. The
* <code>VolumeSizeInBytes</code> value for this new volume must be equal to or
* larger than the size of the existing volume, in bytes.</p>
*/
inline bool SourceVolumeARNHasBeenSet() const { return m_sourceVolumeARNHasBeenSet; }
/**
* <p>The ARN for an existing volume. Specifying this ARN makes the new volume into
* an exact copy of the specified existing volume's latest recovery point. The
* <code>VolumeSizeInBytes</code> value for this new volume must be equal to or
* larger than the size of the existing volume, in bytes.</p>
*/
inline void SetSourceVolumeARN(const Aws::String& value) { m_sourceVolumeARNHasBeenSet = true; m_sourceVolumeARN = value; }
/**
* <p>The ARN for an existing volume. Specifying this ARN makes the new volume into
* an exact copy of the specified existing volume's latest recovery point. The
* <code>VolumeSizeInBytes</code> value for this new volume must be equal to or
* larger than the size of the existing volume, in bytes.</p>
*/
inline void SetSourceVolumeARN(Aws::String&& value) { m_sourceVolumeARNHasBeenSet = true; m_sourceVolumeARN = std::move(value); }
/**
* <p>The ARN for an existing volume. Specifying this ARN makes the new volume into
* an exact copy of the specified existing volume's latest recovery point. The
* <code>VolumeSizeInBytes</code> value for this new volume must be equal to or
* larger than the size of the existing volume, in bytes.</p>
*/
inline void SetSourceVolumeARN(const char* value) { m_sourceVolumeARNHasBeenSet = true; m_sourceVolumeARN.assign(value); }
/**
* <p>The ARN for an existing volume. Specifying this ARN makes the new volume into
* an exact copy of the specified existing volume's latest recovery point. The
* <code>VolumeSizeInBytes</code> value for this new volume must be equal to or
* larger than the size of the existing volume, in bytes.</p>
*/
inline CreateCachediSCSIVolumeRequest& WithSourceVolumeARN(const Aws::String& value) { SetSourceVolumeARN(value); return *this;}
/**
* <p>The ARN for an existing volume. Specifying this ARN makes the new volume into
* an exact copy of the specified existing volume's latest recovery point. The
* <code>VolumeSizeInBytes</code> value for this new volume must be equal to or
* larger than the size of the existing volume, in bytes.</p>
*/
inline CreateCachediSCSIVolumeRequest& WithSourceVolumeARN(Aws::String&& value) { SetSourceVolumeARN(std::move(value)); return *this;}
/**
* <p>The ARN for an existing volume. Specifying this ARN makes the new volume into
* an exact copy of the specified existing volume's latest recovery point. The
* <code>VolumeSizeInBytes</code> value for this new volume must be equal to or
* larger than the size of the existing volume, in bytes.</p>
*/
inline CreateCachediSCSIVolumeRequest& WithSourceVolumeARN(const char* value) { SetSourceVolumeARN(value); return *this;}
/**
* <p>The network interface of the gateway on which to expose the iSCSI target.
* Only IPv4 addresses are accepted. Use <a>DescribeGatewayInformation</a> to get a
* list of the network interfaces available on a gateway.</p> <p>Valid Values: A
* valid IP address.</p>
*/
inline const Aws::String& GetNetworkInterfaceId() const{ return m_networkInterfaceId; }
/**
* <p>The network interface of the gateway on which to expose the iSCSI target.
* Only IPv4 addresses are accepted. Use <a>DescribeGatewayInformation</a> to get a
* list of the network interfaces available on a gateway.</p> <p>Valid Values: A
* valid IP address.</p>
*/
inline bool NetworkInterfaceIdHasBeenSet() const { return m_networkInterfaceIdHasBeenSet; }
/**
* <p>The network interface of the gateway on which to expose the iSCSI target.
* Only IPv4 addresses are accepted. Use <a>DescribeGatewayInformation</a> to get a
* list of the network interfaces available on a gateway.</p> <p>Valid Values: A
* valid IP address.</p>
*/
inline void SetNetworkInterfaceId(const Aws::String& value) { m_networkInterfaceIdHasBeenSet = true; m_networkInterfaceId = value; }
/**
* <p>The network interface of the gateway on which to expose the iSCSI target.
* Only IPv4 addresses are accepted. Use <a>DescribeGatewayInformation</a> to get a
* list of the network interfaces available on a gateway.</p> <p>Valid Values: A
* valid IP address.</p>
*/
inline void SetNetworkInterfaceId(Aws::String&& value) { m_networkInterfaceIdHasBeenSet = true; m_networkInterfaceId = std::move(value); }
/**
* <p>The network interface of the gateway on which to expose the iSCSI target.
* Only IPv4 addresses are accepted. Use <a>DescribeGatewayInformation</a> to get a
* list of the network interfaces available on a gateway.</p> <p>Valid Values: A
* valid IP address.</p>
*/
inline void SetNetworkInterfaceId(const char* value) { m_networkInterfaceIdHasBeenSet = true; m_networkInterfaceId.assign(value); }
/**
* <p>The network interface of the gateway on which to expose the iSCSI target.
* Only IPv4 addresses are accepted. Use <a>DescribeGatewayInformation</a> to get a
* list of the network interfaces available on a gateway.</p> <p>Valid Values: A
* valid IP address.</p>
*/
inline CreateCachediSCSIVolumeRequest& WithNetworkInterfaceId(const Aws::String& value) { SetNetworkInterfaceId(value); return *this;}
/**
* <p>The network interface of the gateway on which to expose the iSCSI target.
* Only IPv4 addresses are accepted. Use <a>DescribeGatewayInformation</a> to get a
* list of the network interfaces available on a gateway.</p> <p>Valid Values: A
* valid IP address.</p>
*/
inline CreateCachediSCSIVolumeRequest& WithNetworkInterfaceId(Aws::String&& value) { SetNetworkInterfaceId(std::move(value)); return *this;}
/**
* <p>The network interface of the gateway on which to expose the iSCSI target.
* Only IPv4 addresses are accepted. Use <a>DescribeGatewayInformation</a> to get a
* list of the network interfaces available on a gateway.</p> <p>Valid Values: A
* valid IP address.</p>
*/
inline CreateCachediSCSIVolumeRequest& WithNetworkInterfaceId(const char* value) { SetNetworkInterfaceId(value); return *this;}
/**
* <p>A unique identifier that you use to retry a request. If you retry a request,
* use the same <code>ClientToken</code> you specified in the initial request.</p>
*/
inline const Aws::String& GetClientToken() const{ return m_clientToken; }
/**
* <p>A unique identifier that you use to retry a request. If you retry a request,
* use the same <code>ClientToken</code> you specified in the initial request.</p>
*/
inline bool ClientTokenHasBeenSet() const { return m_clientTokenHasBeenSet; }
/**
* <p>A unique identifier that you use to retry a request. If you retry a request,
* use the same <code>ClientToken</code> you specified in the initial request.</p>
*/
inline void SetClientToken(const Aws::String& value) { m_clientTokenHasBeenSet = true; m_clientToken = value; }
/**
* <p>A unique identifier that you use to retry a request. If you retry a request,
* use the same <code>ClientToken</code> you specified in the initial request.</p>
*/
inline void SetClientToken(Aws::String&& value) { m_clientTokenHasBeenSet = true; m_clientToken = std::move(value); }
/**
* <p>A unique identifier that you use to retry a request. If you retry a request,
* use the same <code>ClientToken</code> you specified in the initial request.</p>
*/
inline void SetClientToken(const char* value) { m_clientTokenHasBeenSet = true; m_clientToken.assign(value); }
/**
* <p>A unique identifier that you use to retry a request. If you retry a request,
* use the same <code>ClientToken</code> you specified in the initial request.</p>
*/
inline CreateCachediSCSIVolumeRequest& WithClientToken(const Aws::String& value) { SetClientToken(value); return *this;}
/**
* <p>A unique identifier that you use to retry a request. If you retry a request,
* use the same <code>ClientToken</code> you specified in the initial request.</p>
*/
inline CreateCachediSCSIVolumeRequest& WithClientToken(Aws::String&& value) { SetClientToken(std::move(value)); return *this;}
/**
* <p>A unique identifier that you use to retry a request. If you retry a request,
* use the same <code>ClientToken</code> you specified in the initial request.</p>
*/
inline CreateCachediSCSIVolumeRequest& WithClientToken(const char* value) { SetClientToken(value); return *this;}
/**
* <p>Set to <code>true</code> to use Amazon S3 server-side encryption with your
* own AWS KMS key, or <code>false</code> to use a key managed by Amazon S3.
* Optional.</p> <p>Valid Values: <code>true</code> | <code>false</code> </p>
*/
inline bool GetKMSEncrypted() const{ return m_kMSEncrypted; }
/**
* <p>Set to <code>true</code> to use Amazon S3 server-side encryption with your
* own AWS KMS key, or <code>false</code> to use a key managed by Amazon S3.
* Optional.</p> <p>Valid Values: <code>true</code> | <code>false</code> </p>
*/
inline bool KMSEncryptedHasBeenSet() const { return m_kMSEncryptedHasBeenSet; }
/**
* <p>Set to <code>true</code> to use Amazon S3 server-side encryption with your
* own AWS KMS key, or <code>false</code> to use a key managed by Amazon S3.
* Optional.</p> <p>Valid Values: <code>true</code> | <code>false</code> </p>
*/
inline void SetKMSEncrypted(bool value) { m_kMSEncryptedHasBeenSet = true; m_kMSEncrypted = value; }
/**
* <p>Set to <code>true</code> to use Amazon S3 server-side encryption with your
* own AWS KMS key, or <code>false</code> to use a key managed by Amazon S3.
* Optional.</p> <p>Valid Values: <code>true</code> | <code>false</code> </p>
*/
inline CreateCachediSCSIVolumeRequest& WithKMSEncrypted(bool value) { SetKMSEncrypted(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of a symmetric customer master key (CMK) used
* for Amazon S3 server-side encryption. Storage Gateway does not support
* asymmetric CMKs. This value can only be set when <code>KMSEncrypted</code> is
* <code>true</code>. Optional.</p>
*/
inline const Aws::String& GetKMSKey() const{ return m_kMSKey; }
/**
* <p>The Amazon Resource Name (ARN) of a symmetric customer master key (CMK) used
* for Amazon S3 server-side encryption. Storage Gateway does not support
* asymmetric CMKs. This value can only be set when <code>KMSEncrypted</code> is
* <code>true</code>. Optional.</p>
*/
inline bool KMSKeyHasBeenSet() const { return m_kMSKeyHasBeenSet; }
/**
* <p>The Amazon Resource Name (ARN) of a symmetric customer master key (CMK) used
* for Amazon S3 server-side encryption. Storage Gateway does not support
* asymmetric CMKs. This value can only be set when <code>KMSEncrypted</code> is
* <code>true</code>. Optional.</p>
*/
inline void SetKMSKey(const Aws::String& value) { m_kMSKeyHasBeenSet = true; m_kMSKey = value; }
/**
* <p>The Amazon Resource Name (ARN) of a symmetric customer master key (CMK) used
* for Amazon S3 server-side encryption. Storage Gateway does not support
* asymmetric CMKs. This value can only be set when <code>KMSEncrypted</code> is
* <code>true</code>. Optional.</p>
*/
inline void SetKMSKey(Aws::String&& value) { m_kMSKeyHasBeenSet = true; m_kMSKey = std::move(value); }
/**
* <p>The Amazon Resource Name (ARN) of a symmetric customer master key (CMK) used
* for Amazon S3 server-side encryption. Storage Gateway does not support
* asymmetric CMKs. This value can only be set when <code>KMSEncrypted</code> is
* <code>true</code>. Optional.</p>
*/
inline void SetKMSKey(const char* value) { m_kMSKeyHasBeenSet = true; m_kMSKey.assign(value); }
/**
* <p>The Amazon Resource Name (ARN) of a symmetric customer master key (CMK) used
* for Amazon S3 server-side encryption. Storage Gateway does not support
* asymmetric CMKs. This value can only be set when <code>KMSEncrypted</code> is
* <code>true</code>. Optional.</p>
*/
inline CreateCachediSCSIVolumeRequest& WithKMSKey(const Aws::String& value) { SetKMSKey(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of a symmetric customer master key (CMK) used
* for Amazon S3 server-side encryption. Storage Gateway does not support
* asymmetric CMKs. This value can only be set when <code>KMSEncrypted</code> is
* <code>true</code>. Optional.</p>
*/
inline CreateCachediSCSIVolumeRequest& WithKMSKey(Aws::String&& value) { SetKMSKey(std::move(value)); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of a symmetric customer master key (CMK) used
* for Amazon S3 server-side encryption. Storage Gateway does not support
* asymmetric CMKs. This value can only be set when <code>KMSEncrypted</code> is
* <code>true</code>. Optional.</p>
*/
inline CreateCachediSCSIVolumeRequest& WithKMSKey(const char* value) { SetKMSKey(value); return *this;}
/**
* <p>A list of up to 50 tags that you can assign to a cached volume. Each tag is a
* key-value pair.</p> <p>Valid characters for key and value are letters,
* spaces, and numbers that you can represent in UTF-8 format, and the following
* special characters: + - = . _ : / @. The maximum length of a tag's key is 128
* characters, and the maximum length for a tag's value is 256 characters.</p>
*
*/
inline const Aws::Vector<Tag>& GetTags() const{ return m_tags; }
/**
* <p>A list of up to 50 tags that you can assign to a cached volume. Each tag is a
* key-value pair.</p> <p>Valid characters for key and value are letters,
* spaces, and numbers that you can represent in UTF-8 format, and the following
* special characters: + - = . _ : / @. The maximum length of a tag's key is 128
* characters, and the maximum length for a tag's value is 256 characters.</p>
*
*/
inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
/**
* <p>A list of up to 50 tags that you can assign to a cached volume. Each tag is a
* key-value pair.</p> <p>Valid characters for key and value are letters,
* spaces, and numbers that you can represent in UTF-8 format, and the following
* special characters: + - = . _ : / @. The maximum length of a tag's key is 128
* characters, and the maximum length for a tag's value is 256 characters.</p>
*
*/
inline void SetTags(const Aws::Vector<Tag>& value) { m_tagsHasBeenSet = true; m_tags = value; }
/**
* <p>A list of up to 50 tags that you can assign to a cached volume. Each tag is a
* key-value pair.</p> <p>Valid characters for key and value are letters,
* spaces, and numbers that you can represent in UTF-8 format, and the following
* special characters: + - = . _ : / @. The maximum length of a tag's key is 128
* characters, and the maximum length for a tag's value is 256 characters.</p>
*
*/
inline void SetTags(Aws::Vector<Tag>&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); }
/**
* <p>A list of up to 50 tags that you can assign to a cached volume. Each tag is a
* key-value pair.</p> <p>Valid characters for key and value are letters,
* spaces, and numbers that you can represent in UTF-8 format, and the following
* special characters: + - = . _ : / @. The maximum length of a tag's key is 128
* characters, and the maximum length for a tag's value is 256 characters.</p>
*
*/
inline CreateCachediSCSIVolumeRequest& WithTags(const Aws::Vector<Tag>& value) { SetTags(value); return *this;}
/**
* <p>A list of up to 50 tags that you can assign to a cached volume. Each tag is a
* key-value pair.</p> <p>Valid characters for key and value are letters,
* spaces, and numbers that you can represent in UTF-8 format, and the following
* special characters: + - = . _ : / @. The maximum length of a tag's key is 128
* characters, and the maximum length for a tag's value is 256 characters.</p>
*
*/
inline CreateCachediSCSIVolumeRequest& WithTags(Aws::Vector<Tag>&& value) { SetTags(std::move(value)); return *this;}
/**
* <p>A list of up to 50 tags that you can assign to a cached volume. Each tag is a
* key-value pair.</p> <p>Valid characters for key and value are letters,
* spaces, and numbers that you can represent in UTF-8 format, and the following
* special characters: + - = . _ : / @. The maximum length of a tag's key is 128
* characters, and the maximum length for a tag's value is 256 characters.</p>
*
*/
inline CreateCachediSCSIVolumeRequest& AddTags(const Tag& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; }
/**
* <p>A list of up to 50 tags that you can assign to a cached volume. Each tag is a
* key-value pair.</p> <p>Valid characters for key and value are letters,
* spaces, and numbers that you can represent in UTF-8 format, and the following
* special characters: + - = . _ : / @. The maximum length of a tag's key is 128
* characters, and the maximum length for a tag's value is 256 characters.</p>
*
*/
inline CreateCachediSCSIVolumeRequest& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; }
private:
Aws::String m_gatewayARN;
bool m_gatewayARNHasBeenSet;
long long m_volumeSizeInBytes;
bool m_volumeSizeInBytesHasBeenSet;
Aws::String m_snapshotId;
bool m_snapshotIdHasBeenSet;
Aws::String m_targetName;
bool m_targetNameHasBeenSet;
Aws::String m_sourceVolumeARN;
bool m_sourceVolumeARNHasBeenSet;
Aws::String m_networkInterfaceId;
bool m_networkInterfaceIdHasBeenSet;
Aws::String m_clientToken;
bool m_clientTokenHasBeenSet;
bool m_kMSEncrypted;
bool m_kMSEncryptedHasBeenSet;
Aws::String m_kMSKey;
bool m_kMSKeyHasBeenSet;
Aws::Vector<Tag> m_tags;
bool m_tagsHasBeenSet;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,122 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace StorageGateway
{
namespace Model
{
class AWS_STORAGEGATEWAY_API CreateCachediSCSIVolumeResult
{
public:
CreateCachediSCSIVolumeResult();
CreateCachediSCSIVolumeResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
CreateCachediSCSIVolumeResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>The Amazon Resource Name (ARN) of the configured volume.</p>
*/
inline const Aws::String& GetVolumeARN() const{ return m_volumeARN; }
/**
* <p>The Amazon Resource Name (ARN) of the configured volume.</p>
*/
inline void SetVolumeARN(const Aws::String& value) { m_volumeARN = value; }
/**
* <p>The Amazon Resource Name (ARN) of the configured volume.</p>
*/
inline void SetVolumeARN(Aws::String&& value) { m_volumeARN = std::move(value); }
/**
* <p>The Amazon Resource Name (ARN) of the configured volume.</p>
*/
inline void SetVolumeARN(const char* value) { m_volumeARN.assign(value); }
/**
* <p>The Amazon Resource Name (ARN) of the configured volume.</p>
*/
inline CreateCachediSCSIVolumeResult& WithVolumeARN(const Aws::String& value) { SetVolumeARN(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the configured volume.</p>
*/
inline CreateCachediSCSIVolumeResult& WithVolumeARN(Aws::String&& value) { SetVolumeARN(std::move(value)); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the configured volume.</p>
*/
inline CreateCachediSCSIVolumeResult& WithVolumeARN(const char* value) { SetVolumeARN(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the volume target, which includes the iSCSI
* name that initiators can use to connect to the target.</p>
*/
inline const Aws::String& GetTargetARN() const{ return m_targetARN; }
/**
* <p>The Amazon Resource Name (ARN) of the volume target, which includes the iSCSI
* name that initiators can use to connect to the target.</p>
*/
inline void SetTargetARN(const Aws::String& value) { m_targetARN = value; }
/**
* <p>The Amazon Resource Name (ARN) of the volume target, which includes the iSCSI
* name that initiators can use to connect to the target.</p>
*/
inline void SetTargetARN(Aws::String&& value) { m_targetARN = std::move(value); }
/**
* <p>The Amazon Resource Name (ARN) of the volume target, which includes the iSCSI
* name that initiators can use to connect to the target.</p>
*/
inline void SetTargetARN(const char* value) { m_targetARN.assign(value); }
/**
* <p>The Amazon Resource Name (ARN) of the volume target, which includes the iSCSI
* name that initiators can use to connect to the target.</p>
*/
inline CreateCachediSCSIVolumeResult& WithTargetARN(const Aws::String& value) { SetTargetARN(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the volume target, which includes the iSCSI
* name that initiators can use to connect to the target.</p>
*/
inline CreateCachediSCSIVolumeResult& WithTargetARN(Aws::String&& value) { SetTargetARN(std::move(value)); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the volume target, which includes the iSCSI
* name that initiators can use to connect to the target.</p>
*/
inline CreateCachediSCSIVolumeResult& WithTargetARN(const char* value) { SetTargetARN(value); return *this;}
private:
Aws::String m_volumeARN;
Aws::String m_targetARN;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,945 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/storagegateway/StorageGatewayRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/storagegateway/model/NFSFileShareDefaults.h>
#include <aws/storagegateway/model/ObjectACL.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/storagegateway/model/CacheAttributes.h>
#include <aws/storagegateway/model/Tag.h>
#include <utility>
namespace Aws
{
namespace StorageGateway
{
namespace Model
{
/**
* <p>CreateNFSFileShareInput</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/CreateNFSFileShareInput">AWS
* API Reference</a></p>
*/
class AWS_STORAGEGATEWAY_API CreateNFSFileShareRequest : public StorageGatewayRequest
{
public:
CreateNFSFileShareRequest();
// 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 "CreateNFSFileShare"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
/**
* <p>A unique string value that you supply that is used by file gateway to ensure
* idempotent file share creation.</p>
*/
inline const Aws::String& GetClientToken() const{ return m_clientToken; }
/**
* <p>A unique string value that you supply that is used by file gateway to ensure
* idempotent file share creation.</p>
*/
inline bool ClientTokenHasBeenSet() const { return m_clientTokenHasBeenSet; }
/**
* <p>A unique string value that you supply that is used by file gateway to ensure
* idempotent file share creation.</p>
*/
inline void SetClientToken(const Aws::String& value) { m_clientTokenHasBeenSet = true; m_clientToken = value; }
/**
* <p>A unique string value that you supply that is used by file gateway to ensure
* idempotent file share creation.</p>
*/
inline void SetClientToken(Aws::String&& value) { m_clientTokenHasBeenSet = true; m_clientToken = std::move(value); }
/**
* <p>A unique string value that you supply that is used by file gateway to ensure
* idempotent file share creation.</p>
*/
inline void SetClientToken(const char* value) { m_clientTokenHasBeenSet = true; m_clientToken.assign(value); }
/**
* <p>A unique string value that you supply that is used by file gateway to ensure
* idempotent file share creation.</p>
*/
inline CreateNFSFileShareRequest& WithClientToken(const Aws::String& value) { SetClientToken(value); return *this;}
/**
* <p>A unique string value that you supply that is used by file gateway to ensure
* idempotent file share creation.</p>
*/
inline CreateNFSFileShareRequest& WithClientToken(Aws::String&& value) { SetClientToken(std::move(value)); return *this;}
/**
* <p>A unique string value that you supply that is used by file gateway to ensure
* idempotent file share creation.</p>
*/
inline CreateNFSFileShareRequest& WithClientToken(const char* value) { SetClientToken(value); return *this;}
/**
* <p>File share default values. Optional.</p>
*/
inline const NFSFileShareDefaults& GetNFSFileShareDefaults() const{ return m_nFSFileShareDefaults; }
/**
* <p>File share default values. Optional.</p>
*/
inline bool NFSFileShareDefaultsHasBeenSet() const { return m_nFSFileShareDefaultsHasBeenSet; }
/**
* <p>File share default values. Optional.</p>
*/
inline void SetNFSFileShareDefaults(const NFSFileShareDefaults& value) { m_nFSFileShareDefaultsHasBeenSet = true; m_nFSFileShareDefaults = value; }
/**
* <p>File share default values. Optional.</p>
*/
inline void SetNFSFileShareDefaults(NFSFileShareDefaults&& value) { m_nFSFileShareDefaultsHasBeenSet = true; m_nFSFileShareDefaults = std::move(value); }
/**
* <p>File share default values. Optional.</p>
*/
inline CreateNFSFileShareRequest& WithNFSFileShareDefaults(const NFSFileShareDefaults& value) { SetNFSFileShareDefaults(value); return *this;}
/**
* <p>File share default values. Optional.</p>
*/
inline CreateNFSFileShareRequest& WithNFSFileShareDefaults(NFSFileShareDefaults&& value) { SetNFSFileShareDefaults(std::move(value)); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the file gateway on which you want to
* create a file share.</p>
*/
inline const Aws::String& GetGatewayARN() const{ return m_gatewayARN; }
/**
* <p>The Amazon Resource Name (ARN) of the file gateway on which you want to
* create a file share.</p>
*/
inline bool GatewayARNHasBeenSet() const { return m_gatewayARNHasBeenSet; }
/**
* <p>The Amazon Resource Name (ARN) of the file gateway on which you want to
* create a file share.</p>
*/
inline void SetGatewayARN(const Aws::String& value) { m_gatewayARNHasBeenSet = true; m_gatewayARN = value; }
/**
* <p>The Amazon Resource Name (ARN) of the file gateway on which you want to
* create a file share.</p>
*/
inline void SetGatewayARN(Aws::String&& value) { m_gatewayARNHasBeenSet = true; m_gatewayARN = std::move(value); }
/**
* <p>The Amazon Resource Name (ARN) of the file gateway on which you want to
* create a file share.</p>
*/
inline void SetGatewayARN(const char* value) { m_gatewayARNHasBeenSet = true; m_gatewayARN.assign(value); }
/**
* <p>The Amazon Resource Name (ARN) of the file gateway on which you want to
* create a file share.</p>
*/
inline CreateNFSFileShareRequest& WithGatewayARN(const Aws::String& value) { SetGatewayARN(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the file gateway on which you want to
* create a file share.</p>
*/
inline CreateNFSFileShareRequest& WithGatewayARN(Aws::String&& value) { SetGatewayARN(std::move(value)); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the file gateway on which you want to
* create a file share.</p>
*/
inline CreateNFSFileShareRequest& WithGatewayARN(const char* value) { SetGatewayARN(value); return *this;}
/**
* <p>Set to <code>true</code> to use Amazon S3 server-side encryption with your
* own AWS KMS key, or <code>false</code> to use a key managed by Amazon S3.
* Optional.</p> <p>Valid Values: <code>true</code> | <code>false</code> </p>
*/
inline bool GetKMSEncrypted() const{ return m_kMSEncrypted; }
/**
* <p>Set to <code>true</code> to use Amazon S3 server-side encryption with your
* own AWS KMS key, or <code>false</code> to use a key managed by Amazon S3.
* Optional.</p> <p>Valid Values: <code>true</code> | <code>false</code> </p>
*/
inline bool KMSEncryptedHasBeenSet() const { return m_kMSEncryptedHasBeenSet; }
/**
* <p>Set to <code>true</code> to use Amazon S3 server-side encryption with your
* own AWS KMS key, or <code>false</code> to use a key managed by Amazon S3.
* Optional.</p> <p>Valid Values: <code>true</code> | <code>false</code> </p>
*/
inline void SetKMSEncrypted(bool value) { m_kMSEncryptedHasBeenSet = true; m_kMSEncrypted = value; }
/**
* <p>Set to <code>true</code> to use Amazon S3 server-side encryption with your
* own AWS KMS key, or <code>false</code> to use a key managed by Amazon S3.
* Optional.</p> <p>Valid Values: <code>true</code> | <code>false</code> </p>
*/
inline CreateNFSFileShareRequest& WithKMSEncrypted(bool value) { SetKMSEncrypted(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of a symmetric customer master key (CMK) used
* for Amazon S3 server-side encryption. Storage Gateway does not support
* asymmetric CMKs. This value can only be set when <code>KMSEncrypted</code> is
* <code>true</code>. Optional.</p>
*/
inline const Aws::String& GetKMSKey() const{ return m_kMSKey; }
/**
* <p>The Amazon Resource Name (ARN) of a symmetric customer master key (CMK) used
* for Amazon S3 server-side encryption. Storage Gateway does not support
* asymmetric CMKs. This value can only be set when <code>KMSEncrypted</code> is
* <code>true</code>. Optional.</p>
*/
inline bool KMSKeyHasBeenSet() const { return m_kMSKeyHasBeenSet; }
/**
* <p>The Amazon Resource Name (ARN) of a symmetric customer master key (CMK) used
* for Amazon S3 server-side encryption. Storage Gateway does not support
* asymmetric CMKs. This value can only be set when <code>KMSEncrypted</code> is
* <code>true</code>. Optional.</p>
*/
inline void SetKMSKey(const Aws::String& value) { m_kMSKeyHasBeenSet = true; m_kMSKey = value; }
/**
* <p>The Amazon Resource Name (ARN) of a symmetric customer master key (CMK) used
* for Amazon S3 server-side encryption. Storage Gateway does not support
* asymmetric CMKs. This value can only be set when <code>KMSEncrypted</code> is
* <code>true</code>. Optional.</p>
*/
inline void SetKMSKey(Aws::String&& value) { m_kMSKeyHasBeenSet = true; m_kMSKey = std::move(value); }
/**
* <p>The Amazon Resource Name (ARN) of a symmetric customer master key (CMK) used
* for Amazon S3 server-side encryption. Storage Gateway does not support
* asymmetric CMKs. This value can only be set when <code>KMSEncrypted</code> is
* <code>true</code>. Optional.</p>
*/
inline void SetKMSKey(const char* value) { m_kMSKeyHasBeenSet = true; m_kMSKey.assign(value); }
/**
* <p>The Amazon Resource Name (ARN) of a symmetric customer master key (CMK) used
* for Amazon S3 server-side encryption. Storage Gateway does not support
* asymmetric CMKs. This value can only be set when <code>KMSEncrypted</code> is
* <code>true</code>. Optional.</p>
*/
inline CreateNFSFileShareRequest& WithKMSKey(const Aws::String& value) { SetKMSKey(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of a symmetric customer master key (CMK) used
* for Amazon S3 server-side encryption. Storage Gateway does not support
* asymmetric CMKs. This value can only be set when <code>KMSEncrypted</code> is
* <code>true</code>. Optional.</p>
*/
inline CreateNFSFileShareRequest& WithKMSKey(Aws::String&& value) { SetKMSKey(std::move(value)); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of a symmetric customer master key (CMK) used
* for Amazon S3 server-side encryption. Storage Gateway does not support
* asymmetric CMKs. This value can only be set when <code>KMSEncrypted</code> is
* <code>true</code>. Optional.</p>
*/
inline CreateNFSFileShareRequest& WithKMSKey(const char* value) { SetKMSKey(value); return *this;}
/**
* <p>The ARN of the AWS Identity and Access Management (IAM) role that a file
* gateway assumes when it accesses the underlying storage.</p>
*/
inline const Aws::String& GetRole() const{ return m_role; }
/**
* <p>The ARN of the AWS Identity and Access Management (IAM) role that a file
* gateway assumes when it accesses the underlying storage.</p>
*/
inline bool RoleHasBeenSet() const { return m_roleHasBeenSet; }
/**
* <p>The ARN of the AWS Identity and Access Management (IAM) role that a file
* gateway assumes when it accesses the underlying storage.</p>
*/
inline void SetRole(const Aws::String& value) { m_roleHasBeenSet = true; m_role = value; }
/**
* <p>The ARN of the AWS Identity and Access Management (IAM) role that a file
* gateway assumes when it accesses the underlying storage.</p>
*/
inline void SetRole(Aws::String&& value) { m_roleHasBeenSet = true; m_role = std::move(value); }
/**
* <p>The ARN of the AWS Identity and Access Management (IAM) role that a file
* gateway assumes when it accesses the underlying storage.</p>
*/
inline void SetRole(const char* value) { m_roleHasBeenSet = true; m_role.assign(value); }
/**
* <p>The ARN of the AWS Identity and Access Management (IAM) role that a file
* gateway assumes when it accesses the underlying storage.</p>
*/
inline CreateNFSFileShareRequest& WithRole(const Aws::String& value) { SetRole(value); return *this;}
/**
* <p>The ARN of the AWS Identity and Access Management (IAM) role that a file
* gateway assumes when it accesses the underlying storage.</p>
*/
inline CreateNFSFileShareRequest& WithRole(Aws::String&& value) { SetRole(std::move(value)); return *this;}
/**
* <p>The ARN of the AWS Identity and Access Management (IAM) role that a file
* gateway assumes when it accesses the underlying storage.</p>
*/
inline CreateNFSFileShareRequest& WithRole(const char* value) { SetRole(value); return *this;}
/**
* <p>The ARN of the backend storage used for storing file data. A prefix name can
* be added to the S3 bucket name. It must end with a "/".</p>
*/
inline const Aws::String& GetLocationARN() const{ return m_locationARN; }
/**
* <p>The ARN of the backend storage used for storing file data. A prefix name can
* be added to the S3 bucket name. It must end with a "/".</p>
*/
inline bool LocationARNHasBeenSet() const { return m_locationARNHasBeenSet; }
/**
* <p>The ARN of the backend storage used for storing file data. A prefix name can
* be added to the S3 bucket name. It must end with a "/".</p>
*/
inline void SetLocationARN(const Aws::String& value) { m_locationARNHasBeenSet = true; m_locationARN = value; }
/**
* <p>The ARN of the backend storage used for storing file data. A prefix name can
* be added to the S3 bucket name. It must end with a "/".</p>
*/
inline void SetLocationARN(Aws::String&& value) { m_locationARNHasBeenSet = true; m_locationARN = std::move(value); }
/**
* <p>The ARN of the backend storage used for storing file data. A prefix name can
* be added to the S3 bucket name. It must end with a "/".</p>
*/
inline void SetLocationARN(const char* value) { m_locationARNHasBeenSet = true; m_locationARN.assign(value); }
/**
* <p>The ARN of the backend storage used for storing file data. A prefix name can
* be added to the S3 bucket name. It must end with a "/".</p>
*/
inline CreateNFSFileShareRequest& WithLocationARN(const Aws::String& value) { SetLocationARN(value); return *this;}
/**
* <p>The ARN of the backend storage used for storing file data. A prefix name can
* be added to the S3 bucket name. It must end with a "/".</p>
*/
inline CreateNFSFileShareRequest& WithLocationARN(Aws::String&& value) { SetLocationARN(std::move(value)); return *this;}
/**
* <p>The ARN of the backend storage used for storing file data. A prefix name can
* be added to the S3 bucket name. It must end with a "/".</p>
*/
inline CreateNFSFileShareRequest& WithLocationARN(const char* value) { SetLocationARN(value); return *this;}
/**
* <p>The default storage class for objects put into an Amazon S3 bucket by the
* file gateway. The default value is <code>S3_INTELLIGENT_TIERING</code>.
* Optional.</p> <p>Valid Values: <code>S3_STANDARD</code> |
* <code>S3_INTELLIGENT_TIERING</code> | <code>S3_STANDARD_IA</code> |
* <code>S3_ONEZONE_IA</code> </p>
*/
inline const Aws::String& GetDefaultStorageClass() const{ return m_defaultStorageClass; }
/**
* <p>The default storage class for objects put into an Amazon S3 bucket by the
* file gateway. The default value is <code>S3_INTELLIGENT_TIERING</code>.
* Optional.</p> <p>Valid Values: <code>S3_STANDARD</code> |
* <code>S3_INTELLIGENT_TIERING</code> | <code>S3_STANDARD_IA</code> |
* <code>S3_ONEZONE_IA</code> </p>
*/
inline bool DefaultStorageClassHasBeenSet() const { return m_defaultStorageClassHasBeenSet; }
/**
* <p>The default storage class for objects put into an Amazon S3 bucket by the
* file gateway. The default value is <code>S3_INTELLIGENT_TIERING</code>.
* Optional.</p> <p>Valid Values: <code>S3_STANDARD</code> |
* <code>S3_INTELLIGENT_TIERING</code> | <code>S3_STANDARD_IA</code> |
* <code>S3_ONEZONE_IA</code> </p>
*/
inline void SetDefaultStorageClass(const Aws::String& value) { m_defaultStorageClassHasBeenSet = true; m_defaultStorageClass = value; }
/**
* <p>The default storage class for objects put into an Amazon S3 bucket by the
* file gateway. The default value is <code>S3_INTELLIGENT_TIERING</code>.
* Optional.</p> <p>Valid Values: <code>S3_STANDARD</code> |
* <code>S3_INTELLIGENT_TIERING</code> | <code>S3_STANDARD_IA</code> |
* <code>S3_ONEZONE_IA</code> </p>
*/
inline void SetDefaultStorageClass(Aws::String&& value) { m_defaultStorageClassHasBeenSet = true; m_defaultStorageClass = std::move(value); }
/**
* <p>The default storage class for objects put into an Amazon S3 bucket by the
* file gateway. The default value is <code>S3_INTELLIGENT_TIERING</code>.
* Optional.</p> <p>Valid Values: <code>S3_STANDARD</code> |
* <code>S3_INTELLIGENT_TIERING</code> | <code>S3_STANDARD_IA</code> |
* <code>S3_ONEZONE_IA</code> </p>
*/
inline void SetDefaultStorageClass(const char* value) { m_defaultStorageClassHasBeenSet = true; m_defaultStorageClass.assign(value); }
/**
* <p>The default storage class for objects put into an Amazon S3 bucket by the
* file gateway. The default value is <code>S3_INTELLIGENT_TIERING</code>.
* Optional.</p> <p>Valid Values: <code>S3_STANDARD</code> |
* <code>S3_INTELLIGENT_TIERING</code> | <code>S3_STANDARD_IA</code> |
* <code>S3_ONEZONE_IA</code> </p>
*/
inline CreateNFSFileShareRequest& WithDefaultStorageClass(const Aws::String& value) { SetDefaultStorageClass(value); return *this;}
/**
* <p>The default storage class for objects put into an Amazon S3 bucket by the
* file gateway. The default value is <code>S3_INTELLIGENT_TIERING</code>.
* Optional.</p> <p>Valid Values: <code>S3_STANDARD</code> |
* <code>S3_INTELLIGENT_TIERING</code> | <code>S3_STANDARD_IA</code> |
* <code>S3_ONEZONE_IA</code> </p>
*/
inline CreateNFSFileShareRequest& WithDefaultStorageClass(Aws::String&& value) { SetDefaultStorageClass(std::move(value)); return *this;}
/**
* <p>The default storage class for objects put into an Amazon S3 bucket by the
* file gateway. The default value is <code>S3_INTELLIGENT_TIERING</code>.
* Optional.</p> <p>Valid Values: <code>S3_STANDARD</code> |
* <code>S3_INTELLIGENT_TIERING</code> | <code>S3_STANDARD_IA</code> |
* <code>S3_ONEZONE_IA</code> </p>
*/
inline CreateNFSFileShareRequest& WithDefaultStorageClass(const char* value) { SetDefaultStorageClass(value); return *this;}
/**
* <p>A value that sets the access control list (ACL) permission for objects in the
* S3 bucket that a file gateway puts objects into. The default value is
* <code>private</code>.</p>
*/
inline const ObjectACL& GetObjectACL() const{ return m_objectACL; }
/**
* <p>A value that sets the access control list (ACL) permission for objects in the
* S3 bucket that a file gateway puts objects into. The default value is
* <code>private</code>.</p>
*/
inline bool ObjectACLHasBeenSet() const { return m_objectACLHasBeenSet; }
/**
* <p>A value that sets the access control list (ACL) permission for objects in the
* S3 bucket that a file gateway puts objects into. The default value is
* <code>private</code>.</p>
*/
inline void SetObjectACL(const ObjectACL& value) { m_objectACLHasBeenSet = true; m_objectACL = value; }
/**
* <p>A value that sets the access control list (ACL) permission for objects in the
* S3 bucket that a file gateway puts objects into. The default value is
* <code>private</code>.</p>
*/
inline void SetObjectACL(ObjectACL&& value) { m_objectACLHasBeenSet = true; m_objectACL = std::move(value); }
/**
* <p>A value that sets the access control list (ACL) permission for objects in the
* S3 bucket that a file gateway puts objects into. The default value is
* <code>private</code>.</p>
*/
inline CreateNFSFileShareRequest& WithObjectACL(const ObjectACL& value) { SetObjectACL(value); return *this;}
/**
* <p>A value that sets the access control list (ACL) permission for objects in the
* S3 bucket that a file gateway puts objects into. The default value is
* <code>private</code>.</p>
*/
inline CreateNFSFileShareRequest& WithObjectACL(ObjectACL&& value) { SetObjectACL(std::move(value)); return *this;}
/**
* <p>The list of clients that are allowed to access the file gateway. The list
* must contain either valid IP addresses or valid CIDR blocks.</p>
*/
inline const Aws::Vector<Aws::String>& GetClientList() const{ return m_clientList; }
/**
* <p>The list of clients that are allowed to access the file gateway. The list
* must contain either valid IP addresses or valid CIDR blocks.</p>
*/
inline bool ClientListHasBeenSet() const { return m_clientListHasBeenSet; }
/**
* <p>The list of clients that are allowed to access the file gateway. The list
* must contain either valid IP addresses or valid CIDR blocks.</p>
*/
inline void SetClientList(const Aws::Vector<Aws::String>& value) { m_clientListHasBeenSet = true; m_clientList = value; }
/**
* <p>The list of clients that are allowed to access the file gateway. The list
* must contain either valid IP addresses or valid CIDR blocks.</p>
*/
inline void SetClientList(Aws::Vector<Aws::String>&& value) { m_clientListHasBeenSet = true; m_clientList = std::move(value); }
/**
* <p>The list of clients that are allowed to access the file gateway. The list
* must contain either valid IP addresses or valid CIDR blocks.</p>
*/
inline CreateNFSFileShareRequest& WithClientList(const Aws::Vector<Aws::String>& value) { SetClientList(value); return *this;}
/**
* <p>The list of clients that are allowed to access the file gateway. The list
* must contain either valid IP addresses or valid CIDR blocks.</p>
*/
inline CreateNFSFileShareRequest& WithClientList(Aws::Vector<Aws::String>&& value) { SetClientList(std::move(value)); return *this;}
/**
* <p>The list of clients that are allowed to access the file gateway. The list
* must contain either valid IP addresses or valid CIDR blocks.</p>
*/
inline CreateNFSFileShareRequest& AddClientList(const Aws::String& value) { m_clientListHasBeenSet = true; m_clientList.push_back(value); return *this; }
/**
* <p>The list of clients that are allowed to access the file gateway. The list
* must contain either valid IP addresses or valid CIDR blocks.</p>
*/
inline CreateNFSFileShareRequest& AddClientList(Aws::String&& value) { m_clientListHasBeenSet = true; m_clientList.push_back(std::move(value)); return *this; }
/**
* <p>The list of clients that are allowed to access the file gateway. The list
* must contain either valid IP addresses or valid CIDR blocks.</p>
*/
inline CreateNFSFileShareRequest& AddClientList(const char* value) { m_clientListHasBeenSet = true; m_clientList.push_back(value); return *this; }
/**
* <p>A value that maps a user to anonymous user.</p> <p>Valid values are the
* following:</p> <ul> <li> <p> <code>RootSquash</code>: Only root is mapped to
* anonymous user.</p> </li> <li> <p> <code>NoSquash</code>: No one is mapped to
* anonymous user.</p> </li> <li> <p> <code>AllSquash</code>: Everyone is mapped to
* anonymous user.</p> </li> </ul>
*/
inline const Aws::String& GetSquash() const{ return m_squash; }
/**
* <p>A value that maps a user to anonymous user.</p> <p>Valid values are the
* following:</p> <ul> <li> <p> <code>RootSquash</code>: Only root is mapped to
* anonymous user.</p> </li> <li> <p> <code>NoSquash</code>: No one is mapped to
* anonymous user.</p> </li> <li> <p> <code>AllSquash</code>: Everyone is mapped to
* anonymous user.</p> </li> </ul>
*/
inline bool SquashHasBeenSet() const { return m_squashHasBeenSet; }
/**
* <p>A value that maps a user to anonymous user.</p> <p>Valid values are the
* following:</p> <ul> <li> <p> <code>RootSquash</code>: Only root is mapped to
* anonymous user.</p> </li> <li> <p> <code>NoSquash</code>: No one is mapped to
* anonymous user.</p> </li> <li> <p> <code>AllSquash</code>: Everyone is mapped to
* anonymous user.</p> </li> </ul>
*/
inline void SetSquash(const Aws::String& value) { m_squashHasBeenSet = true; m_squash = value; }
/**
* <p>A value that maps a user to anonymous user.</p> <p>Valid values are the
* following:</p> <ul> <li> <p> <code>RootSquash</code>: Only root is mapped to
* anonymous user.</p> </li> <li> <p> <code>NoSquash</code>: No one is mapped to
* anonymous user.</p> </li> <li> <p> <code>AllSquash</code>: Everyone is mapped to
* anonymous user.</p> </li> </ul>
*/
inline void SetSquash(Aws::String&& value) { m_squashHasBeenSet = true; m_squash = std::move(value); }
/**
* <p>A value that maps a user to anonymous user.</p> <p>Valid values are the
* following:</p> <ul> <li> <p> <code>RootSquash</code>: Only root is mapped to
* anonymous user.</p> </li> <li> <p> <code>NoSquash</code>: No one is mapped to
* anonymous user.</p> </li> <li> <p> <code>AllSquash</code>: Everyone is mapped to
* anonymous user.</p> </li> </ul>
*/
inline void SetSquash(const char* value) { m_squashHasBeenSet = true; m_squash.assign(value); }
/**
* <p>A value that maps a user to anonymous user.</p> <p>Valid values are the
* following:</p> <ul> <li> <p> <code>RootSquash</code>: Only root is mapped to
* anonymous user.</p> </li> <li> <p> <code>NoSquash</code>: No one is mapped to
* anonymous user.</p> </li> <li> <p> <code>AllSquash</code>: Everyone is mapped to
* anonymous user.</p> </li> </ul>
*/
inline CreateNFSFileShareRequest& WithSquash(const Aws::String& value) { SetSquash(value); return *this;}
/**
* <p>A value that maps a user to anonymous user.</p> <p>Valid values are the
* following:</p> <ul> <li> <p> <code>RootSquash</code>: Only root is mapped to
* anonymous user.</p> </li> <li> <p> <code>NoSquash</code>: No one is mapped to
* anonymous user.</p> </li> <li> <p> <code>AllSquash</code>: Everyone is mapped to
* anonymous user.</p> </li> </ul>
*/
inline CreateNFSFileShareRequest& WithSquash(Aws::String&& value) { SetSquash(std::move(value)); return *this;}
/**
* <p>A value that maps a user to anonymous user.</p> <p>Valid values are the
* following:</p> <ul> <li> <p> <code>RootSquash</code>: Only root is mapped to
* anonymous user.</p> </li> <li> <p> <code>NoSquash</code>: No one is mapped to
* anonymous user.</p> </li> <li> <p> <code>AllSquash</code>: Everyone is mapped to
* anonymous user.</p> </li> </ul>
*/
inline CreateNFSFileShareRequest& WithSquash(const char* value) { SetSquash(value); return *this;}
/**
* <p>A value that sets the write status of a file share. Set this value to
* <code>true</code> to set the write status to read-only, otherwise set to
* <code>false</code>.</p> <p>Valid Values: <code>true</code> | <code>false</code>
* </p>
*/
inline bool GetReadOnly() const{ return m_readOnly; }
/**
* <p>A value that sets the write status of a file share. Set this value to
* <code>true</code> to set the write status to read-only, otherwise set to
* <code>false</code>.</p> <p>Valid Values: <code>true</code> | <code>false</code>
* </p>
*/
inline bool ReadOnlyHasBeenSet() const { return m_readOnlyHasBeenSet; }
/**
* <p>A value that sets the write status of a file share. Set this value to
* <code>true</code> to set the write status to read-only, otherwise set to
* <code>false</code>.</p> <p>Valid Values: <code>true</code> | <code>false</code>
* </p>
*/
inline void SetReadOnly(bool value) { m_readOnlyHasBeenSet = true; m_readOnly = value; }
/**
* <p>A value that sets the write status of a file share. Set this value to
* <code>true</code> to set the write status to read-only, otherwise set to
* <code>false</code>.</p> <p>Valid Values: <code>true</code> | <code>false</code>
* </p>
*/
inline CreateNFSFileShareRequest& WithReadOnly(bool value) { SetReadOnly(value); return *this;}
/**
* <p>A value that enables guessing of the MIME type for uploaded objects based on
* file extensions. Set this value to <code>true</code> to enable MIME type
* guessing, otherwise set to <code>false</code>. The default value is
* <code>true</code>.</p> <p>Valid Values: <code>true</code> | <code>false</code>
* </p>
*/
inline bool GetGuessMIMETypeEnabled() const{ return m_guessMIMETypeEnabled; }
/**
* <p>A value that enables guessing of the MIME type for uploaded objects based on
* file extensions. Set this value to <code>true</code> to enable MIME type
* guessing, otherwise set to <code>false</code>. The default value is
* <code>true</code>.</p> <p>Valid Values: <code>true</code> | <code>false</code>
* </p>
*/
inline bool GuessMIMETypeEnabledHasBeenSet() const { return m_guessMIMETypeEnabledHasBeenSet; }
/**
* <p>A value that enables guessing of the MIME type for uploaded objects based on
* file extensions. Set this value to <code>true</code> to enable MIME type
* guessing, otherwise set to <code>false</code>. The default value is
* <code>true</code>.</p> <p>Valid Values: <code>true</code> | <code>false</code>
* </p>
*/
inline void SetGuessMIMETypeEnabled(bool value) { m_guessMIMETypeEnabledHasBeenSet = true; m_guessMIMETypeEnabled = value; }
/**
* <p>A value that enables guessing of the MIME type for uploaded objects based on
* file extensions. Set this value to <code>true</code> to enable MIME type
* guessing, otherwise set to <code>false</code>. The default value is
* <code>true</code>.</p> <p>Valid Values: <code>true</code> | <code>false</code>
* </p>
*/
inline CreateNFSFileShareRequest& WithGuessMIMETypeEnabled(bool value) { SetGuessMIMETypeEnabled(value); return *this;}
/**
* <p>A value that sets who pays the cost of the request and the cost associated
* with data download from the S3 bucket. If this value is set to
* <code>true</code>, the requester pays the costs; otherwise, the S3 bucket owner
* pays. However, the S3 bucket owner always pays the cost of storing data.</p>
* <p> <code>RequesterPays</code> is a configuration for the S3 bucket that
* backs the file share, so make sure that the configuration on the file share is
* the same as the S3 bucket configuration.</p> <p>Valid Values:
* <code>true</code> | <code>false</code> </p>
*/
inline bool GetRequesterPays() const{ return m_requesterPays; }
/**
* <p>A value that sets who pays the cost of the request and the cost associated
* with data download from the S3 bucket. If this value is set to
* <code>true</code>, the requester pays the costs; otherwise, the S3 bucket owner
* pays. However, the S3 bucket owner always pays the cost of storing data.</p>
* <p> <code>RequesterPays</code> is a configuration for the S3 bucket that
* backs the file share, so make sure that the configuration on the file share is
* the same as the S3 bucket configuration.</p> <p>Valid Values:
* <code>true</code> | <code>false</code> </p>
*/
inline bool RequesterPaysHasBeenSet() const { return m_requesterPaysHasBeenSet; }
/**
* <p>A value that sets who pays the cost of the request and the cost associated
* with data download from the S3 bucket. If this value is set to
* <code>true</code>, the requester pays the costs; otherwise, the S3 bucket owner
* pays. However, the S3 bucket owner always pays the cost of storing data.</p>
* <p> <code>RequesterPays</code> is a configuration for the S3 bucket that
* backs the file share, so make sure that the configuration on the file share is
* the same as the S3 bucket configuration.</p> <p>Valid Values:
* <code>true</code> | <code>false</code> </p>
*/
inline void SetRequesterPays(bool value) { m_requesterPaysHasBeenSet = true; m_requesterPays = value; }
/**
* <p>A value that sets who pays the cost of the request and the cost associated
* with data download from the S3 bucket. If this value is set to
* <code>true</code>, the requester pays the costs; otherwise, the S3 bucket owner
* pays. However, the S3 bucket owner always pays the cost of storing data.</p>
* <p> <code>RequesterPays</code> is a configuration for the S3 bucket that
* backs the file share, so make sure that the configuration on the file share is
* the same as the S3 bucket configuration.</p> <p>Valid Values:
* <code>true</code> | <code>false</code> </p>
*/
inline CreateNFSFileShareRequest& WithRequesterPays(bool value) { SetRequesterPays(value); return *this;}
/**
* <p>A list of up to 50 tags that can be assigned to the NFS file share. Each tag
* is a key-value pair.</p> <p>Valid characters for key and value are
* letters, spaces, and numbers representable in UTF-8 format, and the following
* special characters: + - = . _ : / @. The maximum length of a tag's key is 128
* characters, and the maximum length for a tag's value is 256.</p>
*/
inline const Aws::Vector<Tag>& GetTags() const{ return m_tags; }
/**
* <p>A list of up to 50 tags that can be assigned to the NFS file share. Each tag
* is a key-value pair.</p> <p>Valid characters for key and value are
* letters, spaces, and numbers representable in UTF-8 format, and the following
* special characters: + - = . _ : / @. The maximum length of a tag's key is 128
* characters, and the maximum length for a tag's value is 256.</p>
*/
inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
/**
* <p>A list of up to 50 tags that can be assigned to the NFS file share. Each tag
* is a key-value pair.</p> <p>Valid characters for key and value are
* letters, spaces, and numbers representable in UTF-8 format, and the following
* special characters: + - = . _ : / @. The maximum length of a tag's key is 128
* characters, and the maximum length for a tag's value is 256.</p>
*/
inline void SetTags(const Aws::Vector<Tag>& value) { m_tagsHasBeenSet = true; m_tags = value; }
/**
* <p>A list of up to 50 tags that can be assigned to the NFS file share. Each tag
* is a key-value pair.</p> <p>Valid characters for key and value are
* letters, spaces, and numbers representable in UTF-8 format, and the following
* special characters: + - = . _ : / @. The maximum length of a tag's key is 128
* characters, and the maximum length for a tag's value is 256.</p>
*/
inline void SetTags(Aws::Vector<Tag>&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); }
/**
* <p>A list of up to 50 tags that can be assigned to the NFS file share. Each tag
* is a key-value pair.</p> <p>Valid characters for key and value are
* letters, spaces, and numbers representable in UTF-8 format, and the following
* special characters: + - = . _ : / @. The maximum length of a tag's key is 128
* characters, and the maximum length for a tag's value is 256.</p>
*/
inline CreateNFSFileShareRequest& WithTags(const Aws::Vector<Tag>& value) { SetTags(value); return *this;}
/**
* <p>A list of up to 50 tags that can be assigned to the NFS file share. Each tag
* is a key-value pair.</p> <p>Valid characters for key and value are
* letters, spaces, and numbers representable in UTF-8 format, and the following
* special characters: + - = . _ : / @. The maximum length of a tag's key is 128
* characters, and the maximum length for a tag's value is 256.</p>
*/
inline CreateNFSFileShareRequest& WithTags(Aws::Vector<Tag>&& value) { SetTags(std::move(value)); return *this;}
/**
* <p>A list of up to 50 tags that can be assigned to the NFS file share. Each tag
* is a key-value pair.</p> <p>Valid characters for key and value are
* letters, spaces, and numbers representable in UTF-8 format, and the following
* special characters: + - = . _ : / @. The maximum length of a tag's key is 128
* characters, and the maximum length for a tag's value is 256.</p>
*/
inline CreateNFSFileShareRequest& AddTags(const Tag& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; }
/**
* <p>A list of up to 50 tags that can be assigned to the NFS file share. Each tag
* is a key-value pair.</p> <p>Valid characters for key and value are
* letters, spaces, and numbers representable in UTF-8 format, and the following
* special characters: + - = . _ : / @. The maximum length of a tag's key is 128
* characters, and the maximum length for a tag's value is 256.</p>
*/
inline CreateNFSFileShareRequest& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; }
/**
* <p>The name of the file share. Optional.</p> <p>
* <code>FileShareName</code> must be set if an S3 prefix name is set in
* <code>LocationARN</code>.</p>
*/
inline const Aws::String& GetFileShareName() const{ return m_fileShareName; }
/**
* <p>The name of the file share. Optional.</p> <p>
* <code>FileShareName</code> must be set if an S3 prefix name is set in
* <code>LocationARN</code>.</p>
*/
inline bool FileShareNameHasBeenSet() const { return m_fileShareNameHasBeenSet; }
/**
* <p>The name of the file share. Optional.</p> <p>
* <code>FileShareName</code> must be set if an S3 prefix name is set in
* <code>LocationARN</code>.</p>
*/
inline void SetFileShareName(const Aws::String& value) { m_fileShareNameHasBeenSet = true; m_fileShareName = value; }
/**
* <p>The name of the file share. Optional.</p> <p>
* <code>FileShareName</code> must be set if an S3 prefix name is set in
* <code>LocationARN</code>.</p>
*/
inline void SetFileShareName(Aws::String&& value) { m_fileShareNameHasBeenSet = true; m_fileShareName = std::move(value); }
/**
* <p>The name of the file share. Optional.</p> <p>
* <code>FileShareName</code> must be set if an S3 prefix name is set in
* <code>LocationARN</code>.</p>
*/
inline void SetFileShareName(const char* value) { m_fileShareNameHasBeenSet = true; m_fileShareName.assign(value); }
/**
* <p>The name of the file share. Optional.</p> <p>
* <code>FileShareName</code> must be set if an S3 prefix name is set in
* <code>LocationARN</code>.</p>
*/
inline CreateNFSFileShareRequest& WithFileShareName(const Aws::String& value) { SetFileShareName(value); return *this;}
/**
* <p>The name of the file share. Optional.</p> <p>
* <code>FileShareName</code> must be set if an S3 prefix name is set in
* <code>LocationARN</code>.</p>
*/
inline CreateNFSFileShareRequest& WithFileShareName(Aws::String&& value) { SetFileShareName(std::move(value)); return *this;}
/**
* <p>The name of the file share. Optional.</p> <p>
* <code>FileShareName</code> must be set if an S3 prefix name is set in
* <code>LocationARN</code>.</p>
*/
inline CreateNFSFileShareRequest& WithFileShareName(const char* value) { SetFileShareName(value); return *this;}
/**
* <p>Refresh cache information.</p>
*/
inline const CacheAttributes& GetCacheAttributes() const{ return m_cacheAttributes; }
/**
* <p>Refresh cache information.</p>
*/
inline bool CacheAttributesHasBeenSet() const { return m_cacheAttributesHasBeenSet; }
/**
* <p>Refresh cache information.</p>
*/
inline void SetCacheAttributes(const CacheAttributes& value) { m_cacheAttributesHasBeenSet = true; m_cacheAttributes = value; }
/**
* <p>Refresh cache information.</p>
*/
inline void SetCacheAttributes(CacheAttributes&& value) { m_cacheAttributesHasBeenSet = true; m_cacheAttributes = std::move(value); }
/**
* <p>Refresh cache information.</p>
*/
inline CreateNFSFileShareRequest& WithCacheAttributes(const CacheAttributes& value) { SetCacheAttributes(value); return *this;}
/**
* <p>Refresh cache information.</p>
*/
inline CreateNFSFileShareRequest& WithCacheAttributes(CacheAttributes&& value) { SetCacheAttributes(std::move(value)); return *this;}
private:
Aws::String m_clientToken;
bool m_clientTokenHasBeenSet;
NFSFileShareDefaults m_nFSFileShareDefaults;
bool m_nFSFileShareDefaultsHasBeenSet;
Aws::String m_gatewayARN;
bool m_gatewayARNHasBeenSet;
bool m_kMSEncrypted;
bool m_kMSEncryptedHasBeenSet;
Aws::String m_kMSKey;
bool m_kMSKeyHasBeenSet;
Aws::String m_role;
bool m_roleHasBeenSet;
Aws::String m_locationARN;
bool m_locationARNHasBeenSet;
Aws::String m_defaultStorageClass;
bool m_defaultStorageClassHasBeenSet;
ObjectACL m_objectACL;
bool m_objectACLHasBeenSet;
Aws::Vector<Aws::String> m_clientList;
bool m_clientListHasBeenSet;
Aws::String m_squash;
bool m_squashHasBeenSet;
bool m_readOnly;
bool m_readOnlyHasBeenSet;
bool m_guessMIMETypeEnabled;
bool m_guessMIMETypeEnabledHasBeenSet;
bool m_requesterPays;
bool m_requesterPaysHasBeenSet;
Aws::Vector<Tag> m_tags;
bool m_tagsHasBeenSet;
Aws::String m_fileShareName;
bool m_fileShareNameHasBeenSet;
CacheAttributes m_cacheAttributes;
bool m_cacheAttributesHasBeenSet;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,82 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace StorageGateway
{
namespace Model
{
/**
* <p>CreateNFSFileShareOutput</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/CreateNFSFileShareOutput">AWS
* API Reference</a></p>
*/
class AWS_STORAGEGATEWAY_API CreateNFSFileShareResult
{
public:
CreateNFSFileShareResult();
CreateNFSFileShareResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
CreateNFSFileShareResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>The Amazon Resource Name (ARN) of the newly created file share.</p>
*/
inline const Aws::String& GetFileShareARN() const{ return m_fileShareARN; }
/**
* <p>The Amazon Resource Name (ARN) of the newly created file share.</p>
*/
inline void SetFileShareARN(const Aws::String& value) { m_fileShareARN = value; }
/**
* <p>The Amazon Resource Name (ARN) of the newly created file share.</p>
*/
inline void SetFileShareARN(Aws::String&& value) { m_fileShareARN = std::move(value); }
/**
* <p>The Amazon Resource Name (ARN) of the newly created file share.</p>
*/
inline void SetFileShareARN(const char* value) { m_fileShareARN.assign(value); }
/**
* <p>The Amazon Resource Name (ARN) of the newly created file share.</p>
*/
inline CreateNFSFileShareResult& WithFileShareARN(const Aws::String& value) { SetFileShareARN(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the newly created file share.</p>
*/
inline CreateNFSFileShareResult& WithFileShareARN(Aws::String&& value) { SetFileShareARN(std::move(value)); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the newly created file share.</p>
*/
inline CreateNFSFileShareResult& WithFileShareARN(const char* value) { SetFileShareARN(value); return *this;}
private:
Aws::String m_fileShareARN;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,82 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace StorageGateway
{
namespace Model
{
/**
* <p>CreateSMBFileShareOutput</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/CreateSMBFileShareOutput">AWS
* API Reference</a></p>
*/
class AWS_STORAGEGATEWAY_API CreateSMBFileShareResult
{
public:
CreateSMBFileShareResult();
CreateSMBFileShareResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
CreateSMBFileShareResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>The Amazon Resource Name (ARN) of the newly created file share.</p>
*/
inline const Aws::String& GetFileShareARN() const{ return m_fileShareARN; }
/**
* <p>The Amazon Resource Name (ARN) of the newly created file share.</p>
*/
inline void SetFileShareARN(const Aws::String& value) { m_fileShareARN = value; }
/**
* <p>The Amazon Resource Name (ARN) of the newly created file share.</p>
*/
inline void SetFileShareARN(Aws::String&& value) { m_fileShareARN = std::move(value); }
/**
* <p>The Amazon Resource Name (ARN) of the newly created file share.</p>
*/
inline void SetFileShareARN(const char* value) { m_fileShareARN.assign(value); }
/**
* <p>The Amazon Resource Name (ARN) of the newly created file share.</p>
*/
inline CreateSMBFileShareResult& WithFileShareARN(const Aws::String& value) { SetFileShareARN(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the newly created file share.</p>
*/
inline CreateSMBFileShareResult& WithFileShareARN(Aws::String&& value) { SetFileShareARN(std::move(value)); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the newly created file share.</p>
*/
inline CreateSMBFileShareResult& WithFileShareARN(const char* value) { SetFileShareARN(value); return *this;}
private:
Aws::String m_fileShareARN;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,239 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/storagegateway/StorageGatewayRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/storagegateway/model/Tag.h>
#include <utility>
namespace Aws
{
namespace StorageGateway
{
namespace Model
{
/**
*/
class AWS_STORAGEGATEWAY_API CreateSnapshotFromVolumeRecoveryPointRequest : public StorageGatewayRequest
{
public:
CreateSnapshotFromVolumeRecoveryPointRequest();
// 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 "CreateSnapshotFromVolumeRecoveryPoint"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
/**
* <p>The Amazon Resource Name (ARN) of the iSCSI volume target. Use the
* <a>DescribeStorediSCSIVolumes</a> operation to return to retrieve the TargetARN
* for specified VolumeARN.</p>
*/
inline const Aws::String& GetVolumeARN() const{ return m_volumeARN; }
/**
* <p>The Amazon Resource Name (ARN) of the iSCSI volume target. Use the
* <a>DescribeStorediSCSIVolumes</a> operation to return to retrieve the TargetARN
* for specified VolumeARN.</p>
*/
inline bool VolumeARNHasBeenSet() const { return m_volumeARNHasBeenSet; }
/**
* <p>The Amazon Resource Name (ARN) of the iSCSI volume target. Use the
* <a>DescribeStorediSCSIVolumes</a> operation to return to retrieve the TargetARN
* for specified VolumeARN.</p>
*/
inline void SetVolumeARN(const Aws::String& value) { m_volumeARNHasBeenSet = true; m_volumeARN = value; }
/**
* <p>The Amazon Resource Name (ARN) of the iSCSI volume target. Use the
* <a>DescribeStorediSCSIVolumes</a> operation to return to retrieve the TargetARN
* for specified VolumeARN.</p>
*/
inline void SetVolumeARN(Aws::String&& value) { m_volumeARNHasBeenSet = true; m_volumeARN = std::move(value); }
/**
* <p>The Amazon Resource Name (ARN) of the iSCSI volume target. Use the
* <a>DescribeStorediSCSIVolumes</a> operation to return to retrieve the TargetARN
* for specified VolumeARN.</p>
*/
inline void SetVolumeARN(const char* value) { m_volumeARNHasBeenSet = true; m_volumeARN.assign(value); }
/**
* <p>The Amazon Resource Name (ARN) of the iSCSI volume target. Use the
* <a>DescribeStorediSCSIVolumes</a> operation to return to retrieve the TargetARN
* for specified VolumeARN.</p>
*/
inline CreateSnapshotFromVolumeRecoveryPointRequest& WithVolumeARN(const Aws::String& value) { SetVolumeARN(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the iSCSI volume target. Use the
* <a>DescribeStorediSCSIVolumes</a> operation to return to retrieve the TargetARN
* for specified VolumeARN.</p>
*/
inline CreateSnapshotFromVolumeRecoveryPointRequest& WithVolumeARN(Aws::String&& value) { SetVolumeARN(std::move(value)); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the iSCSI volume target. Use the
* <a>DescribeStorediSCSIVolumes</a> operation to return to retrieve the TargetARN
* for specified VolumeARN.</p>
*/
inline CreateSnapshotFromVolumeRecoveryPointRequest& WithVolumeARN(const char* value) { SetVolumeARN(value); return *this;}
/**
* <p>Textual description of the snapshot that appears in the Amazon EC2 console,
* Elastic Block Store snapshots panel in the <b>Description</b> field, and in the
* AWS Storage Gateway snapshot <b>Details</b> pane, <b>Description</b> field.</p>
*/
inline const Aws::String& GetSnapshotDescription() const{ return m_snapshotDescription; }
/**
* <p>Textual description of the snapshot that appears in the Amazon EC2 console,
* Elastic Block Store snapshots panel in the <b>Description</b> field, and in the
* AWS Storage Gateway snapshot <b>Details</b> pane, <b>Description</b> field.</p>
*/
inline bool SnapshotDescriptionHasBeenSet() const { return m_snapshotDescriptionHasBeenSet; }
/**
* <p>Textual description of the snapshot that appears in the Amazon EC2 console,
* Elastic Block Store snapshots panel in the <b>Description</b> field, and in the
* AWS Storage Gateway snapshot <b>Details</b> pane, <b>Description</b> field.</p>
*/
inline void SetSnapshotDescription(const Aws::String& value) { m_snapshotDescriptionHasBeenSet = true; m_snapshotDescription = value; }
/**
* <p>Textual description of the snapshot that appears in the Amazon EC2 console,
* Elastic Block Store snapshots panel in the <b>Description</b> field, and in the
* AWS Storage Gateway snapshot <b>Details</b> pane, <b>Description</b> field.</p>
*/
inline void SetSnapshotDescription(Aws::String&& value) { m_snapshotDescriptionHasBeenSet = true; m_snapshotDescription = std::move(value); }
/**
* <p>Textual description of the snapshot that appears in the Amazon EC2 console,
* Elastic Block Store snapshots panel in the <b>Description</b> field, and in the
* AWS Storage Gateway snapshot <b>Details</b> pane, <b>Description</b> field.</p>
*/
inline void SetSnapshotDescription(const char* value) { m_snapshotDescriptionHasBeenSet = true; m_snapshotDescription.assign(value); }
/**
* <p>Textual description of the snapshot that appears in the Amazon EC2 console,
* Elastic Block Store snapshots panel in the <b>Description</b> field, and in the
* AWS Storage Gateway snapshot <b>Details</b> pane, <b>Description</b> field.</p>
*/
inline CreateSnapshotFromVolumeRecoveryPointRequest& WithSnapshotDescription(const Aws::String& value) { SetSnapshotDescription(value); return *this;}
/**
* <p>Textual description of the snapshot that appears in the Amazon EC2 console,
* Elastic Block Store snapshots panel in the <b>Description</b> field, and in the
* AWS Storage Gateway snapshot <b>Details</b> pane, <b>Description</b> field.</p>
*/
inline CreateSnapshotFromVolumeRecoveryPointRequest& WithSnapshotDescription(Aws::String&& value) { SetSnapshotDescription(std::move(value)); return *this;}
/**
* <p>Textual description of the snapshot that appears in the Amazon EC2 console,
* Elastic Block Store snapshots panel in the <b>Description</b> field, and in the
* AWS Storage Gateway snapshot <b>Details</b> pane, <b>Description</b> field.</p>
*/
inline CreateSnapshotFromVolumeRecoveryPointRequest& WithSnapshotDescription(const char* value) { SetSnapshotDescription(value); return *this;}
/**
* <p>A list of up to 50 tags that can be assigned to a snapshot. Each tag is a
* key-value pair.</p> <p>Valid characters for key and value are letters,
* spaces, and numbers representable in UTF-8 format, and the following special
* characters: + - = . _ : / @. The maximum length of a tag's key is 128
* characters, and the maximum length for a tag's value is 256.</p>
*/
inline const Aws::Vector<Tag>& GetTags() const{ return m_tags; }
/**
* <p>A list of up to 50 tags that can be assigned to a snapshot. Each tag is a
* key-value pair.</p> <p>Valid characters for key and value are letters,
* spaces, and numbers representable in UTF-8 format, and the following special
* characters: + - = . _ : / @. The maximum length of a tag's key is 128
* characters, and the maximum length for a tag's value is 256.</p>
*/
inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
/**
* <p>A list of up to 50 tags that can be assigned to a snapshot. Each tag is a
* key-value pair.</p> <p>Valid characters for key and value are letters,
* spaces, and numbers representable in UTF-8 format, and the following special
* characters: + - = . _ : / @. The maximum length of a tag's key is 128
* characters, and the maximum length for a tag's value is 256.</p>
*/
inline void SetTags(const Aws::Vector<Tag>& value) { m_tagsHasBeenSet = true; m_tags = value; }
/**
* <p>A list of up to 50 tags that can be assigned to a snapshot. Each tag is a
* key-value pair.</p> <p>Valid characters for key and value are letters,
* spaces, and numbers representable in UTF-8 format, and the following special
* characters: + - = . _ : / @. The maximum length of a tag's key is 128
* characters, and the maximum length for a tag's value is 256.</p>
*/
inline void SetTags(Aws::Vector<Tag>&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); }
/**
* <p>A list of up to 50 tags that can be assigned to a snapshot. Each tag is a
* key-value pair.</p> <p>Valid characters for key and value are letters,
* spaces, and numbers representable in UTF-8 format, and the following special
* characters: + - = . _ : / @. The maximum length of a tag's key is 128
* characters, and the maximum length for a tag's value is 256.</p>
*/
inline CreateSnapshotFromVolumeRecoveryPointRequest& WithTags(const Aws::Vector<Tag>& value) { SetTags(value); return *this;}
/**
* <p>A list of up to 50 tags that can be assigned to a snapshot. Each tag is a
* key-value pair.</p> <p>Valid characters for key and value are letters,
* spaces, and numbers representable in UTF-8 format, and the following special
* characters: + - = . _ : / @. The maximum length of a tag's key is 128
* characters, and the maximum length for a tag's value is 256.</p>
*/
inline CreateSnapshotFromVolumeRecoveryPointRequest& WithTags(Aws::Vector<Tag>&& value) { SetTags(std::move(value)); return *this;}
/**
* <p>A list of up to 50 tags that can be assigned to a snapshot. Each tag is a
* key-value pair.</p> <p>Valid characters for key and value are letters,
* spaces, and numbers representable in UTF-8 format, and the following special
* characters: + - = . _ : / @. The maximum length of a tag's key is 128
* characters, and the maximum length for a tag's value is 256.</p>
*/
inline CreateSnapshotFromVolumeRecoveryPointRequest& AddTags(const Tag& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; }
/**
* <p>A list of up to 50 tags that can be assigned to a snapshot. Each tag is a
* key-value pair.</p> <p>Valid characters for key and value are letters,
* spaces, and numbers representable in UTF-8 format, and the following special
* characters: + - = . _ : / @. The maximum length of a tag's key is 128
* characters, and the maximum length for a tag's value is 256.</p>
*/
inline CreateSnapshotFromVolumeRecoveryPointRequest& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; }
private:
Aws::String m_volumeARN;
bool m_volumeARNHasBeenSet;
Aws::String m_snapshotDescription;
bool m_snapshotDescriptionHasBeenSet;
Aws::Vector<Tag> m_tags;
bool m_tagsHasBeenSet;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,167 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace StorageGateway
{
namespace Model
{
class AWS_STORAGEGATEWAY_API CreateSnapshotFromVolumeRecoveryPointResult
{
public:
CreateSnapshotFromVolumeRecoveryPointResult();
CreateSnapshotFromVolumeRecoveryPointResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
CreateSnapshotFromVolumeRecoveryPointResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>The ID of the snapshot.</p>
*/
inline const Aws::String& GetSnapshotId() const{ return m_snapshotId; }
/**
* <p>The ID of the snapshot.</p>
*/
inline void SetSnapshotId(const Aws::String& value) { m_snapshotId = value; }
/**
* <p>The ID of the snapshot.</p>
*/
inline void SetSnapshotId(Aws::String&& value) { m_snapshotId = std::move(value); }
/**
* <p>The ID of the snapshot.</p>
*/
inline void SetSnapshotId(const char* value) { m_snapshotId.assign(value); }
/**
* <p>The ID of the snapshot.</p>
*/
inline CreateSnapshotFromVolumeRecoveryPointResult& WithSnapshotId(const Aws::String& value) { SetSnapshotId(value); return *this;}
/**
* <p>The ID of the snapshot.</p>
*/
inline CreateSnapshotFromVolumeRecoveryPointResult& WithSnapshotId(Aws::String&& value) { SetSnapshotId(std::move(value)); return *this;}
/**
* <p>The ID of the snapshot.</p>
*/
inline CreateSnapshotFromVolumeRecoveryPointResult& WithSnapshotId(const char* value) { SetSnapshotId(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the iSCSI volume target. Use the
* <a>DescribeStorediSCSIVolumes</a> operation to return to retrieve the TargetARN
* for specified VolumeARN.</p>
*/
inline const Aws::String& GetVolumeARN() const{ return m_volumeARN; }
/**
* <p>The Amazon Resource Name (ARN) of the iSCSI volume target. Use the
* <a>DescribeStorediSCSIVolumes</a> operation to return to retrieve the TargetARN
* for specified VolumeARN.</p>
*/
inline void SetVolumeARN(const Aws::String& value) { m_volumeARN = value; }
/**
* <p>The Amazon Resource Name (ARN) of the iSCSI volume target. Use the
* <a>DescribeStorediSCSIVolumes</a> operation to return to retrieve the TargetARN
* for specified VolumeARN.</p>
*/
inline void SetVolumeARN(Aws::String&& value) { m_volumeARN = std::move(value); }
/**
* <p>The Amazon Resource Name (ARN) of the iSCSI volume target. Use the
* <a>DescribeStorediSCSIVolumes</a> operation to return to retrieve the TargetARN
* for specified VolumeARN.</p>
*/
inline void SetVolumeARN(const char* value) { m_volumeARN.assign(value); }
/**
* <p>The Amazon Resource Name (ARN) of the iSCSI volume target. Use the
* <a>DescribeStorediSCSIVolumes</a> operation to return to retrieve the TargetARN
* for specified VolumeARN.</p>
*/
inline CreateSnapshotFromVolumeRecoveryPointResult& WithVolumeARN(const Aws::String& value) { SetVolumeARN(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the iSCSI volume target. Use the
* <a>DescribeStorediSCSIVolumes</a> operation to return to retrieve the TargetARN
* for specified VolumeARN.</p>
*/
inline CreateSnapshotFromVolumeRecoveryPointResult& WithVolumeARN(Aws::String&& value) { SetVolumeARN(std::move(value)); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the iSCSI volume target. Use the
* <a>DescribeStorediSCSIVolumes</a> operation to return to retrieve the TargetARN
* for specified VolumeARN.</p>
*/
inline CreateSnapshotFromVolumeRecoveryPointResult& WithVolumeARN(const char* value) { SetVolumeARN(value); return *this;}
/**
* <p>The time the volume was created from the recovery point.</p>
*/
inline const Aws::String& GetVolumeRecoveryPointTime() const{ return m_volumeRecoveryPointTime; }
/**
* <p>The time the volume was created from the recovery point.</p>
*/
inline void SetVolumeRecoveryPointTime(const Aws::String& value) { m_volumeRecoveryPointTime = value; }
/**
* <p>The time the volume was created from the recovery point.</p>
*/
inline void SetVolumeRecoveryPointTime(Aws::String&& value) { m_volumeRecoveryPointTime = std::move(value); }
/**
* <p>The time the volume was created from the recovery point.</p>
*/
inline void SetVolumeRecoveryPointTime(const char* value) { m_volumeRecoveryPointTime.assign(value); }
/**
* <p>The time the volume was created from the recovery point.</p>
*/
inline CreateSnapshotFromVolumeRecoveryPointResult& WithVolumeRecoveryPointTime(const Aws::String& value) { SetVolumeRecoveryPointTime(value); return *this;}
/**
* <p>The time the volume was created from the recovery point.</p>
*/
inline CreateSnapshotFromVolumeRecoveryPointResult& WithVolumeRecoveryPointTime(Aws::String&& value) { SetVolumeRecoveryPointTime(std::move(value)); return *this;}
/**
* <p>The time the volume was created from the recovery point.</p>
*/
inline CreateSnapshotFromVolumeRecoveryPointResult& WithVolumeRecoveryPointTime(const char* value) { SetVolumeRecoveryPointTime(value); return *this;}
private:
Aws::String m_snapshotId;
Aws::String m_volumeARN;
Aws::String m_volumeRecoveryPointTime;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,236 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/storagegateway/StorageGatewayRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/storagegateway/model/Tag.h>
#include <utility>
namespace Aws
{
namespace StorageGateway
{
namespace Model
{
/**
* <p>A JSON object containing one or more of the following fields:</p> <ul> <li>
* <p> <a>CreateSnapshotInput$SnapshotDescription</a> </p> </li> <li> <p>
* <a>CreateSnapshotInput$VolumeARN</a> </p> </li> </ul><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/CreateSnapshotInput">AWS
* API Reference</a></p>
*/
class AWS_STORAGEGATEWAY_API CreateSnapshotRequest : public StorageGatewayRequest
{
public:
CreateSnapshotRequest();
// 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 "CreateSnapshot"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
/**
* <p>The Amazon Resource Name (ARN) of the volume. Use the <a>ListVolumes</a>
* operation to return a list of gateway volumes.</p>
*/
inline const Aws::String& GetVolumeARN() const{ return m_volumeARN; }
/**
* <p>The Amazon Resource Name (ARN) of the volume. Use the <a>ListVolumes</a>
* operation to return a list of gateway volumes.</p>
*/
inline bool VolumeARNHasBeenSet() const { return m_volumeARNHasBeenSet; }
/**
* <p>The Amazon Resource Name (ARN) of the volume. Use the <a>ListVolumes</a>
* operation to return a list of gateway volumes.</p>
*/
inline void SetVolumeARN(const Aws::String& value) { m_volumeARNHasBeenSet = true; m_volumeARN = value; }
/**
* <p>The Amazon Resource Name (ARN) of the volume. Use the <a>ListVolumes</a>
* operation to return a list of gateway volumes.</p>
*/
inline void SetVolumeARN(Aws::String&& value) { m_volumeARNHasBeenSet = true; m_volumeARN = std::move(value); }
/**
* <p>The Amazon Resource Name (ARN) of the volume. Use the <a>ListVolumes</a>
* operation to return a list of gateway volumes.</p>
*/
inline void SetVolumeARN(const char* value) { m_volumeARNHasBeenSet = true; m_volumeARN.assign(value); }
/**
* <p>The Amazon Resource Name (ARN) of the volume. Use the <a>ListVolumes</a>
* operation to return a list of gateway volumes.</p>
*/
inline CreateSnapshotRequest& WithVolumeARN(const Aws::String& value) { SetVolumeARN(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the volume. Use the <a>ListVolumes</a>
* operation to return a list of gateway volumes.</p>
*/
inline CreateSnapshotRequest& WithVolumeARN(Aws::String&& value) { SetVolumeARN(std::move(value)); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the volume. Use the <a>ListVolumes</a>
* operation to return a list of gateway volumes.</p>
*/
inline CreateSnapshotRequest& WithVolumeARN(const char* value) { SetVolumeARN(value); return *this;}
/**
* <p>Textual description of the snapshot that appears in the Amazon EC2 console,
* Elastic Block Store snapshots panel in the <b>Description</b> field, and in the
* AWS Storage Gateway snapshot <b>Details</b> pane, <b>Description</b> field.</p>
*/
inline const Aws::String& GetSnapshotDescription() const{ return m_snapshotDescription; }
/**
* <p>Textual description of the snapshot that appears in the Amazon EC2 console,
* Elastic Block Store snapshots panel in the <b>Description</b> field, and in the
* AWS Storage Gateway snapshot <b>Details</b> pane, <b>Description</b> field.</p>
*/
inline bool SnapshotDescriptionHasBeenSet() const { return m_snapshotDescriptionHasBeenSet; }
/**
* <p>Textual description of the snapshot that appears in the Amazon EC2 console,
* Elastic Block Store snapshots panel in the <b>Description</b> field, and in the
* AWS Storage Gateway snapshot <b>Details</b> pane, <b>Description</b> field.</p>
*/
inline void SetSnapshotDescription(const Aws::String& value) { m_snapshotDescriptionHasBeenSet = true; m_snapshotDescription = value; }
/**
* <p>Textual description of the snapshot that appears in the Amazon EC2 console,
* Elastic Block Store snapshots panel in the <b>Description</b> field, and in the
* AWS Storage Gateway snapshot <b>Details</b> pane, <b>Description</b> field.</p>
*/
inline void SetSnapshotDescription(Aws::String&& value) { m_snapshotDescriptionHasBeenSet = true; m_snapshotDescription = std::move(value); }
/**
* <p>Textual description of the snapshot that appears in the Amazon EC2 console,
* Elastic Block Store snapshots panel in the <b>Description</b> field, and in the
* AWS Storage Gateway snapshot <b>Details</b> pane, <b>Description</b> field.</p>
*/
inline void SetSnapshotDescription(const char* value) { m_snapshotDescriptionHasBeenSet = true; m_snapshotDescription.assign(value); }
/**
* <p>Textual description of the snapshot that appears in the Amazon EC2 console,
* Elastic Block Store snapshots panel in the <b>Description</b> field, and in the
* AWS Storage Gateway snapshot <b>Details</b> pane, <b>Description</b> field.</p>
*/
inline CreateSnapshotRequest& WithSnapshotDescription(const Aws::String& value) { SetSnapshotDescription(value); return *this;}
/**
* <p>Textual description of the snapshot that appears in the Amazon EC2 console,
* Elastic Block Store snapshots panel in the <b>Description</b> field, and in the
* AWS Storage Gateway snapshot <b>Details</b> pane, <b>Description</b> field.</p>
*/
inline CreateSnapshotRequest& WithSnapshotDescription(Aws::String&& value) { SetSnapshotDescription(std::move(value)); return *this;}
/**
* <p>Textual description of the snapshot that appears in the Amazon EC2 console,
* Elastic Block Store snapshots panel in the <b>Description</b> field, and in the
* AWS Storage Gateway snapshot <b>Details</b> pane, <b>Description</b> field.</p>
*/
inline CreateSnapshotRequest& WithSnapshotDescription(const char* value) { SetSnapshotDescription(value); return *this;}
/**
* <p>A list of up to 50 tags that can be assigned to a snapshot. Each tag is a
* key-value pair.</p> <p>Valid characters for key and value are letters,
* spaces, and numbers representable in UTF-8 format, and the following special
* characters: + - = . _ : / @. The maximum length of a tag's key is 128
* characters, and the maximum length for a tag's value is 256.</p>
*/
inline const Aws::Vector<Tag>& GetTags() const{ return m_tags; }
/**
* <p>A list of up to 50 tags that can be assigned to a snapshot. Each tag is a
* key-value pair.</p> <p>Valid characters for key and value are letters,
* spaces, and numbers representable in UTF-8 format, and the following special
* characters: + - = . _ : / @. The maximum length of a tag's key is 128
* characters, and the maximum length for a tag's value is 256.</p>
*/
inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
/**
* <p>A list of up to 50 tags that can be assigned to a snapshot. Each tag is a
* key-value pair.</p> <p>Valid characters for key and value are letters,
* spaces, and numbers representable in UTF-8 format, and the following special
* characters: + - = . _ : / @. The maximum length of a tag's key is 128
* characters, and the maximum length for a tag's value is 256.</p>
*/
inline void SetTags(const Aws::Vector<Tag>& value) { m_tagsHasBeenSet = true; m_tags = value; }
/**
* <p>A list of up to 50 tags that can be assigned to a snapshot. Each tag is a
* key-value pair.</p> <p>Valid characters for key and value are letters,
* spaces, and numbers representable in UTF-8 format, and the following special
* characters: + - = . _ : / @. The maximum length of a tag's key is 128
* characters, and the maximum length for a tag's value is 256.</p>
*/
inline void SetTags(Aws::Vector<Tag>&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); }
/**
* <p>A list of up to 50 tags that can be assigned to a snapshot. Each tag is a
* key-value pair.</p> <p>Valid characters for key and value are letters,
* spaces, and numbers representable in UTF-8 format, and the following special
* characters: + - = . _ : / @. The maximum length of a tag's key is 128
* characters, and the maximum length for a tag's value is 256.</p>
*/
inline CreateSnapshotRequest& WithTags(const Aws::Vector<Tag>& value) { SetTags(value); return *this;}
/**
* <p>A list of up to 50 tags that can be assigned to a snapshot. Each tag is a
* key-value pair.</p> <p>Valid characters for key and value are letters,
* spaces, and numbers representable in UTF-8 format, and the following special
* characters: + - = . _ : / @. The maximum length of a tag's key is 128
* characters, and the maximum length for a tag's value is 256.</p>
*/
inline CreateSnapshotRequest& WithTags(Aws::Vector<Tag>&& value) { SetTags(std::move(value)); return *this;}
/**
* <p>A list of up to 50 tags that can be assigned to a snapshot. Each tag is a
* key-value pair.</p> <p>Valid characters for key and value are letters,
* spaces, and numbers representable in UTF-8 format, and the following special
* characters: + - = . _ : / @. The maximum length of a tag's key is 128
* characters, and the maximum length for a tag's value is 256.</p>
*/
inline CreateSnapshotRequest& AddTags(const Tag& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; }
/**
* <p>A list of up to 50 tags that can be assigned to a snapshot. Each tag is a
* key-value pair.</p> <p>Valid characters for key and value are letters,
* spaces, and numbers representable in UTF-8 format, and the following special
* characters: + - = . _ : / @. The maximum length of a tag's key is 128
* characters, and the maximum length for a tag's value is 256.</p>
*/
inline CreateSnapshotRequest& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; }
private:
Aws::String m_volumeARN;
bool m_volumeARNHasBeenSet;
Aws::String m_snapshotDescription;
bool m_snapshotDescriptionHasBeenSet;
Aws::Vector<Tag> m_tags;
bool m_tagsHasBeenSet;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,148 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace StorageGateway
{
namespace Model
{
/**
* <p>A JSON object containing the following fields:</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/CreateSnapshotOutput">AWS
* API Reference</a></p>
*/
class AWS_STORAGEGATEWAY_API CreateSnapshotResult
{
public:
CreateSnapshotResult();
CreateSnapshotResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
CreateSnapshotResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>The Amazon Resource Name (ARN) of the volume of which the snapshot was
* taken.</p>
*/
inline const Aws::String& GetVolumeARN() const{ return m_volumeARN; }
/**
* <p>The Amazon Resource Name (ARN) of the volume of which the snapshot was
* taken.</p>
*/
inline void SetVolumeARN(const Aws::String& value) { m_volumeARN = value; }
/**
* <p>The Amazon Resource Name (ARN) of the volume of which the snapshot was
* taken.</p>
*/
inline void SetVolumeARN(Aws::String&& value) { m_volumeARN = std::move(value); }
/**
* <p>The Amazon Resource Name (ARN) of the volume of which the snapshot was
* taken.</p>
*/
inline void SetVolumeARN(const char* value) { m_volumeARN.assign(value); }
/**
* <p>The Amazon Resource Name (ARN) of the volume of which the snapshot was
* taken.</p>
*/
inline CreateSnapshotResult& WithVolumeARN(const Aws::String& value) { SetVolumeARN(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the volume of which the snapshot was
* taken.</p>
*/
inline CreateSnapshotResult& WithVolumeARN(Aws::String&& value) { SetVolumeARN(std::move(value)); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the volume of which the snapshot was
* taken.</p>
*/
inline CreateSnapshotResult& WithVolumeARN(const char* value) { SetVolumeARN(value); return *this;}
/**
* <p>The snapshot ID that is used to refer to the snapshot in future operations
* such as describing snapshots (Amazon Elastic Compute Cloud API
* <code>DescribeSnapshots</code>) or creating a volume from a snapshot
* (<a>CreateStorediSCSIVolume</a>).</p>
*/
inline const Aws::String& GetSnapshotId() const{ return m_snapshotId; }
/**
* <p>The snapshot ID that is used to refer to the snapshot in future operations
* such as describing snapshots (Amazon Elastic Compute Cloud API
* <code>DescribeSnapshots</code>) or creating a volume from a snapshot
* (<a>CreateStorediSCSIVolume</a>).</p>
*/
inline void SetSnapshotId(const Aws::String& value) { m_snapshotId = value; }
/**
* <p>The snapshot ID that is used to refer to the snapshot in future operations
* such as describing snapshots (Amazon Elastic Compute Cloud API
* <code>DescribeSnapshots</code>) or creating a volume from a snapshot
* (<a>CreateStorediSCSIVolume</a>).</p>
*/
inline void SetSnapshotId(Aws::String&& value) { m_snapshotId = std::move(value); }
/**
* <p>The snapshot ID that is used to refer to the snapshot in future operations
* such as describing snapshots (Amazon Elastic Compute Cloud API
* <code>DescribeSnapshots</code>) or creating a volume from a snapshot
* (<a>CreateStorediSCSIVolume</a>).</p>
*/
inline void SetSnapshotId(const char* value) { m_snapshotId.assign(value); }
/**
* <p>The snapshot ID that is used to refer to the snapshot in future operations
* such as describing snapshots (Amazon Elastic Compute Cloud API
* <code>DescribeSnapshots</code>) or creating a volume from a snapshot
* (<a>CreateStorediSCSIVolume</a>).</p>
*/
inline CreateSnapshotResult& WithSnapshotId(const Aws::String& value) { SetSnapshotId(value); return *this;}
/**
* <p>The snapshot ID that is used to refer to the snapshot in future operations
* such as describing snapshots (Amazon Elastic Compute Cloud API
* <code>DescribeSnapshots</code>) or creating a volume from a snapshot
* (<a>CreateStorediSCSIVolume</a>).</p>
*/
inline CreateSnapshotResult& WithSnapshotId(Aws::String&& value) { SetSnapshotId(std::move(value)); return *this;}
/**
* <p>The snapshot ID that is used to refer to the snapshot in future operations
* such as describing snapshots (Amazon Elastic Compute Cloud API
* <code>DescribeSnapshots</code>) or creating a volume from a snapshot
* (<a>CreateStorediSCSIVolume</a>).</p>
*/
inline CreateSnapshotResult& WithSnapshotId(const char* value) { SetSnapshotId(value); return *this;}
private:
Aws::String m_volumeARN;
Aws::String m_snapshotId;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,600 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/storagegateway/StorageGatewayRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/storagegateway/model/Tag.h>
#include <utility>
namespace Aws
{
namespace StorageGateway
{
namespace Model
{
/**
* <p>A JSON object containing one or more of the following fields:</p> <ul> <li>
* <p> <a>CreateStorediSCSIVolumeInput$DiskId</a> </p> </li> <li> <p>
* <a>CreateStorediSCSIVolumeInput$NetworkInterfaceId</a> </p> </li> <li> <p>
* <a>CreateStorediSCSIVolumeInput$PreserveExistingData</a> </p> </li> <li> <p>
* <a>CreateStorediSCSIVolumeInput$SnapshotId</a> </p> </li> <li> <p>
* <a>CreateStorediSCSIVolumeInput$TargetName</a> </p> </li> </ul><p><h3>See
* Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/CreateStorediSCSIVolumeInput">AWS
* API Reference</a></p>
*/
class AWS_STORAGEGATEWAY_API CreateStorediSCSIVolumeRequest : public StorageGatewayRequest
{
public:
CreateStorediSCSIVolumeRequest();
// 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 "CreateStorediSCSIVolume"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
inline const Aws::String& GetGatewayARN() const{ return m_gatewayARN; }
inline bool GatewayARNHasBeenSet() const { return m_gatewayARNHasBeenSet; }
inline void SetGatewayARN(const Aws::String& value) { m_gatewayARNHasBeenSet = true; m_gatewayARN = value; }
inline void SetGatewayARN(Aws::String&& value) { m_gatewayARNHasBeenSet = true; m_gatewayARN = std::move(value); }
inline void SetGatewayARN(const char* value) { m_gatewayARNHasBeenSet = true; m_gatewayARN.assign(value); }
inline CreateStorediSCSIVolumeRequest& WithGatewayARN(const Aws::String& value) { SetGatewayARN(value); return *this;}
inline CreateStorediSCSIVolumeRequest& WithGatewayARN(Aws::String&& value) { SetGatewayARN(std::move(value)); return *this;}
inline CreateStorediSCSIVolumeRequest& WithGatewayARN(const char* value) { SetGatewayARN(value); return *this;}
/**
* <p>The unique identifier for the gateway local disk that is configured as a
* stored volume. Use <a
* href="https://docs.aws.amazon.com/storagegateway/latest/userguide/API_ListLocalDisks.html">ListLocalDisks</a>
* to list disk IDs for a gateway.</p>
*/
inline const Aws::String& GetDiskId() const{ return m_diskId; }
/**
* <p>The unique identifier for the gateway local disk that is configured as a
* stored volume. Use <a
* href="https://docs.aws.amazon.com/storagegateway/latest/userguide/API_ListLocalDisks.html">ListLocalDisks</a>
* to list disk IDs for a gateway.</p>
*/
inline bool DiskIdHasBeenSet() const { return m_diskIdHasBeenSet; }
/**
* <p>The unique identifier for the gateway local disk that is configured as a
* stored volume. Use <a
* href="https://docs.aws.amazon.com/storagegateway/latest/userguide/API_ListLocalDisks.html">ListLocalDisks</a>
* to list disk IDs for a gateway.</p>
*/
inline void SetDiskId(const Aws::String& value) { m_diskIdHasBeenSet = true; m_diskId = value; }
/**
* <p>The unique identifier for the gateway local disk that is configured as a
* stored volume. Use <a
* href="https://docs.aws.amazon.com/storagegateway/latest/userguide/API_ListLocalDisks.html">ListLocalDisks</a>
* to list disk IDs for a gateway.</p>
*/
inline void SetDiskId(Aws::String&& value) { m_diskIdHasBeenSet = true; m_diskId = std::move(value); }
/**
* <p>The unique identifier for the gateway local disk that is configured as a
* stored volume. Use <a
* href="https://docs.aws.amazon.com/storagegateway/latest/userguide/API_ListLocalDisks.html">ListLocalDisks</a>
* to list disk IDs for a gateway.</p>
*/
inline void SetDiskId(const char* value) { m_diskIdHasBeenSet = true; m_diskId.assign(value); }
/**
* <p>The unique identifier for the gateway local disk that is configured as a
* stored volume. Use <a
* href="https://docs.aws.amazon.com/storagegateway/latest/userguide/API_ListLocalDisks.html">ListLocalDisks</a>
* to list disk IDs for a gateway.</p>
*/
inline CreateStorediSCSIVolumeRequest& WithDiskId(const Aws::String& value) { SetDiskId(value); return *this;}
/**
* <p>The unique identifier for the gateway local disk that is configured as a
* stored volume. Use <a
* href="https://docs.aws.amazon.com/storagegateway/latest/userguide/API_ListLocalDisks.html">ListLocalDisks</a>
* to list disk IDs for a gateway.</p>
*/
inline CreateStorediSCSIVolumeRequest& WithDiskId(Aws::String&& value) { SetDiskId(std::move(value)); return *this;}
/**
* <p>The unique identifier for the gateway local disk that is configured as a
* stored volume. Use <a
* href="https://docs.aws.amazon.com/storagegateway/latest/userguide/API_ListLocalDisks.html">ListLocalDisks</a>
* to list disk IDs for a gateway.</p>
*/
inline CreateStorediSCSIVolumeRequest& WithDiskId(const char* value) { SetDiskId(value); return *this;}
/**
* <p>The snapshot ID (e.g. "snap-1122aabb") of the snapshot to restore as the new
* stored volume. Specify this field if you want to create the iSCSI storage volume
* from a snapshot; otherwise, do not include this field. To list snapshots for
* your account use <a
* href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/ApiReference-query-DescribeSnapshots.html">DescribeSnapshots</a>
* in the <i>Amazon Elastic Compute Cloud API Reference</i>.</p>
*/
inline const Aws::String& GetSnapshotId() const{ return m_snapshotId; }
/**
* <p>The snapshot ID (e.g. "snap-1122aabb") of the snapshot to restore as the new
* stored volume. Specify this field if you want to create the iSCSI storage volume
* from a snapshot; otherwise, do not include this field. To list snapshots for
* your account use <a
* href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/ApiReference-query-DescribeSnapshots.html">DescribeSnapshots</a>
* in the <i>Amazon Elastic Compute Cloud API Reference</i>.</p>
*/
inline bool SnapshotIdHasBeenSet() const { return m_snapshotIdHasBeenSet; }
/**
* <p>The snapshot ID (e.g. "snap-1122aabb") of the snapshot to restore as the new
* stored volume. Specify this field if you want to create the iSCSI storage volume
* from a snapshot; otherwise, do not include this field. To list snapshots for
* your account use <a
* href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/ApiReference-query-DescribeSnapshots.html">DescribeSnapshots</a>
* in the <i>Amazon Elastic Compute Cloud API Reference</i>.</p>
*/
inline void SetSnapshotId(const Aws::String& value) { m_snapshotIdHasBeenSet = true; m_snapshotId = value; }
/**
* <p>The snapshot ID (e.g. "snap-1122aabb") of the snapshot to restore as the new
* stored volume. Specify this field if you want to create the iSCSI storage volume
* from a snapshot; otherwise, do not include this field. To list snapshots for
* your account use <a
* href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/ApiReference-query-DescribeSnapshots.html">DescribeSnapshots</a>
* in the <i>Amazon Elastic Compute Cloud API Reference</i>.</p>
*/
inline void SetSnapshotId(Aws::String&& value) { m_snapshotIdHasBeenSet = true; m_snapshotId = std::move(value); }
/**
* <p>The snapshot ID (e.g. "snap-1122aabb") of the snapshot to restore as the new
* stored volume. Specify this field if you want to create the iSCSI storage volume
* from a snapshot; otherwise, do not include this field. To list snapshots for
* your account use <a
* href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/ApiReference-query-DescribeSnapshots.html">DescribeSnapshots</a>
* in the <i>Amazon Elastic Compute Cloud API Reference</i>.</p>
*/
inline void SetSnapshotId(const char* value) { m_snapshotIdHasBeenSet = true; m_snapshotId.assign(value); }
/**
* <p>The snapshot ID (e.g. "snap-1122aabb") of the snapshot to restore as the new
* stored volume. Specify this field if you want to create the iSCSI storage volume
* from a snapshot; otherwise, do not include this field. To list snapshots for
* your account use <a
* href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/ApiReference-query-DescribeSnapshots.html">DescribeSnapshots</a>
* in the <i>Amazon Elastic Compute Cloud API Reference</i>.</p>
*/
inline CreateStorediSCSIVolumeRequest& WithSnapshotId(const Aws::String& value) { SetSnapshotId(value); return *this;}
/**
* <p>The snapshot ID (e.g. "snap-1122aabb") of the snapshot to restore as the new
* stored volume. Specify this field if you want to create the iSCSI storage volume
* from a snapshot; otherwise, do not include this field. To list snapshots for
* your account use <a
* href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/ApiReference-query-DescribeSnapshots.html">DescribeSnapshots</a>
* in the <i>Amazon Elastic Compute Cloud API Reference</i>.</p>
*/
inline CreateStorediSCSIVolumeRequest& WithSnapshotId(Aws::String&& value) { SetSnapshotId(std::move(value)); return *this;}
/**
* <p>The snapshot ID (e.g. "snap-1122aabb") of the snapshot to restore as the new
* stored volume. Specify this field if you want to create the iSCSI storage volume
* from a snapshot; otherwise, do not include this field. To list snapshots for
* your account use <a
* href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/ApiReference-query-DescribeSnapshots.html">DescribeSnapshots</a>
* in the <i>Amazon Elastic Compute Cloud API Reference</i>.</p>
*/
inline CreateStorediSCSIVolumeRequest& WithSnapshotId(const char* value) { SetSnapshotId(value); return *this;}
/**
* <p>Set to true <code>true</code> if you want to preserve the data on the local
* disk. Otherwise, set to <code>false</code> to create an empty volume.</p>
* <p>Valid Values: <code>true</code> | <code>false</code> </p>
*/
inline bool GetPreserveExistingData() const{ return m_preserveExistingData; }
/**
* <p>Set to true <code>true</code> if you want to preserve the data on the local
* disk. Otherwise, set to <code>false</code> to create an empty volume.</p>
* <p>Valid Values: <code>true</code> | <code>false</code> </p>
*/
inline bool PreserveExistingDataHasBeenSet() const { return m_preserveExistingDataHasBeenSet; }
/**
* <p>Set to true <code>true</code> if you want to preserve the data on the local
* disk. Otherwise, set to <code>false</code> to create an empty volume.</p>
* <p>Valid Values: <code>true</code> | <code>false</code> </p>
*/
inline void SetPreserveExistingData(bool value) { m_preserveExistingDataHasBeenSet = true; m_preserveExistingData = value; }
/**
* <p>Set to true <code>true</code> if you want to preserve the data on the local
* disk. Otherwise, set to <code>false</code> to create an empty volume.</p>
* <p>Valid Values: <code>true</code> | <code>false</code> </p>
*/
inline CreateStorediSCSIVolumeRequest& WithPreserveExistingData(bool value) { SetPreserveExistingData(value); return *this;}
/**
* <p>The name of the iSCSI target used by an initiator to connect to a volume and
* used as a suffix for the target ARN. For example, specifying
* <code>TargetName</code> as <i>myvolume</i> results in the target ARN of
* <code>arn:aws:storagegateway:us-east-2:111122223333:gateway/sgw-12A3456B/target/iqn.1997-05.com.amazon:myvolume</code>.
* The target name must be unique across all volumes on a gateway.</p> <p>If you
* don't specify a value, Storage Gateway uses the value that was previously used
* for this volume as the new target name.</p>
*/
inline const Aws::String& GetTargetName() const{ return m_targetName; }
/**
* <p>The name of the iSCSI target used by an initiator to connect to a volume and
* used as a suffix for the target ARN. For example, specifying
* <code>TargetName</code> as <i>myvolume</i> results in the target ARN of
* <code>arn:aws:storagegateway:us-east-2:111122223333:gateway/sgw-12A3456B/target/iqn.1997-05.com.amazon:myvolume</code>.
* The target name must be unique across all volumes on a gateway.</p> <p>If you
* don't specify a value, Storage Gateway uses the value that was previously used
* for this volume as the new target name.</p>
*/
inline bool TargetNameHasBeenSet() const { return m_targetNameHasBeenSet; }
/**
* <p>The name of the iSCSI target used by an initiator to connect to a volume and
* used as a suffix for the target ARN. For example, specifying
* <code>TargetName</code> as <i>myvolume</i> results in the target ARN of
* <code>arn:aws:storagegateway:us-east-2:111122223333:gateway/sgw-12A3456B/target/iqn.1997-05.com.amazon:myvolume</code>.
* The target name must be unique across all volumes on a gateway.</p> <p>If you
* don't specify a value, Storage Gateway uses the value that was previously used
* for this volume as the new target name.</p>
*/
inline void SetTargetName(const Aws::String& value) { m_targetNameHasBeenSet = true; m_targetName = value; }
/**
* <p>The name of the iSCSI target used by an initiator to connect to a volume and
* used as a suffix for the target ARN. For example, specifying
* <code>TargetName</code> as <i>myvolume</i> results in the target ARN of
* <code>arn:aws:storagegateway:us-east-2:111122223333:gateway/sgw-12A3456B/target/iqn.1997-05.com.amazon:myvolume</code>.
* The target name must be unique across all volumes on a gateway.</p> <p>If you
* don't specify a value, Storage Gateway uses the value that was previously used
* for this volume as the new target name.</p>
*/
inline void SetTargetName(Aws::String&& value) { m_targetNameHasBeenSet = true; m_targetName = std::move(value); }
/**
* <p>The name of the iSCSI target used by an initiator to connect to a volume and
* used as a suffix for the target ARN. For example, specifying
* <code>TargetName</code> as <i>myvolume</i> results in the target ARN of
* <code>arn:aws:storagegateway:us-east-2:111122223333:gateway/sgw-12A3456B/target/iqn.1997-05.com.amazon:myvolume</code>.
* The target name must be unique across all volumes on a gateway.</p> <p>If you
* don't specify a value, Storage Gateway uses the value that was previously used
* for this volume as the new target name.</p>
*/
inline void SetTargetName(const char* value) { m_targetNameHasBeenSet = true; m_targetName.assign(value); }
/**
* <p>The name of the iSCSI target used by an initiator to connect to a volume and
* used as a suffix for the target ARN. For example, specifying
* <code>TargetName</code> as <i>myvolume</i> results in the target ARN of
* <code>arn:aws:storagegateway:us-east-2:111122223333:gateway/sgw-12A3456B/target/iqn.1997-05.com.amazon:myvolume</code>.
* The target name must be unique across all volumes on a gateway.</p> <p>If you
* don't specify a value, Storage Gateway uses the value that was previously used
* for this volume as the new target name.</p>
*/
inline CreateStorediSCSIVolumeRequest& WithTargetName(const Aws::String& value) { SetTargetName(value); return *this;}
/**
* <p>The name of the iSCSI target used by an initiator to connect to a volume and
* used as a suffix for the target ARN. For example, specifying
* <code>TargetName</code> as <i>myvolume</i> results in the target ARN of
* <code>arn:aws:storagegateway:us-east-2:111122223333:gateway/sgw-12A3456B/target/iqn.1997-05.com.amazon:myvolume</code>.
* The target name must be unique across all volumes on a gateway.</p> <p>If you
* don't specify a value, Storage Gateway uses the value that was previously used
* for this volume as the new target name.</p>
*/
inline CreateStorediSCSIVolumeRequest& WithTargetName(Aws::String&& value) { SetTargetName(std::move(value)); return *this;}
/**
* <p>The name of the iSCSI target used by an initiator to connect to a volume and
* used as a suffix for the target ARN. For example, specifying
* <code>TargetName</code> as <i>myvolume</i> results in the target ARN of
* <code>arn:aws:storagegateway:us-east-2:111122223333:gateway/sgw-12A3456B/target/iqn.1997-05.com.amazon:myvolume</code>.
* The target name must be unique across all volumes on a gateway.</p> <p>If you
* don't specify a value, Storage Gateway uses the value that was previously used
* for this volume as the new target name.</p>
*/
inline CreateStorediSCSIVolumeRequest& WithTargetName(const char* value) { SetTargetName(value); return *this;}
/**
* <p>The network interface of the gateway on which to expose the iSCSI target.
* Only IPv4 addresses are accepted. Use <a>DescribeGatewayInformation</a> to get a
* list of the network interfaces available on a gateway.</p> <p>Valid Values: A
* valid IP address.</p>
*/
inline const Aws::String& GetNetworkInterfaceId() const{ return m_networkInterfaceId; }
/**
* <p>The network interface of the gateway on which to expose the iSCSI target.
* Only IPv4 addresses are accepted. Use <a>DescribeGatewayInformation</a> to get a
* list of the network interfaces available on a gateway.</p> <p>Valid Values: A
* valid IP address.</p>
*/
inline bool NetworkInterfaceIdHasBeenSet() const { return m_networkInterfaceIdHasBeenSet; }
/**
* <p>The network interface of the gateway on which to expose the iSCSI target.
* Only IPv4 addresses are accepted. Use <a>DescribeGatewayInformation</a> to get a
* list of the network interfaces available on a gateway.</p> <p>Valid Values: A
* valid IP address.</p>
*/
inline void SetNetworkInterfaceId(const Aws::String& value) { m_networkInterfaceIdHasBeenSet = true; m_networkInterfaceId = value; }
/**
* <p>The network interface of the gateway on which to expose the iSCSI target.
* Only IPv4 addresses are accepted. Use <a>DescribeGatewayInformation</a> to get a
* list of the network interfaces available on a gateway.</p> <p>Valid Values: A
* valid IP address.</p>
*/
inline void SetNetworkInterfaceId(Aws::String&& value) { m_networkInterfaceIdHasBeenSet = true; m_networkInterfaceId = std::move(value); }
/**
* <p>The network interface of the gateway on which to expose the iSCSI target.
* Only IPv4 addresses are accepted. Use <a>DescribeGatewayInformation</a> to get a
* list of the network interfaces available on a gateway.</p> <p>Valid Values: A
* valid IP address.</p>
*/
inline void SetNetworkInterfaceId(const char* value) { m_networkInterfaceIdHasBeenSet = true; m_networkInterfaceId.assign(value); }
/**
* <p>The network interface of the gateway on which to expose the iSCSI target.
* Only IPv4 addresses are accepted. Use <a>DescribeGatewayInformation</a> to get a
* list of the network interfaces available on a gateway.</p> <p>Valid Values: A
* valid IP address.</p>
*/
inline CreateStorediSCSIVolumeRequest& WithNetworkInterfaceId(const Aws::String& value) { SetNetworkInterfaceId(value); return *this;}
/**
* <p>The network interface of the gateway on which to expose the iSCSI target.
* Only IPv4 addresses are accepted. Use <a>DescribeGatewayInformation</a> to get a
* list of the network interfaces available on a gateway.</p> <p>Valid Values: A
* valid IP address.</p>
*/
inline CreateStorediSCSIVolumeRequest& WithNetworkInterfaceId(Aws::String&& value) { SetNetworkInterfaceId(std::move(value)); return *this;}
/**
* <p>The network interface of the gateway on which to expose the iSCSI target.
* Only IPv4 addresses are accepted. Use <a>DescribeGatewayInformation</a> to get a
* list of the network interfaces available on a gateway.</p> <p>Valid Values: A
* valid IP address.</p>
*/
inline CreateStorediSCSIVolumeRequest& WithNetworkInterfaceId(const char* value) { SetNetworkInterfaceId(value); return *this;}
/**
* <p>Set to <code>true</code> to use Amazon S3 server-side encryption with your
* own AWS KMS key, or <code>false</code> to use a key managed by Amazon S3.
* Optional.</p> <p>Valid Values: <code>true</code> | <code>false</code> </p>
*/
inline bool GetKMSEncrypted() const{ return m_kMSEncrypted; }
/**
* <p>Set to <code>true</code> to use Amazon S3 server-side encryption with your
* own AWS KMS key, or <code>false</code> to use a key managed by Amazon S3.
* Optional.</p> <p>Valid Values: <code>true</code> | <code>false</code> </p>
*/
inline bool KMSEncryptedHasBeenSet() const { return m_kMSEncryptedHasBeenSet; }
/**
* <p>Set to <code>true</code> to use Amazon S3 server-side encryption with your
* own AWS KMS key, or <code>false</code> to use a key managed by Amazon S3.
* Optional.</p> <p>Valid Values: <code>true</code> | <code>false</code> </p>
*/
inline void SetKMSEncrypted(bool value) { m_kMSEncryptedHasBeenSet = true; m_kMSEncrypted = value; }
/**
* <p>Set to <code>true</code> to use Amazon S3 server-side encryption with your
* own AWS KMS key, or <code>false</code> to use a key managed by Amazon S3.
* Optional.</p> <p>Valid Values: <code>true</code> | <code>false</code> </p>
*/
inline CreateStorediSCSIVolumeRequest& WithKMSEncrypted(bool value) { SetKMSEncrypted(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of a symmetric customer master key (CMK) used
* for Amazon S3 server-side encryption. Storage Gateway does not support
* asymmetric CMKs. This value can only be set when <code>KMSEncrypted</code> is
* <code>true</code>. Optional.</p>
*/
inline const Aws::String& GetKMSKey() const{ return m_kMSKey; }
/**
* <p>The Amazon Resource Name (ARN) of a symmetric customer master key (CMK) used
* for Amazon S3 server-side encryption. Storage Gateway does not support
* asymmetric CMKs. This value can only be set when <code>KMSEncrypted</code> is
* <code>true</code>. Optional.</p>
*/
inline bool KMSKeyHasBeenSet() const { return m_kMSKeyHasBeenSet; }
/**
* <p>The Amazon Resource Name (ARN) of a symmetric customer master key (CMK) used
* for Amazon S3 server-side encryption. Storage Gateway does not support
* asymmetric CMKs. This value can only be set when <code>KMSEncrypted</code> is
* <code>true</code>. Optional.</p>
*/
inline void SetKMSKey(const Aws::String& value) { m_kMSKeyHasBeenSet = true; m_kMSKey = value; }
/**
* <p>The Amazon Resource Name (ARN) of a symmetric customer master key (CMK) used
* for Amazon S3 server-side encryption. Storage Gateway does not support
* asymmetric CMKs. This value can only be set when <code>KMSEncrypted</code> is
* <code>true</code>. Optional.</p>
*/
inline void SetKMSKey(Aws::String&& value) { m_kMSKeyHasBeenSet = true; m_kMSKey = std::move(value); }
/**
* <p>The Amazon Resource Name (ARN) of a symmetric customer master key (CMK) used
* for Amazon S3 server-side encryption. Storage Gateway does not support
* asymmetric CMKs. This value can only be set when <code>KMSEncrypted</code> is
* <code>true</code>. Optional.</p>
*/
inline void SetKMSKey(const char* value) { m_kMSKeyHasBeenSet = true; m_kMSKey.assign(value); }
/**
* <p>The Amazon Resource Name (ARN) of a symmetric customer master key (CMK) used
* for Amazon S3 server-side encryption. Storage Gateway does not support
* asymmetric CMKs. This value can only be set when <code>KMSEncrypted</code> is
* <code>true</code>. Optional.</p>
*/
inline CreateStorediSCSIVolumeRequest& WithKMSKey(const Aws::String& value) { SetKMSKey(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of a symmetric customer master key (CMK) used
* for Amazon S3 server-side encryption. Storage Gateway does not support
* asymmetric CMKs. This value can only be set when <code>KMSEncrypted</code> is
* <code>true</code>. Optional.</p>
*/
inline CreateStorediSCSIVolumeRequest& WithKMSKey(Aws::String&& value) { SetKMSKey(std::move(value)); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of a symmetric customer master key (CMK) used
* for Amazon S3 server-side encryption. Storage Gateway does not support
* asymmetric CMKs. This value can only be set when <code>KMSEncrypted</code> is
* <code>true</code>. Optional.</p>
*/
inline CreateStorediSCSIVolumeRequest& WithKMSKey(const char* value) { SetKMSKey(value); return *this;}
/**
* <p>A list of up to 50 tags that can be assigned to a stored volume. Each tag is
* a key-value pair.</p> <p>Valid characters for key and value are letters,
* spaces, and numbers representable in UTF-8 format, and the following special
* characters: + - = . _ : / @. The maximum length of a tag's key is 128
* characters, and the maximum length for a tag's value is 256.</p>
*/
inline const Aws::Vector<Tag>& GetTags() const{ return m_tags; }
/**
* <p>A list of up to 50 tags that can be assigned to a stored volume. Each tag is
* a key-value pair.</p> <p>Valid characters for key and value are letters,
* spaces, and numbers representable in UTF-8 format, and the following special
* characters: + - = . _ : / @. The maximum length of a tag's key is 128
* characters, and the maximum length for a tag's value is 256.</p>
*/
inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
/**
* <p>A list of up to 50 tags that can be assigned to a stored volume. Each tag is
* a key-value pair.</p> <p>Valid characters for key and value are letters,
* spaces, and numbers representable in UTF-8 format, and the following special
* characters: + - = . _ : / @. The maximum length of a tag's key is 128
* characters, and the maximum length for a tag's value is 256.</p>
*/
inline void SetTags(const Aws::Vector<Tag>& value) { m_tagsHasBeenSet = true; m_tags = value; }
/**
* <p>A list of up to 50 tags that can be assigned to a stored volume. Each tag is
* a key-value pair.</p> <p>Valid characters for key and value are letters,
* spaces, and numbers representable in UTF-8 format, and the following special
* characters: + - = . _ : / @. The maximum length of a tag's key is 128
* characters, and the maximum length for a tag's value is 256.</p>
*/
inline void SetTags(Aws::Vector<Tag>&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); }
/**
* <p>A list of up to 50 tags that can be assigned to a stored volume. Each tag is
* a key-value pair.</p> <p>Valid characters for key and value are letters,
* spaces, and numbers representable in UTF-8 format, and the following special
* characters: + - = . _ : / @. The maximum length of a tag's key is 128
* characters, and the maximum length for a tag's value is 256.</p>
*/
inline CreateStorediSCSIVolumeRequest& WithTags(const Aws::Vector<Tag>& value) { SetTags(value); return *this;}
/**
* <p>A list of up to 50 tags that can be assigned to a stored volume. Each tag is
* a key-value pair.</p> <p>Valid characters for key and value are letters,
* spaces, and numbers representable in UTF-8 format, and the following special
* characters: + - = . _ : / @. The maximum length of a tag's key is 128
* characters, and the maximum length for a tag's value is 256.</p>
*/
inline CreateStorediSCSIVolumeRequest& WithTags(Aws::Vector<Tag>&& value) { SetTags(std::move(value)); return *this;}
/**
* <p>A list of up to 50 tags that can be assigned to a stored volume. Each tag is
* a key-value pair.</p> <p>Valid characters for key and value are letters,
* spaces, and numbers representable in UTF-8 format, and the following special
* characters: + - = . _ : / @. The maximum length of a tag's key is 128
* characters, and the maximum length for a tag's value is 256.</p>
*/
inline CreateStorediSCSIVolumeRequest& AddTags(const Tag& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; }
/**
* <p>A list of up to 50 tags that can be assigned to a stored volume. Each tag is
* a key-value pair.</p> <p>Valid characters for key and value are letters,
* spaces, and numbers representable in UTF-8 format, and the following special
* characters: + - = . _ : / @. The maximum length of a tag's key is 128
* characters, and the maximum length for a tag's value is 256.</p>
*/
inline CreateStorediSCSIVolumeRequest& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; }
private:
Aws::String m_gatewayARN;
bool m_gatewayARNHasBeenSet;
Aws::String m_diskId;
bool m_diskIdHasBeenSet;
Aws::String m_snapshotId;
bool m_snapshotIdHasBeenSet;
bool m_preserveExistingData;
bool m_preserveExistingDataHasBeenSet;
Aws::String m_targetName;
bool m_targetNameHasBeenSet;
Aws::String m_networkInterfaceId;
bool m_networkInterfaceIdHasBeenSet;
bool m_kMSEncrypted;
bool m_kMSEncryptedHasBeenSet;
Aws::String m_kMSKey;
bool m_kMSKeyHasBeenSet;
Aws::Vector<Tag> m_tags;
bool m_tagsHasBeenSet;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,145 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace StorageGateway
{
namespace Model
{
/**
* <p>A JSON object containing the following fields:</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/CreateStorediSCSIVolumeOutput">AWS
* API Reference</a></p>
*/
class AWS_STORAGEGATEWAY_API CreateStorediSCSIVolumeResult
{
public:
CreateStorediSCSIVolumeResult();
CreateStorediSCSIVolumeResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
CreateStorediSCSIVolumeResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>The Amazon Resource Name (ARN) of the configured volume.</p>
*/
inline const Aws::String& GetVolumeARN() const{ return m_volumeARN; }
/**
* <p>The Amazon Resource Name (ARN) of the configured volume.</p>
*/
inline void SetVolumeARN(const Aws::String& value) { m_volumeARN = value; }
/**
* <p>The Amazon Resource Name (ARN) of the configured volume.</p>
*/
inline void SetVolumeARN(Aws::String&& value) { m_volumeARN = std::move(value); }
/**
* <p>The Amazon Resource Name (ARN) of the configured volume.</p>
*/
inline void SetVolumeARN(const char* value) { m_volumeARN.assign(value); }
/**
* <p>The Amazon Resource Name (ARN) of the configured volume.</p>
*/
inline CreateStorediSCSIVolumeResult& WithVolumeARN(const Aws::String& value) { SetVolumeARN(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the configured volume.</p>
*/
inline CreateStorediSCSIVolumeResult& WithVolumeARN(Aws::String&& value) { SetVolumeARN(std::move(value)); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the configured volume.</p>
*/
inline CreateStorediSCSIVolumeResult& WithVolumeARN(const char* value) { SetVolumeARN(value); return *this;}
/**
* <p>The size of the volume in bytes.</p>
*/
inline long long GetVolumeSizeInBytes() const{ return m_volumeSizeInBytes; }
/**
* <p>The size of the volume in bytes.</p>
*/
inline void SetVolumeSizeInBytes(long long value) { m_volumeSizeInBytes = value; }
/**
* <p>The size of the volume in bytes.</p>
*/
inline CreateStorediSCSIVolumeResult& WithVolumeSizeInBytes(long long value) { SetVolumeSizeInBytes(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the volume target, which includes the iSCSI
* name that initiators can use to connect to the target.</p>
*/
inline const Aws::String& GetTargetARN() const{ return m_targetARN; }
/**
* <p>The Amazon Resource Name (ARN) of the volume target, which includes the iSCSI
* name that initiators can use to connect to the target.</p>
*/
inline void SetTargetARN(const Aws::String& value) { m_targetARN = value; }
/**
* <p>The Amazon Resource Name (ARN) of the volume target, which includes the iSCSI
* name that initiators can use to connect to the target.</p>
*/
inline void SetTargetARN(Aws::String&& value) { m_targetARN = std::move(value); }
/**
* <p>The Amazon Resource Name (ARN) of the volume target, which includes the iSCSI
* name that initiators can use to connect to the target.</p>
*/
inline void SetTargetARN(const char* value) { m_targetARN.assign(value); }
/**
* <p>The Amazon Resource Name (ARN) of the volume target, which includes the iSCSI
* name that initiators can use to connect to the target.</p>
*/
inline CreateStorediSCSIVolumeResult& WithTargetARN(const Aws::String& value) { SetTargetARN(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the volume target, which includes the iSCSI
* name that initiators can use to connect to the target.</p>
*/
inline CreateStorediSCSIVolumeResult& WithTargetARN(Aws::String&& value) { SetTargetARN(std::move(value)); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the volume target, which includes the iSCSI
* name that initiators can use to connect to the target.</p>
*/
inline CreateStorediSCSIVolumeResult& WithTargetARN(const char* value) { SetTargetARN(value); return *this;}
private:
Aws::String m_volumeARN;
long long m_volumeSizeInBytes;
Aws::String m_targetARN;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,303 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/storagegateway/StorageGatewayRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/storagegateway/model/TapeStorageClass.h>
#include <aws/storagegateway/model/RetentionLockType.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/storagegateway/model/Tag.h>
#include <utility>
namespace Aws
{
namespace StorageGateway
{
namespace Model
{
/**
*/
class AWS_STORAGEGATEWAY_API CreateTapePoolRequest : public StorageGatewayRequest
{
public:
CreateTapePoolRequest();
// 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 "CreateTapePool"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
/**
* <p>The name of the new custom tape pool.</p>
*/
inline const Aws::String& GetPoolName() const{ return m_poolName; }
/**
* <p>The name of the new custom tape pool.</p>
*/
inline bool PoolNameHasBeenSet() const { return m_poolNameHasBeenSet; }
/**
* <p>The name of the new custom tape pool.</p>
*/
inline void SetPoolName(const Aws::String& value) { m_poolNameHasBeenSet = true; m_poolName = value; }
/**
* <p>The name of the new custom tape pool.</p>
*/
inline void SetPoolName(Aws::String&& value) { m_poolNameHasBeenSet = true; m_poolName = std::move(value); }
/**
* <p>The name of the new custom tape pool.</p>
*/
inline void SetPoolName(const char* value) { m_poolNameHasBeenSet = true; m_poolName.assign(value); }
/**
* <p>The name of the new custom tape pool.</p>
*/
inline CreateTapePoolRequest& WithPoolName(const Aws::String& value) { SetPoolName(value); return *this;}
/**
* <p>The name of the new custom tape pool.</p>
*/
inline CreateTapePoolRequest& WithPoolName(Aws::String&& value) { SetPoolName(std::move(value)); return *this;}
/**
* <p>The name of the new custom tape pool.</p>
*/
inline CreateTapePoolRequest& WithPoolName(const char* value) { SetPoolName(value); return *this;}
/**
* <p>The storage class that is associated with the new custom pool. When you use
* your backup application to eject the tape, the tape is archived directly into
* the storage class (S3 Glacier or S3 Glacier Deep Archive) that corresponds to
* the pool.</p>
*/
inline const TapeStorageClass& GetStorageClass() const{ return m_storageClass; }
/**
* <p>The storage class that is associated with the new custom pool. When you use
* your backup application to eject the tape, the tape is archived directly into
* the storage class (S3 Glacier or S3 Glacier Deep Archive) that corresponds to
* the pool.</p>
*/
inline bool StorageClassHasBeenSet() const { return m_storageClassHasBeenSet; }
/**
* <p>The storage class that is associated with the new custom pool. When you use
* your backup application to eject the tape, the tape is archived directly into
* the storage class (S3 Glacier or S3 Glacier Deep Archive) that corresponds to
* the pool.</p>
*/
inline void SetStorageClass(const TapeStorageClass& value) { m_storageClassHasBeenSet = true; m_storageClass = value; }
/**
* <p>The storage class that is associated with the new custom pool. When you use
* your backup application to eject the tape, the tape is archived directly into
* the storage class (S3 Glacier or S3 Glacier Deep Archive) that corresponds to
* the pool.</p>
*/
inline void SetStorageClass(TapeStorageClass&& value) { m_storageClassHasBeenSet = true; m_storageClass = std::move(value); }
/**
* <p>The storage class that is associated with the new custom pool. When you use
* your backup application to eject the tape, the tape is archived directly into
* the storage class (S3 Glacier or S3 Glacier Deep Archive) that corresponds to
* the pool.</p>
*/
inline CreateTapePoolRequest& WithStorageClass(const TapeStorageClass& value) { SetStorageClass(value); return *this;}
/**
* <p>The storage class that is associated with the new custom pool. When you use
* your backup application to eject the tape, the tape is archived directly into
* the storage class (S3 Glacier or S3 Glacier Deep Archive) that corresponds to
* the pool.</p>
*/
inline CreateTapePoolRequest& WithStorageClass(TapeStorageClass&& value) { SetStorageClass(std::move(value)); return *this;}
/**
* <p>Tape retention lock can be configured in two modes. When configured in
* governance mode, AWS accounts with specific IAM permissions are authorized to
* remove the tape retention lock from archived virtual tapes. When configured in
* compliance mode, the tape retention lock cannot be removed by any user,
* including the root AWS account.</p>
*/
inline const RetentionLockType& GetRetentionLockType() const{ return m_retentionLockType; }
/**
* <p>Tape retention lock can be configured in two modes. When configured in
* governance mode, AWS accounts with specific IAM permissions are authorized to
* remove the tape retention lock from archived virtual tapes. When configured in
* compliance mode, the tape retention lock cannot be removed by any user,
* including the root AWS account.</p>
*/
inline bool RetentionLockTypeHasBeenSet() const { return m_retentionLockTypeHasBeenSet; }
/**
* <p>Tape retention lock can be configured in two modes. When configured in
* governance mode, AWS accounts with specific IAM permissions are authorized to
* remove the tape retention lock from archived virtual tapes. When configured in
* compliance mode, the tape retention lock cannot be removed by any user,
* including the root AWS account.</p>
*/
inline void SetRetentionLockType(const RetentionLockType& value) { m_retentionLockTypeHasBeenSet = true; m_retentionLockType = value; }
/**
* <p>Tape retention lock can be configured in two modes. When configured in
* governance mode, AWS accounts with specific IAM permissions are authorized to
* remove the tape retention lock from archived virtual tapes. When configured in
* compliance mode, the tape retention lock cannot be removed by any user,
* including the root AWS account.</p>
*/
inline void SetRetentionLockType(RetentionLockType&& value) { m_retentionLockTypeHasBeenSet = true; m_retentionLockType = std::move(value); }
/**
* <p>Tape retention lock can be configured in two modes. When configured in
* governance mode, AWS accounts with specific IAM permissions are authorized to
* remove the tape retention lock from archived virtual tapes. When configured in
* compliance mode, the tape retention lock cannot be removed by any user,
* including the root AWS account.</p>
*/
inline CreateTapePoolRequest& WithRetentionLockType(const RetentionLockType& value) { SetRetentionLockType(value); return *this;}
/**
* <p>Tape retention lock can be configured in two modes. When configured in
* governance mode, AWS accounts with specific IAM permissions are authorized to
* remove the tape retention lock from archived virtual tapes. When configured in
* compliance mode, the tape retention lock cannot be removed by any user,
* including the root AWS account.</p>
*/
inline CreateTapePoolRequest& WithRetentionLockType(RetentionLockType&& value) { SetRetentionLockType(std::move(value)); return *this;}
/**
* <p>Tape retention lock time is set in days. Tape retention lock can be enabled
* for up to 100 years (36,500 days).</p>
*/
inline int GetRetentionLockTimeInDays() const{ return m_retentionLockTimeInDays; }
/**
* <p>Tape retention lock time is set in days. Tape retention lock can be enabled
* for up to 100 years (36,500 days).</p>
*/
inline bool RetentionLockTimeInDaysHasBeenSet() const { return m_retentionLockTimeInDaysHasBeenSet; }
/**
* <p>Tape retention lock time is set in days. Tape retention lock can be enabled
* for up to 100 years (36,500 days).</p>
*/
inline void SetRetentionLockTimeInDays(int value) { m_retentionLockTimeInDaysHasBeenSet = true; m_retentionLockTimeInDays = value; }
/**
* <p>Tape retention lock time is set in days. Tape retention lock can be enabled
* for up to 100 years (36,500 days).</p>
*/
inline CreateTapePoolRequest& WithRetentionLockTimeInDays(int value) { SetRetentionLockTimeInDays(value); return *this;}
/**
* <p>A list of up to 50 tags that can be assigned to tape pool. Each tag is a
* key-value pair.</p> <p>Valid characters for key and value are letters,
* spaces, and numbers representable in UTF-8 format, and the following special
* characters: + - = . _ : / @. The maximum length of a tag's key is 128
* characters, and the maximum length for a tag's value is 256.</p>
*/
inline const Aws::Vector<Tag>& GetTags() const{ return m_tags; }
/**
* <p>A list of up to 50 tags that can be assigned to tape pool. Each tag is a
* key-value pair.</p> <p>Valid characters for key and value are letters,
* spaces, and numbers representable in UTF-8 format, and the following special
* characters: + - = . _ : / @. The maximum length of a tag's key is 128
* characters, and the maximum length for a tag's value is 256.</p>
*/
inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
/**
* <p>A list of up to 50 tags that can be assigned to tape pool. Each tag is a
* key-value pair.</p> <p>Valid characters for key and value are letters,
* spaces, and numbers representable in UTF-8 format, and the following special
* characters: + - = . _ : / @. The maximum length of a tag's key is 128
* characters, and the maximum length for a tag's value is 256.</p>
*/
inline void SetTags(const Aws::Vector<Tag>& value) { m_tagsHasBeenSet = true; m_tags = value; }
/**
* <p>A list of up to 50 tags that can be assigned to tape pool. Each tag is a
* key-value pair.</p> <p>Valid characters for key and value are letters,
* spaces, and numbers representable in UTF-8 format, and the following special
* characters: + - = . _ : / @. The maximum length of a tag's key is 128
* characters, and the maximum length for a tag's value is 256.</p>
*/
inline void SetTags(Aws::Vector<Tag>&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); }
/**
* <p>A list of up to 50 tags that can be assigned to tape pool. Each tag is a
* key-value pair.</p> <p>Valid characters for key and value are letters,
* spaces, and numbers representable in UTF-8 format, and the following special
* characters: + - = . _ : / @. The maximum length of a tag's key is 128
* characters, and the maximum length for a tag's value is 256.</p>
*/
inline CreateTapePoolRequest& WithTags(const Aws::Vector<Tag>& value) { SetTags(value); return *this;}
/**
* <p>A list of up to 50 tags that can be assigned to tape pool. Each tag is a
* key-value pair.</p> <p>Valid characters for key and value are letters,
* spaces, and numbers representable in UTF-8 format, and the following special
* characters: + - = . _ : / @. The maximum length of a tag's key is 128
* characters, and the maximum length for a tag's value is 256.</p>
*/
inline CreateTapePoolRequest& WithTags(Aws::Vector<Tag>&& value) { SetTags(std::move(value)); return *this;}
/**
* <p>A list of up to 50 tags that can be assigned to tape pool. Each tag is a
* key-value pair.</p> <p>Valid characters for key and value are letters,
* spaces, and numbers representable in UTF-8 format, and the following special
* characters: + - = . _ : / @. The maximum length of a tag's key is 128
* characters, and the maximum length for a tag's value is 256.</p>
*/
inline CreateTapePoolRequest& AddTags(const Tag& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; }
/**
* <p>A list of up to 50 tags that can be assigned to tape pool. Each tag is a
* key-value pair.</p> <p>Valid characters for key and value are letters,
* spaces, and numbers representable in UTF-8 format, and the following special
* characters: + - = . _ : / @. The maximum length of a tag's key is 128
* characters, and the maximum length for a tag's value is 256.</p>
*/
inline CreateTapePoolRequest& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; }
private:
Aws::String m_poolName;
bool m_poolNameHasBeenSet;
TapeStorageClass m_storageClass;
bool m_storageClassHasBeenSet;
RetentionLockType m_retentionLockType;
bool m_retentionLockTypeHasBeenSet;
int m_retentionLockTimeInDays;
bool m_retentionLockTimeInDaysHasBeenSet;
Aws::Vector<Tag> m_tags;
bool m_tagsHasBeenSet;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,91 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace StorageGateway
{
namespace Model
{
class AWS_STORAGEGATEWAY_API CreateTapePoolResult
{
public:
CreateTapePoolResult();
CreateTapePoolResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
CreateTapePoolResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>The unique Amazon Resource Name (ARN) that represents the custom tape pool.
* Use the <a>ListTapePools</a> operation to return a list of tape pools for your
* account and AWS Region.</p>
*/
inline const Aws::String& GetPoolARN() const{ return m_poolARN; }
/**
* <p>The unique Amazon Resource Name (ARN) that represents the custom tape pool.
* Use the <a>ListTapePools</a> operation to return a list of tape pools for your
* account and AWS Region.</p>
*/
inline void SetPoolARN(const Aws::String& value) { m_poolARN = value; }
/**
* <p>The unique Amazon Resource Name (ARN) that represents the custom tape pool.
* Use the <a>ListTapePools</a> operation to return a list of tape pools for your
* account and AWS Region.</p>
*/
inline void SetPoolARN(Aws::String&& value) { m_poolARN = std::move(value); }
/**
* <p>The unique Amazon Resource Name (ARN) that represents the custom tape pool.
* Use the <a>ListTapePools</a> operation to return a list of tape pools for your
* account and AWS Region.</p>
*/
inline void SetPoolARN(const char* value) { m_poolARN.assign(value); }
/**
* <p>The unique Amazon Resource Name (ARN) that represents the custom tape pool.
* Use the <a>ListTapePools</a> operation to return a list of tape pools for your
* account and AWS Region.</p>
*/
inline CreateTapePoolResult& WithPoolARN(const Aws::String& value) { SetPoolARN(value); return *this;}
/**
* <p>The unique Amazon Resource Name (ARN) that represents the custom tape pool.
* Use the <a>ListTapePools</a> operation to return a list of tape pools for your
* account and AWS Region.</p>
*/
inline CreateTapePoolResult& WithPoolARN(Aws::String&& value) { SetPoolARN(std::move(value)); return *this;}
/**
* <p>The unique Amazon Resource Name (ARN) that represents the custom tape pool.
* Use the <a>ListTapePools</a> operation to return a list of tape pools for your
* account and AWS Region.</p>
*/
inline CreateTapePoolResult& WithPoolARN(const char* value) { SetPoolARN(value); return *this;}
private:
Aws::String m_poolARN;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,490 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/storagegateway/StorageGatewayRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/storagegateway/model/Tag.h>
#include <utility>
namespace Aws
{
namespace StorageGateway
{
namespace Model
{
/**
* <p>CreateTapeWithBarcodeInput</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/CreateTapeWithBarcodeInput">AWS
* API Reference</a></p>
*/
class AWS_STORAGEGATEWAY_API CreateTapeWithBarcodeRequest : public StorageGatewayRequest
{
public:
CreateTapeWithBarcodeRequest();
// 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 "CreateTapeWithBarcode"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
/**
* <p>The unique Amazon Resource Name (ARN) that represents the gateway to
* associate the virtual tape with. Use the <a>ListGateways</a> operation to return
* a list of gateways for your account and AWS Region.</p>
*/
inline const Aws::String& GetGatewayARN() const{ return m_gatewayARN; }
/**
* <p>The unique Amazon Resource Name (ARN) that represents the gateway to
* associate the virtual tape with. Use the <a>ListGateways</a> operation to return
* a list of gateways for your account and AWS Region.</p>
*/
inline bool GatewayARNHasBeenSet() const { return m_gatewayARNHasBeenSet; }
/**
* <p>The unique Amazon Resource Name (ARN) that represents the gateway to
* associate the virtual tape with. Use the <a>ListGateways</a> operation to return
* a list of gateways for your account and AWS Region.</p>
*/
inline void SetGatewayARN(const Aws::String& value) { m_gatewayARNHasBeenSet = true; m_gatewayARN = value; }
/**
* <p>The unique Amazon Resource Name (ARN) that represents the gateway to
* associate the virtual tape with. Use the <a>ListGateways</a> operation to return
* a list of gateways for your account and AWS Region.</p>
*/
inline void SetGatewayARN(Aws::String&& value) { m_gatewayARNHasBeenSet = true; m_gatewayARN = std::move(value); }
/**
* <p>The unique Amazon Resource Name (ARN) that represents the gateway to
* associate the virtual tape with. Use the <a>ListGateways</a> operation to return
* a list of gateways for your account and AWS Region.</p>
*/
inline void SetGatewayARN(const char* value) { m_gatewayARNHasBeenSet = true; m_gatewayARN.assign(value); }
/**
* <p>The unique Amazon Resource Name (ARN) that represents the gateway to
* associate the virtual tape with. Use the <a>ListGateways</a> operation to return
* a list of gateways for your account and AWS Region.</p>
*/
inline CreateTapeWithBarcodeRequest& WithGatewayARN(const Aws::String& value) { SetGatewayARN(value); return *this;}
/**
* <p>The unique Amazon Resource Name (ARN) that represents the gateway to
* associate the virtual tape with. Use the <a>ListGateways</a> operation to return
* a list of gateways for your account and AWS Region.</p>
*/
inline CreateTapeWithBarcodeRequest& WithGatewayARN(Aws::String&& value) { SetGatewayARN(std::move(value)); return *this;}
/**
* <p>The unique Amazon Resource Name (ARN) that represents the gateway to
* associate the virtual tape with. Use the <a>ListGateways</a> operation to return
* a list of gateways for your account and AWS Region.</p>
*/
inline CreateTapeWithBarcodeRequest& WithGatewayARN(const char* value) { SetGatewayARN(value); return *this;}
/**
* <p>The size, in bytes, of the virtual tape that you want to create.</p>
* <p>The size must be aligned by gigabyte (1024*1024*1024 bytes).</p>
*/
inline long long GetTapeSizeInBytes() const{ return m_tapeSizeInBytes; }
/**
* <p>The size, in bytes, of the virtual tape that you want to create.</p>
* <p>The size must be aligned by gigabyte (1024*1024*1024 bytes).</p>
*/
inline bool TapeSizeInBytesHasBeenSet() const { return m_tapeSizeInBytesHasBeenSet; }
/**
* <p>The size, in bytes, of the virtual tape that you want to create.</p>
* <p>The size must be aligned by gigabyte (1024*1024*1024 bytes).</p>
*/
inline void SetTapeSizeInBytes(long long value) { m_tapeSizeInBytesHasBeenSet = true; m_tapeSizeInBytes = value; }
/**
* <p>The size, in bytes, of the virtual tape that you want to create.</p>
* <p>The size must be aligned by gigabyte (1024*1024*1024 bytes).</p>
*/
inline CreateTapeWithBarcodeRequest& WithTapeSizeInBytes(long long value) { SetTapeSizeInBytes(value); return *this;}
/**
* <p>The barcode that you want to assign to the tape.</p> <p>Barcodes
* cannot be reused. This includes barcodes used for tapes that have been
* deleted.</p>
*/
inline const Aws::String& GetTapeBarcode() const{ return m_tapeBarcode; }
/**
* <p>The barcode that you want to assign to the tape.</p> <p>Barcodes
* cannot be reused. This includes barcodes used for tapes that have been
* deleted.</p>
*/
inline bool TapeBarcodeHasBeenSet() const { return m_tapeBarcodeHasBeenSet; }
/**
* <p>The barcode that you want to assign to the tape.</p> <p>Barcodes
* cannot be reused. This includes barcodes used for tapes that have been
* deleted.</p>
*/
inline void SetTapeBarcode(const Aws::String& value) { m_tapeBarcodeHasBeenSet = true; m_tapeBarcode = value; }
/**
* <p>The barcode that you want to assign to the tape.</p> <p>Barcodes
* cannot be reused. This includes barcodes used for tapes that have been
* deleted.</p>
*/
inline void SetTapeBarcode(Aws::String&& value) { m_tapeBarcodeHasBeenSet = true; m_tapeBarcode = std::move(value); }
/**
* <p>The barcode that you want to assign to the tape.</p> <p>Barcodes
* cannot be reused. This includes barcodes used for tapes that have been
* deleted.</p>
*/
inline void SetTapeBarcode(const char* value) { m_tapeBarcodeHasBeenSet = true; m_tapeBarcode.assign(value); }
/**
* <p>The barcode that you want to assign to the tape.</p> <p>Barcodes
* cannot be reused. This includes barcodes used for tapes that have been
* deleted.</p>
*/
inline CreateTapeWithBarcodeRequest& WithTapeBarcode(const Aws::String& value) { SetTapeBarcode(value); return *this;}
/**
* <p>The barcode that you want to assign to the tape.</p> <p>Barcodes
* cannot be reused. This includes barcodes used for tapes that have been
* deleted.</p>
*/
inline CreateTapeWithBarcodeRequest& WithTapeBarcode(Aws::String&& value) { SetTapeBarcode(std::move(value)); return *this;}
/**
* <p>The barcode that you want to assign to the tape.</p> <p>Barcodes
* cannot be reused. This includes barcodes used for tapes that have been
* deleted.</p>
*/
inline CreateTapeWithBarcodeRequest& WithTapeBarcode(const char* value) { SetTapeBarcode(value); return *this;}
/**
* <p>Set to <code>true</code> to use Amazon S3 server-side encryption with your
* own AWS KMS key, or <code>false</code> to use a key managed by Amazon S3.
* Optional.</p> <p>Valid Values: <code>true</code> | <code>false</code> </p>
*/
inline bool GetKMSEncrypted() const{ return m_kMSEncrypted; }
/**
* <p>Set to <code>true</code> to use Amazon S3 server-side encryption with your
* own AWS KMS key, or <code>false</code> to use a key managed by Amazon S3.
* Optional.</p> <p>Valid Values: <code>true</code> | <code>false</code> </p>
*/
inline bool KMSEncryptedHasBeenSet() const { return m_kMSEncryptedHasBeenSet; }
/**
* <p>Set to <code>true</code> to use Amazon S3 server-side encryption with your
* own AWS KMS key, or <code>false</code> to use a key managed by Amazon S3.
* Optional.</p> <p>Valid Values: <code>true</code> | <code>false</code> </p>
*/
inline void SetKMSEncrypted(bool value) { m_kMSEncryptedHasBeenSet = true; m_kMSEncrypted = value; }
/**
* <p>Set to <code>true</code> to use Amazon S3 server-side encryption with your
* own AWS KMS key, or <code>false</code> to use a key managed by Amazon S3.
* Optional.</p> <p>Valid Values: <code>true</code> | <code>false</code> </p>
*/
inline CreateTapeWithBarcodeRequest& WithKMSEncrypted(bool value) { SetKMSEncrypted(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of a symmetric customer master key (CMK) used
* for Amazon S3 server-side encryption. Storage Gateway does not support
* asymmetric CMKs. This value can only be set when <code>KMSEncrypted</code> is
* <code>true</code>. Optional.</p>
*/
inline const Aws::String& GetKMSKey() const{ return m_kMSKey; }
/**
* <p>The Amazon Resource Name (ARN) of a symmetric customer master key (CMK) used
* for Amazon S3 server-side encryption. Storage Gateway does not support
* asymmetric CMKs. This value can only be set when <code>KMSEncrypted</code> is
* <code>true</code>. Optional.</p>
*/
inline bool KMSKeyHasBeenSet() const { return m_kMSKeyHasBeenSet; }
/**
* <p>The Amazon Resource Name (ARN) of a symmetric customer master key (CMK) used
* for Amazon S3 server-side encryption. Storage Gateway does not support
* asymmetric CMKs. This value can only be set when <code>KMSEncrypted</code> is
* <code>true</code>. Optional.</p>
*/
inline void SetKMSKey(const Aws::String& value) { m_kMSKeyHasBeenSet = true; m_kMSKey = value; }
/**
* <p>The Amazon Resource Name (ARN) of a symmetric customer master key (CMK) used
* for Amazon S3 server-side encryption. Storage Gateway does not support
* asymmetric CMKs. This value can only be set when <code>KMSEncrypted</code> is
* <code>true</code>. Optional.</p>
*/
inline void SetKMSKey(Aws::String&& value) { m_kMSKeyHasBeenSet = true; m_kMSKey = std::move(value); }
/**
* <p>The Amazon Resource Name (ARN) of a symmetric customer master key (CMK) used
* for Amazon S3 server-side encryption. Storage Gateway does not support
* asymmetric CMKs. This value can only be set when <code>KMSEncrypted</code> is
* <code>true</code>. Optional.</p>
*/
inline void SetKMSKey(const char* value) { m_kMSKeyHasBeenSet = true; m_kMSKey.assign(value); }
/**
* <p>The Amazon Resource Name (ARN) of a symmetric customer master key (CMK) used
* for Amazon S3 server-side encryption. Storage Gateway does not support
* asymmetric CMKs. This value can only be set when <code>KMSEncrypted</code> is
* <code>true</code>. Optional.</p>
*/
inline CreateTapeWithBarcodeRequest& WithKMSKey(const Aws::String& value) { SetKMSKey(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of a symmetric customer master key (CMK) used
* for Amazon S3 server-side encryption. Storage Gateway does not support
* asymmetric CMKs. This value can only be set when <code>KMSEncrypted</code> is
* <code>true</code>. Optional.</p>
*/
inline CreateTapeWithBarcodeRequest& WithKMSKey(Aws::String&& value) { SetKMSKey(std::move(value)); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of a symmetric customer master key (CMK) used
* for Amazon S3 server-side encryption. Storage Gateway does not support
* asymmetric CMKs. This value can only be set when <code>KMSEncrypted</code> is
* <code>true</code>. Optional.</p>
*/
inline CreateTapeWithBarcodeRequest& WithKMSKey(const char* value) { SetKMSKey(value); return *this;}
/**
* <p>The ID of the pool that you want to add your tape to for archiving. The tape
* in this pool is archived in the S3 storage class that is associated with the
* pool. When you use your backup application to eject the tape, the tape is
* archived directly into the storage class (S3 Glacier or S3 Deep Archive) that
* corresponds to the pool.</p> <p>Valid Values: <code>GLACIER</code> |
* <code>DEEP_ARCHIVE</code> </p>
*/
inline const Aws::String& GetPoolId() const{ return m_poolId; }
/**
* <p>The ID of the pool that you want to add your tape to for archiving. The tape
* in this pool is archived in the S3 storage class that is associated with the
* pool. When you use your backup application to eject the tape, the tape is
* archived directly into the storage class (S3 Glacier or S3 Deep Archive) that
* corresponds to the pool.</p> <p>Valid Values: <code>GLACIER</code> |
* <code>DEEP_ARCHIVE</code> </p>
*/
inline bool PoolIdHasBeenSet() const { return m_poolIdHasBeenSet; }
/**
* <p>The ID of the pool that you want to add your tape to for archiving. The tape
* in this pool is archived in the S3 storage class that is associated with the
* pool. When you use your backup application to eject the tape, the tape is
* archived directly into the storage class (S3 Glacier or S3 Deep Archive) that
* corresponds to the pool.</p> <p>Valid Values: <code>GLACIER</code> |
* <code>DEEP_ARCHIVE</code> </p>
*/
inline void SetPoolId(const Aws::String& value) { m_poolIdHasBeenSet = true; m_poolId = value; }
/**
* <p>The ID of the pool that you want to add your tape to for archiving. The tape
* in this pool is archived in the S3 storage class that is associated with the
* pool. When you use your backup application to eject the tape, the tape is
* archived directly into the storage class (S3 Glacier or S3 Deep Archive) that
* corresponds to the pool.</p> <p>Valid Values: <code>GLACIER</code> |
* <code>DEEP_ARCHIVE</code> </p>
*/
inline void SetPoolId(Aws::String&& value) { m_poolIdHasBeenSet = true; m_poolId = std::move(value); }
/**
* <p>The ID of the pool that you want to add your tape to for archiving. The tape
* in this pool is archived in the S3 storage class that is associated with the
* pool. When you use your backup application to eject the tape, the tape is
* archived directly into the storage class (S3 Glacier or S3 Deep Archive) that
* corresponds to the pool.</p> <p>Valid Values: <code>GLACIER</code> |
* <code>DEEP_ARCHIVE</code> </p>
*/
inline void SetPoolId(const char* value) { m_poolIdHasBeenSet = true; m_poolId.assign(value); }
/**
* <p>The ID of the pool that you want to add your tape to for archiving. The tape
* in this pool is archived in the S3 storage class that is associated with the
* pool. When you use your backup application to eject the tape, the tape is
* archived directly into the storage class (S3 Glacier or S3 Deep Archive) that
* corresponds to the pool.</p> <p>Valid Values: <code>GLACIER</code> |
* <code>DEEP_ARCHIVE</code> </p>
*/
inline CreateTapeWithBarcodeRequest& WithPoolId(const Aws::String& value) { SetPoolId(value); return *this;}
/**
* <p>The ID of the pool that you want to add your tape to for archiving. The tape
* in this pool is archived in the S3 storage class that is associated with the
* pool. When you use your backup application to eject the tape, the tape is
* archived directly into the storage class (S3 Glacier or S3 Deep Archive) that
* corresponds to the pool.</p> <p>Valid Values: <code>GLACIER</code> |
* <code>DEEP_ARCHIVE</code> </p>
*/
inline CreateTapeWithBarcodeRequest& WithPoolId(Aws::String&& value) { SetPoolId(std::move(value)); return *this;}
/**
* <p>The ID of the pool that you want to add your tape to for archiving. The tape
* in this pool is archived in the S3 storage class that is associated with the
* pool. When you use your backup application to eject the tape, the tape is
* archived directly into the storage class (S3 Glacier or S3 Deep Archive) that
* corresponds to the pool.</p> <p>Valid Values: <code>GLACIER</code> |
* <code>DEEP_ARCHIVE</code> </p>
*/
inline CreateTapeWithBarcodeRequest& WithPoolId(const char* value) { SetPoolId(value); return *this;}
/**
* <p>Set to <code>TRUE</code> if the tape you are creating is to be configured as
* a write-once-read-many (WORM) tape.</p>
*/
inline bool GetWorm() const{ return m_worm; }
/**
* <p>Set to <code>TRUE</code> if the tape you are creating is to be configured as
* a write-once-read-many (WORM) tape.</p>
*/
inline bool WormHasBeenSet() const { return m_wormHasBeenSet; }
/**
* <p>Set to <code>TRUE</code> if the tape you are creating is to be configured as
* a write-once-read-many (WORM) tape.</p>
*/
inline void SetWorm(bool value) { m_wormHasBeenSet = true; m_worm = value; }
/**
* <p>Set to <code>TRUE</code> if the tape you are creating is to be configured as
* a write-once-read-many (WORM) tape.</p>
*/
inline CreateTapeWithBarcodeRequest& WithWorm(bool value) { SetWorm(value); return *this;}
/**
* <p>A list of up to 50 tags that can be assigned to a virtual tape that has a
* barcode. Each tag is a key-value pair.</p> <p>Valid characters for key
* and value are letters, spaces, and numbers representable in UTF-8 format, and
* the following special characters: + - = . _ : / @. The maximum length of a tag's
* key is 128 characters, and the maximum length for a tag's value is 256.</p>
*
*/
inline const Aws::Vector<Tag>& GetTags() const{ return m_tags; }
/**
* <p>A list of up to 50 tags that can be assigned to a virtual tape that has a
* barcode. Each tag is a key-value pair.</p> <p>Valid characters for key
* and value are letters, spaces, and numbers representable in UTF-8 format, and
* the following special characters: + - = . _ : / @. The maximum length of a tag's
* key is 128 characters, and the maximum length for a tag's value is 256.</p>
*
*/
inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
/**
* <p>A list of up to 50 tags that can be assigned to a virtual tape that has a
* barcode. Each tag is a key-value pair.</p> <p>Valid characters for key
* and value are letters, spaces, and numbers representable in UTF-8 format, and
* the following special characters: + - = . _ : / @. The maximum length of a tag's
* key is 128 characters, and the maximum length for a tag's value is 256.</p>
*
*/
inline void SetTags(const Aws::Vector<Tag>& value) { m_tagsHasBeenSet = true; m_tags = value; }
/**
* <p>A list of up to 50 tags that can be assigned to a virtual tape that has a
* barcode. Each tag is a key-value pair.</p> <p>Valid characters for key
* and value are letters, spaces, and numbers representable in UTF-8 format, and
* the following special characters: + - = . _ : / @. The maximum length of a tag's
* key is 128 characters, and the maximum length for a tag's value is 256.</p>
*
*/
inline void SetTags(Aws::Vector<Tag>&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); }
/**
* <p>A list of up to 50 tags that can be assigned to a virtual tape that has a
* barcode. Each tag is a key-value pair.</p> <p>Valid characters for key
* and value are letters, spaces, and numbers representable in UTF-8 format, and
* the following special characters: + - = . _ : / @. The maximum length of a tag's
* key is 128 characters, and the maximum length for a tag's value is 256.</p>
*
*/
inline CreateTapeWithBarcodeRequest& WithTags(const Aws::Vector<Tag>& value) { SetTags(value); return *this;}
/**
* <p>A list of up to 50 tags that can be assigned to a virtual tape that has a
* barcode. Each tag is a key-value pair.</p> <p>Valid characters for key
* and value are letters, spaces, and numbers representable in UTF-8 format, and
* the following special characters: + - = . _ : / @. The maximum length of a tag's
* key is 128 characters, and the maximum length for a tag's value is 256.</p>
*
*/
inline CreateTapeWithBarcodeRequest& WithTags(Aws::Vector<Tag>&& value) { SetTags(std::move(value)); return *this;}
/**
* <p>A list of up to 50 tags that can be assigned to a virtual tape that has a
* barcode. Each tag is a key-value pair.</p> <p>Valid characters for key
* and value are letters, spaces, and numbers representable in UTF-8 format, and
* the following special characters: + - = . _ : / @. The maximum length of a tag's
* key is 128 characters, and the maximum length for a tag's value is 256.</p>
*
*/
inline CreateTapeWithBarcodeRequest& AddTags(const Tag& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; }
/**
* <p>A list of up to 50 tags that can be assigned to a virtual tape that has a
* barcode. Each tag is a key-value pair.</p> <p>Valid characters for key
* and value are letters, spaces, and numbers representable in UTF-8 format, and
* the following special characters: + - = . _ : / @. The maximum length of a tag's
* key is 128 characters, and the maximum length for a tag's value is 256.</p>
*
*/
inline CreateTapeWithBarcodeRequest& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; }
private:
Aws::String m_gatewayARN;
bool m_gatewayARNHasBeenSet;
long long m_tapeSizeInBytes;
bool m_tapeSizeInBytesHasBeenSet;
Aws::String m_tapeBarcode;
bool m_tapeBarcodeHasBeenSet;
bool m_kMSEncrypted;
bool m_kMSEncryptedHasBeenSet;
Aws::String m_kMSKey;
bool m_kMSKeyHasBeenSet;
Aws::String m_poolId;
bool m_poolIdHasBeenSet;
bool m_worm;
bool m_wormHasBeenSet;
Aws::Vector<Tag> m_tags;
bool m_tagsHasBeenSet;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,89 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace StorageGateway
{
namespace Model
{
/**
* <p>CreateTapeOutput</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/CreateTapeWithBarcodeOutput">AWS
* API Reference</a></p>
*/
class AWS_STORAGEGATEWAY_API CreateTapeWithBarcodeResult
{
public:
CreateTapeWithBarcodeResult();
CreateTapeWithBarcodeResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
CreateTapeWithBarcodeResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>A unique Amazon Resource Name (ARN) that represents the virtual tape that was
* created.</p>
*/
inline const Aws::String& GetTapeARN() const{ return m_tapeARN; }
/**
* <p>A unique Amazon Resource Name (ARN) that represents the virtual tape that was
* created.</p>
*/
inline void SetTapeARN(const Aws::String& value) { m_tapeARN = value; }
/**
* <p>A unique Amazon Resource Name (ARN) that represents the virtual tape that was
* created.</p>
*/
inline void SetTapeARN(Aws::String&& value) { m_tapeARN = std::move(value); }
/**
* <p>A unique Amazon Resource Name (ARN) that represents the virtual tape that was
* created.</p>
*/
inline void SetTapeARN(const char* value) { m_tapeARN.assign(value); }
/**
* <p>A unique Amazon Resource Name (ARN) that represents the virtual tape that was
* created.</p>
*/
inline CreateTapeWithBarcodeResult& WithTapeARN(const Aws::String& value) { SetTapeARN(value); return *this;}
/**
* <p>A unique Amazon Resource Name (ARN) that represents the virtual tape that was
* created.</p>
*/
inline CreateTapeWithBarcodeResult& WithTapeARN(Aws::String&& value) { SetTapeARN(std::move(value)); return *this;}
/**
* <p>A unique Amazon Resource Name (ARN) that represents the virtual tape that was
* created.</p>
*/
inline CreateTapeWithBarcodeResult& WithTapeARN(const char* value) { SetTapeARN(value); return *this;}
private:
Aws::String m_tapeARN;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,582 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/storagegateway/StorageGatewayRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/storagegateway/model/Tag.h>
#include <utility>
namespace Aws
{
namespace StorageGateway
{
namespace Model
{
/**
* <p>CreateTapesInput</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/CreateTapesInput">AWS
* API Reference</a></p>
*/
class AWS_STORAGEGATEWAY_API CreateTapesRequest : public StorageGatewayRequest
{
public:
CreateTapesRequest();
// 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 "CreateTapes"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
/**
* <p>The unique Amazon Resource Name (ARN) that represents the gateway to
* associate the virtual tapes with. Use the <a>ListGateways</a> operation to
* return a list of gateways for your account and AWS Region.</p>
*/
inline const Aws::String& GetGatewayARN() const{ return m_gatewayARN; }
/**
* <p>The unique Amazon Resource Name (ARN) that represents the gateway to
* associate the virtual tapes with. Use the <a>ListGateways</a> operation to
* return a list of gateways for your account and AWS Region.</p>
*/
inline bool GatewayARNHasBeenSet() const { return m_gatewayARNHasBeenSet; }
/**
* <p>The unique Amazon Resource Name (ARN) that represents the gateway to
* associate the virtual tapes with. Use the <a>ListGateways</a> operation to
* return a list of gateways for your account and AWS Region.</p>
*/
inline void SetGatewayARN(const Aws::String& value) { m_gatewayARNHasBeenSet = true; m_gatewayARN = value; }
/**
* <p>The unique Amazon Resource Name (ARN) that represents the gateway to
* associate the virtual tapes with. Use the <a>ListGateways</a> operation to
* return a list of gateways for your account and AWS Region.</p>
*/
inline void SetGatewayARN(Aws::String&& value) { m_gatewayARNHasBeenSet = true; m_gatewayARN = std::move(value); }
/**
* <p>The unique Amazon Resource Name (ARN) that represents the gateway to
* associate the virtual tapes with. Use the <a>ListGateways</a> operation to
* return a list of gateways for your account and AWS Region.</p>
*/
inline void SetGatewayARN(const char* value) { m_gatewayARNHasBeenSet = true; m_gatewayARN.assign(value); }
/**
* <p>The unique Amazon Resource Name (ARN) that represents the gateway to
* associate the virtual tapes with. Use the <a>ListGateways</a> operation to
* return a list of gateways for your account and AWS Region.</p>
*/
inline CreateTapesRequest& WithGatewayARN(const Aws::String& value) { SetGatewayARN(value); return *this;}
/**
* <p>The unique Amazon Resource Name (ARN) that represents the gateway to
* associate the virtual tapes with. Use the <a>ListGateways</a> operation to
* return a list of gateways for your account and AWS Region.</p>
*/
inline CreateTapesRequest& WithGatewayARN(Aws::String&& value) { SetGatewayARN(std::move(value)); return *this;}
/**
* <p>The unique Amazon Resource Name (ARN) that represents the gateway to
* associate the virtual tapes with. Use the <a>ListGateways</a> operation to
* return a list of gateways for your account and AWS Region.</p>
*/
inline CreateTapesRequest& WithGatewayARN(const char* value) { SetGatewayARN(value); return *this;}
/**
* <p>The size, in bytes, of the virtual tapes that you want to create.</p>
* <p>The size must be aligned by gigabyte (1024*1024*1024 bytes).</p>
*/
inline long long GetTapeSizeInBytes() const{ return m_tapeSizeInBytes; }
/**
* <p>The size, in bytes, of the virtual tapes that you want to create.</p>
* <p>The size must be aligned by gigabyte (1024*1024*1024 bytes).</p>
*/
inline bool TapeSizeInBytesHasBeenSet() const { return m_tapeSizeInBytesHasBeenSet; }
/**
* <p>The size, in bytes, of the virtual tapes that you want to create.</p>
* <p>The size must be aligned by gigabyte (1024*1024*1024 bytes).</p>
*/
inline void SetTapeSizeInBytes(long long value) { m_tapeSizeInBytesHasBeenSet = true; m_tapeSizeInBytes = value; }
/**
* <p>The size, in bytes, of the virtual tapes that you want to create.</p>
* <p>The size must be aligned by gigabyte (1024*1024*1024 bytes).</p>
*/
inline CreateTapesRequest& WithTapeSizeInBytes(long long value) { SetTapeSizeInBytes(value); return *this;}
/**
* <p>A unique identifier that you use to retry a request. If you retry a request,
* use the same <code>ClientToken</code> you specified in the initial request.</p>
* <p>Using the same <code>ClientToken</code> prevents creating the tape
* multiple times.</p>
*/
inline const Aws::String& GetClientToken() const{ return m_clientToken; }
/**
* <p>A unique identifier that you use to retry a request. If you retry a request,
* use the same <code>ClientToken</code> you specified in the initial request.</p>
* <p>Using the same <code>ClientToken</code> prevents creating the tape
* multiple times.</p>
*/
inline bool ClientTokenHasBeenSet() const { return m_clientTokenHasBeenSet; }
/**
* <p>A unique identifier that you use to retry a request. If you retry a request,
* use the same <code>ClientToken</code> you specified in the initial request.</p>
* <p>Using the same <code>ClientToken</code> prevents creating the tape
* multiple times.</p>
*/
inline void SetClientToken(const Aws::String& value) { m_clientTokenHasBeenSet = true; m_clientToken = value; }
/**
* <p>A unique identifier that you use to retry a request. If you retry a request,
* use the same <code>ClientToken</code> you specified in the initial request.</p>
* <p>Using the same <code>ClientToken</code> prevents creating the tape
* multiple times.</p>
*/
inline void SetClientToken(Aws::String&& value) { m_clientTokenHasBeenSet = true; m_clientToken = std::move(value); }
/**
* <p>A unique identifier that you use to retry a request. If you retry a request,
* use the same <code>ClientToken</code> you specified in the initial request.</p>
* <p>Using the same <code>ClientToken</code> prevents creating the tape
* multiple times.</p>
*/
inline void SetClientToken(const char* value) { m_clientTokenHasBeenSet = true; m_clientToken.assign(value); }
/**
* <p>A unique identifier that you use to retry a request. If you retry a request,
* use the same <code>ClientToken</code> you specified in the initial request.</p>
* <p>Using the same <code>ClientToken</code> prevents creating the tape
* multiple times.</p>
*/
inline CreateTapesRequest& WithClientToken(const Aws::String& value) { SetClientToken(value); return *this;}
/**
* <p>A unique identifier that you use to retry a request. If you retry a request,
* use the same <code>ClientToken</code> you specified in the initial request.</p>
* <p>Using the same <code>ClientToken</code> prevents creating the tape
* multiple times.</p>
*/
inline CreateTapesRequest& WithClientToken(Aws::String&& value) { SetClientToken(std::move(value)); return *this;}
/**
* <p>A unique identifier that you use to retry a request. If you retry a request,
* use the same <code>ClientToken</code> you specified in the initial request.</p>
* <p>Using the same <code>ClientToken</code> prevents creating the tape
* multiple times.</p>
*/
inline CreateTapesRequest& WithClientToken(const char* value) { SetClientToken(value); return *this;}
/**
* <p>The number of virtual tapes that you want to create.</p>
*/
inline int GetNumTapesToCreate() const{ return m_numTapesToCreate; }
/**
* <p>The number of virtual tapes that you want to create.</p>
*/
inline bool NumTapesToCreateHasBeenSet() const { return m_numTapesToCreateHasBeenSet; }
/**
* <p>The number of virtual tapes that you want to create.</p>
*/
inline void SetNumTapesToCreate(int value) { m_numTapesToCreateHasBeenSet = true; m_numTapesToCreate = value; }
/**
* <p>The number of virtual tapes that you want to create.</p>
*/
inline CreateTapesRequest& WithNumTapesToCreate(int value) { SetNumTapesToCreate(value); return *this;}
/**
* <p>A prefix that you append to the barcode of the virtual tape you are creating.
* This prefix makes the barcode unique.</p> <p>The prefix must be 1 to 4
* characters in length and must be one of the uppercase letters from A to Z.</p>
*
*/
inline const Aws::String& GetTapeBarcodePrefix() const{ return m_tapeBarcodePrefix; }
/**
* <p>A prefix that you append to the barcode of the virtual tape you are creating.
* This prefix makes the barcode unique.</p> <p>The prefix must be 1 to 4
* characters in length and must be one of the uppercase letters from A to Z.</p>
*
*/
inline bool TapeBarcodePrefixHasBeenSet() const { return m_tapeBarcodePrefixHasBeenSet; }
/**
* <p>A prefix that you append to the barcode of the virtual tape you are creating.
* This prefix makes the barcode unique.</p> <p>The prefix must be 1 to 4
* characters in length and must be one of the uppercase letters from A to Z.</p>
*
*/
inline void SetTapeBarcodePrefix(const Aws::String& value) { m_tapeBarcodePrefixHasBeenSet = true; m_tapeBarcodePrefix = value; }
/**
* <p>A prefix that you append to the barcode of the virtual tape you are creating.
* This prefix makes the barcode unique.</p> <p>The prefix must be 1 to 4
* characters in length and must be one of the uppercase letters from A to Z.</p>
*
*/
inline void SetTapeBarcodePrefix(Aws::String&& value) { m_tapeBarcodePrefixHasBeenSet = true; m_tapeBarcodePrefix = std::move(value); }
/**
* <p>A prefix that you append to the barcode of the virtual tape you are creating.
* This prefix makes the barcode unique.</p> <p>The prefix must be 1 to 4
* characters in length and must be one of the uppercase letters from A to Z.</p>
*
*/
inline void SetTapeBarcodePrefix(const char* value) { m_tapeBarcodePrefixHasBeenSet = true; m_tapeBarcodePrefix.assign(value); }
/**
* <p>A prefix that you append to the barcode of the virtual tape you are creating.
* This prefix makes the barcode unique.</p> <p>The prefix must be 1 to 4
* characters in length and must be one of the uppercase letters from A to Z.</p>
*
*/
inline CreateTapesRequest& WithTapeBarcodePrefix(const Aws::String& value) { SetTapeBarcodePrefix(value); return *this;}
/**
* <p>A prefix that you append to the barcode of the virtual tape you are creating.
* This prefix makes the barcode unique.</p> <p>The prefix must be 1 to 4
* characters in length and must be one of the uppercase letters from A to Z.</p>
*
*/
inline CreateTapesRequest& WithTapeBarcodePrefix(Aws::String&& value) { SetTapeBarcodePrefix(std::move(value)); return *this;}
/**
* <p>A prefix that you append to the barcode of the virtual tape you are creating.
* This prefix makes the barcode unique.</p> <p>The prefix must be 1 to 4
* characters in length and must be one of the uppercase letters from A to Z.</p>
*
*/
inline CreateTapesRequest& WithTapeBarcodePrefix(const char* value) { SetTapeBarcodePrefix(value); return *this;}
/**
* <p>Set to <code>true</code> to use Amazon S3 server-side encryption with your
* own AWS KMS key, or <code>false</code> to use a key managed by Amazon S3.
* Optional.</p> <p>Valid Values: <code>true</code> | <code>false</code> </p>
*/
inline bool GetKMSEncrypted() const{ return m_kMSEncrypted; }
/**
* <p>Set to <code>true</code> to use Amazon S3 server-side encryption with your
* own AWS KMS key, or <code>false</code> to use a key managed by Amazon S3.
* Optional.</p> <p>Valid Values: <code>true</code> | <code>false</code> </p>
*/
inline bool KMSEncryptedHasBeenSet() const { return m_kMSEncryptedHasBeenSet; }
/**
* <p>Set to <code>true</code> to use Amazon S3 server-side encryption with your
* own AWS KMS key, or <code>false</code> to use a key managed by Amazon S3.
* Optional.</p> <p>Valid Values: <code>true</code> | <code>false</code> </p>
*/
inline void SetKMSEncrypted(bool value) { m_kMSEncryptedHasBeenSet = true; m_kMSEncrypted = value; }
/**
* <p>Set to <code>true</code> to use Amazon S3 server-side encryption with your
* own AWS KMS key, or <code>false</code> to use a key managed by Amazon S3.
* Optional.</p> <p>Valid Values: <code>true</code> | <code>false</code> </p>
*/
inline CreateTapesRequest& WithKMSEncrypted(bool value) { SetKMSEncrypted(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of a symmetric customer master key (CMK) used
* for Amazon S3 server-side encryption. Storage Gateway does not support
* asymmetric CMKs. This value can only be set when <code>KMSEncrypted</code> is
* <code>true</code>. Optional.</p>
*/
inline const Aws::String& GetKMSKey() const{ return m_kMSKey; }
/**
* <p>The Amazon Resource Name (ARN) of a symmetric customer master key (CMK) used
* for Amazon S3 server-side encryption. Storage Gateway does not support
* asymmetric CMKs. This value can only be set when <code>KMSEncrypted</code> is
* <code>true</code>. Optional.</p>
*/
inline bool KMSKeyHasBeenSet() const { return m_kMSKeyHasBeenSet; }
/**
* <p>The Amazon Resource Name (ARN) of a symmetric customer master key (CMK) used
* for Amazon S3 server-side encryption. Storage Gateway does not support
* asymmetric CMKs. This value can only be set when <code>KMSEncrypted</code> is
* <code>true</code>. Optional.</p>
*/
inline void SetKMSKey(const Aws::String& value) { m_kMSKeyHasBeenSet = true; m_kMSKey = value; }
/**
* <p>The Amazon Resource Name (ARN) of a symmetric customer master key (CMK) used
* for Amazon S3 server-side encryption. Storage Gateway does not support
* asymmetric CMKs. This value can only be set when <code>KMSEncrypted</code> is
* <code>true</code>. Optional.</p>
*/
inline void SetKMSKey(Aws::String&& value) { m_kMSKeyHasBeenSet = true; m_kMSKey = std::move(value); }
/**
* <p>The Amazon Resource Name (ARN) of a symmetric customer master key (CMK) used
* for Amazon S3 server-side encryption. Storage Gateway does not support
* asymmetric CMKs. This value can only be set when <code>KMSEncrypted</code> is
* <code>true</code>. Optional.</p>
*/
inline void SetKMSKey(const char* value) { m_kMSKeyHasBeenSet = true; m_kMSKey.assign(value); }
/**
* <p>The Amazon Resource Name (ARN) of a symmetric customer master key (CMK) used
* for Amazon S3 server-side encryption. Storage Gateway does not support
* asymmetric CMKs. This value can only be set when <code>KMSEncrypted</code> is
* <code>true</code>. Optional.</p>
*/
inline CreateTapesRequest& WithKMSKey(const Aws::String& value) { SetKMSKey(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of a symmetric customer master key (CMK) used
* for Amazon S3 server-side encryption. Storage Gateway does not support
* asymmetric CMKs. This value can only be set when <code>KMSEncrypted</code> is
* <code>true</code>. Optional.</p>
*/
inline CreateTapesRequest& WithKMSKey(Aws::String&& value) { SetKMSKey(std::move(value)); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of a symmetric customer master key (CMK) used
* for Amazon S3 server-side encryption. Storage Gateway does not support
* asymmetric CMKs. This value can only be set when <code>KMSEncrypted</code> is
* <code>true</code>. Optional.</p>
*/
inline CreateTapesRequest& WithKMSKey(const char* value) { SetKMSKey(value); return *this;}
/**
* <p>The ID of the pool that you want to add your tape to for archiving. The tape
* in this pool is archived in the S3 storage class that is associated with the
* pool. When you use your backup application to eject the tape, the tape is
* archived directly into the storage class (S3 Glacier or S3 Glacier Deep Archive)
* that corresponds to the pool.</p> <p>Valid Values: <code>GLACIER</code> |
* <code>DEEP_ARCHIVE</code> </p>
*/
inline const Aws::String& GetPoolId() const{ return m_poolId; }
/**
* <p>The ID of the pool that you want to add your tape to for archiving. The tape
* in this pool is archived in the S3 storage class that is associated with the
* pool. When you use your backup application to eject the tape, the tape is
* archived directly into the storage class (S3 Glacier or S3 Glacier Deep Archive)
* that corresponds to the pool.</p> <p>Valid Values: <code>GLACIER</code> |
* <code>DEEP_ARCHIVE</code> </p>
*/
inline bool PoolIdHasBeenSet() const { return m_poolIdHasBeenSet; }
/**
* <p>The ID of the pool that you want to add your tape to for archiving. The tape
* in this pool is archived in the S3 storage class that is associated with the
* pool. When you use your backup application to eject the tape, the tape is
* archived directly into the storage class (S3 Glacier or S3 Glacier Deep Archive)
* that corresponds to the pool.</p> <p>Valid Values: <code>GLACIER</code> |
* <code>DEEP_ARCHIVE</code> </p>
*/
inline void SetPoolId(const Aws::String& value) { m_poolIdHasBeenSet = true; m_poolId = value; }
/**
* <p>The ID of the pool that you want to add your tape to for archiving. The tape
* in this pool is archived in the S3 storage class that is associated with the
* pool. When you use your backup application to eject the tape, the tape is
* archived directly into the storage class (S3 Glacier or S3 Glacier Deep Archive)
* that corresponds to the pool.</p> <p>Valid Values: <code>GLACIER</code> |
* <code>DEEP_ARCHIVE</code> </p>
*/
inline void SetPoolId(Aws::String&& value) { m_poolIdHasBeenSet = true; m_poolId = std::move(value); }
/**
* <p>The ID of the pool that you want to add your tape to for archiving. The tape
* in this pool is archived in the S3 storage class that is associated with the
* pool. When you use your backup application to eject the tape, the tape is
* archived directly into the storage class (S3 Glacier or S3 Glacier Deep Archive)
* that corresponds to the pool.</p> <p>Valid Values: <code>GLACIER</code> |
* <code>DEEP_ARCHIVE</code> </p>
*/
inline void SetPoolId(const char* value) { m_poolIdHasBeenSet = true; m_poolId.assign(value); }
/**
* <p>The ID of the pool that you want to add your tape to for archiving. The tape
* in this pool is archived in the S3 storage class that is associated with the
* pool. When you use your backup application to eject the tape, the tape is
* archived directly into the storage class (S3 Glacier or S3 Glacier Deep Archive)
* that corresponds to the pool.</p> <p>Valid Values: <code>GLACIER</code> |
* <code>DEEP_ARCHIVE</code> </p>
*/
inline CreateTapesRequest& WithPoolId(const Aws::String& value) { SetPoolId(value); return *this;}
/**
* <p>The ID of the pool that you want to add your tape to for archiving. The tape
* in this pool is archived in the S3 storage class that is associated with the
* pool. When you use your backup application to eject the tape, the tape is
* archived directly into the storage class (S3 Glacier or S3 Glacier Deep Archive)
* that corresponds to the pool.</p> <p>Valid Values: <code>GLACIER</code> |
* <code>DEEP_ARCHIVE</code> </p>
*/
inline CreateTapesRequest& WithPoolId(Aws::String&& value) { SetPoolId(std::move(value)); return *this;}
/**
* <p>The ID of the pool that you want to add your tape to for archiving. The tape
* in this pool is archived in the S3 storage class that is associated with the
* pool. When you use your backup application to eject the tape, the tape is
* archived directly into the storage class (S3 Glacier or S3 Glacier Deep Archive)
* that corresponds to the pool.</p> <p>Valid Values: <code>GLACIER</code> |
* <code>DEEP_ARCHIVE</code> </p>
*/
inline CreateTapesRequest& WithPoolId(const char* value) { SetPoolId(value); return *this;}
/**
* <p>Set to <code>TRUE</code> if the tape you are creating is to be configured as
* a write-once-read-many (WORM) tape.</p>
*/
inline bool GetWorm() const{ return m_worm; }
/**
* <p>Set to <code>TRUE</code> if the tape you are creating is to be configured as
* a write-once-read-many (WORM) tape.</p>
*/
inline bool WormHasBeenSet() const { return m_wormHasBeenSet; }
/**
* <p>Set to <code>TRUE</code> if the tape you are creating is to be configured as
* a write-once-read-many (WORM) tape.</p>
*/
inline void SetWorm(bool value) { m_wormHasBeenSet = true; m_worm = value; }
/**
* <p>Set to <code>TRUE</code> if the tape you are creating is to be configured as
* a write-once-read-many (WORM) tape.</p>
*/
inline CreateTapesRequest& WithWorm(bool value) { SetWorm(value); return *this;}
/**
* <p>A list of up to 50 tags that can be assigned to a virtual tape. Each tag is a
* key-value pair.</p> <p>Valid characters for key and value are letters,
* spaces, and numbers representable in UTF-8 format, and the following special
* characters: + - = . _ : / @. The maximum length of a tag's key is 128
* characters, and the maximum length for a tag's value is 256.</p>
*/
inline const Aws::Vector<Tag>& GetTags() const{ return m_tags; }
/**
* <p>A list of up to 50 tags that can be assigned to a virtual tape. Each tag is a
* key-value pair.</p> <p>Valid characters for key and value are letters,
* spaces, and numbers representable in UTF-8 format, and the following special
* characters: + - = . _ : / @. The maximum length of a tag's key is 128
* characters, and the maximum length for a tag's value is 256.</p>
*/
inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
/**
* <p>A list of up to 50 tags that can be assigned to a virtual tape. Each tag is a
* key-value pair.</p> <p>Valid characters for key and value are letters,
* spaces, and numbers representable in UTF-8 format, and the following special
* characters: + - = . _ : / @. The maximum length of a tag's key is 128
* characters, and the maximum length for a tag's value is 256.</p>
*/
inline void SetTags(const Aws::Vector<Tag>& value) { m_tagsHasBeenSet = true; m_tags = value; }
/**
* <p>A list of up to 50 tags that can be assigned to a virtual tape. Each tag is a
* key-value pair.</p> <p>Valid characters for key and value are letters,
* spaces, and numbers representable in UTF-8 format, and the following special
* characters: + - = . _ : / @. The maximum length of a tag's key is 128
* characters, and the maximum length for a tag's value is 256.</p>
*/
inline void SetTags(Aws::Vector<Tag>&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); }
/**
* <p>A list of up to 50 tags that can be assigned to a virtual tape. Each tag is a
* key-value pair.</p> <p>Valid characters for key and value are letters,
* spaces, and numbers representable in UTF-8 format, and the following special
* characters: + - = . _ : / @. The maximum length of a tag's key is 128
* characters, and the maximum length for a tag's value is 256.</p>
*/
inline CreateTapesRequest& WithTags(const Aws::Vector<Tag>& value) { SetTags(value); return *this;}
/**
* <p>A list of up to 50 tags that can be assigned to a virtual tape. Each tag is a
* key-value pair.</p> <p>Valid characters for key and value are letters,
* spaces, and numbers representable in UTF-8 format, and the following special
* characters: + - = . _ : / @. The maximum length of a tag's key is 128
* characters, and the maximum length for a tag's value is 256.</p>
*/
inline CreateTapesRequest& WithTags(Aws::Vector<Tag>&& value) { SetTags(std::move(value)); return *this;}
/**
* <p>A list of up to 50 tags that can be assigned to a virtual tape. Each tag is a
* key-value pair.</p> <p>Valid characters for key and value are letters,
* spaces, and numbers representable in UTF-8 format, and the following special
* characters: + - = . _ : / @. The maximum length of a tag's key is 128
* characters, and the maximum length for a tag's value is 256.</p>
*/
inline CreateTapesRequest& AddTags(const Tag& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; }
/**
* <p>A list of up to 50 tags that can be assigned to a virtual tape. Each tag is a
* key-value pair.</p> <p>Valid characters for key and value are letters,
* spaces, and numbers representable in UTF-8 format, and the following special
* characters: + - = . _ : / @. The maximum length of a tag's key is 128
* characters, and the maximum length for a tag's value is 256.</p>
*/
inline CreateTapesRequest& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; }
private:
Aws::String m_gatewayARN;
bool m_gatewayARNHasBeenSet;
long long m_tapeSizeInBytes;
bool m_tapeSizeInBytesHasBeenSet;
Aws::String m_clientToken;
bool m_clientTokenHasBeenSet;
int m_numTapesToCreate;
bool m_numTapesToCreateHasBeenSet;
Aws::String m_tapeBarcodePrefix;
bool m_tapeBarcodePrefixHasBeenSet;
bool m_kMSEncrypted;
bool m_kMSEncryptedHasBeenSet;
Aws::String m_kMSKey;
bool m_kMSKeyHasBeenSet;
Aws::String m_poolId;
bool m_poolIdHasBeenSet;
bool m_worm;
bool m_wormHasBeenSet;
Aws::Vector<Tag> m_tags;
bool m_tagsHasBeenSet;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,96 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace StorageGateway
{
namespace Model
{
/**
* <p>CreateTapeOutput</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/CreateTapesOutput">AWS
* API Reference</a></p>
*/
class AWS_STORAGEGATEWAY_API CreateTapesResult
{
public:
CreateTapesResult();
CreateTapesResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
CreateTapesResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>A list of unique Amazon Resource Names (ARNs) that represents the virtual
* tapes that were created.</p>
*/
inline const Aws::Vector<Aws::String>& GetTapeARNs() const{ return m_tapeARNs; }
/**
* <p>A list of unique Amazon Resource Names (ARNs) that represents the virtual
* tapes that were created.</p>
*/
inline void SetTapeARNs(const Aws::Vector<Aws::String>& value) { m_tapeARNs = value; }
/**
* <p>A list of unique Amazon Resource Names (ARNs) that represents the virtual
* tapes that were created.</p>
*/
inline void SetTapeARNs(Aws::Vector<Aws::String>&& value) { m_tapeARNs = std::move(value); }
/**
* <p>A list of unique Amazon Resource Names (ARNs) that represents the virtual
* tapes that were created.</p>
*/
inline CreateTapesResult& WithTapeARNs(const Aws::Vector<Aws::String>& value) { SetTapeARNs(value); return *this;}
/**
* <p>A list of unique Amazon Resource Names (ARNs) that represents the virtual
* tapes that were created.</p>
*/
inline CreateTapesResult& WithTapeARNs(Aws::Vector<Aws::String>&& value) { SetTapeARNs(std::move(value)); return *this;}
/**
* <p>A list of unique Amazon Resource Names (ARNs) that represents the virtual
* tapes that were created.</p>
*/
inline CreateTapesResult& AddTapeARNs(const Aws::String& value) { m_tapeARNs.push_back(value); return *this; }
/**
* <p>A list of unique Amazon Resource Names (ARNs) that represents the virtual
* tapes that were created.</p>
*/
inline CreateTapesResult& AddTapeARNs(Aws::String&& value) { m_tapeARNs.push_back(std::move(value)); return *this; }
/**
* <p>A list of unique Amazon Resource Names (ARNs) that represents the virtual
* tapes that were created.</p>
*/
inline CreateTapesResult& AddTapeARNs(const char* value) { m_tapeARNs.push_back(value); return *this; }
private:
Aws::Vector<Aws::String> m_tapeARNs;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,69 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/storagegateway/StorageGatewayRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace StorageGateway
{
namespace Model
{
/**
*/
class AWS_STORAGEGATEWAY_API DeleteAutomaticTapeCreationPolicyRequest : public StorageGatewayRequest
{
public:
DeleteAutomaticTapeCreationPolicyRequest();
// 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 "DeleteAutomaticTapeCreationPolicy"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
inline const Aws::String& GetGatewayARN() const{ return m_gatewayARN; }
inline bool GatewayARNHasBeenSet() const { return m_gatewayARNHasBeenSet; }
inline void SetGatewayARN(const Aws::String& value) { m_gatewayARNHasBeenSet = true; m_gatewayARN = value; }
inline void SetGatewayARN(Aws::String&& value) { m_gatewayARNHasBeenSet = true; m_gatewayARN = std::move(value); }
inline void SetGatewayARN(const char* value) { m_gatewayARNHasBeenSet = true; m_gatewayARN.assign(value); }
inline DeleteAutomaticTapeCreationPolicyRequest& WithGatewayARN(const Aws::String& value) { SetGatewayARN(value); return *this;}
inline DeleteAutomaticTapeCreationPolicyRequest& WithGatewayARN(Aws::String&& value) { SetGatewayARN(std::move(value)); return *this;}
inline DeleteAutomaticTapeCreationPolicyRequest& WithGatewayARN(const char* value) { SetGatewayARN(value); return *this;}
private:
Aws::String m_gatewayARN;
bool m_gatewayARNHasBeenSet;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,63 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace StorageGateway
{
namespace Model
{
class AWS_STORAGEGATEWAY_API DeleteAutomaticTapeCreationPolicyResult
{
public:
DeleteAutomaticTapeCreationPolicyResult();
DeleteAutomaticTapeCreationPolicyResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
DeleteAutomaticTapeCreationPolicyResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& 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 DeleteAutomaticTapeCreationPolicyResult& WithGatewayARN(const Aws::String& value) { SetGatewayARN(value); return *this;}
inline DeleteAutomaticTapeCreationPolicyResult& WithGatewayARN(Aws::String&& value) { SetGatewayARN(std::move(value)); return *this;}
inline DeleteAutomaticTapeCreationPolicyResult& WithGatewayARN(const char* value) { SetGatewayARN(value); return *this;}
private:
Aws::String m_gatewayARN;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,134 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/storagegateway/StorageGatewayRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace StorageGateway
{
namespace Model
{
/**
* <p>A JSON object containing the following fields:</p> <ul> <li> <p>
* <a>DeleteBandwidthRateLimitInput$BandwidthType</a> </p> </li> </ul><p><h3>See
* Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/DeleteBandwidthRateLimitInput">AWS
* API Reference</a></p>
*/
class AWS_STORAGEGATEWAY_API DeleteBandwidthRateLimitRequest : public StorageGatewayRequest
{
public:
DeleteBandwidthRateLimitRequest();
// 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 "DeleteBandwidthRateLimit"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
inline const Aws::String& GetGatewayARN() const{ return m_gatewayARN; }
inline bool GatewayARNHasBeenSet() const { return m_gatewayARNHasBeenSet; }
inline void SetGatewayARN(const Aws::String& value) { m_gatewayARNHasBeenSet = true; m_gatewayARN = value; }
inline void SetGatewayARN(Aws::String&& value) { m_gatewayARNHasBeenSet = true; m_gatewayARN = std::move(value); }
inline void SetGatewayARN(const char* value) { m_gatewayARNHasBeenSet = true; m_gatewayARN.assign(value); }
inline DeleteBandwidthRateLimitRequest& WithGatewayARN(const Aws::String& value) { SetGatewayARN(value); return *this;}
inline DeleteBandwidthRateLimitRequest& WithGatewayARN(Aws::String&& value) { SetGatewayARN(std::move(value)); return *this;}
inline DeleteBandwidthRateLimitRequest& WithGatewayARN(const char* value) { SetGatewayARN(value); return *this;}
/**
* <p>One of the BandwidthType values that indicates the gateway bandwidth rate
* limit to delete.</p> <p>Valid Values: <code>UPLOAD</code> |
* <code>DOWNLOAD</code> | <code>ALL</code> </p>
*/
inline const Aws::String& GetBandwidthType() const{ return m_bandwidthType; }
/**
* <p>One of the BandwidthType values that indicates the gateway bandwidth rate
* limit to delete.</p> <p>Valid Values: <code>UPLOAD</code> |
* <code>DOWNLOAD</code> | <code>ALL</code> </p>
*/
inline bool BandwidthTypeHasBeenSet() const { return m_bandwidthTypeHasBeenSet; }
/**
* <p>One of the BandwidthType values that indicates the gateway bandwidth rate
* limit to delete.</p> <p>Valid Values: <code>UPLOAD</code> |
* <code>DOWNLOAD</code> | <code>ALL</code> </p>
*/
inline void SetBandwidthType(const Aws::String& value) { m_bandwidthTypeHasBeenSet = true; m_bandwidthType = value; }
/**
* <p>One of the BandwidthType values that indicates the gateway bandwidth rate
* limit to delete.</p> <p>Valid Values: <code>UPLOAD</code> |
* <code>DOWNLOAD</code> | <code>ALL</code> </p>
*/
inline void SetBandwidthType(Aws::String&& value) { m_bandwidthTypeHasBeenSet = true; m_bandwidthType = std::move(value); }
/**
* <p>One of the BandwidthType values that indicates the gateway bandwidth rate
* limit to delete.</p> <p>Valid Values: <code>UPLOAD</code> |
* <code>DOWNLOAD</code> | <code>ALL</code> </p>
*/
inline void SetBandwidthType(const char* value) { m_bandwidthTypeHasBeenSet = true; m_bandwidthType.assign(value); }
/**
* <p>One of the BandwidthType values that indicates the gateway bandwidth rate
* limit to delete.</p> <p>Valid Values: <code>UPLOAD</code> |
* <code>DOWNLOAD</code> | <code>ALL</code> </p>
*/
inline DeleteBandwidthRateLimitRequest& WithBandwidthType(const Aws::String& value) { SetBandwidthType(value); return *this;}
/**
* <p>One of the BandwidthType values that indicates the gateway bandwidth rate
* limit to delete.</p> <p>Valid Values: <code>UPLOAD</code> |
* <code>DOWNLOAD</code> | <code>ALL</code> </p>
*/
inline DeleteBandwidthRateLimitRequest& WithBandwidthType(Aws::String&& value) { SetBandwidthType(std::move(value)); return *this;}
/**
* <p>One of the BandwidthType values that indicates the gateway bandwidth rate
* limit to delete.</p> <p>Valid Values: <code>UPLOAD</code> |
* <code>DOWNLOAD</code> | <code>ALL</code> </p>
*/
inline DeleteBandwidthRateLimitRequest& WithBandwidthType(const char* value) { SetBandwidthType(value); return *this;}
private:
Aws::String m_gatewayARN;
bool m_gatewayARNHasBeenSet;
Aws::String m_bandwidthType;
bool m_bandwidthTypeHasBeenSet;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,69 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace StorageGateway
{
namespace Model
{
/**
* <p>A JSON object containing the Amazon Resource Name (ARN) of the gateway whose
* bandwidth rate information was deleted.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/DeleteBandwidthRateLimitOutput">AWS
* API Reference</a></p>
*/
class AWS_STORAGEGATEWAY_API DeleteBandwidthRateLimitResult
{
public:
DeleteBandwidthRateLimitResult();
DeleteBandwidthRateLimitResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
DeleteBandwidthRateLimitResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& 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 DeleteBandwidthRateLimitResult& WithGatewayARN(const Aws::String& value) { SetGatewayARN(value); return *this;}
inline DeleteBandwidthRateLimitResult& WithGatewayARN(Aws::String&& value) { SetGatewayARN(std::move(value)); return *this;}
inline DeleteBandwidthRateLimitResult& WithGatewayARN(const char* value) { SetGatewayARN(value); return *this;}
private:
Aws::String m_gatewayARN;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,151 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/storagegateway/StorageGatewayRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace StorageGateway
{
namespace Model
{
/**
* <p>A JSON object containing one or more of the following fields:</p> <ul> <li>
* <p> <a>DeleteChapCredentialsInput$InitiatorName</a> </p> </li> <li> <p>
* <a>DeleteChapCredentialsInput$TargetARN</a> </p> </li> </ul><p><h3>See
* Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/DeleteChapCredentialsInput">AWS
* API Reference</a></p>
*/
class AWS_STORAGEGATEWAY_API DeleteChapCredentialsRequest : public StorageGatewayRequest
{
public:
DeleteChapCredentialsRequest();
// 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 "DeleteChapCredentials"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
/**
* <p>The Amazon Resource Name (ARN) of the iSCSI volume target. Use the
* <a>DescribeStorediSCSIVolumes</a> operation to return to retrieve the TargetARN
* for specified VolumeARN.</p>
*/
inline const Aws::String& GetTargetARN() const{ return m_targetARN; }
/**
* <p>The Amazon Resource Name (ARN) of the iSCSI volume target. Use the
* <a>DescribeStorediSCSIVolumes</a> operation to return to retrieve the TargetARN
* for specified VolumeARN.</p>
*/
inline bool TargetARNHasBeenSet() const { return m_targetARNHasBeenSet; }
/**
* <p>The Amazon Resource Name (ARN) of the iSCSI volume target. Use the
* <a>DescribeStorediSCSIVolumes</a> operation to return to retrieve the TargetARN
* for specified VolumeARN.</p>
*/
inline void SetTargetARN(const Aws::String& value) { m_targetARNHasBeenSet = true; m_targetARN = value; }
/**
* <p>The Amazon Resource Name (ARN) of the iSCSI volume target. Use the
* <a>DescribeStorediSCSIVolumes</a> operation to return to retrieve the TargetARN
* for specified VolumeARN.</p>
*/
inline void SetTargetARN(Aws::String&& value) { m_targetARNHasBeenSet = true; m_targetARN = std::move(value); }
/**
* <p>The Amazon Resource Name (ARN) of the iSCSI volume target. Use the
* <a>DescribeStorediSCSIVolumes</a> operation to return to retrieve the TargetARN
* for specified VolumeARN.</p>
*/
inline void SetTargetARN(const char* value) { m_targetARNHasBeenSet = true; m_targetARN.assign(value); }
/**
* <p>The Amazon Resource Name (ARN) of the iSCSI volume target. Use the
* <a>DescribeStorediSCSIVolumes</a> operation to return to retrieve the TargetARN
* for specified VolumeARN.</p>
*/
inline DeleteChapCredentialsRequest& WithTargetARN(const Aws::String& value) { SetTargetARN(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the iSCSI volume target. Use the
* <a>DescribeStorediSCSIVolumes</a> operation to return to retrieve the TargetARN
* for specified VolumeARN.</p>
*/
inline DeleteChapCredentialsRequest& WithTargetARN(Aws::String&& value) { SetTargetARN(std::move(value)); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the iSCSI volume target. Use the
* <a>DescribeStorediSCSIVolumes</a> operation to return to retrieve the TargetARN
* for specified VolumeARN.</p>
*/
inline DeleteChapCredentialsRequest& WithTargetARN(const char* value) { SetTargetARN(value); return *this;}
/**
* <p>The iSCSI initiator that connects to the target.</p>
*/
inline const Aws::String& GetInitiatorName() const{ return m_initiatorName; }
/**
* <p>The iSCSI initiator that connects to the target.</p>
*/
inline bool InitiatorNameHasBeenSet() const { return m_initiatorNameHasBeenSet; }
/**
* <p>The iSCSI initiator that connects to the target.</p>
*/
inline void SetInitiatorName(const Aws::String& value) { m_initiatorNameHasBeenSet = true; m_initiatorName = value; }
/**
* <p>The iSCSI initiator that connects to the target.</p>
*/
inline void SetInitiatorName(Aws::String&& value) { m_initiatorNameHasBeenSet = true; m_initiatorName = std::move(value); }
/**
* <p>The iSCSI initiator that connects to the target.</p>
*/
inline void SetInitiatorName(const char* value) { m_initiatorNameHasBeenSet = true; m_initiatorName.assign(value); }
/**
* <p>The iSCSI initiator that connects to the target.</p>
*/
inline DeleteChapCredentialsRequest& WithInitiatorName(const Aws::String& value) { SetInitiatorName(value); return *this;}
/**
* <p>The iSCSI initiator that connects to the target.</p>
*/
inline DeleteChapCredentialsRequest& WithInitiatorName(Aws::String&& value) { SetInitiatorName(std::move(value)); return *this;}
/**
* <p>The iSCSI initiator that connects to the target.</p>
*/
inline DeleteChapCredentialsRequest& WithInitiatorName(const char* value) { SetInitiatorName(value); return *this;}
private:
Aws::String m_targetARN;
bool m_targetARNHasBeenSet;
Aws::String m_initiatorName;
bool m_initiatorNameHasBeenSet;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,120 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace StorageGateway
{
namespace Model
{
/**
* <p>A JSON object containing the following fields:</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/DeleteChapCredentialsOutput">AWS
* API Reference</a></p>
*/
class AWS_STORAGEGATEWAY_API DeleteChapCredentialsResult
{
public:
DeleteChapCredentialsResult();
DeleteChapCredentialsResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
DeleteChapCredentialsResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>The Amazon Resource Name (ARN) of the target.</p>
*/
inline const Aws::String& GetTargetARN() const{ return m_targetARN; }
/**
* <p>The Amazon Resource Name (ARN) of the target.</p>
*/
inline void SetTargetARN(const Aws::String& value) { m_targetARN = value; }
/**
* <p>The Amazon Resource Name (ARN) of the target.</p>
*/
inline void SetTargetARN(Aws::String&& value) { m_targetARN = std::move(value); }
/**
* <p>The Amazon Resource Name (ARN) of the target.</p>
*/
inline void SetTargetARN(const char* value) { m_targetARN.assign(value); }
/**
* <p>The Amazon Resource Name (ARN) of the target.</p>
*/
inline DeleteChapCredentialsResult& WithTargetARN(const Aws::String& value) { SetTargetARN(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the target.</p>
*/
inline DeleteChapCredentialsResult& WithTargetARN(Aws::String&& value) { SetTargetARN(std::move(value)); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the target.</p>
*/
inline DeleteChapCredentialsResult& WithTargetARN(const char* value) { SetTargetARN(value); return *this;}
/**
* <p>The iSCSI initiator that connects to the target.</p>
*/
inline const Aws::String& GetInitiatorName() const{ return m_initiatorName; }
/**
* <p>The iSCSI initiator that connects to the target.</p>
*/
inline void SetInitiatorName(const Aws::String& value) { m_initiatorName = value; }
/**
* <p>The iSCSI initiator that connects to the target.</p>
*/
inline void SetInitiatorName(Aws::String&& value) { m_initiatorName = std::move(value); }
/**
* <p>The iSCSI initiator that connects to the target.</p>
*/
inline void SetInitiatorName(const char* value) { m_initiatorName.assign(value); }
/**
* <p>The iSCSI initiator that connects to the target.</p>
*/
inline DeleteChapCredentialsResult& WithInitiatorName(const Aws::String& value) { SetInitiatorName(value); return *this;}
/**
* <p>The iSCSI initiator that connects to the target.</p>
*/
inline DeleteChapCredentialsResult& WithInitiatorName(Aws::String&& value) { SetInitiatorName(std::move(value)); return *this;}
/**
* <p>The iSCSI initiator that connects to the target.</p>
*/
inline DeleteChapCredentialsResult& WithInitiatorName(const char* value) { SetInitiatorName(value); return *this;}
private:
Aws::String m_targetARN;
Aws::String m_initiatorName;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,128 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/storagegateway/StorageGatewayRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace StorageGateway
{
namespace Model
{
/**
* <p>DeleteFileShareInput</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/DeleteFileShareInput">AWS
* API Reference</a></p>
*/
class AWS_STORAGEGATEWAY_API DeleteFileShareRequest : public StorageGatewayRequest
{
public:
DeleteFileShareRequest();
// 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 "DeleteFileShare"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
/**
* <p>The Amazon Resource Name (ARN) of the file share to be deleted.</p>
*/
inline const Aws::String& GetFileShareARN() const{ return m_fileShareARN; }
/**
* <p>The Amazon Resource Name (ARN) of the file share to be deleted.</p>
*/
inline bool FileShareARNHasBeenSet() const { return m_fileShareARNHasBeenSet; }
/**
* <p>The Amazon Resource Name (ARN) of the file share to be deleted.</p>
*/
inline void SetFileShareARN(const Aws::String& value) { m_fileShareARNHasBeenSet = true; m_fileShareARN = value; }
/**
* <p>The Amazon Resource Name (ARN) of the file share to be deleted.</p>
*/
inline void SetFileShareARN(Aws::String&& value) { m_fileShareARNHasBeenSet = true; m_fileShareARN = std::move(value); }
/**
* <p>The Amazon Resource Name (ARN) of the file share to be deleted.</p>
*/
inline void SetFileShareARN(const char* value) { m_fileShareARNHasBeenSet = true; m_fileShareARN.assign(value); }
/**
* <p>The Amazon Resource Name (ARN) of the file share to be deleted.</p>
*/
inline DeleteFileShareRequest& WithFileShareARN(const Aws::String& value) { SetFileShareARN(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the file share to be deleted.</p>
*/
inline DeleteFileShareRequest& WithFileShareARN(Aws::String&& value) { SetFileShareARN(std::move(value)); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the file share to be deleted.</p>
*/
inline DeleteFileShareRequest& WithFileShareARN(const char* value) { SetFileShareARN(value); return *this;}
/**
* <p>If this value is set to <code>true</code>, the operation deletes a file share
* immediately and aborts all data uploads to AWS. Otherwise, the file share is not
* deleted until all data is uploaded to AWS. This process aborts the data upload
* process, and the file share enters the <code>FORCE_DELETING</code> status.</p>
* <p>Valid Values: <code>true</code> | <code>false</code> </p>
*/
inline bool GetForceDelete() const{ return m_forceDelete; }
/**
* <p>If this value is set to <code>true</code>, the operation deletes a file share
* immediately and aborts all data uploads to AWS. Otherwise, the file share is not
* deleted until all data is uploaded to AWS. This process aborts the data upload
* process, and the file share enters the <code>FORCE_DELETING</code> status.</p>
* <p>Valid Values: <code>true</code> | <code>false</code> </p>
*/
inline bool ForceDeleteHasBeenSet() const { return m_forceDeleteHasBeenSet; }
/**
* <p>If this value is set to <code>true</code>, the operation deletes a file share
* immediately and aborts all data uploads to AWS. Otherwise, the file share is not
* deleted until all data is uploaded to AWS. This process aborts the data upload
* process, and the file share enters the <code>FORCE_DELETING</code> status.</p>
* <p>Valid Values: <code>true</code> | <code>false</code> </p>
*/
inline void SetForceDelete(bool value) { m_forceDeleteHasBeenSet = true; m_forceDelete = value; }
/**
* <p>If this value is set to <code>true</code>, the operation deletes a file share
* immediately and aborts all data uploads to AWS. Otherwise, the file share is not
* deleted until all data is uploaded to AWS. This process aborts the data upload
* process, and the file share enters the <code>FORCE_DELETING</code> status.</p>
* <p>Valid Values: <code>true</code> | <code>false</code> </p>
*/
inline DeleteFileShareRequest& WithForceDelete(bool value) { SetForceDelete(value); return *this;}
private:
Aws::String m_fileShareARN;
bool m_fileShareARNHasBeenSet;
bool m_forceDelete;
bool m_forceDeleteHasBeenSet;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,82 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace StorageGateway
{
namespace Model
{
/**
* <p>DeleteFileShareOutput</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/DeleteFileShareOutput">AWS
* API Reference</a></p>
*/
class AWS_STORAGEGATEWAY_API DeleteFileShareResult
{
public:
DeleteFileShareResult();
DeleteFileShareResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
DeleteFileShareResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>The Amazon Resource Name (ARN) of the deleted file share.</p>
*/
inline const Aws::String& GetFileShareARN() const{ return m_fileShareARN; }
/**
* <p>The Amazon Resource Name (ARN) of the deleted file share.</p>
*/
inline void SetFileShareARN(const Aws::String& value) { m_fileShareARN = value; }
/**
* <p>The Amazon Resource Name (ARN) of the deleted file share.</p>
*/
inline void SetFileShareARN(Aws::String&& value) { m_fileShareARN = std::move(value); }
/**
* <p>The Amazon Resource Name (ARN) of the deleted file share.</p>
*/
inline void SetFileShareARN(const char* value) { m_fileShareARN.assign(value); }
/**
* <p>The Amazon Resource Name (ARN) of the deleted file share.</p>
*/
inline DeleteFileShareResult& WithFileShareARN(const Aws::String& value) { SetFileShareARN(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the deleted file share.</p>
*/
inline DeleteFileShareResult& WithFileShareARN(Aws::String&& value) { SetFileShareARN(std::move(value)); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the deleted file share.</p>
*/
inline DeleteFileShareResult& WithFileShareARN(const char* value) { SetFileShareARN(value); return *this;}
private:
Aws::String m_fileShareARN;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,73 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/storagegateway/StorageGatewayRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace StorageGateway
{
namespace Model
{
/**
* <p>A JSON object containing the ID of the gateway to delete.</p><p><h3>See
* Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/DeleteGatewayInput">AWS
* API Reference</a></p>
*/
class AWS_STORAGEGATEWAY_API DeleteGatewayRequest : public StorageGatewayRequest
{
public:
DeleteGatewayRequest();
// 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 "DeleteGateway"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
inline const Aws::String& GetGatewayARN() const{ return m_gatewayARN; }
inline bool GatewayARNHasBeenSet() const { return m_gatewayARNHasBeenSet; }
inline void SetGatewayARN(const Aws::String& value) { m_gatewayARNHasBeenSet = true; m_gatewayARN = value; }
inline void SetGatewayARN(Aws::String&& value) { m_gatewayARNHasBeenSet = true; m_gatewayARN = std::move(value); }
inline void SetGatewayARN(const char* value) { m_gatewayARNHasBeenSet = true; m_gatewayARN.assign(value); }
inline DeleteGatewayRequest& WithGatewayARN(const Aws::String& value) { SetGatewayARN(value); return *this;}
inline DeleteGatewayRequest& WithGatewayARN(Aws::String&& value) { SetGatewayARN(std::move(value)); return *this;}
inline DeleteGatewayRequest& WithGatewayARN(const char* value) { SetGatewayARN(value); return *this;}
private:
Aws::String m_gatewayARN;
bool m_gatewayARNHasBeenSet;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,69 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace StorageGateway
{
namespace Model
{
/**
* <p>A JSON object containing the ID of the deleted gateway.</p><p><h3>See
* Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/DeleteGatewayOutput">AWS
* API Reference</a></p>
*/
class AWS_STORAGEGATEWAY_API DeleteGatewayResult
{
public:
DeleteGatewayResult();
DeleteGatewayResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
DeleteGatewayResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& 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 DeleteGatewayResult& WithGatewayARN(const Aws::String& value) { SetGatewayARN(value); return *this;}
inline DeleteGatewayResult& WithGatewayARN(Aws::String&& value) { SetGatewayARN(std::move(value)); return *this;}
inline DeleteGatewayResult& WithGatewayARN(const char* value) { SetGatewayARN(value); return *this;}
private:
Aws::String m_gatewayARN;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,85 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/storagegateway/StorageGatewayRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace StorageGateway
{
namespace Model
{
/**
*/
class AWS_STORAGEGATEWAY_API DeleteSnapshotScheduleRequest : public StorageGatewayRequest
{
public:
DeleteSnapshotScheduleRequest();
// 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 "DeleteSnapshotSchedule"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
/**
* <p>The volume which snapshot schedule to delete.</p>
*/
inline const Aws::String& GetVolumeARN() const{ return m_volumeARN; }
/**
* <p>The volume which snapshot schedule to delete.</p>
*/
inline bool VolumeARNHasBeenSet() const { return m_volumeARNHasBeenSet; }
/**
* <p>The volume which snapshot schedule to delete.</p>
*/
inline void SetVolumeARN(const Aws::String& value) { m_volumeARNHasBeenSet = true; m_volumeARN = value; }
/**
* <p>The volume which snapshot schedule to delete.</p>
*/
inline void SetVolumeARN(Aws::String&& value) { m_volumeARNHasBeenSet = true; m_volumeARN = std::move(value); }
/**
* <p>The volume which snapshot schedule to delete.</p>
*/
inline void SetVolumeARN(const char* value) { m_volumeARNHasBeenSet = true; m_volumeARN.assign(value); }
/**
* <p>The volume which snapshot schedule to delete.</p>
*/
inline DeleteSnapshotScheduleRequest& WithVolumeARN(const Aws::String& value) { SetVolumeARN(value); return *this;}
/**
* <p>The volume which snapshot schedule to delete.</p>
*/
inline DeleteSnapshotScheduleRequest& WithVolumeARN(Aws::String&& value) { SetVolumeARN(std::move(value)); return *this;}
/**
* <p>The volume which snapshot schedule to delete.</p>
*/
inline DeleteSnapshotScheduleRequest& WithVolumeARN(const char* value) { SetVolumeARN(value); return *this;}
private:
Aws::String m_volumeARN;
bool m_volumeARNHasBeenSet;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,77 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace StorageGateway
{
namespace Model
{
class AWS_STORAGEGATEWAY_API DeleteSnapshotScheduleResult
{
public:
DeleteSnapshotScheduleResult();
DeleteSnapshotScheduleResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
DeleteSnapshotScheduleResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>The volume which snapshot schedule was deleted.</p>
*/
inline const Aws::String& GetVolumeARN() const{ return m_volumeARN; }
/**
* <p>The volume which snapshot schedule was deleted.</p>
*/
inline void SetVolumeARN(const Aws::String& value) { m_volumeARN = value; }
/**
* <p>The volume which snapshot schedule was deleted.</p>
*/
inline void SetVolumeARN(Aws::String&& value) { m_volumeARN = std::move(value); }
/**
* <p>The volume which snapshot schedule was deleted.</p>
*/
inline void SetVolumeARN(const char* value) { m_volumeARN.assign(value); }
/**
* <p>The volume which snapshot schedule was deleted.</p>
*/
inline DeleteSnapshotScheduleResult& WithVolumeARN(const Aws::String& value) { SetVolumeARN(value); return *this;}
/**
* <p>The volume which snapshot schedule was deleted.</p>
*/
inline DeleteSnapshotScheduleResult& WithVolumeARN(Aws::String&& value) { SetVolumeARN(std::move(value)); return *this;}
/**
* <p>The volume which snapshot schedule was deleted.</p>
*/
inline DeleteSnapshotScheduleResult& WithVolumeARN(const char* value) { SetVolumeARN(value); return *this;}
private:
Aws::String m_volumeARN;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,132 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/storagegateway/StorageGatewayRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace StorageGateway
{
namespace Model
{
/**
* <p>DeleteTapeArchiveInput</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/DeleteTapeArchiveInput">AWS
* API Reference</a></p>
*/
class AWS_STORAGEGATEWAY_API DeleteTapeArchiveRequest : public StorageGatewayRequest
{
public:
DeleteTapeArchiveRequest();
// 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 "DeleteTapeArchive"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
/**
* <p>The Amazon Resource Name (ARN) of the virtual tape to delete from the virtual
* tape shelf (VTS).</p>
*/
inline const Aws::String& GetTapeARN() const{ return m_tapeARN; }
/**
* <p>The Amazon Resource Name (ARN) of the virtual tape to delete from the virtual
* tape shelf (VTS).</p>
*/
inline bool TapeARNHasBeenSet() const { return m_tapeARNHasBeenSet; }
/**
* <p>The Amazon Resource Name (ARN) of the virtual tape to delete from the virtual
* tape shelf (VTS).</p>
*/
inline void SetTapeARN(const Aws::String& value) { m_tapeARNHasBeenSet = true; m_tapeARN = value; }
/**
* <p>The Amazon Resource Name (ARN) of the virtual tape to delete from the virtual
* tape shelf (VTS).</p>
*/
inline void SetTapeARN(Aws::String&& value) { m_tapeARNHasBeenSet = true; m_tapeARN = std::move(value); }
/**
* <p>The Amazon Resource Name (ARN) of the virtual tape to delete from the virtual
* tape shelf (VTS).</p>
*/
inline void SetTapeARN(const char* value) { m_tapeARNHasBeenSet = true; m_tapeARN.assign(value); }
/**
* <p>The Amazon Resource Name (ARN) of the virtual tape to delete from the virtual
* tape shelf (VTS).</p>
*/
inline DeleteTapeArchiveRequest& WithTapeARN(const Aws::String& value) { SetTapeARN(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the virtual tape to delete from the virtual
* tape shelf (VTS).</p>
*/
inline DeleteTapeArchiveRequest& WithTapeARN(Aws::String&& value) { SetTapeARN(std::move(value)); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the virtual tape to delete from the virtual
* tape shelf (VTS).</p>
*/
inline DeleteTapeArchiveRequest& WithTapeARN(const char* value) { SetTapeARN(value); return *this;}
/**
* <p>Set to <code>TRUE</code> to delete an archived tape that belongs to a custom
* pool with tape retention lock. Only archived tapes with tape retention lock set
* to <code>governance</code> can be deleted. Archived tapes with tape retention
* lock set to <code>compliance</code> can't be deleted.</p>
*/
inline bool GetBypassGovernanceRetention() const{ return m_bypassGovernanceRetention; }
/**
* <p>Set to <code>TRUE</code> to delete an archived tape that belongs to a custom
* pool with tape retention lock. Only archived tapes with tape retention lock set
* to <code>governance</code> can be deleted. Archived tapes with tape retention
* lock set to <code>compliance</code> can't be deleted.</p>
*/
inline bool BypassGovernanceRetentionHasBeenSet() const { return m_bypassGovernanceRetentionHasBeenSet; }
/**
* <p>Set to <code>TRUE</code> to delete an archived tape that belongs to a custom
* pool with tape retention lock. Only archived tapes with tape retention lock set
* to <code>governance</code> can be deleted. Archived tapes with tape retention
* lock set to <code>compliance</code> can't be deleted.</p>
*/
inline void SetBypassGovernanceRetention(bool value) { m_bypassGovernanceRetentionHasBeenSet = true; m_bypassGovernanceRetention = value; }
/**
* <p>Set to <code>TRUE</code> to delete an archived tape that belongs to a custom
* pool with tape retention lock. Only archived tapes with tape retention lock set
* to <code>governance</code> can be deleted. Archived tapes with tape retention
* lock set to <code>compliance</code> can't be deleted.</p>
*/
inline DeleteTapeArchiveRequest& WithBypassGovernanceRetention(bool value) { SetBypassGovernanceRetention(value); return *this;}
private:
Aws::String m_tapeARN;
bool m_tapeARNHasBeenSet;
bool m_bypassGovernanceRetention;
bool m_bypassGovernanceRetentionHasBeenSet;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,89 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace StorageGateway
{
namespace Model
{
/**
* <p>DeleteTapeArchiveOutput</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/DeleteTapeArchiveOutput">AWS
* API Reference</a></p>
*/
class AWS_STORAGEGATEWAY_API DeleteTapeArchiveResult
{
public:
DeleteTapeArchiveResult();
DeleteTapeArchiveResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
DeleteTapeArchiveResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>The Amazon Resource Name (ARN) of the virtual tape that was deleted from the
* virtual tape shelf (VTS).</p>
*/
inline const Aws::String& GetTapeARN() const{ return m_tapeARN; }
/**
* <p>The Amazon Resource Name (ARN) of the virtual tape that was deleted from the
* virtual tape shelf (VTS).</p>
*/
inline void SetTapeARN(const Aws::String& value) { m_tapeARN = value; }
/**
* <p>The Amazon Resource Name (ARN) of the virtual tape that was deleted from the
* virtual tape shelf (VTS).</p>
*/
inline void SetTapeARN(Aws::String&& value) { m_tapeARN = std::move(value); }
/**
* <p>The Amazon Resource Name (ARN) of the virtual tape that was deleted from the
* virtual tape shelf (VTS).</p>
*/
inline void SetTapeARN(const char* value) { m_tapeARN.assign(value); }
/**
* <p>The Amazon Resource Name (ARN) of the virtual tape that was deleted from the
* virtual tape shelf (VTS).</p>
*/
inline DeleteTapeArchiveResult& WithTapeARN(const Aws::String& value) { SetTapeARN(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the virtual tape that was deleted from the
* virtual tape shelf (VTS).</p>
*/
inline DeleteTapeArchiveResult& WithTapeARN(Aws::String&& value) { SetTapeARN(std::move(value)); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the virtual tape that was deleted from the
* virtual tape shelf (VTS).</p>
*/
inline DeleteTapeArchiveResult& WithTapeARN(const char* value) { SetTapeARN(value); return *this;}
private:
Aws::String m_tapeARN;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,85 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/storagegateway/StorageGatewayRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace StorageGateway
{
namespace Model
{
/**
*/
class AWS_STORAGEGATEWAY_API DeleteTapePoolRequest : public StorageGatewayRequest
{
public:
DeleteTapePoolRequest();
// 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 "DeleteTapePool"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
/**
* <p>The Amazon Resource Name (ARN) of the custom tape pool to delete.</p>
*/
inline const Aws::String& GetPoolARN() const{ return m_poolARN; }
/**
* <p>The Amazon Resource Name (ARN) of the custom tape pool to delete.</p>
*/
inline bool PoolARNHasBeenSet() const { return m_poolARNHasBeenSet; }
/**
* <p>The Amazon Resource Name (ARN) of the custom tape pool to delete.</p>
*/
inline void SetPoolARN(const Aws::String& value) { m_poolARNHasBeenSet = true; m_poolARN = value; }
/**
* <p>The Amazon Resource Name (ARN) of the custom tape pool to delete.</p>
*/
inline void SetPoolARN(Aws::String&& value) { m_poolARNHasBeenSet = true; m_poolARN = std::move(value); }
/**
* <p>The Amazon Resource Name (ARN) of the custom tape pool to delete.</p>
*/
inline void SetPoolARN(const char* value) { m_poolARNHasBeenSet = true; m_poolARN.assign(value); }
/**
* <p>The Amazon Resource Name (ARN) of the custom tape pool to delete.</p>
*/
inline DeleteTapePoolRequest& WithPoolARN(const Aws::String& value) { SetPoolARN(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the custom tape pool to delete.</p>
*/
inline DeleteTapePoolRequest& WithPoolARN(Aws::String&& value) { SetPoolARN(std::move(value)); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the custom tape pool to delete.</p>
*/
inline DeleteTapePoolRequest& WithPoolARN(const char* value) { SetPoolARN(value); return *this;}
private:
Aws::String m_poolARN;
bool m_poolARNHasBeenSet;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,77 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace StorageGateway
{
namespace Model
{
class AWS_STORAGEGATEWAY_API DeleteTapePoolResult
{
public:
DeleteTapePoolResult();
DeleteTapePoolResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
DeleteTapePoolResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>The Amazon Resource Name (ARN) of the custom tape pool being deleted.</p>
*/
inline const Aws::String& GetPoolARN() const{ return m_poolARN; }
/**
* <p>The Amazon Resource Name (ARN) of the custom tape pool being deleted.</p>
*/
inline void SetPoolARN(const Aws::String& value) { m_poolARN = value; }
/**
* <p>The Amazon Resource Name (ARN) of the custom tape pool being deleted.</p>
*/
inline void SetPoolARN(Aws::String&& value) { m_poolARN = std::move(value); }
/**
* <p>The Amazon Resource Name (ARN) of the custom tape pool being deleted.</p>
*/
inline void SetPoolARN(const char* value) { m_poolARN.assign(value); }
/**
* <p>The Amazon Resource Name (ARN) of the custom tape pool being deleted.</p>
*/
inline DeleteTapePoolResult& WithPoolARN(const Aws::String& value) { SetPoolARN(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the custom tape pool being deleted.</p>
*/
inline DeleteTapePoolResult& WithPoolARN(Aws::String&& value) { SetPoolARN(std::move(value)); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the custom tape pool being deleted.</p>
*/
inline DeleteTapePoolResult& WithPoolARN(const char* value) { SetPoolARN(value); return *this;}
private:
Aws::String m_poolARN;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,184 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/storagegateway/StorageGatewayRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace StorageGateway
{
namespace Model
{
/**
* <p>DeleteTapeInput</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/DeleteTapeInput">AWS
* API Reference</a></p>
*/
class AWS_STORAGEGATEWAY_API DeleteTapeRequest : public StorageGatewayRequest
{
public:
DeleteTapeRequest();
// 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 "DeleteTape"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
/**
* <p>The unique Amazon Resource Name (ARN) of the gateway that the virtual tape to
* delete is associated with. Use the <a>ListGateways</a> operation to return a
* list of gateways for your account and AWS Region.</p>
*/
inline const Aws::String& GetGatewayARN() const{ return m_gatewayARN; }
/**
* <p>The unique Amazon Resource Name (ARN) of the gateway that the virtual tape to
* delete is associated with. Use the <a>ListGateways</a> operation to return a
* list of gateways for your account and AWS Region.</p>
*/
inline bool GatewayARNHasBeenSet() const { return m_gatewayARNHasBeenSet; }
/**
* <p>The unique Amazon Resource Name (ARN) of the gateway that the virtual tape to
* delete is associated with. Use the <a>ListGateways</a> operation to return a
* list of gateways for your account and AWS Region.</p>
*/
inline void SetGatewayARN(const Aws::String& value) { m_gatewayARNHasBeenSet = true; m_gatewayARN = value; }
/**
* <p>The unique Amazon Resource Name (ARN) of the gateway that the virtual tape to
* delete is associated with. Use the <a>ListGateways</a> operation to return a
* list of gateways for your account and AWS Region.</p>
*/
inline void SetGatewayARN(Aws::String&& value) { m_gatewayARNHasBeenSet = true; m_gatewayARN = std::move(value); }
/**
* <p>The unique Amazon Resource Name (ARN) of the gateway that the virtual tape to
* delete is associated with. Use the <a>ListGateways</a> operation to return a
* list of gateways for your account and AWS Region.</p>
*/
inline void SetGatewayARN(const char* value) { m_gatewayARNHasBeenSet = true; m_gatewayARN.assign(value); }
/**
* <p>The unique Amazon Resource Name (ARN) of the gateway that the virtual tape to
* delete is associated with. Use the <a>ListGateways</a> operation to return a
* list of gateways for your account and AWS Region.</p>
*/
inline DeleteTapeRequest& WithGatewayARN(const Aws::String& value) { SetGatewayARN(value); return *this;}
/**
* <p>The unique Amazon Resource Name (ARN) of the gateway that the virtual tape to
* delete is associated with. Use the <a>ListGateways</a> operation to return a
* list of gateways for your account and AWS Region.</p>
*/
inline DeleteTapeRequest& WithGatewayARN(Aws::String&& value) { SetGatewayARN(std::move(value)); return *this;}
/**
* <p>The unique Amazon Resource Name (ARN) of the gateway that the virtual tape to
* delete is associated with. Use the <a>ListGateways</a> operation to return a
* list of gateways for your account and AWS Region.</p>
*/
inline DeleteTapeRequest& WithGatewayARN(const char* value) { SetGatewayARN(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the virtual tape to delete.</p>
*/
inline const Aws::String& GetTapeARN() const{ return m_tapeARN; }
/**
* <p>The Amazon Resource Name (ARN) of the virtual tape to delete.</p>
*/
inline bool TapeARNHasBeenSet() const { return m_tapeARNHasBeenSet; }
/**
* <p>The Amazon Resource Name (ARN) of the virtual tape to delete.</p>
*/
inline void SetTapeARN(const Aws::String& value) { m_tapeARNHasBeenSet = true; m_tapeARN = value; }
/**
* <p>The Amazon Resource Name (ARN) of the virtual tape to delete.</p>
*/
inline void SetTapeARN(Aws::String&& value) { m_tapeARNHasBeenSet = true; m_tapeARN = std::move(value); }
/**
* <p>The Amazon Resource Name (ARN) of the virtual tape to delete.</p>
*/
inline void SetTapeARN(const char* value) { m_tapeARNHasBeenSet = true; m_tapeARN.assign(value); }
/**
* <p>The Amazon Resource Name (ARN) of the virtual tape to delete.</p>
*/
inline DeleteTapeRequest& WithTapeARN(const Aws::String& value) { SetTapeARN(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the virtual tape to delete.</p>
*/
inline DeleteTapeRequest& WithTapeARN(Aws::String&& value) { SetTapeARN(std::move(value)); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the virtual tape to delete.</p>
*/
inline DeleteTapeRequest& WithTapeARN(const char* value) { SetTapeARN(value); return *this;}
/**
* <p>Set to <code>TRUE</code> to delete an archived tape that belongs to a custom
* pool with tape retention lock. Only archived tapes with tape retention lock set
* to <code>governance</code> can be deleted. Archived tapes with tape retention
* lock set to <code>compliance</code> can't be deleted.</p>
*/
inline bool GetBypassGovernanceRetention() const{ return m_bypassGovernanceRetention; }
/**
* <p>Set to <code>TRUE</code> to delete an archived tape that belongs to a custom
* pool with tape retention lock. Only archived tapes with tape retention lock set
* to <code>governance</code> can be deleted. Archived tapes with tape retention
* lock set to <code>compliance</code> can't be deleted.</p>
*/
inline bool BypassGovernanceRetentionHasBeenSet() const { return m_bypassGovernanceRetentionHasBeenSet; }
/**
* <p>Set to <code>TRUE</code> to delete an archived tape that belongs to a custom
* pool with tape retention lock. Only archived tapes with tape retention lock set
* to <code>governance</code> can be deleted. Archived tapes with tape retention
* lock set to <code>compliance</code> can't be deleted.</p>
*/
inline void SetBypassGovernanceRetention(bool value) { m_bypassGovernanceRetentionHasBeenSet = true; m_bypassGovernanceRetention = value; }
/**
* <p>Set to <code>TRUE</code> to delete an archived tape that belongs to a custom
* pool with tape retention lock. Only archived tapes with tape retention lock set
* to <code>governance</code> can be deleted. Archived tapes with tape retention
* lock set to <code>compliance</code> can't be deleted.</p>
*/
inline DeleteTapeRequest& WithBypassGovernanceRetention(bool value) { SetBypassGovernanceRetention(value); return *this;}
private:
Aws::String m_gatewayARN;
bool m_gatewayARNHasBeenSet;
Aws::String m_tapeARN;
bool m_tapeARNHasBeenSet;
bool m_bypassGovernanceRetention;
bool m_bypassGovernanceRetentionHasBeenSet;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,82 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace StorageGateway
{
namespace Model
{
/**
* <p>DeleteTapeOutput</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/DeleteTapeOutput">AWS
* API Reference</a></p>
*/
class AWS_STORAGEGATEWAY_API DeleteTapeResult
{
public:
DeleteTapeResult();
DeleteTapeResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
DeleteTapeResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>The Amazon Resource Name (ARN) of the deleted virtual tape.</p>
*/
inline const Aws::String& GetTapeARN() const{ return m_tapeARN; }
/**
* <p>The Amazon Resource Name (ARN) of the deleted virtual tape.</p>
*/
inline void SetTapeARN(const Aws::String& value) { m_tapeARN = value; }
/**
* <p>The Amazon Resource Name (ARN) of the deleted virtual tape.</p>
*/
inline void SetTapeARN(Aws::String&& value) { m_tapeARN = std::move(value); }
/**
* <p>The Amazon Resource Name (ARN) of the deleted virtual tape.</p>
*/
inline void SetTapeARN(const char* value) { m_tapeARN.assign(value); }
/**
* <p>The Amazon Resource Name (ARN) of the deleted virtual tape.</p>
*/
inline DeleteTapeResult& WithTapeARN(const Aws::String& value) { SetTapeARN(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the deleted virtual tape.</p>
*/
inline DeleteTapeResult& WithTapeARN(Aws::String&& value) { SetTapeARN(std::move(value)); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the deleted virtual tape.</p>
*/
inline DeleteTapeResult& WithTapeARN(const char* value) { SetTapeARN(value); return *this;}
private:
Aws::String m_tapeARN;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,97 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/storagegateway/StorageGatewayRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace StorageGateway
{
namespace Model
{
/**
* <p>A JSON object containing the <a>DeleteVolumeInput$VolumeARN</a> to
* delete.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/DeleteVolumeInput">AWS
* API Reference</a></p>
*/
class AWS_STORAGEGATEWAY_API DeleteVolumeRequest : public StorageGatewayRequest
{
public:
DeleteVolumeRequest();
// 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 "DeleteVolume"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
/**
* <p>The Amazon Resource Name (ARN) of the volume. Use the <a>ListVolumes</a>
* operation to return a list of gateway volumes.</p>
*/
inline const Aws::String& GetVolumeARN() const{ return m_volumeARN; }
/**
* <p>The Amazon Resource Name (ARN) of the volume. Use the <a>ListVolumes</a>
* operation to return a list of gateway volumes.</p>
*/
inline bool VolumeARNHasBeenSet() const { return m_volumeARNHasBeenSet; }
/**
* <p>The Amazon Resource Name (ARN) of the volume. Use the <a>ListVolumes</a>
* operation to return a list of gateway volumes.</p>
*/
inline void SetVolumeARN(const Aws::String& value) { m_volumeARNHasBeenSet = true; m_volumeARN = value; }
/**
* <p>The Amazon Resource Name (ARN) of the volume. Use the <a>ListVolumes</a>
* operation to return a list of gateway volumes.</p>
*/
inline void SetVolumeARN(Aws::String&& value) { m_volumeARNHasBeenSet = true; m_volumeARN = std::move(value); }
/**
* <p>The Amazon Resource Name (ARN) of the volume. Use the <a>ListVolumes</a>
* operation to return a list of gateway volumes.</p>
*/
inline void SetVolumeARN(const char* value) { m_volumeARNHasBeenSet = true; m_volumeARN.assign(value); }
/**
* <p>The Amazon Resource Name (ARN) of the volume. Use the <a>ListVolumes</a>
* operation to return a list of gateway volumes.</p>
*/
inline DeleteVolumeRequest& WithVolumeARN(const Aws::String& value) { SetVolumeARN(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the volume. Use the <a>ListVolumes</a>
* operation to return a list of gateway volumes.</p>
*/
inline DeleteVolumeRequest& WithVolumeARN(Aws::String&& value) { SetVolumeARN(std::move(value)); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the volume. Use the <a>ListVolumes</a>
* operation to return a list of gateway volumes.</p>
*/
inline DeleteVolumeRequest& WithVolumeARN(const char* value) { SetVolumeARN(value); return *this;}
private:
Aws::String m_volumeARN;
bool m_volumeARNHasBeenSet;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,90 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace StorageGateway
{
namespace Model
{
/**
* <p>A JSON object containing the Amazon Resource Name (ARN) of the storage volume
* that was deleted.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/DeleteVolumeOutput">AWS
* API Reference</a></p>
*/
class AWS_STORAGEGATEWAY_API DeleteVolumeResult
{
public:
DeleteVolumeResult();
DeleteVolumeResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
DeleteVolumeResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>The Amazon Resource Name (ARN) of the storage volume that was deleted. It is
* the same ARN you provided in the request.</p>
*/
inline const Aws::String& GetVolumeARN() const{ return m_volumeARN; }
/**
* <p>The Amazon Resource Name (ARN) of the storage volume that was deleted. It is
* the same ARN you provided in the request.</p>
*/
inline void SetVolumeARN(const Aws::String& value) { m_volumeARN = value; }
/**
* <p>The Amazon Resource Name (ARN) of the storage volume that was deleted. It is
* the same ARN you provided in the request.</p>
*/
inline void SetVolumeARN(Aws::String&& value) { m_volumeARN = std::move(value); }
/**
* <p>The Amazon Resource Name (ARN) of the storage volume that was deleted. It is
* the same ARN you provided in the request.</p>
*/
inline void SetVolumeARN(const char* value) { m_volumeARN.assign(value); }
/**
* <p>The Amazon Resource Name (ARN) of the storage volume that was deleted. It is
* the same ARN you provided in the request.</p>
*/
inline DeleteVolumeResult& WithVolumeARN(const Aws::String& value) { SetVolumeARN(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the storage volume that was deleted. It is
* the same ARN you provided in the request.</p>
*/
inline DeleteVolumeResult& WithVolumeARN(Aws::String&& value) { SetVolumeARN(std::move(value)); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the storage volume that was deleted. It is
* the same ARN you provided in the request.</p>
*/
inline DeleteVolumeResult& WithVolumeARN(const char* value) { SetVolumeARN(value); return *this;}
private:
Aws::String m_volumeARN;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,69 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/storagegateway/StorageGatewayRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace StorageGateway
{
namespace Model
{
/**
*/
class AWS_STORAGEGATEWAY_API DescribeAvailabilityMonitorTestRequest : public StorageGatewayRequest
{
public:
DescribeAvailabilityMonitorTestRequest();
// 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 "DescribeAvailabilityMonitorTest"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
inline const Aws::String& GetGatewayARN() const{ return m_gatewayARN; }
inline bool GatewayARNHasBeenSet() const { return m_gatewayARNHasBeenSet; }
inline void SetGatewayARN(const Aws::String& value) { m_gatewayARNHasBeenSet = true; m_gatewayARN = value; }
inline void SetGatewayARN(Aws::String&& value) { m_gatewayARNHasBeenSet = true; m_gatewayARN = std::move(value); }
inline void SetGatewayARN(const char* value) { m_gatewayARNHasBeenSet = true; m_gatewayARN.assign(value); }
inline DescribeAvailabilityMonitorTestRequest& WithGatewayARN(const Aws::String& value) { SetGatewayARN(value); return *this;}
inline DescribeAvailabilityMonitorTestRequest& WithGatewayARN(Aws::String&& value) { SetGatewayARN(std::move(value)); return *this;}
inline DescribeAvailabilityMonitorTestRequest& WithGatewayARN(const char* value) { SetGatewayARN(value); return *this;}
private:
Aws::String m_gatewayARN;
bool m_gatewayARNHasBeenSet;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,131 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/storagegateway/model/AvailabilityMonitorTestStatus.h>
#include <aws/core/utils/DateTime.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace StorageGateway
{
namespace Model
{
class AWS_STORAGEGATEWAY_API DescribeAvailabilityMonitorTestResult
{
public:
DescribeAvailabilityMonitorTestResult();
DescribeAvailabilityMonitorTestResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
DescribeAvailabilityMonitorTestResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& 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 DescribeAvailabilityMonitorTestResult& WithGatewayARN(const Aws::String& value) { SetGatewayARN(value); return *this;}
inline DescribeAvailabilityMonitorTestResult& WithGatewayARN(Aws::String&& value) { SetGatewayARN(std::move(value)); return *this;}
inline DescribeAvailabilityMonitorTestResult& WithGatewayARN(const char* value) { SetGatewayARN(value); return *this;}
/**
* <p>The status of the High Availability monitoring test. If a test hasn't been
* performed, the value of this field is null.</p>
*/
inline const AvailabilityMonitorTestStatus& GetStatus() const{ return m_status; }
/**
* <p>The status of the High Availability monitoring test. If a test hasn't been
* performed, the value of this field is null.</p>
*/
inline void SetStatus(const AvailabilityMonitorTestStatus& value) { m_status = value; }
/**
* <p>The status of the High Availability monitoring test. If a test hasn't been
* performed, the value of this field is null.</p>
*/
inline void SetStatus(AvailabilityMonitorTestStatus&& value) { m_status = std::move(value); }
/**
* <p>The status of the High Availability monitoring test. If a test hasn't been
* performed, the value of this field is null.</p>
*/
inline DescribeAvailabilityMonitorTestResult& WithStatus(const AvailabilityMonitorTestStatus& value) { SetStatus(value); return *this;}
/**
* <p>The status of the High Availability monitoring test. If a test hasn't been
* performed, the value of this field is null.</p>
*/
inline DescribeAvailabilityMonitorTestResult& WithStatus(AvailabilityMonitorTestStatus&& value) { SetStatus(std::move(value)); return *this;}
/**
* <p>The time the High Availability monitoring test was started. If a test hasn't
* been performed, the value of this field is null.</p>
*/
inline const Aws::Utils::DateTime& GetStartTime() const{ return m_startTime; }
/**
* <p>The time the High Availability monitoring test was started. If a test hasn't
* been performed, the value of this field is null.</p>
*/
inline void SetStartTime(const Aws::Utils::DateTime& value) { m_startTime = value; }
/**
* <p>The time the High Availability monitoring test was started. If a test hasn't
* been performed, the value of this field is null.</p>
*/
inline void SetStartTime(Aws::Utils::DateTime&& value) { m_startTime = std::move(value); }
/**
* <p>The time the High Availability monitoring test was started. If a test hasn't
* been performed, the value of this field is null.</p>
*/
inline DescribeAvailabilityMonitorTestResult& WithStartTime(const Aws::Utils::DateTime& value) { SetStartTime(value); return *this;}
/**
* <p>The time the High Availability monitoring test was started. If a test hasn't
* been performed, the value of this field is null.</p>
*/
inline DescribeAvailabilityMonitorTestResult& WithStartTime(Aws::Utils::DateTime&& value) { SetStartTime(std::move(value)); return *this;}
private:
Aws::String m_gatewayARN;
AvailabilityMonitorTestStatus m_status;
Aws::Utils::DateTime m_startTime;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,73 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/storagegateway/StorageGatewayRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace StorageGateway
{
namespace Model
{
/**
* <p>A JSON object containing the Amazon Resource Name (ARN) of the
* gateway.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/DescribeBandwidthRateLimitInput">AWS
* API Reference</a></p>
*/
class AWS_STORAGEGATEWAY_API DescribeBandwidthRateLimitRequest : public StorageGatewayRequest
{
public:
DescribeBandwidthRateLimitRequest();
// 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 "DescribeBandwidthRateLimit"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
inline const Aws::String& GetGatewayARN() const{ return m_gatewayARN; }
inline bool GatewayARNHasBeenSet() const { return m_gatewayARNHasBeenSet; }
inline void SetGatewayARN(const Aws::String& value) { m_gatewayARNHasBeenSet = true; m_gatewayARN = value; }
inline void SetGatewayARN(Aws::String&& value) { m_gatewayARNHasBeenSet = true; m_gatewayARN = std::move(value); }
inline void SetGatewayARN(const char* value) { m_gatewayARNHasBeenSet = true; m_gatewayARN.assign(value); }
inline DescribeBandwidthRateLimitRequest& WithGatewayARN(const Aws::String& value) { SetGatewayARN(value); return *this;}
inline DescribeBandwidthRateLimitRequest& WithGatewayARN(Aws::String&& value) { SetGatewayARN(std::move(value)); return *this;}
inline DescribeBandwidthRateLimitRequest& WithGatewayARN(const char* value) { SetGatewayARN(value); return *this;}
private:
Aws::String m_gatewayARN;
bool m_gatewayARNHasBeenSet;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,110 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace StorageGateway
{
namespace Model
{
/**
* <p>A JSON object containing the following fields:</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/DescribeBandwidthRateLimitOutput">AWS
* API Reference</a></p>
*/
class AWS_STORAGEGATEWAY_API DescribeBandwidthRateLimitResult
{
public:
DescribeBandwidthRateLimitResult();
DescribeBandwidthRateLimitResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
DescribeBandwidthRateLimitResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& 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 DescribeBandwidthRateLimitResult& WithGatewayARN(const Aws::String& value) { SetGatewayARN(value); return *this;}
inline DescribeBandwidthRateLimitResult& WithGatewayARN(Aws::String&& value) { SetGatewayARN(std::move(value)); return *this;}
inline DescribeBandwidthRateLimitResult& WithGatewayARN(const char* value) { SetGatewayARN(value); return *this;}
/**
* <p>The average upload bandwidth rate limit in bits per second. This field does
* not appear in the response if the upload rate limit is not set.</p>
*/
inline long long GetAverageUploadRateLimitInBitsPerSec() const{ return m_averageUploadRateLimitInBitsPerSec; }
/**
* <p>The average upload bandwidth rate limit in bits per second. This field does
* not appear in the response if the upload rate limit is not set.</p>
*/
inline void SetAverageUploadRateLimitInBitsPerSec(long long value) { m_averageUploadRateLimitInBitsPerSec = value; }
/**
* <p>The average upload bandwidth rate limit in bits per second. This field does
* not appear in the response if the upload rate limit is not set.</p>
*/
inline DescribeBandwidthRateLimitResult& WithAverageUploadRateLimitInBitsPerSec(long long value) { SetAverageUploadRateLimitInBitsPerSec(value); return *this;}
/**
* <p>The average download bandwidth rate limit in bits per second. This field does
* not appear in the response if the download rate limit is not set.</p>
*/
inline long long GetAverageDownloadRateLimitInBitsPerSec() const{ return m_averageDownloadRateLimitInBitsPerSec; }
/**
* <p>The average download bandwidth rate limit in bits per second. This field does
* not appear in the response if the download rate limit is not set.</p>
*/
inline void SetAverageDownloadRateLimitInBitsPerSec(long long value) { m_averageDownloadRateLimitInBitsPerSec = value; }
/**
* <p>The average download bandwidth rate limit in bits per second. This field does
* not appear in the response if the download rate limit is not set.</p>
*/
inline DescribeBandwidthRateLimitResult& WithAverageDownloadRateLimitInBitsPerSec(long long value) { SetAverageDownloadRateLimitInBitsPerSec(value); return *this;}
private:
Aws::String m_gatewayARN;
long long m_averageUploadRateLimitInBitsPerSec;
long long m_averageDownloadRateLimitInBitsPerSec;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,69 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/storagegateway/StorageGatewayRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace StorageGateway
{
namespace Model
{
/**
*/
class AWS_STORAGEGATEWAY_API DescribeCacheRequest : public StorageGatewayRequest
{
public:
DescribeCacheRequest();
// 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 "DescribeCache"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
inline const Aws::String& GetGatewayARN() const{ return m_gatewayARN; }
inline bool GatewayARNHasBeenSet() const { return m_gatewayARNHasBeenSet; }
inline void SetGatewayARN(const Aws::String& value) { m_gatewayARNHasBeenSet = true; m_gatewayARN = value; }
inline void SetGatewayARN(Aws::String&& value) { m_gatewayARNHasBeenSet = true; m_gatewayARN = std::move(value); }
inline void SetGatewayARN(const char* value) { m_gatewayARNHasBeenSet = true; m_gatewayARN.assign(value); }
inline DescribeCacheRequest& WithGatewayARN(const Aws::String& value) { SetGatewayARN(value); return *this;}
inline DescribeCacheRequest& WithGatewayARN(Aws::String&& value) { SetGatewayARN(std::move(value)); return *this;}
inline DescribeCacheRequest& WithGatewayARN(const char* value) { SetGatewayARN(value); return *this;}
private:
Aws::String m_gatewayARN;
bool m_gatewayARNHasBeenSet;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,231 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace StorageGateway
{
namespace Model
{
class AWS_STORAGEGATEWAY_API DescribeCacheResult
{
public:
DescribeCacheResult();
DescribeCacheResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
DescribeCacheResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& 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 DescribeCacheResult& WithGatewayARN(const Aws::String& value) { SetGatewayARN(value); return *this;}
inline DescribeCacheResult& WithGatewayARN(Aws::String&& value) { SetGatewayARN(std::move(value)); return *this;}
inline DescribeCacheResult& WithGatewayARN(const char* value) { SetGatewayARN(value); return *this;}
/**
* <p>An array of strings that identify disks that are to be configured as working
* storage. Each string has a minimum length of 1 and maximum length of 300. You
* can get the disk IDs from the <a>ListLocalDisks</a> API.</p>
*/
inline const Aws::Vector<Aws::String>& GetDiskIds() const{ return m_diskIds; }
/**
* <p>An array of strings that identify disks that are to be configured as working
* storage. Each string has a minimum length of 1 and maximum length of 300. You
* can get the disk IDs from the <a>ListLocalDisks</a> API.</p>
*/
inline void SetDiskIds(const Aws::Vector<Aws::String>& value) { m_diskIds = value; }
/**
* <p>An array of strings that identify disks that are to be configured as working
* storage. Each string has a minimum length of 1 and maximum length of 300. You
* can get the disk IDs from the <a>ListLocalDisks</a> API.</p>
*/
inline void SetDiskIds(Aws::Vector<Aws::String>&& value) { m_diskIds = std::move(value); }
/**
* <p>An array of strings that identify disks that are to be configured as working
* storage. Each string has a minimum length of 1 and maximum length of 300. You
* can get the disk IDs from the <a>ListLocalDisks</a> API.</p>
*/
inline DescribeCacheResult& WithDiskIds(const Aws::Vector<Aws::String>& value) { SetDiskIds(value); return *this;}
/**
* <p>An array of strings that identify disks that are to be configured as working
* storage. Each string has a minimum length of 1 and maximum length of 300. You
* can get the disk IDs from the <a>ListLocalDisks</a> API.</p>
*/
inline DescribeCacheResult& WithDiskIds(Aws::Vector<Aws::String>&& value) { SetDiskIds(std::move(value)); return *this;}
/**
* <p>An array of strings that identify disks that are to be configured as working
* storage. Each string has a minimum length of 1 and maximum length of 300. You
* can get the disk IDs from the <a>ListLocalDisks</a> API.</p>
*/
inline DescribeCacheResult& AddDiskIds(const Aws::String& value) { m_diskIds.push_back(value); return *this; }
/**
* <p>An array of strings that identify disks that are to be configured as working
* storage. Each string has a minimum length of 1 and maximum length of 300. You
* can get the disk IDs from the <a>ListLocalDisks</a> API.</p>
*/
inline DescribeCacheResult& AddDiskIds(Aws::String&& value) { m_diskIds.push_back(std::move(value)); return *this; }
/**
* <p>An array of strings that identify disks that are to be configured as working
* storage. Each string has a minimum length of 1 and maximum length of 300. You
* can get the disk IDs from the <a>ListLocalDisks</a> API.</p>
*/
inline DescribeCacheResult& AddDiskIds(const char* value) { m_diskIds.push_back(value); return *this; }
/**
* <p>The amount of cache in bytes allocated to a gateway.</p>
*/
inline long long GetCacheAllocatedInBytes() const{ return m_cacheAllocatedInBytes; }
/**
* <p>The amount of cache in bytes allocated to a gateway.</p>
*/
inline void SetCacheAllocatedInBytes(long long value) { m_cacheAllocatedInBytes = value; }
/**
* <p>The amount of cache in bytes allocated to a gateway.</p>
*/
inline DescribeCacheResult& WithCacheAllocatedInBytes(long long value) { SetCacheAllocatedInBytes(value); return *this;}
/**
* <p>Percent use of the gateway's cache storage. This metric applies only to the
* gateway-cached volume setup. The sample is taken at the end of the reporting
* period.</p>
*/
inline double GetCacheUsedPercentage() const{ return m_cacheUsedPercentage; }
/**
* <p>Percent use of the gateway's cache storage. This metric applies only to the
* gateway-cached volume setup. The sample is taken at the end of the reporting
* period.</p>
*/
inline void SetCacheUsedPercentage(double value) { m_cacheUsedPercentage = value; }
/**
* <p>Percent use of the gateway's cache storage. This metric applies only to the
* gateway-cached volume setup. The sample is taken at the end of the reporting
* period.</p>
*/
inline DescribeCacheResult& WithCacheUsedPercentage(double value) { SetCacheUsedPercentage(value); return *this;}
/**
* <p>The file share's contribution to the overall percentage of the gateway's
* cache that has not been persisted to AWS. The sample is taken at the end of the
* reporting period.</p>
*/
inline double GetCacheDirtyPercentage() const{ return m_cacheDirtyPercentage; }
/**
* <p>The file share's contribution to the overall percentage of the gateway's
* cache that has not been persisted to AWS. The sample is taken at the end of the
* reporting period.</p>
*/
inline void SetCacheDirtyPercentage(double value) { m_cacheDirtyPercentage = value; }
/**
* <p>The file share's contribution to the overall percentage of the gateway's
* cache that has not been persisted to AWS. The sample is taken at the end of the
* reporting period.</p>
*/
inline DescribeCacheResult& WithCacheDirtyPercentage(double value) { SetCacheDirtyPercentage(value); return *this;}
/**
* <p>Percent of application read operations from the file shares that are served
* from cache. The sample is taken at the end of the reporting period.</p>
*/
inline double GetCacheHitPercentage() const{ return m_cacheHitPercentage; }
/**
* <p>Percent of application read operations from the file shares that are served
* from cache. The sample is taken at the end of the reporting period.</p>
*/
inline void SetCacheHitPercentage(double value) { m_cacheHitPercentage = value; }
/**
* <p>Percent of application read operations from the file shares that are served
* from cache. The sample is taken at the end of the reporting period.</p>
*/
inline DescribeCacheResult& WithCacheHitPercentage(double value) { SetCacheHitPercentage(value); return *this;}
/**
* <p>Percent of application read operations from the file shares that are not
* served from cache. The sample is taken at the end of the reporting period.</p>
*/
inline double GetCacheMissPercentage() const{ return m_cacheMissPercentage; }
/**
* <p>Percent of application read operations from the file shares that are not
* served from cache. The sample is taken at the end of the reporting period.</p>
*/
inline void SetCacheMissPercentage(double value) { m_cacheMissPercentage = value; }
/**
* <p>Percent of application read operations from the file shares that are not
* served from cache. The sample is taken at the end of the reporting period.</p>
*/
inline DescribeCacheResult& WithCacheMissPercentage(double value) { SetCacheMissPercentage(value); return *this;}
private:
Aws::String m_gatewayARN;
Aws::Vector<Aws::String> m_diskIds;
long long m_cacheAllocatedInBytes;
double m_cacheUsedPercentage;
double m_cacheDirtyPercentage;
double m_cacheHitPercentage;
double m_cacheMissPercentage;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,109 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/storagegateway/StorageGatewayRequest.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace StorageGateway
{
namespace Model
{
/**
*/
class AWS_STORAGEGATEWAY_API DescribeCachediSCSIVolumesRequest : public StorageGatewayRequest
{
public:
DescribeCachediSCSIVolumesRequest();
// 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 "DescribeCachediSCSIVolumes"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
/**
* <p>An array of strings where each string represents the Amazon Resource Name
* (ARN) of a cached volume. All of the specified cached volumes must be from the
* same gateway. Use <a>ListVolumes</a> to get volume ARNs for a gateway.</p>
*/
inline const Aws::Vector<Aws::String>& GetVolumeARNs() const{ return m_volumeARNs; }
/**
* <p>An array of strings where each string represents the Amazon Resource Name
* (ARN) of a cached volume. All of the specified cached volumes must be from the
* same gateway. Use <a>ListVolumes</a> to get volume ARNs for a gateway.</p>
*/
inline bool VolumeARNsHasBeenSet() const { return m_volumeARNsHasBeenSet; }
/**
* <p>An array of strings where each string represents the Amazon Resource Name
* (ARN) of a cached volume. All of the specified cached volumes must be from the
* same gateway. Use <a>ListVolumes</a> to get volume ARNs for a gateway.</p>
*/
inline void SetVolumeARNs(const Aws::Vector<Aws::String>& value) { m_volumeARNsHasBeenSet = true; m_volumeARNs = value; }
/**
* <p>An array of strings where each string represents the Amazon Resource Name
* (ARN) of a cached volume. All of the specified cached volumes must be from the
* same gateway. Use <a>ListVolumes</a> to get volume ARNs for a gateway.</p>
*/
inline void SetVolumeARNs(Aws::Vector<Aws::String>&& value) { m_volumeARNsHasBeenSet = true; m_volumeARNs = std::move(value); }
/**
* <p>An array of strings where each string represents the Amazon Resource Name
* (ARN) of a cached volume. All of the specified cached volumes must be from the
* same gateway. Use <a>ListVolumes</a> to get volume ARNs for a gateway.</p>
*/
inline DescribeCachediSCSIVolumesRequest& WithVolumeARNs(const Aws::Vector<Aws::String>& value) { SetVolumeARNs(value); return *this;}
/**
* <p>An array of strings where each string represents the Amazon Resource Name
* (ARN) of a cached volume. All of the specified cached volumes must be from the
* same gateway. Use <a>ListVolumes</a> to get volume ARNs for a gateway.</p>
*/
inline DescribeCachediSCSIVolumesRequest& WithVolumeARNs(Aws::Vector<Aws::String>&& value) { SetVolumeARNs(std::move(value)); return *this;}
/**
* <p>An array of strings where each string represents the Amazon Resource Name
* (ARN) of a cached volume. All of the specified cached volumes must be from the
* same gateway. Use <a>ListVolumes</a> to get volume ARNs for a gateway.</p>
*/
inline DescribeCachediSCSIVolumesRequest& AddVolumeARNs(const Aws::String& value) { m_volumeARNsHasBeenSet = true; m_volumeARNs.push_back(value); return *this; }
/**
* <p>An array of strings where each string represents the Amazon Resource Name
* (ARN) of a cached volume. All of the specified cached volumes must be from the
* same gateway. Use <a>ListVolumes</a> to get volume ARNs for a gateway.</p>
*/
inline DescribeCachediSCSIVolumesRequest& AddVolumeARNs(Aws::String&& value) { m_volumeARNsHasBeenSet = true; m_volumeARNs.push_back(std::move(value)); return *this; }
/**
* <p>An array of strings where each string represents the Amazon Resource Name
* (ARN) of a cached volume. All of the specified cached volumes must be from the
* same gateway. Use <a>ListVolumes</a> to get volume ARNs for a gateway.</p>
*/
inline DescribeCachediSCSIVolumesRequest& AddVolumeARNs(const char* value) { m_volumeARNsHasBeenSet = true; m_volumeARNs.push_back(value); return *this; }
private:
Aws::Vector<Aws::String> m_volumeARNs;
bool m_volumeARNsHasBeenSet;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,90 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/storagegateway/model/CachediSCSIVolume.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace StorageGateway
{
namespace Model
{
/**
* <p>A JSON object containing the following fields:</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/DescribeCachediSCSIVolumesOutput">AWS
* API Reference</a></p>
*/
class AWS_STORAGEGATEWAY_API DescribeCachediSCSIVolumesResult
{
public:
DescribeCachediSCSIVolumesResult();
DescribeCachediSCSIVolumesResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
DescribeCachediSCSIVolumesResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>An array of objects where each object contains metadata about one cached
* volume.</p>
*/
inline const Aws::Vector<CachediSCSIVolume>& GetCachediSCSIVolumes() const{ return m_cachediSCSIVolumes; }
/**
* <p>An array of objects where each object contains metadata about one cached
* volume.</p>
*/
inline void SetCachediSCSIVolumes(const Aws::Vector<CachediSCSIVolume>& value) { m_cachediSCSIVolumes = value; }
/**
* <p>An array of objects where each object contains metadata about one cached
* volume.</p>
*/
inline void SetCachediSCSIVolumes(Aws::Vector<CachediSCSIVolume>&& value) { m_cachediSCSIVolumes = std::move(value); }
/**
* <p>An array of objects where each object contains metadata about one cached
* volume.</p>
*/
inline DescribeCachediSCSIVolumesResult& WithCachediSCSIVolumes(const Aws::Vector<CachediSCSIVolume>& value) { SetCachediSCSIVolumes(value); return *this;}
/**
* <p>An array of objects where each object contains metadata about one cached
* volume.</p>
*/
inline DescribeCachediSCSIVolumesResult& WithCachediSCSIVolumes(Aws::Vector<CachediSCSIVolume>&& value) { SetCachediSCSIVolumes(std::move(value)); return *this;}
/**
* <p>An array of objects where each object contains metadata about one cached
* volume.</p>
*/
inline DescribeCachediSCSIVolumesResult& AddCachediSCSIVolumes(const CachediSCSIVolume& value) { m_cachediSCSIVolumes.push_back(value); return *this; }
/**
* <p>An array of objects where each object contains metadata about one cached
* volume.</p>
*/
inline DescribeCachediSCSIVolumesResult& AddCachediSCSIVolumes(CachediSCSIVolume&& value) { m_cachediSCSIVolumes.push_back(std::move(value)); return *this; }
private:
Aws::Vector<CachediSCSIVolume> m_cachediSCSIVolumes;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,105 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/storagegateway/StorageGatewayRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace StorageGateway
{
namespace Model
{
/**
* <p>A JSON object containing the Amazon Resource Name (ARN) of the iSCSI volume
* target.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/DescribeChapCredentialsInput">AWS
* API Reference</a></p>
*/
class AWS_STORAGEGATEWAY_API DescribeChapCredentialsRequest : public StorageGatewayRequest
{
public:
DescribeChapCredentialsRequest();
// 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 "DescribeChapCredentials"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
/**
* <p>The Amazon Resource Name (ARN) of the iSCSI volume target. Use the
* <a>DescribeStorediSCSIVolumes</a> operation to return to retrieve the TargetARN
* for specified VolumeARN.</p>
*/
inline const Aws::String& GetTargetARN() const{ return m_targetARN; }
/**
* <p>The Amazon Resource Name (ARN) of the iSCSI volume target. Use the
* <a>DescribeStorediSCSIVolumes</a> operation to return to retrieve the TargetARN
* for specified VolumeARN.</p>
*/
inline bool TargetARNHasBeenSet() const { return m_targetARNHasBeenSet; }
/**
* <p>The Amazon Resource Name (ARN) of the iSCSI volume target. Use the
* <a>DescribeStorediSCSIVolumes</a> operation to return to retrieve the TargetARN
* for specified VolumeARN.</p>
*/
inline void SetTargetARN(const Aws::String& value) { m_targetARNHasBeenSet = true; m_targetARN = value; }
/**
* <p>The Amazon Resource Name (ARN) of the iSCSI volume target. Use the
* <a>DescribeStorediSCSIVolumes</a> operation to return to retrieve the TargetARN
* for specified VolumeARN.</p>
*/
inline void SetTargetARN(Aws::String&& value) { m_targetARNHasBeenSet = true; m_targetARN = std::move(value); }
/**
* <p>The Amazon Resource Name (ARN) of the iSCSI volume target. Use the
* <a>DescribeStorediSCSIVolumes</a> operation to return to retrieve the TargetARN
* for specified VolumeARN.</p>
*/
inline void SetTargetARN(const char* value) { m_targetARNHasBeenSet = true; m_targetARN.assign(value); }
/**
* <p>The Amazon Resource Name (ARN) of the iSCSI volume target. Use the
* <a>DescribeStorediSCSIVolumes</a> operation to return to retrieve the TargetARN
* for specified VolumeARN.</p>
*/
inline DescribeChapCredentialsRequest& WithTargetARN(const Aws::String& value) { SetTargetARN(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the iSCSI volume target. Use the
* <a>DescribeStorediSCSIVolumes</a> operation to return to retrieve the TargetARN
* for specified VolumeARN.</p>
*/
inline DescribeChapCredentialsRequest& WithTargetARN(Aws::String&& value) { SetTargetARN(std::move(value)); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the iSCSI volume target. Use the
* <a>DescribeStorediSCSIVolumes</a> operation to return to retrieve the TargetARN
* for specified VolumeARN.</p>
*/
inline DescribeChapCredentialsRequest& WithTargetARN(const char* value) { SetTargetARN(value); return *this;}
private:
Aws::String m_targetARN;
bool m_targetARNHasBeenSet;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,160 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/storagegateway/model/ChapInfo.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace StorageGateway
{
namespace Model
{
/**
* <p>A JSON object containing the following fields:</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/DescribeChapCredentialsOutput">AWS
* API Reference</a></p>
*/
class AWS_STORAGEGATEWAY_API DescribeChapCredentialsResult
{
public:
DescribeChapCredentialsResult();
DescribeChapCredentialsResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
DescribeChapCredentialsResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>An array of <a>ChapInfo</a> objects that represent CHAP credentials. Each
* object in the array contains CHAP credential information for one
* target-initiator pair. If no CHAP credentials are set, an empty array is
* returned. CHAP credential information is provided in a JSON object with the
* following fields:</p> <ul> <li> <p> <b>InitiatorName</b>: The iSCSI initiator
* that connects to the target.</p> </li> <li> <p>
* <b>SecretToAuthenticateInitiator</b>: The secret key that the initiator (for
* example, the Windows client) must provide to participate in mutual CHAP with the
* target.</p> </li> <li> <p> <b>SecretToAuthenticateTarget</b>: The secret key
* that the target must provide to participate in mutual CHAP with the initiator
* (e.g. Windows client).</p> </li> <li> <p> <b>TargetARN</b>: The Amazon Resource
* Name (ARN) of the storage volume.</p> </li> </ul>
*/
inline const Aws::Vector<ChapInfo>& GetChapCredentials() const{ return m_chapCredentials; }
/**
* <p>An array of <a>ChapInfo</a> objects that represent CHAP credentials. Each
* object in the array contains CHAP credential information for one
* target-initiator pair. If no CHAP credentials are set, an empty array is
* returned. CHAP credential information is provided in a JSON object with the
* following fields:</p> <ul> <li> <p> <b>InitiatorName</b>: The iSCSI initiator
* that connects to the target.</p> </li> <li> <p>
* <b>SecretToAuthenticateInitiator</b>: The secret key that the initiator (for
* example, the Windows client) must provide to participate in mutual CHAP with the
* target.</p> </li> <li> <p> <b>SecretToAuthenticateTarget</b>: The secret key
* that the target must provide to participate in mutual CHAP with the initiator
* (e.g. Windows client).</p> </li> <li> <p> <b>TargetARN</b>: The Amazon Resource
* Name (ARN) of the storage volume.</p> </li> </ul>
*/
inline void SetChapCredentials(const Aws::Vector<ChapInfo>& value) { m_chapCredentials = value; }
/**
* <p>An array of <a>ChapInfo</a> objects that represent CHAP credentials. Each
* object in the array contains CHAP credential information for one
* target-initiator pair. If no CHAP credentials are set, an empty array is
* returned. CHAP credential information is provided in a JSON object with the
* following fields:</p> <ul> <li> <p> <b>InitiatorName</b>: The iSCSI initiator
* that connects to the target.</p> </li> <li> <p>
* <b>SecretToAuthenticateInitiator</b>: The secret key that the initiator (for
* example, the Windows client) must provide to participate in mutual CHAP with the
* target.</p> </li> <li> <p> <b>SecretToAuthenticateTarget</b>: The secret key
* that the target must provide to participate in mutual CHAP with the initiator
* (e.g. Windows client).</p> </li> <li> <p> <b>TargetARN</b>: The Amazon Resource
* Name (ARN) of the storage volume.</p> </li> </ul>
*/
inline void SetChapCredentials(Aws::Vector<ChapInfo>&& value) { m_chapCredentials = std::move(value); }
/**
* <p>An array of <a>ChapInfo</a> objects that represent CHAP credentials. Each
* object in the array contains CHAP credential information for one
* target-initiator pair. If no CHAP credentials are set, an empty array is
* returned. CHAP credential information is provided in a JSON object with the
* following fields:</p> <ul> <li> <p> <b>InitiatorName</b>: The iSCSI initiator
* that connects to the target.</p> </li> <li> <p>
* <b>SecretToAuthenticateInitiator</b>: The secret key that the initiator (for
* example, the Windows client) must provide to participate in mutual CHAP with the
* target.</p> </li> <li> <p> <b>SecretToAuthenticateTarget</b>: The secret key
* that the target must provide to participate in mutual CHAP with the initiator
* (e.g. Windows client).</p> </li> <li> <p> <b>TargetARN</b>: The Amazon Resource
* Name (ARN) of the storage volume.</p> </li> </ul>
*/
inline DescribeChapCredentialsResult& WithChapCredentials(const Aws::Vector<ChapInfo>& value) { SetChapCredentials(value); return *this;}
/**
* <p>An array of <a>ChapInfo</a> objects that represent CHAP credentials. Each
* object in the array contains CHAP credential information for one
* target-initiator pair. If no CHAP credentials are set, an empty array is
* returned. CHAP credential information is provided in a JSON object with the
* following fields:</p> <ul> <li> <p> <b>InitiatorName</b>: The iSCSI initiator
* that connects to the target.</p> </li> <li> <p>
* <b>SecretToAuthenticateInitiator</b>: The secret key that the initiator (for
* example, the Windows client) must provide to participate in mutual CHAP with the
* target.</p> </li> <li> <p> <b>SecretToAuthenticateTarget</b>: The secret key
* that the target must provide to participate in mutual CHAP with the initiator
* (e.g. Windows client).</p> </li> <li> <p> <b>TargetARN</b>: The Amazon Resource
* Name (ARN) of the storage volume.</p> </li> </ul>
*/
inline DescribeChapCredentialsResult& WithChapCredentials(Aws::Vector<ChapInfo>&& value) { SetChapCredentials(std::move(value)); return *this;}
/**
* <p>An array of <a>ChapInfo</a> objects that represent CHAP credentials. Each
* object in the array contains CHAP credential information for one
* target-initiator pair. If no CHAP credentials are set, an empty array is
* returned. CHAP credential information is provided in a JSON object with the
* following fields:</p> <ul> <li> <p> <b>InitiatorName</b>: The iSCSI initiator
* that connects to the target.</p> </li> <li> <p>
* <b>SecretToAuthenticateInitiator</b>: The secret key that the initiator (for
* example, the Windows client) must provide to participate in mutual CHAP with the
* target.</p> </li> <li> <p> <b>SecretToAuthenticateTarget</b>: The secret key
* that the target must provide to participate in mutual CHAP with the initiator
* (e.g. Windows client).</p> </li> <li> <p> <b>TargetARN</b>: The Amazon Resource
* Name (ARN) of the storage volume.</p> </li> </ul>
*/
inline DescribeChapCredentialsResult& AddChapCredentials(const ChapInfo& value) { m_chapCredentials.push_back(value); return *this; }
/**
* <p>An array of <a>ChapInfo</a> objects that represent CHAP credentials. Each
* object in the array contains CHAP credential information for one
* target-initiator pair. If no CHAP credentials are set, an empty array is
* returned. CHAP credential information is provided in a JSON object with the
* following fields:</p> <ul> <li> <p> <b>InitiatorName</b>: The iSCSI initiator
* that connects to the target.</p> </li> <li> <p>
* <b>SecretToAuthenticateInitiator</b>: The secret key that the initiator (for
* example, the Windows client) must provide to participate in mutual CHAP with the
* target.</p> </li> <li> <p> <b>SecretToAuthenticateTarget</b>: The secret key
* that the target must provide to participate in mutual CHAP with the initiator
* (e.g. Windows client).</p> </li> <li> <p> <b>TargetARN</b>: The Amazon Resource
* Name (ARN) of the storage volume.</p> </li> </ul>
*/
inline DescribeChapCredentialsResult& AddChapCredentials(ChapInfo&& value) { m_chapCredentials.push_back(std::move(value)); return *this; }
private:
Aws::Vector<ChapInfo> m_chapCredentials;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,72 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/storagegateway/StorageGatewayRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace StorageGateway
{
namespace Model
{
/**
* <p>A JSON object containing the ID of the gateway.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/DescribeGatewayInformationInput">AWS
* API Reference</a></p>
*/
class AWS_STORAGEGATEWAY_API DescribeGatewayInformationRequest : public StorageGatewayRequest
{
public:
DescribeGatewayInformationRequest();
// 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 "DescribeGatewayInformation"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
inline const Aws::String& GetGatewayARN() const{ return m_gatewayARN; }
inline bool GatewayARNHasBeenSet() const { return m_gatewayARNHasBeenSet; }
inline void SetGatewayARN(const Aws::String& value) { m_gatewayARNHasBeenSet = true; m_gatewayARN = value; }
inline void SetGatewayARN(Aws::String&& value) { m_gatewayARNHasBeenSet = true; m_gatewayARN = std::move(value); }
inline void SetGatewayARN(const char* value) { m_gatewayARNHasBeenSet = true; m_gatewayARN.assign(value); }
inline DescribeGatewayInformationRequest& WithGatewayARN(const Aws::String& value) { SetGatewayARN(value); return *this;}
inline DescribeGatewayInformationRequest& WithGatewayARN(Aws::String&& value) { SetGatewayARN(std::move(value)); return *this;}
inline DescribeGatewayInformationRequest& WithGatewayARN(const char* value) { SetGatewayARN(value); return *this;}
private:
Aws::String m_gatewayARN;
bool m_gatewayARNHasBeenSet;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,813 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/storagegateway/model/HostEnvironment.h>
#include <aws/storagegateway/model/NetworkInterface.h>
#include <aws/storagegateway/model/Tag.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace StorageGateway
{
namespace Model
{
/**
* <p>A JSON object containing the following fields:</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/DescribeGatewayInformationOutput">AWS
* API Reference</a></p>
*/
class AWS_STORAGEGATEWAY_API DescribeGatewayInformationResult
{
public:
DescribeGatewayInformationResult();
DescribeGatewayInformationResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
DescribeGatewayInformationResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& 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;}
/**
* <p>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.</p>
*/
inline const Aws::String& GetGatewayId() const{ return m_gatewayId; }
/**
* <p>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.</p>
*/
inline void SetGatewayId(const Aws::String& value) { m_gatewayId = value; }
/**
* <p>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.</p>
*/
inline void SetGatewayId(Aws::String&& value) { m_gatewayId = std::move(value); }
/**
* <p>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.</p>
*/
inline void SetGatewayId(const char* value) { m_gatewayId.assign(value); }
/**
* <p>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.</p>
*/
inline DescribeGatewayInformationResult& WithGatewayId(const Aws::String& value) { SetGatewayId(value); return *this;}
/**
* <p>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.</p>
*/
inline DescribeGatewayInformationResult& WithGatewayId(Aws::String&& value) { SetGatewayId(std::move(value)); return *this;}
/**
* <p>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.</p>
*/
inline DescribeGatewayInformationResult& WithGatewayId(const char* value) { SetGatewayId(value); return *this;}
/**
* <p>The name you configured for your gateway.</p>
*/
inline const Aws::String& GetGatewayName() const{ return m_gatewayName; }
/**
* <p>The name you configured for your gateway.</p>
*/
inline void SetGatewayName(const Aws::String& value) { m_gatewayName = value; }
/**
* <p>The name you configured for your gateway.</p>
*/
inline void SetGatewayName(Aws::String&& value) { m_gatewayName = std::move(value); }
/**
* <p>The name you configured for your gateway.</p>
*/
inline void SetGatewayName(const char* value) { m_gatewayName.assign(value); }
/**
* <p>The name you configured for your gateway.</p>
*/
inline DescribeGatewayInformationResult& WithGatewayName(const Aws::String& value) { SetGatewayName(value); return *this;}
/**
* <p>The name you configured for your gateway.</p>
*/
inline DescribeGatewayInformationResult& WithGatewayName(Aws::String&& value) { SetGatewayName(std::move(value)); return *this;}
/**
* <p>The name you configured for your gateway.</p>
*/
inline DescribeGatewayInformationResult& WithGatewayName(const char* value) { SetGatewayName(value); return *this;}
/**
* <p>A value that indicates the time zone configured for the gateway.</p>
*/
inline const Aws::String& GetGatewayTimezone() const{ return m_gatewayTimezone; }
/**
* <p>A value that indicates the time zone configured for the gateway.</p>
*/
inline void SetGatewayTimezone(const Aws::String& value) { m_gatewayTimezone = value; }
/**
* <p>A value that indicates the time zone configured for the gateway.</p>
*/
inline void SetGatewayTimezone(Aws::String&& value) { m_gatewayTimezone = std::move(value); }
/**
* <p>A value that indicates the time zone configured for the gateway.</p>
*/
inline void SetGatewayTimezone(const char* value) { m_gatewayTimezone.assign(value); }
/**
* <p>A value that indicates the time zone configured for the gateway.</p>
*/
inline DescribeGatewayInformationResult& WithGatewayTimezone(const Aws::String& value) { SetGatewayTimezone(value); return *this;}
/**
* <p>A value that indicates the time zone configured for the gateway.</p>
*/
inline DescribeGatewayInformationResult& WithGatewayTimezone(Aws::String&& value) { SetGatewayTimezone(std::move(value)); return *this;}
/**
* <p>A value that indicates the time zone configured for the gateway.</p>
*/
inline DescribeGatewayInformationResult& WithGatewayTimezone(const char* value) { SetGatewayTimezone(value); return *this;}
/**
* <p>A value that indicates the operating state of the gateway.</p>
*/
inline const Aws::String& GetGatewayState() const{ return m_gatewayState; }
/**
* <p>A value that indicates the operating state of the gateway.</p>
*/
inline void SetGatewayState(const Aws::String& value) { m_gatewayState = value; }
/**
* <p>A value that indicates the operating state of the gateway.</p>
*/
inline void SetGatewayState(Aws::String&& value) { m_gatewayState = std::move(value); }
/**
* <p>A value that indicates the operating state of the gateway.</p>
*/
inline void SetGatewayState(const char* value) { m_gatewayState.assign(value); }
/**
* <p>A value that indicates the operating state of the gateway.</p>
*/
inline DescribeGatewayInformationResult& WithGatewayState(const Aws::String& value) { SetGatewayState(value); return *this;}
/**
* <p>A value that indicates the operating state of the gateway.</p>
*/
inline DescribeGatewayInformationResult& WithGatewayState(Aws::String&& value) { SetGatewayState(std::move(value)); return *this;}
/**
* <p>A value that indicates the operating state of the gateway.</p>
*/
inline DescribeGatewayInformationResult& WithGatewayState(const char* value) { SetGatewayState(value); return *this;}
/**
* <p>A <a>NetworkInterface</a> array that contains descriptions of the gateway
* network interfaces.</p>
*/
inline const Aws::Vector<NetworkInterface>& GetGatewayNetworkInterfaces() const{ return m_gatewayNetworkInterfaces; }
/**
* <p>A <a>NetworkInterface</a> array that contains descriptions of the gateway
* network interfaces.</p>
*/
inline void SetGatewayNetworkInterfaces(const Aws::Vector<NetworkInterface>& value) { m_gatewayNetworkInterfaces = value; }
/**
* <p>A <a>NetworkInterface</a> array that contains descriptions of the gateway
* network interfaces.</p>
*/
inline void SetGatewayNetworkInterfaces(Aws::Vector<NetworkInterface>&& value) { m_gatewayNetworkInterfaces = std::move(value); }
/**
* <p>A <a>NetworkInterface</a> array that contains descriptions of the gateway
* network interfaces.</p>
*/
inline DescribeGatewayInformationResult& WithGatewayNetworkInterfaces(const Aws::Vector<NetworkInterface>& value) { SetGatewayNetworkInterfaces(value); return *this;}
/**
* <p>A <a>NetworkInterface</a> array that contains descriptions of the gateway
* network interfaces.</p>
*/
inline DescribeGatewayInformationResult& WithGatewayNetworkInterfaces(Aws::Vector<NetworkInterface>&& value) { SetGatewayNetworkInterfaces(std::move(value)); return *this;}
/**
* <p>A <a>NetworkInterface</a> array that contains descriptions of the gateway
* network interfaces.</p>
*/
inline DescribeGatewayInformationResult& AddGatewayNetworkInterfaces(const NetworkInterface& value) { m_gatewayNetworkInterfaces.push_back(value); return *this; }
/**
* <p>A <a>NetworkInterface</a> array that contains descriptions of the gateway
* network interfaces.</p>
*/
inline DescribeGatewayInformationResult& AddGatewayNetworkInterfaces(NetworkInterface&& value) { m_gatewayNetworkInterfaces.push_back(std::move(value)); return *this; }
/**
* <p>The type of the gateway.</p>
*/
inline const Aws::String& GetGatewayType() const{ return m_gatewayType; }
/**
* <p>The type of the gateway.</p>
*/
inline void SetGatewayType(const Aws::String& value) { m_gatewayType = value; }
/**
* <p>The type of the gateway.</p>
*/
inline void SetGatewayType(Aws::String&& value) { m_gatewayType = std::move(value); }
/**
* <p>The type of the gateway.</p>
*/
inline void SetGatewayType(const char* value) { m_gatewayType.assign(value); }
/**
* <p>The type of the gateway.</p>
*/
inline DescribeGatewayInformationResult& WithGatewayType(const Aws::String& value) { SetGatewayType(value); return *this;}
/**
* <p>The type of the gateway.</p>
*/
inline DescribeGatewayInformationResult& WithGatewayType(Aws::String&& value) { SetGatewayType(std::move(value)); return *this;}
/**
* <p>The type of the gateway.</p>
*/
inline DescribeGatewayInformationResult& WithGatewayType(const char* value) { SetGatewayType(value); return *this;}
/**
* <p>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.</p>
*/
inline const Aws::String& GetNextUpdateAvailabilityDate() const{ return m_nextUpdateAvailabilityDate; }
/**
* <p>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.</p>
*/
inline void SetNextUpdateAvailabilityDate(const Aws::String& value) { m_nextUpdateAvailabilityDate = value; }
/**
* <p>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.</p>
*/
inline void SetNextUpdateAvailabilityDate(Aws::String&& value) { m_nextUpdateAvailabilityDate = std::move(value); }
/**
* <p>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.</p>
*/
inline void SetNextUpdateAvailabilityDate(const char* value) { m_nextUpdateAvailabilityDate.assign(value); }
/**
* <p>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.</p>
*/
inline DescribeGatewayInformationResult& WithNextUpdateAvailabilityDate(const Aws::String& value) { SetNextUpdateAvailabilityDate(value); return *this;}
/**
* <p>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.</p>
*/
inline DescribeGatewayInformationResult& WithNextUpdateAvailabilityDate(Aws::String&& value) { SetNextUpdateAvailabilityDate(std::move(value)); return *this;}
/**
* <p>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.</p>
*/
inline DescribeGatewayInformationResult& WithNextUpdateAvailabilityDate(const char* value) { SetNextUpdateAvailabilityDate(value); return *this;}
/**
* <p>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.</p>
*/
inline const Aws::String& GetLastSoftwareUpdate() const{ return m_lastSoftwareUpdate; }
/**
* <p>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.</p>
*/
inline void SetLastSoftwareUpdate(const Aws::String& value) { m_lastSoftwareUpdate = value; }
/**
* <p>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.</p>
*/
inline void SetLastSoftwareUpdate(Aws::String&& value) { m_lastSoftwareUpdate = std::move(value); }
/**
* <p>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.</p>
*/
inline void SetLastSoftwareUpdate(const char* value) { m_lastSoftwareUpdate.assign(value); }
/**
* <p>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.</p>
*/
inline DescribeGatewayInformationResult& WithLastSoftwareUpdate(const Aws::String& value) { SetLastSoftwareUpdate(value); return *this;}
/**
* <p>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.</p>
*/
inline DescribeGatewayInformationResult& WithLastSoftwareUpdate(Aws::String&& value) { SetLastSoftwareUpdate(std::move(value)); return *this;}
/**
* <p>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.</p>
*/
inline DescribeGatewayInformationResult& WithLastSoftwareUpdate(const char* value) { SetLastSoftwareUpdate(value); return *this;}
/**
* <p>The ID of the Amazon EC2 instance that was used to launch the gateway.</p>
*/
inline const Aws::String& GetEc2InstanceId() const{ return m_ec2InstanceId; }
/**
* <p>The ID of the Amazon EC2 instance that was used to launch the gateway.</p>
*/
inline void SetEc2InstanceId(const Aws::String& value) { m_ec2InstanceId = value; }
/**
* <p>The ID of the Amazon EC2 instance that was used to launch the gateway.</p>
*/
inline void SetEc2InstanceId(Aws::String&& value) { m_ec2InstanceId = std::move(value); }
/**
* <p>The ID of the Amazon EC2 instance that was used to launch the gateway.</p>
*/
inline void SetEc2InstanceId(const char* value) { m_ec2InstanceId.assign(value); }
/**
* <p>The ID of the Amazon EC2 instance that was used to launch the gateway.</p>
*/
inline DescribeGatewayInformationResult& WithEc2InstanceId(const Aws::String& value) { SetEc2InstanceId(value); return *this;}
/**
* <p>The ID of the Amazon EC2 instance that was used to launch the gateway.</p>
*/
inline DescribeGatewayInformationResult& WithEc2InstanceId(Aws::String&& value) { SetEc2InstanceId(std::move(value)); return *this;}
/**
* <p>The ID of the Amazon EC2 instance that was used to launch the gateway.</p>
*/
inline DescribeGatewayInformationResult& WithEc2InstanceId(const char* value) { SetEc2InstanceId(value); return *this;}
/**
* <p>The AWS Region where the Amazon EC2 instance is located.</p>
*/
inline const Aws::String& GetEc2InstanceRegion() const{ return m_ec2InstanceRegion; }
/**
* <p>The AWS Region where the Amazon EC2 instance is located.</p>
*/
inline void SetEc2InstanceRegion(const Aws::String& value) { m_ec2InstanceRegion = value; }
/**
* <p>The AWS Region where the Amazon EC2 instance is located.</p>
*/
inline void SetEc2InstanceRegion(Aws::String&& value) { m_ec2InstanceRegion = std::move(value); }
/**
* <p>The AWS Region where the Amazon EC2 instance is located.</p>
*/
inline void SetEc2InstanceRegion(const char* value) { m_ec2InstanceRegion.assign(value); }
/**
* <p>The AWS Region where the Amazon EC2 instance is located.</p>
*/
inline DescribeGatewayInformationResult& WithEc2InstanceRegion(const Aws::String& value) { SetEc2InstanceRegion(value); return *this;}
/**
* <p>The AWS Region where the Amazon EC2 instance is located.</p>
*/
inline DescribeGatewayInformationResult& WithEc2InstanceRegion(Aws::String&& value) { SetEc2InstanceRegion(std::move(value)); return *this;}
/**
* <p>The AWS Region where the Amazon EC2 instance is located.</p>
*/
inline DescribeGatewayInformationResult& WithEc2InstanceRegion(const char* value) { SetEc2InstanceRegion(value); return *this;}
/**
* <p>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 <code>ListTagsForResource</code> API
* operation.</p>
*/
inline const Aws::Vector<Tag>& GetTags() const{ return m_tags; }
/**
* <p>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 <code>ListTagsForResource</code> API
* operation.</p>
*/
inline void SetTags(const Aws::Vector<Tag>& value) { m_tags = value; }
/**
* <p>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 <code>ListTagsForResource</code> API
* operation.</p>
*/
inline void SetTags(Aws::Vector<Tag>&& value) { m_tags = std::move(value); }
/**
* <p>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 <code>ListTagsForResource</code> API
* operation.</p>
*/
inline DescribeGatewayInformationResult& WithTags(const Aws::Vector<Tag>& value) { SetTags(value); return *this;}
/**
* <p>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 <code>ListTagsForResource</code> API
* operation.</p>
*/
inline DescribeGatewayInformationResult& WithTags(Aws::Vector<Tag>&& value) { SetTags(std::move(value)); return *this;}
/**
* <p>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 <code>ListTagsForResource</code> API
* operation.</p>
*/
inline DescribeGatewayInformationResult& AddTags(const Tag& value) { m_tags.push_back(value); return *this; }
/**
* <p>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 <code>ListTagsForResource</code> API
* operation.</p>
*/
inline DescribeGatewayInformationResult& AddTags(Tag&& value) { m_tags.push_back(std::move(value)); return *this; }
/**
* <p>The configuration settings for the virtual private cloud (VPC) endpoint for
* your gateway.</p>
*/
inline const Aws::String& GetVPCEndpoint() const{ return m_vPCEndpoint; }
/**
* <p>The configuration settings for the virtual private cloud (VPC) endpoint for
* your gateway.</p>
*/
inline void SetVPCEndpoint(const Aws::String& value) { m_vPCEndpoint = value; }
/**
* <p>The configuration settings for the virtual private cloud (VPC) endpoint for
* your gateway.</p>
*/
inline void SetVPCEndpoint(Aws::String&& value) { m_vPCEndpoint = std::move(value); }
/**
* <p>The configuration settings for the virtual private cloud (VPC) endpoint for
* your gateway.</p>
*/
inline void SetVPCEndpoint(const char* value) { m_vPCEndpoint.assign(value); }
/**
* <p>The configuration settings for the virtual private cloud (VPC) endpoint for
* your gateway.</p>
*/
inline DescribeGatewayInformationResult& WithVPCEndpoint(const Aws::String& value) { SetVPCEndpoint(value); return *this;}
/**
* <p>The configuration settings for the virtual private cloud (VPC) endpoint for
* your gateway.</p>
*/
inline DescribeGatewayInformationResult& WithVPCEndpoint(Aws::String&& value) { SetVPCEndpoint(std::move(value)); return *this;}
/**
* <p>The configuration settings for the virtual private cloud (VPC) endpoint for
* your gateway.</p>
*/
inline DescribeGatewayInformationResult& WithVPCEndpoint(const char* value) { SetVPCEndpoint(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the Amazon CloudWatch log group that is
* used to monitor events in the gateway.</p>
*/
inline const Aws::String& GetCloudWatchLogGroupARN() const{ return m_cloudWatchLogGroupARN; }
/**
* <p>The Amazon Resource Name (ARN) of the Amazon CloudWatch log group that is
* used to monitor events in the gateway.</p>
*/
inline void SetCloudWatchLogGroupARN(const Aws::String& value) { m_cloudWatchLogGroupARN = value; }
/**
* <p>The Amazon Resource Name (ARN) of the Amazon CloudWatch log group that is
* used to monitor events in the gateway.</p>
*/
inline void SetCloudWatchLogGroupARN(Aws::String&& value) { m_cloudWatchLogGroupARN = std::move(value); }
/**
* <p>The Amazon Resource Name (ARN) of the Amazon CloudWatch log group that is
* used to monitor events in the gateway.</p>
*/
inline void SetCloudWatchLogGroupARN(const char* value) { m_cloudWatchLogGroupARN.assign(value); }
/**
* <p>The Amazon Resource Name (ARN) of the Amazon CloudWatch log group that is
* used to monitor events in the gateway.</p>
*/
inline DescribeGatewayInformationResult& WithCloudWatchLogGroupARN(const Aws::String& value) { SetCloudWatchLogGroupARN(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the Amazon CloudWatch log group that is
* used to monitor events in the gateway.</p>
*/
inline DescribeGatewayInformationResult& WithCloudWatchLogGroupARN(Aws::String&& value) { SetCloudWatchLogGroupARN(std::move(value)); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the Amazon CloudWatch log group that is
* used to monitor events in the gateway.</p>
*/
inline DescribeGatewayInformationResult& WithCloudWatchLogGroupARN(const char* value) { SetCloudWatchLogGroupARN(value); return *this;}
/**
* <p>The type of hypervisor environment used by the host.</p>
*/
inline const HostEnvironment& GetHostEnvironment() const{ return m_hostEnvironment; }
/**
* <p>The type of hypervisor environment used by the host.</p>
*/
inline void SetHostEnvironment(const HostEnvironment& value) { m_hostEnvironment = value; }
/**
* <p>The type of hypervisor environment used by the host.</p>
*/
inline void SetHostEnvironment(HostEnvironment&& value) { m_hostEnvironment = std::move(value); }
/**
* <p>The type of hypervisor environment used by the host.</p>
*/
inline DescribeGatewayInformationResult& WithHostEnvironment(const HostEnvironment& value) { SetHostEnvironment(value); return *this;}
/**
* <p>The type of hypervisor environment used by the host.</p>
*/
inline DescribeGatewayInformationResult& WithHostEnvironment(HostEnvironment&& value) { SetHostEnvironment(std::move(value)); return *this;}
/**
* <p>The type of endpoint for your gateway.</p> <p>Valid Values:
* <code>STANDARD</code> | <code>FIPS</code> </p>
*/
inline const Aws::String& GetEndpointType() const{ return m_endpointType; }
/**
* <p>The type of endpoint for your gateway.</p> <p>Valid Values:
* <code>STANDARD</code> | <code>FIPS</code> </p>
*/
inline void SetEndpointType(const Aws::String& value) { m_endpointType = value; }
/**
* <p>The type of endpoint for your gateway.</p> <p>Valid Values:
* <code>STANDARD</code> | <code>FIPS</code> </p>
*/
inline void SetEndpointType(Aws::String&& value) { m_endpointType = std::move(value); }
/**
* <p>The type of endpoint for your gateway.</p> <p>Valid Values:
* <code>STANDARD</code> | <code>FIPS</code> </p>
*/
inline void SetEndpointType(const char* value) { m_endpointType.assign(value); }
/**
* <p>The type of endpoint for your gateway.</p> <p>Valid Values:
* <code>STANDARD</code> | <code>FIPS</code> </p>
*/
inline DescribeGatewayInformationResult& WithEndpointType(const Aws::String& value) { SetEndpointType(value); return *this;}
/**
* <p>The type of endpoint for your gateway.</p> <p>Valid Values:
* <code>STANDARD</code> | <code>FIPS</code> </p>
*/
inline DescribeGatewayInformationResult& WithEndpointType(Aws::String&& value) { SetEndpointType(std::move(value)); return *this;}
/**
* <p>The type of endpoint for your gateway.</p> <p>Valid Values:
* <code>STANDARD</code> | <code>FIPS</code> </p>
*/
inline DescribeGatewayInformationResult& WithEndpointType(const char* value) { SetEndpointType(value); return *this;}
/**
* <p>Date after which this gateway will not receive software updates for new
* features.</p>
*/
inline const Aws::String& GetSoftwareUpdatesEndDate() const{ return m_softwareUpdatesEndDate; }
/**
* <p>Date after which this gateway will not receive software updates for new
* features.</p>
*/
inline void SetSoftwareUpdatesEndDate(const Aws::String& value) { m_softwareUpdatesEndDate = value; }
/**
* <p>Date after which this gateway will not receive software updates for new
* features.</p>
*/
inline void SetSoftwareUpdatesEndDate(Aws::String&& value) { m_softwareUpdatesEndDate = std::move(value); }
/**
* <p>Date after which this gateway will not receive software updates for new
* features.</p>
*/
inline void SetSoftwareUpdatesEndDate(const char* value) { m_softwareUpdatesEndDate.assign(value); }
/**
* <p>Date after which this gateway will not receive software updates for new
* features.</p>
*/
inline DescribeGatewayInformationResult& WithSoftwareUpdatesEndDate(const Aws::String& value) { SetSoftwareUpdatesEndDate(value); return *this;}
/**
* <p>Date after which this gateway will not receive software updates for new
* features.</p>
*/
inline DescribeGatewayInformationResult& WithSoftwareUpdatesEndDate(Aws::String&& value) { SetSoftwareUpdatesEndDate(std::move(value)); return *this;}
/**
* <p>Date after which this gateway will not receive software updates for new
* features.</p>
*/
inline DescribeGatewayInformationResult& WithSoftwareUpdatesEndDate(const char* value) { SetSoftwareUpdatesEndDate(value); return *this;}
/**
* <p>Date after which this gateway will not receive software updates for new
* features and bug fixes.</p>
*/
inline const Aws::String& GetDeprecationDate() const{ return m_deprecationDate; }
/**
* <p>Date after which this gateway will not receive software updates for new
* features and bug fixes.</p>
*/
inline void SetDeprecationDate(const Aws::String& value) { m_deprecationDate = value; }
/**
* <p>Date after which this gateway will not receive software updates for new
* features and bug fixes.</p>
*/
inline void SetDeprecationDate(Aws::String&& value) { m_deprecationDate = std::move(value); }
/**
* <p>Date after which this gateway will not receive software updates for new
* features and bug fixes.</p>
*/
inline void SetDeprecationDate(const char* value) { m_deprecationDate.assign(value); }
/**
* <p>Date after which this gateway will not receive software updates for new
* features and bug fixes.</p>
*/
inline DescribeGatewayInformationResult& WithDeprecationDate(const Aws::String& value) { SetDeprecationDate(value); return *this;}
/**
* <p>Date after which this gateway will not receive software updates for new
* features and bug fixes.</p>
*/
inline DescribeGatewayInformationResult& WithDeprecationDate(Aws::String&& value) { SetDeprecationDate(std::move(value)); return *this;}
/**
* <p>Date after which this gateway will not receive software updates for new
* features and bug fixes.</p>
*/
inline DescribeGatewayInformationResult& WithDeprecationDate(const char* value) { SetDeprecationDate(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<NetworkInterface> m_gatewayNetworkInterfaces;
Aws::String m_gatewayType;
Aws::String m_nextUpdateAvailabilityDate;
Aws::String m_lastSoftwareUpdate;
Aws::String m_ec2InstanceId;
Aws::String m_ec2InstanceRegion;
Aws::Vector<Tag> 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;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,73 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/storagegateway/StorageGatewayRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace StorageGateway
{
namespace Model
{
/**
* <p>A JSON object containing the Amazon Resource Name (ARN) of the
* gateway.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/DescribeMaintenanceStartTimeInput">AWS
* API Reference</a></p>
*/
class AWS_STORAGEGATEWAY_API DescribeMaintenanceStartTimeRequest : public StorageGatewayRequest
{
public:
DescribeMaintenanceStartTimeRequest();
// 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 "DescribeMaintenanceStartTime"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
inline const Aws::String& GetGatewayARN() const{ return m_gatewayARN; }
inline bool GatewayARNHasBeenSet() const { return m_gatewayARNHasBeenSet; }
inline void SetGatewayARN(const Aws::String& value) { m_gatewayARNHasBeenSet = true; m_gatewayARN = value; }
inline void SetGatewayARN(Aws::String&& value) { m_gatewayARNHasBeenSet = true; m_gatewayARN = std::move(value); }
inline void SetGatewayARN(const char* value) { m_gatewayARNHasBeenSet = true; m_gatewayARN.assign(value); }
inline DescribeMaintenanceStartTimeRequest& WithGatewayARN(const Aws::String& value) { SetGatewayARN(value); return *this;}
inline DescribeMaintenanceStartTimeRequest& WithGatewayARN(Aws::String&& value) { SetGatewayARN(std::move(value)); return *this;}
inline DescribeMaintenanceStartTimeRequest& WithGatewayARN(const char* value) { SetGatewayARN(value); return *this;}
private:
Aws::String m_gatewayARN;
bool m_gatewayARNHasBeenSet;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,215 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace StorageGateway
{
namespace Model
{
/**
* <p>A JSON object containing the following fields:</p> <ul> <li> <p>
* <a>DescribeMaintenanceStartTimeOutput$DayOfMonth</a> </p> </li> <li> <p>
* <a>DescribeMaintenanceStartTimeOutput$DayOfWeek</a> </p> </li> <li> <p>
* <a>DescribeMaintenanceStartTimeOutput$HourOfDay</a> </p> </li> <li> <p>
* <a>DescribeMaintenanceStartTimeOutput$MinuteOfHour</a> </p> </li> <li> <p>
* <a>DescribeMaintenanceStartTimeOutput$Timezone</a> </p> </li> </ul><p><h3>See
* Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/DescribeMaintenanceStartTimeOutput">AWS
* API Reference</a></p>
*/
class AWS_STORAGEGATEWAY_API DescribeMaintenanceStartTimeResult
{
public:
DescribeMaintenanceStartTimeResult();
DescribeMaintenanceStartTimeResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
DescribeMaintenanceStartTimeResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& 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 DescribeMaintenanceStartTimeResult& WithGatewayARN(const Aws::String& value) { SetGatewayARN(value); return *this;}
inline DescribeMaintenanceStartTimeResult& WithGatewayARN(Aws::String&& value) { SetGatewayARN(std::move(value)); return *this;}
inline DescribeMaintenanceStartTimeResult& WithGatewayARN(const char* value) { SetGatewayARN(value); return *this;}
/**
* <p>The hour component of the maintenance start time represented as <i>hh</i>,
* where <i>hh</i> is the hour (0 to 23). The hour of the day is in the time zone
* of the gateway.</p>
*/
inline int GetHourOfDay() const{ return m_hourOfDay; }
/**
* <p>The hour component of the maintenance start time represented as <i>hh</i>,
* where <i>hh</i> is the hour (0 to 23). The hour of the day is in the time zone
* of the gateway.</p>
*/
inline void SetHourOfDay(int value) { m_hourOfDay = value; }
/**
* <p>The hour component of the maintenance start time represented as <i>hh</i>,
* where <i>hh</i> is the hour (0 to 23). The hour of the day is in the time zone
* of the gateway.</p>
*/
inline DescribeMaintenanceStartTimeResult& WithHourOfDay(int value) { SetHourOfDay(value); return *this;}
/**
* <p>The minute component of the maintenance start time represented as <i>mm</i>,
* where <i>mm</i> is the minute (0 to 59). The minute of the hour is in the time
* zone of the gateway.</p>
*/
inline int GetMinuteOfHour() const{ return m_minuteOfHour; }
/**
* <p>The minute component of the maintenance start time represented as <i>mm</i>,
* where <i>mm</i> is the minute (0 to 59). The minute of the hour is in the time
* zone of the gateway.</p>
*/
inline void SetMinuteOfHour(int value) { m_minuteOfHour = value; }
/**
* <p>The minute component of the maintenance start time represented as <i>mm</i>,
* where <i>mm</i> is the minute (0 to 59). The minute of the hour is in the time
* zone of the gateway.</p>
*/
inline DescribeMaintenanceStartTimeResult& WithMinuteOfHour(int value) { SetMinuteOfHour(value); return *this;}
/**
* <p>An ordinal number between 0 and 6 that represents the day of the week, where
* 0 represents Sunday and 6 represents Saturday. The day of week is in the time
* zone of the gateway.</p>
*/
inline int GetDayOfWeek() const{ return m_dayOfWeek; }
/**
* <p>An ordinal number between 0 and 6 that represents the day of the week, where
* 0 represents Sunday and 6 represents Saturday. The day of week is in the time
* zone of the gateway.</p>
*/
inline void SetDayOfWeek(int value) { m_dayOfWeek = value; }
/**
* <p>An ordinal number between 0 and 6 that represents the day of the week, where
* 0 represents Sunday and 6 represents Saturday. The day of week is in the time
* zone of the gateway.</p>
*/
inline DescribeMaintenanceStartTimeResult& WithDayOfWeek(int value) { SetDayOfWeek(value); return *this;}
/**
* <p>The day of the month component of the maintenance start time represented as
* an ordinal number from 1 to 28, where 1 represents the first day of the month
* and 28 represents the last day of the month.</p>
*/
inline int GetDayOfMonth() const{ return m_dayOfMonth; }
/**
* <p>The day of the month component of the maintenance start time represented as
* an ordinal number from 1 to 28, where 1 represents the first day of the month
* and 28 represents the last day of the month.</p>
*/
inline void SetDayOfMonth(int value) { m_dayOfMonth = value; }
/**
* <p>The day of the month component of the maintenance start time represented as
* an ordinal number from 1 to 28, where 1 represents the first day of the month
* and 28 represents the last day of the month.</p>
*/
inline DescribeMaintenanceStartTimeResult& WithDayOfMonth(int value) { SetDayOfMonth(value); return *this;}
/**
* <p>A value that indicates the time zone that is set for the gateway. The start
* time and day of week specified should be in the time zone of the gateway.</p>
*/
inline const Aws::String& GetTimezone() const{ return m_timezone; }
/**
* <p>A value that indicates the time zone that is set for the gateway. The start
* time and day of week specified should be in the time zone of the gateway.</p>
*/
inline void SetTimezone(const Aws::String& value) { m_timezone = value; }
/**
* <p>A value that indicates the time zone that is set for the gateway. The start
* time and day of week specified should be in the time zone of the gateway.</p>
*/
inline void SetTimezone(Aws::String&& value) { m_timezone = std::move(value); }
/**
* <p>A value that indicates the time zone that is set for the gateway. The start
* time and day of week specified should be in the time zone of the gateway.</p>
*/
inline void SetTimezone(const char* value) { m_timezone.assign(value); }
/**
* <p>A value that indicates the time zone that is set for the gateway. The start
* time and day of week specified should be in the time zone of the gateway.</p>
*/
inline DescribeMaintenanceStartTimeResult& WithTimezone(const Aws::String& value) { SetTimezone(value); return *this;}
/**
* <p>A value that indicates the time zone that is set for the gateway. The start
* time and day of week specified should be in the time zone of the gateway.</p>
*/
inline DescribeMaintenanceStartTimeResult& WithTimezone(Aws::String&& value) { SetTimezone(std::move(value)); return *this;}
/**
* <p>A value that indicates the time zone that is set for the gateway. The start
* time and day of week specified should be in the time zone of the gateway.</p>
*/
inline DescribeMaintenanceStartTimeResult& WithTimezone(const char* value) { SetTimezone(value); return *this;}
private:
Aws::String m_gatewayARN;
int m_hourOfDay;
int m_minuteOfHour;
int m_dayOfWeek;
int m_dayOfMonth;
Aws::String m_timezone;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,103 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/storagegateway/StorageGatewayRequest.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace StorageGateway
{
namespace Model
{
/**
* <p>DescribeNFSFileSharesInput</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/DescribeNFSFileSharesInput">AWS
* API Reference</a></p>
*/
class AWS_STORAGEGATEWAY_API DescribeNFSFileSharesRequest : public StorageGatewayRequest
{
public:
DescribeNFSFileSharesRequest();
// 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 "DescribeNFSFileShares"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
/**
* <p>An array containing the Amazon Resource Name (ARN) of each file share to be
* described.</p>
*/
inline const Aws::Vector<Aws::String>& GetFileShareARNList() const{ return m_fileShareARNList; }
/**
* <p>An array containing the Amazon Resource Name (ARN) of each file share to be
* described.</p>
*/
inline bool FileShareARNListHasBeenSet() const { return m_fileShareARNListHasBeenSet; }
/**
* <p>An array containing the Amazon Resource Name (ARN) of each file share to be
* described.</p>
*/
inline void SetFileShareARNList(const Aws::Vector<Aws::String>& value) { m_fileShareARNListHasBeenSet = true; m_fileShareARNList = value; }
/**
* <p>An array containing the Amazon Resource Name (ARN) of each file share to be
* described.</p>
*/
inline void SetFileShareARNList(Aws::Vector<Aws::String>&& value) { m_fileShareARNListHasBeenSet = true; m_fileShareARNList = std::move(value); }
/**
* <p>An array containing the Amazon Resource Name (ARN) of each file share to be
* described.</p>
*/
inline DescribeNFSFileSharesRequest& WithFileShareARNList(const Aws::Vector<Aws::String>& value) { SetFileShareARNList(value); return *this;}
/**
* <p>An array containing the Amazon Resource Name (ARN) of each file share to be
* described.</p>
*/
inline DescribeNFSFileSharesRequest& WithFileShareARNList(Aws::Vector<Aws::String>&& value) { SetFileShareARNList(std::move(value)); return *this;}
/**
* <p>An array containing the Amazon Resource Name (ARN) of each file share to be
* described.</p>
*/
inline DescribeNFSFileSharesRequest& AddFileShareARNList(const Aws::String& value) { m_fileShareARNListHasBeenSet = true; m_fileShareARNList.push_back(value); return *this; }
/**
* <p>An array containing the Amazon Resource Name (ARN) of each file share to be
* described.</p>
*/
inline DescribeNFSFileSharesRequest& AddFileShareARNList(Aws::String&& value) { m_fileShareARNListHasBeenSet = true; m_fileShareARNList.push_back(std::move(value)); return *this; }
/**
* <p>An array containing the Amazon Resource Name (ARN) of each file share to be
* described.</p>
*/
inline DescribeNFSFileSharesRequest& AddFileShareARNList(const char* value) { m_fileShareARNListHasBeenSet = true; m_fileShareARNList.push_back(value); return *this; }
private:
Aws::Vector<Aws::String> m_fileShareARNList;
bool m_fileShareARNListHasBeenSet;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,83 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/storagegateway/model/NFSFileShareInfo.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace StorageGateway
{
namespace Model
{
/**
* <p>DescribeNFSFileSharesOutput</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/DescribeNFSFileSharesOutput">AWS
* API Reference</a></p>
*/
class AWS_STORAGEGATEWAY_API DescribeNFSFileSharesResult
{
public:
DescribeNFSFileSharesResult();
DescribeNFSFileSharesResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
DescribeNFSFileSharesResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>An array containing a description for each requested file share.</p>
*/
inline const Aws::Vector<NFSFileShareInfo>& GetNFSFileShareInfoList() const{ return m_nFSFileShareInfoList; }
/**
* <p>An array containing a description for each requested file share.</p>
*/
inline void SetNFSFileShareInfoList(const Aws::Vector<NFSFileShareInfo>& value) { m_nFSFileShareInfoList = value; }
/**
* <p>An array containing a description for each requested file share.</p>
*/
inline void SetNFSFileShareInfoList(Aws::Vector<NFSFileShareInfo>&& value) { m_nFSFileShareInfoList = std::move(value); }
/**
* <p>An array containing a description for each requested file share.</p>
*/
inline DescribeNFSFileSharesResult& WithNFSFileShareInfoList(const Aws::Vector<NFSFileShareInfo>& value) { SetNFSFileShareInfoList(value); return *this;}
/**
* <p>An array containing a description for each requested file share.</p>
*/
inline DescribeNFSFileSharesResult& WithNFSFileShareInfoList(Aws::Vector<NFSFileShareInfo>&& value) { SetNFSFileShareInfoList(std::move(value)); return *this;}
/**
* <p>An array containing a description for each requested file share.</p>
*/
inline DescribeNFSFileSharesResult& AddNFSFileShareInfoList(const NFSFileShareInfo& value) { m_nFSFileShareInfoList.push_back(value); return *this; }
/**
* <p>An array containing a description for each requested file share.</p>
*/
inline DescribeNFSFileSharesResult& AddNFSFileShareInfoList(NFSFileShareInfo&& value) { m_nFSFileShareInfoList.push_back(std::move(value)); return *this; }
private:
Aws::Vector<NFSFileShareInfo> m_nFSFileShareInfoList;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,103 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/storagegateway/StorageGatewayRequest.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace StorageGateway
{
namespace Model
{
/**
* <p>DescribeSMBFileSharesInput</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/DescribeSMBFileSharesInput">AWS
* API Reference</a></p>
*/
class AWS_STORAGEGATEWAY_API DescribeSMBFileSharesRequest : public StorageGatewayRequest
{
public:
DescribeSMBFileSharesRequest();
// 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 "DescribeSMBFileShares"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
/**
* <p>An array containing the Amazon Resource Name (ARN) of each file share to be
* described.</p>
*/
inline const Aws::Vector<Aws::String>& GetFileShareARNList() const{ return m_fileShareARNList; }
/**
* <p>An array containing the Amazon Resource Name (ARN) of each file share to be
* described.</p>
*/
inline bool FileShareARNListHasBeenSet() const { return m_fileShareARNListHasBeenSet; }
/**
* <p>An array containing the Amazon Resource Name (ARN) of each file share to be
* described.</p>
*/
inline void SetFileShareARNList(const Aws::Vector<Aws::String>& value) { m_fileShareARNListHasBeenSet = true; m_fileShareARNList = value; }
/**
* <p>An array containing the Amazon Resource Name (ARN) of each file share to be
* described.</p>
*/
inline void SetFileShareARNList(Aws::Vector<Aws::String>&& value) { m_fileShareARNListHasBeenSet = true; m_fileShareARNList = std::move(value); }
/**
* <p>An array containing the Amazon Resource Name (ARN) of each file share to be
* described.</p>
*/
inline DescribeSMBFileSharesRequest& WithFileShareARNList(const Aws::Vector<Aws::String>& value) { SetFileShareARNList(value); return *this;}
/**
* <p>An array containing the Amazon Resource Name (ARN) of each file share to be
* described.</p>
*/
inline DescribeSMBFileSharesRequest& WithFileShareARNList(Aws::Vector<Aws::String>&& value) { SetFileShareARNList(std::move(value)); return *this;}
/**
* <p>An array containing the Amazon Resource Name (ARN) of each file share to be
* described.</p>
*/
inline DescribeSMBFileSharesRequest& AddFileShareARNList(const Aws::String& value) { m_fileShareARNListHasBeenSet = true; m_fileShareARNList.push_back(value); return *this; }
/**
* <p>An array containing the Amazon Resource Name (ARN) of each file share to be
* described.</p>
*/
inline DescribeSMBFileSharesRequest& AddFileShareARNList(Aws::String&& value) { m_fileShareARNListHasBeenSet = true; m_fileShareARNList.push_back(std::move(value)); return *this; }
/**
* <p>An array containing the Amazon Resource Name (ARN) of each file share to be
* described.</p>
*/
inline DescribeSMBFileSharesRequest& AddFileShareARNList(const char* value) { m_fileShareARNListHasBeenSet = true; m_fileShareARNList.push_back(value); return *this; }
private:
Aws::Vector<Aws::String> m_fileShareARNList;
bool m_fileShareARNListHasBeenSet;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,83 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/storagegateway/model/SMBFileShareInfo.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace StorageGateway
{
namespace Model
{
/**
* <p>DescribeSMBFileSharesOutput</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/DescribeSMBFileSharesOutput">AWS
* API Reference</a></p>
*/
class AWS_STORAGEGATEWAY_API DescribeSMBFileSharesResult
{
public:
DescribeSMBFileSharesResult();
DescribeSMBFileSharesResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
DescribeSMBFileSharesResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>An array containing a description for each requested file share.</p>
*/
inline const Aws::Vector<SMBFileShareInfo>& GetSMBFileShareInfoList() const{ return m_sMBFileShareInfoList; }
/**
* <p>An array containing a description for each requested file share.</p>
*/
inline void SetSMBFileShareInfoList(const Aws::Vector<SMBFileShareInfo>& value) { m_sMBFileShareInfoList = value; }
/**
* <p>An array containing a description for each requested file share.</p>
*/
inline void SetSMBFileShareInfoList(Aws::Vector<SMBFileShareInfo>&& value) { m_sMBFileShareInfoList = std::move(value); }
/**
* <p>An array containing a description for each requested file share.</p>
*/
inline DescribeSMBFileSharesResult& WithSMBFileShareInfoList(const Aws::Vector<SMBFileShareInfo>& value) { SetSMBFileShareInfoList(value); return *this;}
/**
* <p>An array containing a description for each requested file share.</p>
*/
inline DescribeSMBFileSharesResult& WithSMBFileShareInfoList(Aws::Vector<SMBFileShareInfo>&& value) { SetSMBFileShareInfoList(std::move(value)); return *this;}
/**
* <p>An array containing a description for each requested file share.</p>
*/
inline DescribeSMBFileSharesResult& AddSMBFileShareInfoList(const SMBFileShareInfo& value) { m_sMBFileShareInfoList.push_back(value); return *this; }
/**
* <p>An array containing a description for each requested file share.</p>
*/
inline DescribeSMBFileSharesResult& AddSMBFileShareInfoList(SMBFileShareInfo&& value) { m_sMBFileShareInfoList.push_back(std::move(value)); return *this; }
private:
Aws::Vector<SMBFileShareInfo> m_sMBFileShareInfoList;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,69 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/storagegateway/StorageGatewayRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace StorageGateway
{
namespace Model
{
/**
*/
class AWS_STORAGEGATEWAY_API DescribeSMBSettingsRequest : public StorageGatewayRequest
{
public:
DescribeSMBSettingsRequest();
// 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 "DescribeSMBSettings"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
inline const Aws::String& GetGatewayARN() const{ return m_gatewayARN; }
inline bool GatewayARNHasBeenSet() const { return m_gatewayARNHasBeenSet; }
inline void SetGatewayARN(const Aws::String& value) { m_gatewayARNHasBeenSet = true; m_gatewayARN = value; }
inline void SetGatewayARN(Aws::String&& value) { m_gatewayARNHasBeenSet = true; m_gatewayARN = std::move(value); }
inline void SetGatewayARN(const char* value) { m_gatewayARNHasBeenSet = true; m_gatewayARN.assign(value); }
inline DescribeSMBSettingsRequest& WithGatewayARN(const Aws::String& value) { SetGatewayARN(value); return *this;}
inline DescribeSMBSettingsRequest& WithGatewayARN(Aws::String&& value) { SetGatewayARN(std::move(value)); return *this;}
inline DescribeSMBSettingsRequest& WithGatewayARN(const char* value) { SetGatewayARN(value); return *this;}
private:
Aws::String m_gatewayARN;
bool m_gatewayARNHasBeenSet;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,303 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/storagegateway/model/ActiveDirectoryStatus.h>
#include <aws/storagegateway/model/SMBSecurityStrategy.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace StorageGateway
{
namespace Model
{
class AWS_STORAGEGATEWAY_API DescribeSMBSettingsResult
{
public:
DescribeSMBSettingsResult();
DescribeSMBSettingsResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
DescribeSMBSettingsResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& 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 DescribeSMBSettingsResult& WithGatewayARN(const Aws::String& value) { SetGatewayARN(value); return *this;}
inline DescribeSMBSettingsResult& WithGatewayARN(Aws::String&& value) { SetGatewayARN(std::move(value)); return *this;}
inline DescribeSMBSettingsResult& WithGatewayARN(const char* value) { SetGatewayARN(value); return *this;}
/**
* <p>The name of the domain that the gateway is joined to.</p>
*/
inline const Aws::String& GetDomainName() const{ return m_domainName; }
/**
* <p>The name of the domain that the gateway is joined to.</p>
*/
inline void SetDomainName(const Aws::String& value) { m_domainName = value; }
/**
* <p>The name of the domain that the gateway is joined to.</p>
*/
inline void SetDomainName(Aws::String&& value) { m_domainName = std::move(value); }
/**
* <p>The name of the domain that the gateway is joined to.</p>
*/
inline void SetDomainName(const char* value) { m_domainName.assign(value); }
/**
* <p>The name of the domain that the gateway is joined to.</p>
*/
inline DescribeSMBSettingsResult& WithDomainName(const Aws::String& value) { SetDomainName(value); return *this;}
/**
* <p>The name of the domain that the gateway is joined to.</p>
*/
inline DescribeSMBSettingsResult& WithDomainName(Aws::String&& value) { SetDomainName(std::move(value)); return *this;}
/**
* <p>The name of the domain that the gateway is joined to.</p>
*/
inline DescribeSMBSettingsResult& WithDomainName(const char* value) { SetDomainName(value); return *this;}
/**
* <p>Indicates the status of a gateway that is a member of the Active Directory
* domain.</p> <ul> <li> <p> <code>ACCESS_DENIED</code>: Indicates that the
* <code>JoinDomain</code> operation failed due to an authentication error.</p>
* </li> <li> <p> <code>DETACHED</code>: Indicates that gateway is not joined to a
* domain.</p> </li> <li> <p> <code>JOINED</code>: Indicates that the gateway has
* successfully joined a domain.</p> </li> <li> <p> <code>JOINING</code>: Indicates
* that a <code>JoinDomain</code> operation is in progress.</p> </li> <li> <p>
* <code>NETWORK_ERROR</code>: Indicates that <code>JoinDomain</code> operation
* failed due to a network or connectivity error.</p> </li> <li> <p>
* <code>TIMEOUT</code>: Indicates that the <code>JoinDomain</code> operation
* failed because the operation didn't complete within the allotted time.</p> </li>
* <li> <p> <code>UNKNOWN_ERROR</code>: Indicates that the <code>JoinDomain</code>
* operation failed due to another type of error.</p> </li> </ul>
*/
inline const ActiveDirectoryStatus& GetActiveDirectoryStatus() const{ return m_activeDirectoryStatus; }
/**
* <p>Indicates the status of a gateway that is a member of the Active Directory
* domain.</p> <ul> <li> <p> <code>ACCESS_DENIED</code>: Indicates that the
* <code>JoinDomain</code> operation failed due to an authentication error.</p>
* </li> <li> <p> <code>DETACHED</code>: Indicates that gateway is not joined to a
* domain.</p> </li> <li> <p> <code>JOINED</code>: Indicates that the gateway has
* successfully joined a domain.</p> </li> <li> <p> <code>JOINING</code>: Indicates
* that a <code>JoinDomain</code> operation is in progress.</p> </li> <li> <p>
* <code>NETWORK_ERROR</code>: Indicates that <code>JoinDomain</code> operation
* failed due to a network or connectivity error.</p> </li> <li> <p>
* <code>TIMEOUT</code>: Indicates that the <code>JoinDomain</code> operation
* failed because the operation didn't complete within the allotted time.</p> </li>
* <li> <p> <code>UNKNOWN_ERROR</code>: Indicates that the <code>JoinDomain</code>
* operation failed due to another type of error.</p> </li> </ul>
*/
inline void SetActiveDirectoryStatus(const ActiveDirectoryStatus& value) { m_activeDirectoryStatus = value; }
/**
* <p>Indicates the status of a gateway that is a member of the Active Directory
* domain.</p> <ul> <li> <p> <code>ACCESS_DENIED</code>: Indicates that the
* <code>JoinDomain</code> operation failed due to an authentication error.</p>
* </li> <li> <p> <code>DETACHED</code>: Indicates that gateway is not joined to a
* domain.</p> </li> <li> <p> <code>JOINED</code>: Indicates that the gateway has
* successfully joined a domain.</p> </li> <li> <p> <code>JOINING</code>: Indicates
* that a <code>JoinDomain</code> operation is in progress.</p> </li> <li> <p>
* <code>NETWORK_ERROR</code>: Indicates that <code>JoinDomain</code> operation
* failed due to a network or connectivity error.</p> </li> <li> <p>
* <code>TIMEOUT</code>: Indicates that the <code>JoinDomain</code> operation
* failed because the operation didn't complete within the allotted time.</p> </li>
* <li> <p> <code>UNKNOWN_ERROR</code>: Indicates that the <code>JoinDomain</code>
* operation failed due to another type of error.</p> </li> </ul>
*/
inline void SetActiveDirectoryStatus(ActiveDirectoryStatus&& value) { m_activeDirectoryStatus = std::move(value); }
/**
* <p>Indicates the status of a gateway that is a member of the Active Directory
* domain.</p> <ul> <li> <p> <code>ACCESS_DENIED</code>: Indicates that the
* <code>JoinDomain</code> operation failed due to an authentication error.</p>
* </li> <li> <p> <code>DETACHED</code>: Indicates that gateway is not joined to a
* domain.</p> </li> <li> <p> <code>JOINED</code>: Indicates that the gateway has
* successfully joined a domain.</p> </li> <li> <p> <code>JOINING</code>: Indicates
* that a <code>JoinDomain</code> operation is in progress.</p> </li> <li> <p>
* <code>NETWORK_ERROR</code>: Indicates that <code>JoinDomain</code> operation
* failed due to a network or connectivity error.</p> </li> <li> <p>
* <code>TIMEOUT</code>: Indicates that the <code>JoinDomain</code> operation
* failed because the operation didn't complete within the allotted time.</p> </li>
* <li> <p> <code>UNKNOWN_ERROR</code>: Indicates that the <code>JoinDomain</code>
* operation failed due to another type of error.</p> </li> </ul>
*/
inline DescribeSMBSettingsResult& WithActiveDirectoryStatus(const ActiveDirectoryStatus& value) { SetActiveDirectoryStatus(value); return *this;}
/**
* <p>Indicates the status of a gateway that is a member of the Active Directory
* domain.</p> <ul> <li> <p> <code>ACCESS_DENIED</code>: Indicates that the
* <code>JoinDomain</code> operation failed due to an authentication error.</p>
* </li> <li> <p> <code>DETACHED</code>: Indicates that gateway is not joined to a
* domain.</p> </li> <li> <p> <code>JOINED</code>: Indicates that the gateway has
* successfully joined a domain.</p> </li> <li> <p> <code>JOINING</code>: Indicates
* that a <code>JoinDomain</code> operation is in progress.</p> </li> <li> <p>
* <code>NETWORK_ERROR</code>: Indicates that <code>JoinDomain</code> operation
* failed due to a network or connectivity error.</p> </li> <li> <p>
* <code>TIMEOUT</code>: Indicates that the <code>JoinDomain</code> operation
* failed because the operation didn't complete within the allotted time.</p> </li>
* <li> <p> <code>UNKNOWN_ERROR</code>: Indicates that the <code>JoinDomain</code>
* operation failed due to another type of error.</p> </li> </ul>
*/
inline DescribeSMBSettingsResult& WithActiveDirectoryStatus(ActiveDirectoryStatus&& value) { SetActiveDirectoryStatus(std::move(value)); return *this;}
/**
* <p>This value is <code>true</code> if a password for the guest user
* <code>smbguest</code> is set, otherwise <code>false</code>.</p> <p>Valid Values:
* <code>true</code> | <code>false</code> </p>
*/
inline bool GetSMBGuestPasswordSet() const{ return m_sMBGuestPasswordSet; }
/**
* <p>This value is <code>true</code> if a password for the guest user
* <code>smbguest</code> is set, otherwise <code>false</code>.</p> <p>Valid Values:
* <code>true</code> | <code>false</code> </p>
*/
inline void SetSMBGuestPasswordSet(bool value) { m_sMBGuestPasswordSet = value; }
/**
* <p>This value is <code>true</code> if a password for the guest user
* <code>smbguest</code> is set, otherwise <code>false</code>.</p> <p>Valid Values:
* <code>true</code> | <code>false</code> </p>
*/
inline DescribeSMBSettingsResult& WithSMBGuestPasswordSet(bool value) { SetSMBGuestPasswordSet(value); return *this;}
/**
* <p>The type of security strategy that was specified for file gateway.</p> <ul>
* <li> <p> <code>ClientSpecified</code>: If you use this option, requests are
* established based on what is negotiated by the client. This option is
* recommended when you want to maximize compatibility across different clients in
* your environment.</p> </li> <li> <p> <code>MandatorySigning</code>: If you use
* this option, file gateway only allows connections from SMBv2 or SMBv3 clients
* that have signing enabled. This option works with SMB clients on Microsoft
* Windows Vista, Windows Server 2008 or newer.</p> </li> <li> <p>
* <code>MandatoryEncryption</code>: If you use this option, file gateway only
* allows connections from SMBv3 clients that have encryption enabled. This option
* is highly recommended for environments that handle sensitive data. This option
* works with SMB clients on Microsoft Windows 8, Windows Server 2012 or newer.</p>
* </li> </ul>
*/
inline const SMBSecurityStrategy& GetSMBSecurityStrategy() const{ return m_sMBSecurityStrategy; }
/**
* <p>The type of security strategy that was specified for file gateway.</p> <ul>
* <li> <p> <code>ClientSpecified</code>: If you use this option, requests are
* established based on what is negotiated by the client. This option is
* recommended when you want to maximize compatibility across different clients in
* your environment.</p> </li> <li> <p> <code>MandatorySigning</code>: If you use
* this option, file gateway only allows connections from SMBv2 or SMBv3 clients
* that have signing enabled. This option works with SMB clients on Microsoft
* Windows Vista, Windows Server 2008 or newer.</p> </li> <li> <p>
* <code>MandatoryEncryption</code>: If you use this option, file gateway only
* allows connections from SMBv3 clients that have encryption enabled. This option
* is highly recommended for environments that handle sensitive data. This option
* works with SMB clients on Microsoft Windows 8, Windows Server 2012 or newer.</p>
* </li> </ul>
*/
inline void SetSMBSecurityStrategy(const SMBSecurityStrategy& value) { m_sMBSecurityStrategy = value; }
/**
* <p>The type of security strategy that was specified for file gateway.</p> <ul>
* <li> <p> <code>ClientSpecified</code>: If you use this option, requests are
* established based on what is negotiated by the client. This option is
* recommended when you want to maximize compatibility across different clients in
* your environment.</p> </li> <li> <p> <code>MandatorySigning</code>: If you use
* this option, file gateway only allows connections from SMBv2 or SMBv3 clients
* that have signing enabled. This option works with SMB clients on Microsoft
* Windows Vista, Windows Server 2008 or newer.</p> </li> <li> <p>
* <code>MandatoryEncryption</code>: If you use this option, file gateway only
* allows connections from SMBv3 clients that have encryption enabled. This option
* is highly recommended for environments that handle sensitive data. This option
* works with SMB clients on Microsoft Windows 8, Windows Server 2012 or newer.</p>
* </li> </ul>
*/
inline void SetSMBSecurityStrategy(SMBSecurityStrategy&& value) { m_sMBSecurityStrategy = std::move(value); }
/**
* <p>The type of security strategy that was specified for file gateway.</p> <ul>
* <li> <p> <code>ClientSpecified</code>: If you use this option, requests are
* established based on what is negotiated by the client. This option is
* recommended when you want to maximize compatibility across different clients in
* your environment.</p> </li> <li> <p> <code>MandatorySigning</code>: If you use
* this option, file gateway only allows connections from SMBv2 or SMBv3 clients
* that have signing enabled. This option works with SMB clients on Microsoft
* Windows Vista, Windows Server 2008 or newer.</p> </li> <li> <p>
* <code>MandatoryEncryption</code>: If you use this option, file gateway only
* allows connections from SMBv3 clients that have encryption enabled. This option
* is highly recommended for environments that handle sensitive data. This option
* works with SMB clients on Microsoft Windows 8, Windows Server 2012 or newer.</p>
* </li> </ul>
*/
inline DescribeSMBSettingsResult& WithSMBSecurityStrategy(const SMBSecurityStrategy& value) { SetSMBSecurityStrategy(value); return *this;}
/**
* <p>The type of security strategy that was specified for file gateway.</p> <ul>
* <li> <p> <code>ClientSpecified</code>: If you use this option, requests are
* established based on what is negotiated by the client. This option is
* recommended when you want to maximize compatibility across different clients in
* your environment.</p> </li> <li> <p> <code>MandatorySigning</code>: If you use
* this option, file gateway only allows connections from SMBv2 or SMBv3 clients
* that have signing enabled. This option works with SMB clients on Microsoft
* Windows Vista, Windows Server 2008 or newer.</p> </li> <li> <p>
* <code>MandatoryEncryption</code>: If you use this option, file gateway only
* allows connections from SMBv3 clients that have encryption enabled. This option
* is highly recommended for environments that handle sensitive data. This option
* works with SMB clients on Microsoft Windows 8, Windows Server 2012 or newer.</p>
* </li> </ul>
*/
inline DescribeSMBSettingsResult& WithSMBSecurityStrategy(SMBSecurityStrategy&& value) { SetSMBSecurityStrategy(std::move(value)); return *this;}
private:
Aws::String m_gatewayARN;
Aws::String m_domainName;
ActiveDirectoryStatus m_activeDirectoryStatus;
bool m_sMBGuestPasswordSet;
SMBSecurityStrategy m_sMBSecurityStrategy;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,97 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/storagegateway/StorageGatewayRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace StorageGateway
{
namespace Model
{
/**
* <p>A JSON object containing the <a>DescribeSnapshotScheduleInput$VolumeARN</a>
* of the volume.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/DescribeSnapshotScheduleInput">AWS
* API Reference</a></p>
*/
class AWS_STORAGEGATEWAY_API DescribeSnapshotScheduleRequest : public StorageGatewayRequest
{
public:
DescribeSnapshotScheduleRequest();
// 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 "DescribeSnapshotSchedule"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
/**
* <p>The Amazon Resource Name (ARN) of the volume. Use the <a>ListVolumes</a>
* operation to return a list of gateway volumes.</p>
*/
inline const Aws::String& GetVolumeARN() const{ return m_volumeARN; }
/**
* <p>The Amazon Resource Name (ARN) of the volume. Use the <a>ListVolumes</a>
* operation to return a list of gateway volumes.</p>
*/
inline bool VolumeARNHasBeenSet() const { return m_volumeARNHasBeenSet; }
/**
* <p>The Amazon Resource Name (ARN) of the volume. Use the <a>ListVolumes</a>
* operation to return a list of gateway volumes.</p>
*/
inline void SetVolumeARN(const Aws::String& value) { m_volumeARNHasBeenSet = true; m_volumeARN = value; }
/**
* <p>The Amazon Resource Name (ARN) of the volume. Use the <a>ListVolumes</a>
* operation to return a list of gateway volumes.</p>
*/
inline void SetVolumeARN(Aws::String&& value) { m_volumeARNHasBeenSet = true; m_volumeARN = std::move(value); }
/**
* <p>The Amazon Resource Name (ARN) of the volume. Use the <a>ListVolumes</a>
* operation to return a list of gateway volumes.</p>
*/
inline void SetVolumeARN(const char* value) { m_volumeARNHasBeenSet = true; m_volumeARN.assign(value); }
/**
* <p>The Amazon Resource Name (ARN) of the volume. Use the <a>ListVolumes</a>
* operation to return a list of gateway volumes.</p>
*/
inline DescribeSnapshotScheduleRequest& WithVolumeARN(const Aws::String& value) { SetVolumeARN(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the volume. Use the <a>ListVolumes</a>
* operation to return a list of gateway volumes.</p>
*/
inline DescribeSnapshotScheduleRequest& WithVolumeARN(Aws::String&& value) { SetVolumeARN(std::move(value)); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the volume. Use the <a>ListVolumes</a>
* operation to return a list of gateway volumes.</p>
*/
inline DescribeSnapshotScheduleRequest& WithVolumeARN(const char* value) { SetVolumeARN(value); return *this;}
private:
Aws::String m_volumeARN;
bool m_volumeARNHasBeenSet;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,263 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/storagegateway/model/Tag.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace StorageGateway
{
namespace Model
{
class AWS_STORAGEGATEWAY_API DescribeSnapshotScheduleResult
{
public:
DescribeSnapshotScheduleResult();
DescribeSnapshotScheduleResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
DescribeSnapshotScheduleResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>The Amazon Resource Name (ARN) of the volume that was specified in the
* request.</p>
*/
inline const Aws::String& GetVolumeARN() const{ return m_volumeARN; }
/**
* <p>The Amazon Resource Name (ARN) of the volume that was specified in the
* request.</p>
*/
inline void SetVolumeARN(const Aws::String& value) { m_volumeARN = value; }
/**
* <p>The Amazon Resource Name (ARN) of the volume that was specified in the
* request.</p>
*/
inline void SetVolumeARN(Aws::String&& value) { m_volumeARN = std::move(value); }
/**
* <p>The Amazon Resource Name (ARN) of the volume that was specified in the
* request.</p>
*/
inline void SetVolumeARN(const char* value) { m_volumeARN.assign(value); }
/**
* <p>The Amazon Resource Name (ARN) of the volume that was specified in the
* request.</p>
*/
inline DescribeSnapshotScheduleResult& WithVolumeARN(const Aws::String& value) { SetVolumeARN(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the volume that was specified in the
* request.</p>
*/
inline DescribeSnapshotScheduleResult& WithVolumeARN(Aws::String&& value) { SetVolumeARN(std::move(value)); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the volume that was specified in the
* request.</p>
*/
inline DescribeSnapshotScheduleResult& WithVolumeARN(const char* value) { SetVolumeARN(value); return *this;}
/**
* <p>The hour of the day at which the snapshot schedule begins represented as
* <i>hh</i>, where <i>hh</i> is the hour (0 to 23). The hour of the day is in the
* time zone of the gateway.</p>
*/
inline int GetStartAt() const{ return m_startAt; }
/**
* <p>The hour of the day at which the snapshot schedule begins represented as
* <i>hh</i>, where <i>hh</i> is the hour (0 to 23). The hour of the day is in the
* time zone of the gateway.</p>
*/
inline void SetStartAt(int value) { m_startAt = value; }
/**
* <p>The hour of the day at which the snapshot schedule begins represented as
* <i>hh</i>, where <i>hh</i> is the hour (0 to 23). The hour of the day is in the
* time zone of the gateway.</p>
*/
inline DescribeSnapshotScheduleResult& WithStartAt(int value) { SetStartAt(value); return *this;}
/**
* <p>The number of hours between snapshots.</p>
*/
inline int GetRecurrenceInHours() const{ return m_recurrenceInHours; }
/**
* <p>The number of hours between snapshots.</p>
*/
inline void SetRecurrenceInHours(int value) { m_recurrenceInHours = value; }
/**
* <p>The number of hours between snapshots.</p>
*/
inline DescribeSnapshotScheduleResult& WithRecurrenceInHours(int value) { SetRecurrenceInHours(value); return *this;}
/**
* <p>The snapshot description.</p>
*/
inline const Aws::String& GetDescription() const{ return m_description; }
/**
* <p>The snapshot description.</p>
*/
inline void SetDescription(const Aws::String& value) { m_description = value; }
/**
* <p>The snapshot description.</p>
*/
inline void SetDescription(Aws::String&& value) { m_description = std::move(value); }
/**
* <p>The snapshot description.</p>
*/
inline void SetDescription(const char* value) { m_description.assign(value); }
/**
* <p>The snapshot description.</p>
*/
inline DescribeSnapshotScheduleResult& WithDescription(const Aws::String& value) { SetDescription(value); return *this;}
/**
* <p>The snapshot description.</p>
*/
inline DescribeSnapshotScheduleResult& WithDescription(Aws::String&& value) { SetDescription(std::move(value)); return *this;}
/**
* <p>The snapshot description.</p>
*/
inline DescribeSnapshotScheduleResult& WithDescription(const char* value) { SetDescription(value); return *this;}
/**
* <p>A value that indicates the time zone of the gateway.</p>
*/
inline const Aws::String& GetTimezone() const{ return m_timezone; }
/**
* <p>A value that indicates the time zone of the gateway.</p>
*/
inline void SetTimezone(const Aws::String& value) { m_timezone = value; }
/**
* <p>A value that indicates the time zone of the gateway.</p>
*/
inline void SetTimezone(Aws::String&& value) { m_timezone = std::move(value); }
/**
* <p>A value that indicates the time zone of the gateway.</p>
*/
inline void SetTimezone(const char* value) { m_timezone.assign(value); }
/**
* <p>A value that indicates the time zone of the gateway.</p>
*/
inline DescribeSnapshotScheduleResult& WithTimezone(const Aws::String& value) { SetTimezone(value); return *this;}
/**
* <p>A value that indicates the time zone of the gateway.</p>
*/
inline DescribeSnapshotScheduleResult& WithTimezone(Aws::String&& value) { SetTimezone(std::move(value)); return *this;}
/**
* <p>A value that indicates the time zone of the gateway.</p>
*/
inline DescribeSnapshotScheduleResult& WithTimezone(const char* value) { SetTimezone(value); return *this;}
/**
* <p>A list of up to 50 tags assigned to the snapshot schedule, 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
* <code>ListTagsForResource</code> API operation.</p>
*/
inline const Aws::Vector<Tag>& GetTags() const{ return m_tags; }
/**
* <p>A list of up to 50 tags assigned to the snapshot schedule, 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
* <code>ListTagsForResource</code> API operation.</p>
*/
inline void SetTags(const Aws::Vector<Tag>& value) { m_tags = value; }
/**
* <p>A list of up to 50 tags assigned to the snapshot schedule, 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
* <code>ListTagsForResource</code> API operation.</p>
*/
inline void SetTags(Aws::Vector<Tag>&& value) { m_tags = std::move(value); }
/**
* <p>A list of up to 50 tags assigned to the snapshot schedule, 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
* <code>ListTagsForResource</code> API operation.</p>
*/
inline DescribeSnapshotScheduleResult& WithTags(const Aws::Vector<Tag>& value) { SetTags(value); return *this;}
/**
* <p>A list of up to 50 tags assigned to the snapshot schedule, 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
* <code>ListTagsForResource</code> API operation.</p>
*/
inline DescribeSnapshotScheduleResult& WithTags(Aws::Vector<Tag>&& value) { SetTags(std::move(value)); return *this;}
/**
* <p>A list of up to 50 tags assigned to the snapshot schedule, 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
* <code>ListTagsForResource</code> API operation.</p>
*/
inline DescribeSnapshotScheduleResult& AddTags(const Tag& value) { m_tags.push_back(value); return *this; }
/**
* <p>A list of up to 50 tags assigned to the snapshot schedule, 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
* <code>ListTagsForResource</code> API operation.</p>
*/
inline DescribeSnapshotScheduleResult& AddTags(Tag&& value) { m_tags.push_back(std::move(value)); return *this; }
private:
Aws::String m_volumeARN;
int m_startAt;
int m_recurrenceInHours;
Aws::String m_description;
Aws::String m_timezone;
Aws::Vector<Tag> m_tags;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,113 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/storagegateway/StorageGatewayRequest.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace StorageGateway
{
namespace Model
{
/**
* <p>A JSON object containing a list of
* <a>DescribeStorediSCSIVolumesInput$VolumeARNs</a>.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/DescribeStorediSCSIVolumesInput">AWS
* API Reference</a></p>
*/
class AWS_STORAGEGATEWAY_API DescribeStorediSCSIVolumesRequest : public StorageGatewayRequest
{
public:
DescribeStorediSCSIVolumesRequest();
// 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 "DescribeStorediSCSIVolumes"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
/**
* <p>An array of strings where each string represents the Amazon Resource Name
* (ARN) of a stored volume. All of the specified stored volumes must be from the
* same gateway. Use <a>ListVolumes</a> to get volume ARNs for a gateway.</p>
*/
inline const Aws::Vector<Aws::String>& GetVolumeARNs() const{ return m_volumeARNs; }
/**
* <p>An array of strings where each string represents the Amazon Resource Name
* (ARN) of a stored volume. All of the specified stored volumes must be from the
* same gateway. Use <a>ListVolumes</a> to get volume ARNs for a gateway.</p>
*/
inline bool VolumeARNsHasBeenSet() const { return m_volumeARNsHasBeenSet; }
/**
* <p>An array of strings where each string represents the Amazon Resource Name
* (ARN) of a stored volume. All of the specified stored volumes must be from the
* same gateway. Use <a>ListVolumes</a> to get volume ARNs for a gateway.</p>
*/
inline void SetVolumeARNs(const Aws::Vector<Aws::String>& value) { m_volumeARNsHasBeenSet = true; m_volumeARNs = value; }
/**
* <p>An array of strings where each string represents the Amazon Resource Name
* (ARN) of a stored volume. All of the specified stored volumes must be from the
* same gateway. Use <a>ListVolumes</a> to get volume ARNs for a gateway.</p>
*/
inline void SetVolumeARNs(Aws::Vector<Aws::String>&& value) { m_volumeARNsHasBeenSet = true; m_volumeARNs = std::move(value); }
/**
* <p>An array of strings where each string represents the Amazon Resource Name
* (ARN) of a stored volume. All of the specified stored volumes must be from the
* same gateway. Use <a>ListVolumes</a> to get volume ARNs for a gateway.</p>
*/
inline DescribeStorediSCSIVolumesRequest& WithVolumeARNs(const Aws::Vector<Aws::String>& value) { SetVolumeARNs(value); return *this;}
/**
* <p>An array of strings where each string represents the Amazon Resource Name
* (ARN) of a stored volume. All of the specified stored volumes must be from the
* same gateway. Use <a>ListVolumes</a> to get volume ARNs for a gateway.</p>
*/
inline DescribeStorediSCSIVolumesRequest& WithVolumeARNs(Aws::Vector<Aws::String>&& value) { SetVolumeARNs(std::move(value)); return *this;}
/**
* <p>An array of strings where each string represents the Amazon Resource Name
* (ARN) of a stored volume. All of the specified stored volumes must be from the
* same gateway. Use <a>ListVolumes</a> to get volume ARNs for a gateway.</p>
*/
inline DescribeStorediSCSIVolumesRequest& AddVolumeARNs(const Aws::String& value) { m_volumeARNsHasBeenSet = true; m_volumeARNs.push_back(value); return *this; }
/**
* <p>An array of strings where each string represents the Amazon Resource Name
* (ARN) of a stored volume. All of the specified stored volumes must be from the
* same gateway. Use <a>ListVolumes</a> to get volume ARNs for a gateway.</p>
*/
inline DescribeStorediSCSIVolumesRequest& AddVolumeARNs(Aws::String&& value) { m_volumeARNsHasBeenSet = true; m_volumeARNs.push_back(std::move(value)); return *this; }
/**
* <p>An array of strings where each string represents the Amazon Resource Name
* (ARN) of a stored volume. All of the specified stored volumes must be from the
* same gateway. Use <a>ListVolumes</a> to get volume ARNs for a gateway.</p>
*/
inline DescribeStorediSCSIVolumesRequest& AddVolumeARNs(const char* value) { m_volumeARNsHasBeenSet = true; m_volumeARNs.push_back(value); return *this; }
private:
Aws::Vector<Aws::String> m_volumeARNs;
bool m_volumeARNsHasBeenSet;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,295 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/storagegateway/model/StorediSCSIVolume.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace StorageGateway
{
namespace Model
{
class AWS_STORAGEGATEWAY_API DescribeStorediSCSIVolumesResult
{
public:
DescribeStorediSCSIVolumesResult();
DescribeStorediSCSIVolumesResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
DescribeStorediSCSIVolumesResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>Describes a single unit of output from <a>DescribeStorediSCSIVolumes</a>. The
* following fields are returned:</p> <ul> <li> <p> <code>ChapEnabled</code>:
* Indicates whether mutual CHAP is enabled for the iSCSI target.</p> </li> <li>
* <p> <code>LunNumber</code>: The logical disk number.</p> </li> <li> <p>
* <code>NetworkInterfaceId</code>: The network interface ID of the stored volume
* that initiator use to map the stored volume as an iSCSI target.</p> </li> <li>
* <p> <code>NetworkInterfacePort</code>: The port used to communicate with iSCSI
* targets.</p> </li> <li> <p> <code>PreservedExistingData</code>: Indicates when
* the stored volume was created, existing data on the underlying local disk was
* preserved.</p> </li> <li> <p> <code>SourceSnapshotId</code>: If the stored
* volume was created from a snapshot, this field contains the snapshot ID used,
* e.g. <code>snap-1122aabb</code>. Otherwise, this field is not included.</p>
* </li> <li> <p> <code>StorediSCSIVolumes</code>: An array of StorediSCSIVolume
* objects where each object contains metadata about one stored volume.</p> </li>
* <li> <p> <code>TargetARN</code>: The Amazon Resource Name (ARN) of the volume
* target.</p> </li> <li> <p> <code>VolumeARN</code>: The Amazon Resource Name
* (ARN) of the stored volume.</p> </li> <li> <p> <code>VolumeDiskId</code>: The
* disk ID of the local disk that was specified in the
* <a>CreateStorediSCSIVolume</a> operation.</p> </li> <li> <p>
* <code>VolumeId</code>: The unique identifier of the storage volume, e.g.
* <code>vol-1122AABB</code>.</p> </li> <li> <p>
* <code>VolumeiSCSIAttributes</code>: An <a>VolumeiSCSIAttributes</a> object that
* represents a collection of iSCSI attributes for one stored volume.</p> </li>
* <li> <p> <code>VolumeProgress</code>: Represents the percentage complete if the
* volume is restoring or bootstrapping that represents the percent of data
* transferred. This field does not appear in the response if the stored volume is
* not restoring or bootstrapping.</p> </li> <li> <p>
* <code>VolumeSizeInBytes</code>: The size of the volume in bytes.</p> </li> <li>
* <p> <code>VolumeStatus</code>: One of the <code>VolumeStatus</code> values that
* indicates the state of the volume.</p> </li> <li> <p> <code>VolumeType</code>:
* One of the enumeration values describing the type of the volume. Currently, only
* <code>STORED</code> volumes are supported.</p> </li> </ul>
*/
inline const Aws::Vector<StorediSCSIVolume>& GetStorediSCSIVolumes() const{ return m_storediSCSIVolumes; }
/**
* <p>Describes a single unit of output from <a>DescribeStorediSCSIVolumes</a>. The
* following fields are returned:</p> <ul> <li> <p> <code>ChapEnabled</code>:
* Indicates whether mutual CHAP is enabled for the iSCSI target.</p> </li> <li>
* <p> <code>LunNumber</code>: The logical disk number.</p> </li> <li> <p>
* <code>NetworkInterfaceId</code>: The network interface ID of the stored volume
* that initiator use to map the stored volume as an iSCSI target.</p> </li> <li>
* <p> <code>NetworkInterfacePort</code>: The port used to communicate with iSCSI
* targets.</p> </li> <li> <p> <code>PreservedExistingData</code>: Indicates when
* the stored volume was created, existing data on the underlying local disk was
* preserved.</p> </li> <li> <p> <code>SourceSnapshotId</code>: If the stored
* volume was created from a snapshot, this field contains the snapshot ID used,
* e.g. <code>snap-1122aabb</code>. Otherwise, this field is not included.</p>
* </li> <li> <p> <code>StorediSCSIVolumes</code>: An array of StorediSCSIVolume
* objects where each object contains metadata about one stored volume.</p> </li>
* <li> <p> <code>TargetARN</code>: The Amazon Resource Name (ARN) of the volume
* target.</p> </li> <li> <p> <code>VolumeARN</code>: The Amazon Resource Name
* (ARN) of the stored volume.</p> </li> <li> <p> <code>VolumeDiskId</code>: The
* disk ID of the local disk that was specified in the
* <a>CreateStorediSCSIVolume</a> operation.</p> </li> <li> <p>
* <code>VolumeId</code>: The unique identifier of the storage volume, e.g.
* <code>vol-1122AABB</code>.</p> </li> <li> <p>
* <code>VolumeiSCSIAttributes</code>: An <a>VolumeiSCSIAttributes</a> object that
* represents a collection of iSCSI attributes for one stored volume.</p> </li>
* <li> <p> <code>VolumeProgress</code>: Represents the percentage complete if the
* volume is restoring or bootstrapping that represents the percent of data
* transferred. This field does not appear in the response if the stored volume is
* not restoring or bootstrapping.</p> </li> <li> <p>
* <code>VolumeSizeInBytes</code>: The size of the volume in bytes.</p> </li> <li>
* <p> <code>VolumeStatus</code>: One of the <code>VolumeStatus</code> values that
* indicates the state of the volume.</p> </li> <li> <p> <code>VolumeType</code>:
* One of the enumeration values describing the type of the volume. Currently, only
* <code>STORED</code> volumes are supported.</p> </li> </ul>
*/
inline void SetStorediSCSIVolumes(const Aws::Vector<StorediSCSIVolume>& value) { m_storediSCSIVolumes = value; }
/**
* <p>Describes a single unit of output from <a>DescribeStorediSCSIVolumes</a>. The
* following fields are returned:</p> <ul> <li> <p> <code>ChapEnabled</code>:
* Indicates whether mutual CHAP is enabled for the iSCSI target.</p> </li> <li>
* <p> <code>LunNumber</code>: The logical disk number.</p> </li> <li> <p>
* <code>NetworkInterfaceId</code>: The network interface ID of the stored volume
* that initiator use to map the stored volume as an iSCSI target.</p> </li> <li>
* <p> <code>NetworkInterfacePort</code>: The port used to communicate with iSCSI
* targets.</p> </li> <li> <p> <code>PreservedExistingData</code>: Indicates when
* the stored volume was created, existing data on the underlying local disk was
* preserved.</p> </li> <li> <p> <code>SourceSnapshotId</code>: If the stored
* volume was created from a snapshot, this field contains the snapshot ID used,
* e.g. <code>snap-1122aabb</code>. Otherwise, this field is not included.</p>
* </li> <li> <p> <code>StorediSCSIVolumes</code>: An array of StorediSCSIVolume
* objects where each object contains metadata about one stored volume.</p> </li>
* <li> <p> <code>TargetARN</code>: The Amazon Resource Name (ARN) of the volume
* target.</p> </li> <li> <p> <code>VolumeARN</code>: The Amazon Resource Name
* (ARN) of the stored volume.</p> </li> <li> <p> <code>VolumeDiskId</code>: The
* disk ID of the local disk that was specified in the
* <a>CreateStorediSCSIVolume</a> operation.</p> </li> <li> <p>
* <code>VolumeId</code>: The unique identifier of the storage volume, e.g.
* <code>vol-1122AABB</code>.</p> </li> <li> <p>
* <code>VolumeiSCSIAttributes</code>: An <a>VolumeiSCSIAttributes</a> object that
* represents a collection of iSCSI attributes for one stored volume.</p> </li>
* <li> <p> <code>VolumeProgress</code>: Represents the percentage complete if the
* volume is restoring or bootstrapping that represents the percent of data
* transferred. This field does not appear in the response if the stored volume is
* not restoring or bootstrapping.</p> </li> <li> <p>
* <code>VolumeSizeInBytes</code>: The size of the volume in bytes.</p> </li> <li>
* <p> <code>VolumeStatus</code>: One of the <code>VolumeStatus</code> values that
* indicates the state of the volume.</p> </li> <li> <p> <code>VolumeType</code>:
* One of the enumeration values describing the type of the volume. Currently, only
* <code>STORED</code> volumes are supported.</p> </li> </ul>
*/
inline void SetStorediSCSIVolumes(Aws::Vector<StorediSCSIVolume>&& value) { m_storediSCSIVolumes = std::move(value); }
/**
* <p>Describes a single unit of output from <a>DescribeStorediSCSIVolumes</a>. The
* following fields are returned:</p> <ul> <li> <p> <code>ChapEnabled</code>:
* Indicates whether mutual CHAP is enabled for the iSCSI target.</p> </li> <li>
* <p> <code>LunNumber</code>: The logical disk number.</p> </li> <li> <p>
* <code>NetworkInterfaceId</code>: The network interface ID of the stored volume
* that initiator use to map the stored volume as an iSCSI target.</p> </li> <li>
* <p> <code>NetworkInterfacePort</code>: The port used to communicate with iSCSI
* targets.</p> </li> <li> <p> <code>PreservedExistingData</code>: Indicates when
* the stored volume was created, existing data on the underlying local disk was
* preserved.</p> </li> <li> <p> <code>SourceSnapshotId</code>: If the stored
* volume was created from a snapshot, this field contains the snapshot ID used,
* e.g. <code>snap-1122aabb</code>. Otherwise, this field is not included.</p>
* </li> <li> <p> <code>StorediSCSIVolumes</code>: An array of StorediSCSIVolume
* objects where each object contains metadata about one stored volume.</p> </li>
* <li> <p> <code>TargetARN</code>: The Amazon Resource Name (ARN) of the volume
* target.</p> </li> <li> <p> <code>VolumeARN</code>: The Amazon Resource Name
* (ARN) of the stored volume.</p> </li> <li> <p> <code>VolumeDiskId</code>: The
* disk ID of the local disk that was specified in the
* <a>CreateStorediSCSIVolume</a> operation.</p> </li> <li> <p>
* <code>VolumeId</code>: The unique identifier of the storage volume, e.g.
* <code>vol-1122AABB</code>.</p> </li> <li> <p>
* <code>VolumeiSCSIAttributes</code>: An <a>VolumeiSCSIAttributes</a> object that
* represents a collection of iSCSI attributes for one stored volume.</p> </li>
* <li> <p> <code>VolumeProgress</code>: Represents the percentage complete if the
* volume is restoring or bootstrapping that represents the percent of data
* transferred. This field does not appear in the response if the stored volume is
* not restoring or bootstrapping.</p> </li> <li> <p>
* <code>VolumeSizeInBytes</code>: The size of the volume in bytes.</p> </li> <li>
* <p> <code>VolumeStatus</code>: One of the <code>VolumeStatus</code> values that
* indicates the state of the volume.</p> </li> <li> <p> <code>VolumeType</code>:
* One of the enumeration values describing the type of the volume. Currently, only
* <code>STORED</code> volumes are supported.</p> </li> </ul>
*/
inline DescribeStorediSCSIVolumesResult& WithStorediSCSIVolumes(const Aws::Vector<StorediSCSIVolume>& value) { SetStorediSCSIVolumes(value); return *this;}
/**
* <p>Describes a single unit of output from <a>DescribeStorediSCSIVolumes</a>. The
* following fields are returned:</p> <ul> <li> <p> <code>ChapEnabled</code>:
* Indicates whether mutual CHAP is enabled for the iSCSI target.</p> </li> <li>
* <p> <code>LunNumber</code>: The logical disk number.</p> </li> <li> <p>
* <code>NetworkInterfaceId</code>: The network interface ID of the stored volume
* that initiator use to map the stored volume as an iSCSI target.</p> </li> <li>
* <p> <code>NetworkInterfacePort</code>: The port used to communicate with iSCSI
* targets.</p> </li> <li> <p> <code>PreservedExistingData</code>: Indicates when
* the stored volume was created, existing data on the underlying local disk was
* preserved.</p> </li> <li> <p> <code>SourceSnapshotId</code>: If the stored
* volume was created from a snapshot, this field contains the snapshot ID used,
* e.g. <code>snap-1122aabb</code>. Otherwise, this field is not included.</p>
* </li> <li> <p> <code>StorediSCSIVolumes</code>: An array of StorediSCSIVolume
* objects where each object contains metadata about one stored volume.</p> </li>
* <li> <p> <code>TargetARN</code>: The Amazon Resource Name (ARN) of the volume
* target.</p> </li> <li> <p> <code>VolumeARN</code>: The Amazon Resource Name
* (ARN) of the stored volume.</p> </li> <li> <p> <code>VolumeDiskId</code>: The
* disk ID of the local disk that was specified in the
* <a>CreateStorediSCSIVolume</a> operation.</p> </li> <li> <p>
* <code>VolumeId</code>: The unique identifier of the storage volume, e.g.
* <code>vol-1122AABB</code>.</p> </li> <li> <p>
* <code>VolumeiSCSIAttributes</code>: An <a>VolumeiSCSIAttributes</a> object that
* represents a collection of iSCSI attributes for one stored volume.</p> </li>
* <li> <p> <code>VolumeProgress</code>: Represents the percentage complete if the
* volume is restoring or bootstrapping that represents the percent of data
* transferred. This field does not appear in the response if the stored volume is
* not restoring or bootstrapping.</p> </li> <li> <p>
* <code>VolumeSizeInBytes</code>: The size of the volume in bytes.</p> </li> <li>
* <p> <code>VolumeStatus</code>: One of the <code>VolumeStatus</code> values that
* indicates the state of the volume.</p> </li> <li> <p> <code>VolumeType</code>:
* One of the enumeration values describing the type of the volume. Currently, only
* <code>STORED</code> volumes are supported.</p> </li> </ul>
*/
inline DescribeStorediSCSIVolumesResult& WithStorediSCSIVolumes(Aws::Vector<StorediSCSIVolume>&& value) { SetStorediSCSIVolumes(std::move(value)); return *this;}
/**
* <p>Describes a single unit of output from <a>DescribeStorediSCSIVolumes</a>. The
* following fields are returned:</p> <ul> <li> <p> <code>ChapEnabled</code>:
* Indicates whether mutual CHAP is enabled for the iSCSI target.</p> </li> <li>
* <p> <code>LunNumber</code>: The logical disk number.</p> </li> <li> <p>
* <code>NetworkInterfaceId</code>: The network interface ID of the stored volume
* that initiator use to map the stored volume as an iSCSI target.</p> </li> <li>
* <p> <code>NetworkInterfacePort</code>: The port used to communicate with iSCSI
* targets.</p> </li> <li> <p> <code>PreservedExistingData</code>: Indicates when
* the stored volume was created, existing data on the underlying local disk was
* preserved.</p> </li> <li> <p> <code>SourceSnapshotId</code>: If the stored
* volume was created from a snapshot, this field contains the snapshot ID used,
* e.g. <code>snap-1122aabb</code>. Otherwise, this field is not included.</p>
* </li> <li> <p> <code>StorediSCSIVolumes</code>: An array of StorediSCSIVolume
* objects where each object contains metadata about one stored volume.</p> </li>
* <li> <p> <code>TargetARN</code>: The Amazon Resource Name (ARN) of the volume
* target.</p> </li> <li> <p> <code>VolumeARN</code>: The Amazon Resource Name
* (ARN) of the stored volume.</p> </li> <li> <p> <code>VolumeDiskId</code>: The
* disk ID of the local disk that was specified in the
* <a>CreateStorediSCSIVolume</a> operation.</p> </li> <li> <p>
* <code>VolumeId</code>: The unique identifier of the storage volume, e.g.
* <code>vol-1122AABB</code>.</p> </li> <li> <p>
* <code>VolumeiSCSIAttributes</code>: An <a>VolumeiSCSIAttributes</a> object that
* represents a collection of iSCSI attributes for one stored volume.</p> </li>
* <li> <p> <code>VolumeProgress</code>: Represents the percentage complete if the
* volume is restoring or bootstrapping that represents the percent of data
* transferred. This field does not appear in the response if the stored volume is
* not restoring or bootstrapping.</p> </li> <li> <p>
* <code>VolumeSizeInBytes</code>: The size of the volume in bytes.</p> </li> <li>
* <p> <code>VolumeStatus</code>: One of the <code>VolumeStatus</code> values that
* indicates the state of the volume.</p> </li> <li> <p> <code>VolumeType</code>:
* One of the enumeration values describing the type of the volume. Currently, only
* <code>STORED</code> volumes are supported.</p> </li> </ul>
*/
inline DescribeStorediSCSIVolumesResult& AddStorediSCSIVolumes(const StorediSCSIVolume& value) { m_storediSCSIVolumes.push_back(value); return *this; }
/**
* <p>Describes a single unit of output from <a>DescribeStorediSCSIVolumes</a>. The
* following fields are returned:</p> <ul> <li> <p> <code>ChapEnabled</code>:
* Indicates whether mutual CHAP is enabled for the iSCSI target.</p> </li> <li>
* <p> <code>LunNumber</code>: The logical disk number.</p> </li> <li> <p>
* <code>NetworkInterfaceId</code>: The network interface ID of the stored volume
* that initiator use to map the stored volume as an iSCSI target.</p> </li> <li>
* <p> <code>NetworkInterfacePort</code>: The port used to communicate with iSCSI
* targets.</p> </li> <li> <p> <code>PreservedExistingData</code>: Indicates when
* the stored volume was created, existing data on the underlying local disk was
* preserved.</p> </li> <li> <p> <code>SourceSnapshotId</code>: If the stored
* volume was created from a snapshot, this field contains the snapshot ID used,
* e.g. <code>snap-1122aabb</code>. Otherwise, this field is not included.</p>
* </li> <li> <p> <code>StorediSCSIVolumes</code>: An array of StorediSCSIVolume
* objects where each object contains metadata about one stored volume.</p> </li>
* <li> <p> <code>TargetARN</code>: The Amazon Resource Name (ARN) of the volume
* target.</p> </li> <li> <p> <code>VolumeARN</code>: The Amazon Resource Name
* (ARN) of the stored volume.</p> </li> <li> <p> <code>VolumeDiskId</code>: The
* disk ID of the local disk that was specified in the
* <a>CreateStorediSCSIVolume</a> operation.</p> </li> <li> <p>
* <code>VolumeId</code>: The unique identifier of the storage volume, e.g.
* <code>vol-1122AABB</code>.</p> </li> <li> <p>
* <code>VolumeiSCSIAttributes</code>: An <a>VolumeiSCSIAttributes</a> object that
* represents a collection of iSCSI attributes for one stored volume.</p> </li>
* <li> <p> <code>VolumeProgress</code>: Represents the percentage complete if the
* volume is restoring or bootstrapping that represents the percent of data
* transferred. This field does not appear in the response if the stored volume is
* not restoring or bootstrapping.</p> </li> <li> <p>
* <code>VolumeSizeInBytes</code>: The size of the volume in bytes.</p> </li> <li>
* <p> <code>VolumeStatus</code>: One of the <code>VolumeStatus</code> values that
* indicates the state of the volume.</p> </li> <li> <p> <code>VolumeType</code>:
* One of the enumeration values describing the type of the volume. Currently, only
* <code>STORED</code> volumes are supported.</p> </li> </ul>
*/
inline DescribeStorediSCSIVolumesResult& AddStorediSCSIVolumes(StorediSCSIVolume&& value) { m_storediSCSIVolumes.push_back(std::move(value)); return *this; }
private:
Aws::Vector<StorediSCSIVolume> m_storediSCSIVolumes;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,183 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/storagegateway/StorageGatewayRequest.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace StorageGateway
{
namespace Model
{
/**
* <p>DescribeTapeArchivesInput</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/DescribeTapeArchivesInput">AWS
* API Reference</a></p>
*/
class AWS_STORAGEGATEWAY_API DescribeTapeArchivesRequest : public StorageGatewayRequest
{
public:
DescribeTapeArchivesRequest();
// 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 "DescribeTapeArchives"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
/**
* <p>Specifies one or more unique Amazon Resource Names (ARNs) that represent the
* virtual tapes you want to describe.</p>
*/
inline const Aws::Vector<Aws::String>& GetTapeARNs() const{ return m_tapeARNs; }
/**
* <p>Specifies one or more unique Amazon Resource Names (ARNs) that represent the
* virtual tapes you want to describe.</p>
*/
inline bool TapeARNsHasBeenSet() const { return m_tapeARNsHasBeenSet; }
/**
* <p>Specifies one or more unique Amazon Resource Names (ARNs) that represent the
* virtual tapes you want to describe.</p>
*/
inline void SetTapeARNs(const Aws::Vector<Aws::String>& value) { m_tapeARNsHasBeenSet = true; m_tapeARNs = value; }
/**
* <p>Specifies one or more unique Amazon Resource Names (ARNs) that represent the
* virtual tapes you want to describe.</p>
*/
inline void SetTapeARNs(Aws::Vector<Aws::String>&& value) { m_tapeARNsHasBeenSet = true; m_tapeARNs = std::move(value); }
/**
* <p>Specifies one or more unique Amazon Resource Names (ARNs) that represent the
* virtual tapes you want to describe.</p>
*/
inline DescribeTapeArchivesRequest& WithTapeARNs(const Aws::Vector<Aws::String>& value) { SetTapeARNs(value); return *this;}
/**
* <p>Specifies one or more unique Amazon Resource Names (ARNs) that represent the
* virtual tapes you want to describe.</p>
*/
inline DescribeTapeArchivesRequest& WithTapeARNs(Aws::Vector<Aws::String>&& value) { SetTapeARNs(std::move(value)); return *this;}
/**
* <p>Specifies one or more unique Amazon Resource Names (ARNs) that represent the
* virtual tapes you want to describe.</p>
*/
inline DescribeTapeArchivesRequest& AddTapeARNs(const Aws::String& value) { m_tapeARNsHasBeenSet = true; m_tapeARNs.push_back(value); return *this; }
/**
* <p>Specifies one or more unique Amazon Resource Names (ARNs) that represent the
* virtual tapes you want to describe.</p>
*/
inline DescribeTapeArchivesRequest& AddTapeARNs(Aws::String&& value) { m_tapeARNsHasBeenSet = true; m_tapeARNs.push_back(std::move(value)); return *this; }
/**
* <p>Specifies one or more unique Amazon Resource Names (ARNs) that represent the
* virtual tapes you want to describe.</p>
*/
inline DescribeTapeArchivesRequest& AddTapeARNs(const char* value) { m_tapeARNsHasBeenSet = true; m_tapeARNs.push_back(value); return *this; }
/**
* <p>An opaque string that indicates the position at which to begin describing
* virtual tapes.</p>
*/
inline const Aws::String& GetMarker() const{ return m_marker; }
/**
* <p>An opaque string that indicates the position at which to begin describing
* virtual tapes.</p>
*/
inline bool MarkerHasBeenSet() const { return m_markerHasBeenSet; }
/**
* <p>An opaque string that indicates the position at which to begin describing
* virtual tapes.</p>
*/
inline void SetMarker(const Aws::String& value) { m_markerHasBeenSet = true; m_marker = value; }
/**
* <p>An opaque string that indicates the position at which to begin describing
* virtual tapes.</p>
*/
inline void SetMarker(Aws::String&& value) { m_markerHasBeenSet = true; m_marker = std::move(value); }
/**
* <p>An opaque string that indicates the position at which to begin describing
* virtual tapes.</p>
*/
inline void SetMarker(const char* value) { m_markerHasBeenSet = true; m_marker.assign(value); }
/**
* <p>An opaque string that indicates the position at which to begin describing
* virtual tapes.</p>
*/
inline DescribeTapeArchivesRequest& WithMarker(const Aws::String& value) { SetMarker(value); return *this;}
/**
* <p>An opaque string that indicates the position at which to begin describing
* virtual tapes.</p>
*/
inline DescribeTapeArchivesRequest& WithMarker(Aws::String&& value) { SetMarker(std::move(value)); return *this;}
/**
* <p>An opaque string that indicates the position at which to begin describing
* virtual tapes.</p>
*/
inline DescribeTapeArchivesRequest& WithMarker(const char* value) { SetMarker(value); return *this;}
/**
* <p>Specifies that the number of virtual tapes described be limited to the
* specified number.</p>
*/
inline int GetLimit() const{ return m_limit; }
/**
* <p>Specifies that the number of virtual tapes described be limited to the
* specified number.</p>
*/
inline bool LimitHasBeenSet() const { return m_limitHasBeenSet; }
/**
* <p>Specifies that the number of virtual tapes described be limited to the
* specified number.</p>
*/
inline void SetLimit(int value) { m_limitHasBeenSet = true; m_limit = value; }
/**
* <p>Specifies that the number of virtual tapes described be limited to the
* specified number.</p>
*/
inline DescribeTapeArchivesRequest& WithLimit(int value) { SetLimit(value); return *this;}
private:
Aws::Vector<Aws::String> m_tapeARNs;
bool m_tapeARNsHasBeenSet;
Aws::String m_marker;
bool m_markerHasBeenSet;
int m_limit;
bool m_limitHasBeenSet;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,178 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/storagegateway/model/TapeArchive.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace StorageGateway
{
namespace Model
{
/**
* <p>DescribeTapeArchivesOutput</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/DescribeTapeArchivesOutput">AWS
* API Reference</a></p>
*/
class AWS_STORAGEGATEWAY_API DescribeTapeArchivesResult
{
public:
DescribeTapeArchivesResult();
DescribeTapeArchivesResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
DescribeTapeArchivesResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>An array of virtual tape objects in the virtual tape shelf (VTS). The
* description includes of the Amazon Resource Name (ARN) of the virtual tapes. The
* information returned includes the Amazon Resource Names (ARNs) of the tapes,
* size of the tapes, status of the tapes, progress of the description, and tape
* barcode.</p>
*/
inline const Aws::Vector<TapeArchive>& GetTapeArchives() const{ return m_tapeArchives; }
/**
* <p>An array of virtual tape objects in the virtual tape shelf (VTS). The
* description includes of the Amazon Resource Name (ARN) of the virtual tapes. The
* information returned includes the Amazon Resource Names (ARNs) of the tapes,
* size of the tapes, status of the tapes, progress of the description, and tape
* barcode.</p>
*/
inline void SetTapeArchives(const Aws::Vector<TapeArchive>& value) { m_tapeArchives = value; }
/**
* <p>An array of virtual tape objects in the virtual tape shelf (VTS). The
* description includes of the Amazon Resource Name (ARN) of the virtual tapes. The
* information returned includes the Amazon Resource Names (ARNs) of the tapes,
* size of the tapes, status of the tapes, progress of the description, and tape
* barcode.</p>
*/
inline void SetTapeArchives(Aws::Vector<TapeArchive>&& value) { m_tapeArchives = std::move(value); }
/**
* <p>An array of virtual tape objects in the virtual tape shelf (VTS). The
* description includes of the Amazon Resource Name (ARN) of the virtual tapes. The
* information returned includes the Amazon Resource Names (ARNs) of the tapes,
* size of the tapes, status of the tapes, progress of the description, and tape
* barcode.</p>
*/
inline DescribeTapeArchivesResult& WithTapeArchives(const Aws::Vector<TapeArchive>& value) { SetTapeArchives(value); return *this;}
/**
* <p>An array of virtual tape objects in the virtual tape shelf (VTS). The
* description includes of the Amazon Resource Name (ARN) of the virtual tapes. The
* information returned includes the Amazon Resource Names (ARNs) of the tapes,
* size of the tapes, status of the tapes, progress of the description, and tape
* barcode.</p>
*/
inline DescribeTapeArchivesResult& WithTapeArchives(Aws::Vector<TapeArchive>&& value) { SetTapeArchives(std::move(value)); return *this;}
/**
* <p>An array of virtual tape objects in the virtual tape shelf (VTS). The
* description includes of the Amazon Resource Name (ARN) of the virtual tapes. The
* information returned includes the Amazon Resource Names (ARNs) of the tapes,
* size of the tapes, status of the tapes, progress of the description, and tape
* barcode.</p>
*/
inline DescribeTapeArchivesResult& AddTapeArchives(const TapeArchive& value) { m_tapeArchives.push_back(value); return *this; }
/**
* <p>An array of virtual tape objects in the virtual tape shelf (VTS). The
* description includes of the Amazon Resource Name (ARN) of the virtual tapes. The
* information returned includes the Amazon Resource Names (ARNs) of the tapes,
* size of the tapes, status of the tapes, progress of the description, and tape
* barcode.</p>
*/
inline DescribeTapeArchivesResult& AddTapeArchives(TapeArchive&& value) { m_tapeArchives.push_back(std::move(value)); return *this; }
/**
* <p>An opaque string that indicates the position at which the virtual tapes that
* were fetched for description ended. Use this marker in your next request to
* fetch the next set of virtual tapes in the virtual tape shelf (VTS). If there
* are no more virtual tapes to describe, this field does not appear in the
* response.</p>
*/
inline const Aws::String& GetMarker() const{ return m_marker; }
/**
* <p>An opaque string that indicates the position at which the virtual tapes that
* were fetched for description ended. Use this marker in your next request to
* fetch the next set of virtual tapes in the virtual tape shelf (VTS). If there
* are no more virtual tapes to describe, this field does not appear in the
* response.</p>
*/
inline void SetMarker(const Aws::String& value) { m_marker = value; }
/**
* <p>An opaque string that indicates the position at which the virtual tapes that
* were fetched for description ended. Use this marker in your next request to
* fetch the next set of virtual tapes in the virtual tape shelf (VTS). If there
* are no more virtual tapes to describe, this field does not appear in the
* response.</p>
*/
inline void SetMarker(Aws::String&& value) { m_marker = std::move(value); }
/**
* <p>An opaque string that indicates the position at which the virtual tapes that
* were fetched for description ended. Use this marker in your next request to
* fetch the next set of virtual tapes in the virtual tape shelf (VTS). If there
* are no more virtual tapes to describe, this field does not appear in the
* response.</p>
*/
inline void SetMarker(const char* value) { m_marker.assign(value); }
/**
* <p>An opaque string that indicates the position at which the virtual tapes that
* were fetched for description ended. Use this marker in your next request to
* fetch the next set of virtual tapes in the virtual tape shelf (VTS). If there
* are no more virtual tapes to describe, this field does not appear in the
* response.</p>
*/
inline DescribeTapeArchivesResult& WithMarker(const Aws::String& value) { SetMarker(value); return *this;}
/**
* <p>An opaque string that indicates the position at which the virtual tapes that
* were fetched for description ended. Use this marker in your next request to
* fetch the next set of virtual tapes in the virtual tape shelf (VTS). If there
* are no more virtual tapes to describe, this field does not appear in the
* response.</p>
*/
inline DescribeTapeArchivesResult& WithMarker(Aws::String&& value) { SetMarker(std::move(value)); return *this;}
/**
* <p>An opaque string that indicates the position at which the virtual tapes that
* were fetched for description ended. Use this marker in your next request to
* fetch the next set of virtual tapes in the virtual tape shelf (VTS). If there
* are no more virtual tapes to describe, this field does not appear in the
* response.</p>
*/
inline DescribeTapeArchivesResult& WithMarker(const char* value) { SetMarker(value); return *this;}
private:
Aws::Vector<TapeArchive> m_tapeArchives;
Aws::String m_marker;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,152 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/storagegateway/StorageGatewayRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace StorageGateway
{
namespace Model
{
/**
* <p>DescribeTapeRecoveryPointsInput</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/DescribeTapeRecoveryPointsInput">AWS
* API Reference</a></p>
*/
class AWS_STORAGEGATEWAY_API DescribeTapeRecoveryPointsRequest : public StorageGatewayRequest
{
public:
DescribeTapeRecoveryPointsRequest();
// 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 "DescribeTapeRecoveryPoints"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
inline const Aws::String& GetGatewayARN() const{ return m_gatewayARN; }
inline bool GatewayARNHasBeenSet() const { return m_gatewayARNHasBeenSet; }
inline void SetGatewayARN(const Aws::String& value) { m_gatewayARNHasBeenSet = true; m_gatewayARN = value; }
inline void SetGatewayARN(Aws::String&& value) { m_gatewayARNHasBeenSet = true; m_gatewayARN = std::move(value); }
inline void SetGatewayARN(const char* value) { m_gatewayARNHasBeenSet = true; m_gatewayARN.assign(value); }
inline DescribeTapeRecoveryPointsRequest& WithGatewayARN(const Aws::String& value) { SetGatewayARN(value); return *this;}
inline DescribeTapeRecoveryPointsRequest& WithGatewayARN(Aws::String&& value) { SetGatewayARN(std::move(value)); return *this;}
inline DescribeTapeRecoveryPointsRequest& WithGatewayARN(const char* value) { SetGatewayARN(value); return *this;}
/**
* <p>An opaque string that indicates the position at which to begin describing the
* virtual tape recovery points.</p>
*/
inline const Aws::String& GetMarker() const{ return m_marker; }
/**
* <p>An opaque string that indicates the position at which to begin describing the
* virtual tape recovery points.</p>
*/
inline bool MarkerHasBeenSet() const { return m_markerHasBeenSet; }
/**
* <p>An opaque string that indicates the position at which to begin describing the
* virtual tape recovery points.</p>
*/
inline void SetMarker(const Aws::String& value) { m_markerHasBeenSet = true; m_marker = value; }
/**
* <p>An opaque string that indicates the position at which to begin describing the
* virtual tape recovery points.</p>
*/
inline void SetMarker(Aws::String&& value) { m_markerHasBeenSet = true; m_marker = std::move(value); }
/**
* <p>An opaque string that indicates the position at which to begin describing the
* virtual tape recovery points.</p>
*/
inline void SetMarker(const char* value) { m_markerHasBeenSet = true; m_marker.assign(value); }
/**
* <p>An opaque string that indicates the position at which to begin describing the
* virtual tape recovery points.</p>
*/
inline DescribeTapeRecoveryPointsRequest& WithMarker(const Aws::String& value) { SetMarker(value); return *this;}
/**
* <p>An opaque string that indicates the position at which to begin describing the
* virtual tape recovery points.</p>
*/
inline DescribeTapeRecoveryPointsRequest& WithMarker(Aws::String&& value) { SetMarker(std::move(value)); return *this;}
/**
* <p>An opaque string that indicates the position at which to begin describing the
* virtual tape recovery points.</p>
*/
inline DescribeTapeRecoveryPointsRequest& WithMarker(const char* value) { SetMarker(value); return *this;}
/**
* <p>Specifies that the number of virtual tape recovery points that are described
* be limited to the specified number.</p>
*/
inline int GetLimit() const{ return m_limit; }
/**
* <p>Specifies that the number of virtual tape recovery points that are described
* be limited to the specified number.</p>
*/
inline bool LimitHasBeenSet() const { return m_limitHasBeenSet; }
/**
* <p>Specifies that the number of virtual tape recovery points that are described
* be limited to the specified number.</p>
*/
inline void SetLimit(int value) { m_limitHasBeenSet = true; m_limit = value; }
/**
* <p>Specifies that the number of virtual tape recovery points that are described
* be limited to the specified number.</p>
*/
inline DescribeTapeRecoveryPointsRequest& WithLimit(int value) { SetLimit(value); return *this;}
private:
Aws::String m_gatewayARN;
bool m_gatewayARNHasBeenSet;
Aws::String m_marker;
bool m_markerHasBeenSet;
int m_limit;
bool m_limitHasBeenSet;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,181 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/storagegateway/model/TapeRecoveryPointInfo.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace StorageGateway
{
namespace Model
{
/**
* <p>DescribeTapeRecoveryPointsOutput</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/DescribeTapeRecoveryPointsOutput">AWS
* API Reference</a></p>
*/
class AWS_STORAGEGATEWAY_API DescribeTapeRecoveryPointsResult
{
public:
DescribeTapeRecoveryPointsResult();
DescribeTapeRecoveryPointsResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
DescribeTapeRecoveryPointsResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& 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 DescribeTapeRecoveryPointsResult& WithGatewayARN(const Aws::String& value) { SetGatewayARN(value); return *this;}
inline DescribeTapeRecoveryPointsResult& WithGatewayARN(Aws::String&& value) { SetGatewayARN(std::move(value)); return *this;}
inline DescribeTapeRecoveryPointsResult& WithGatewayARN(const char* value) { SetGatewayARN(value); return *this;}
/**
* <p>An array of TapeRecoveryPointInfos that are available for the specified
* gateway.</p>
*/
inline const Aws::Vector<TapeRecoveryPointInfo>& GetTapeRecoveryPointInfos() const{ return m_tapeRecoveryPointInfos; }
/**
* <p>An array of TapeRecoveryPointInfos that are available for the specified
* gateway.</p>
*/
inline void SetTapeRecoveryPointInfos(const Aws::Vector<TapeRecoveryPointInfo>& value) { m_tapeRecoveryPointInfos = value; }
/**
* <p>An array of TapeRecoveryPointInfos that are available for the specified
* gateway.</p>
*/
inline void SetTapeRecoveryPointInfos(Aws::Vector<TapeRecoveryPointInfo>&& value) { m_tapeRecoveryPointInfos = std::move(value); }
/**
* <p>An array of TapeRecoveryPointInfos that are available for the specified
* gateway.</p>
*/
inline DescribeTapeRecoveryPointsResult& WithTapeRecoveryPointInfos(const Aws::Vector<TapeRecoveryPointInfo>& value) { SetTapeRecoveryPointInfos(value); return *this;}
/**
* <p>An array of TapeRecoveryPointInfos that are available for the specified
* gateway.</p>
*/
inline DescribeTapeRecoveryPointsResult& WithTapeRecoveryPointInfos(Aws::Vector<TapeRecoveryPointInfo>&& value) { SetTapeRecoveryPointInfos(std::move(value)); return *this;}
/**
* <p>An array of TapeRecoveryPointInfos that are available for the specified
* gateway.</p>
*/
inline DescribeTapeRecoveryPointsResult& AddTapeRecoveryPointInfos(const TapeRecoveryPointInfo& value) { m_tapeRecoveryPointInfos.push_back(value); return *this; }
/**
* <p>An array of TapeRecoveryPointInfos that are available for the specified
* gateway.</p>
*/
inline DescribeTapeRecoveryPointsResult& AddTapeRecoveryPointInfos(TapeRecoveryPointInfo&& value) { m_tapeRecoveryPointInfos.push_back(std::move(value)); return *this; }
/**
* <p>An opaque string that indicates the position at which the virtual tape
* recovery points that were listed for description ended.</p> <p>Use this marker
* in your next request to list the next set of virtual tape recovery points in the
* list. If there are no more recovery points to describe, this field does not
* appear in the response.</p>
*/
inline const Aws::String& GetMarker() const{ return m_marker; }
/**
* <p>An opaque string that indicates the position at which the virtual tape
* recovery points that were listed for description ended.</p> <p>Use this marker
* in your next request to list the next set of virtual tape recovery points in the
* list. If there are no more recovery points to describe, this field does not
* appear in the response.</p>
*/
inline void SetMarker(const Aws::String& value) { m_marker = value; }
/**
* <p>An opaque string that indicates the position at which the virtual tape
* recovery points that were listed for description ended.</p> <p>Use this marker
* in your next request to list the next set of virtual tape recovery points in the
* list. If there are no more recovery points to describe, this field does not
* appear in the response.</p>
*/
inline void SetMarker(Aws::String&& value) { m_marker = std::move(value); }
/**
* <p>An opaque string that indicates the position at which the virtual tape
* recovery points that were listed for description ended.</p> <p>Use this marker
* in your next request to list the next set of virtual tape recovery points in the
* list. If there are no more recovery points to describe, this field does not
* appear in the response.</p>
*/
inline void SetMarker(const char* value) { m_marker.assign(value); }
/**
* <p>An opaque string that indicates the position at which the virtual tape
* recovery points that were listed for description ended.</p> <p>Use this marker
* in your next request to list the next set of virtual tape recovery points in the
* list. If there are no more recovery points to describe, this field does not
* appear in the response.</p>
*/
inline DescribeTapeRecoveryPointsResult& WithMarker(const Aws::String& value) { SetMarker(value); return *this;}
/**
* <p>An opaque string that indicates the position at which the virtual tape
* recovery points that were listed for description ended.</p> <p>Use this marker
* in your next request to list the next set of virtual tape recovery points in the
* list. If there are no more recovery points to describe, this field does not
* appear in the response.</p>
*/
inline DescribeTapeRecoveryPointsResult& WithMarker(Aws::String&& value) { SetMarker(std::move(value)); return *this;}
/**
* <p>An opaque string that indicates the position at which the virtual tape
* recovery points that were listed for description ended.</p> <p>Use this marker
* in your next request to list the next set of virtual tape recovery points in the
* list. If there are no more recovery points to describe, this field does not
* appear in the response.</p>
*/
inline DescribeTapeRecoveryPointsResult& WithMarker(const char* value) { SetMarker(value); return *this;}
private:
Aws::String m_gatewayARN;
Aws::Vector<TapeRecoveryPointInfo> m_tapeRecoveryPointInfos;
Aws::String m_marker;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,241 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/storagegateway/StorageGatewayRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <utility>
namespace Aws
{
namespace StorageGateway
{
namespace Model
{
/**
* <p>DescribeTapesInput</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/DescribeTapesInput">AWS
* API Reference</a></p>
*/
class AWS_STORAGEGATEWAY_API DescribeTapesRequest : public StorageGatewayRequest
{
public:
DescribeTapesRequest();
// 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 "DescribeTapes"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
inline const Aws::String& GetGatewayARN() const{ return m_gatewayARN; }
inline bool GatewayARNHasBeenSet() const { return m_gatewayARNHasBeenSet; }
inline void SetGatewayARN(const Aws::String& value) { m_gatewayARNHasBeenSet = true; m_gatewayARN = value; }
inline void SetGatewayARN(Aws::String&& value) { m_gatewayARNHasBeenSet = true; m_gatewayARN = std::move(value); }
inline void SetGatewayARN(const char* value) { m_gatewayARNHasBeenSet = true; m_gatewayARN.assign(value); }
inline DescribeTapesRequest& WithGatewayARN(const Aws::String& value) { SetGatewayARN(value); return *this;}
inline DescribeTapesRequest& WithGatewayARN(Aws::String&& value) { SetGatewayARN(std::move(value)); return *this;}
inline DescribeTapesRequest& WithGatewayARN(const char* value) { SetGatewayARN(value); return *this;}
/**
* <p>Specifies one or more unique Amazon Resource Names (ARNs) that represent the
* virtual tapes you want to describe. If this parameter is not specified, Tape
* gateway returns a description of all virtual tapes associated with the specified
* gateway.</p>
*/
inline const Aws::Vector<Aws::String>& GetTapeARNs() const{ return m_tapeARNs; }
/**
* <p>Specifies one or more unique Amazon Resource Names (ARNs) that represent the
* virtual tapes you want to describe. If this parameter is not specified, Tape
* gateway returns a description of all virtual tapes associated with the specified
* gateway.</p>
*/
inline bool TapeARNsHasBeenSet() const { return m_tapeARNsHasBeenSet; }
/**
* <p>Specifies one or more unique Amazon Resource Names (ARNs) that represent the
* virtual tapes you want to describe. If this parameter is not specified, Tape
* gateway returns a description of all virtual tapes associated with the specified
* gateway.</p>
*/
inline void SetTapeARNs(const Aws::Vector<Aws::String>& value) { m_tapeARNsHasBeenSet = true; m_tapeARNs = value; }
/**
* <p>Specifies one or more unique Amazon Resource Names (ARNs) that represent the
* virtual tapes you want to describe. If this parameter is not specified, Tape
* gateway returns a description of all virtual tapes associated with the specified
* gateway.</p>
*/
inline void SetTapeARNs(Aws::Vector<Aws::String>&& value) { m_tapeARNsHasBeenSet = true; m_tapeARNs = std::move(value); }
/**
* <p>Specifies one or more unique Amazon Resource Names (ARNs) that represent the
* virtual tapes you want to describe. If this parameter is not specified, Tape
* gateway returns a description of all virtual tapes associated with the specified
* gateway.</p>
*/
inline DescribeTapesRequest& WithTapeARNs(const Aws::Vector<Aws::String>& value) { SetTapeARNs(value); return *this;}
/**
* <p>Specifies one or more unique Amazon Resource Names (ARNs) that represent the
* virtual tapes you want to describe. If this parameter is not specified, Tape
* gateway returns a description of all virtual tapes associated with the specified
* gateway.</p>
*/
inline DescribeTapesRequest& WithTapeARNs(Aws::Vector<Aws::String>&& value) { SetTapeARNs(std::move(value)); return *this;}
/**
* <p>Specifies one or more unique Amazon Resource Names (ARNs) that represent the
* virtual tapes you want to describe. If this parameter is not specified, Tape
* gateway returns a description of all virtual tapes associated with the specified
* gateway.</p>
*/
inline DescribeTapesRequest& AddTapeARNs(const Aws::String& value) { m_tapeARNsHasBeenSet = true; m_tapeARNs.push_back(value); return *this; }
/**
* <p>Specifies one or more unique Amazon Resource Names (ARNs) that represent the
* virtual tapes you want to describe. If this parameter is not specified, Tape
* gateway returns a description of all virtual tapes associated with the specified
* gateway.</p>
*/
inline DescribeTapesRequest& AddTapeARNs(Aws::String&& value) { m_tapeARNsHasBeenSet = true; m_tapeARNs.push_back(std::move(value)); return *this; }
/**
* <p>Specifies one or more unique Amazon Resource Names (ARNs) that represent the
* virtual tapes you want to describe. If this parameter is not specified, Tape
* gateway returns a description of all virtual tapes associated with the specified
* gateway.</p>
*/
inline DescribeTapesRequest& AddTapeARNs(const char* value) { m_tapeARNsHasBeenSet = true; m_tapeARNs.push_back(value); return *this; }
/**
* <p>A marker value, obtained in a previous call to <code>DescribeTapes</code>.
* This marker indicates which page of results to retrieve.</p> <p>If not
* specified, the first page of results is retrieved.</p>
*/
inline const Aws::String& GetMarker() const{ return m_marker; }
/**
* <p>A marker value, obtained in a previous call to <code>DescribeTapes</code>.
* This marker indicates which page of results to retrieve.</p> <p>If not
* specified, the first page of results is retrieved.</p>
*/
inline bool MarkerHasBeenSet() const { return m_markerHasBeenSet; }
/**
* <p>A marker value, obtained in a previous call to <code>DescribeTapes</code>.
* This marker indicates which page of results to retrieve.</p> <p>If not
* specified, the first page of results is retrieved.</p>
*/
inline void SetMarker(const Aws::String& value) { m_markerHasBeenSet = true; m_marker = value; }
/**
* <p>A marker value, obtained in a previous call to <code>DescribeTapes</code>.
* This marker indicates which page of results to retrieve.</p> <p>If not
* specified, the first page of results is retrieved.</p>
*/
inline void SetMarker(Aws::String&& value) { m_markerHasBeenSet = true; m_marker = std::move(value); }
/**
* <p>A marker value, obtained in a previous call to <code>DescribeTapes</code>.
* This marker indicates which page of results to retrieve.</p> <p>If not
* specified, the first page of results is retrieved.</p>
*/
inline void SetMarker(const char* value) { m_markerHasBeenSet = true; m_marker.assign(value); }
/**
* <p>A marker value, obtained in a previous call to <code>DescribeTapes</code>.
* This marker indicates which page of results to retrieve.</p> <p>If not
* specified, the first page of results is retrieved.</p>
*/
inline DescribeTapesRequest& WithMarker(const Aws::String& value) { SetMarker(value); return *this;}
/**
* <p>A marker value, obtained in a previous call to <code>DescribeTapes</code>.
* This marker indicates which page of results to retrieve.</p> <p>If not
* specified, the first page of results is retrieved.</p>
*/
inline DescribeTapesRequest& WithMarker(Aws::String&& value) { SetMarker(std::move(value)); return *this;}
/**
* <p>A marker value, obtained in a previous call to <code>DescribeTapes</code>.
* This marker indicates which page of results to retrieve.</p> <p>If not
* specified, the first page of results is retrieved.</p>
*/
inline DescribeTapesRequest& WithMarker(const char* value) { SetMarker(value); return *this;}
/**
* <p>Specifies that the number of virtual tapes described be limited to the
* specified number.</p> <p>Amazon Web Services may impose its own limit, if
* this field is not set.</p>
*/
inline int GetLimit() const{ return m_limit; }
/**
* <p>Specifies that the number of virtual tapes described be limited to the
* specified number.</p> <p>Amazon Web Services may impose its own limit, if
* this field is not set.</p>
*/
inline bool LimitHasBeenSet() const { return m_limitHasBeenSet; }
/**
* <p>Specifies that the number of virtual tapes described be limited to the
* specified number.</p> <p>Amazon Web Services may impose its own limit, if
* this field is not set.</p>
*/
inline void SetLimit(int value) { m_limitHasBeenSet = true; m_limit = value; }
/**
* <p>Specifies that the number of virtual tapes described be limited to the
* specified number.</p> <p>Amazon Web Services may impose its own limit, if
* this field is not set.</p>
*/
inline DescribeTapesRequest& WithLimit(int value) { SetLimit(value); return *this;}
private:
Aws::String m_gatewayARN;
bool m_gatewayARNHasBeenSet;
Aws::Vector<Aws::String> m_tapeARNs;
bool m_tapeARNsHasBeenSet;
Aws::String m_marker;
bool m_markerHasBeenSet;
int m_limit;
bool m_limitHasBeenSet;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

View File

@@ -0,0 +1,136 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/storagegateway/StorageGateway_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/storagegateway/model/Tape.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace StorageGateway
{
namespace Model
{
/**
* <p>DescribeTapesOutput</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/DescribeTapesOutput">AWS
* API Reference</a></p>
*/
class AWS_STORAGEGATEWAY_API DescribeTapesResult
{
public:
DescribeTapesResult();
DescribeTapesResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
DescribeTapesResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>An array of virtual tape descriptions.</p>
*/
inline const Aws::Vector<Tape>& GetTapes() const{ return m_tapes; }
/**
* <p>An array of virtual tape descriptions.</p>
*/
inline void SetTapes(const Aws::Vector<Tape>& value) { m_tapes = value; }
/**
* <p>An array of virtual tape descriptions.</p>
*/
inline void SetTapes(Aws::Vector<Tape>&& value) { m_tapes = std::move(value); }
/**
* <p>An array of virtual tape descriptions.</p>
*/
inline DescribeTapesResult& WithTapes(const Aws::Vector<Tape>& value) { SetTapes(value); return *this;}
/**
* <p>An array of virtual tape descriptions.</p>
*/
inline DescribeTapesResult& WithTapes(Aws::Vector<Tape>&& value) { SetTapes(std::move(value)); return *this;}
/**
* <p>An array of virtual tape descriptions.</p>
*/
inline DescribeTapesResult& AddTapes(const Tape& value) { m_tapes.push_back(value); return *this; }
/**
* <p>An array of virtual tape descriptions.</p>
*/
inline DescribeTapesResult& AddTapes(Tape&& value) { m_tapes.push_back(std::move(value)); return *this; }
/**
* <p>An opaque string which can be used as part of a subsequent DescribeTapes call
* to retrieve the next page of results.</p> <p>If a response does not contain a
* marker, then there are no more results to be retrieved.</p>
*/
inline const Aws::String& GetMarker() const{ return m_marker; }
/**
* <p>An opaque string which can be used as part of a subsequent DescribeTapes call
* to retrieve the next page of results.</p> <p>If a response does not contain a
* marker, then there are no more results to be retrieved.</p>
*/
inline void SetMarker(const Aws::String& value) { m_marker = value; }
/**
* <p>An opaque string which can be used as part of a subsequent DescribeTapes call
* to retrieve the next page of results.</p> <p>If a response does not contain a
* marker, then there are no more results to be retrieved.</p>
*/
inline void SetMarker(Aws::String&& value) { m_marker = std::move(value); }
/**
* <p>An opaque string which can be used as part of a subsequent DescribeTapes call
* to retrieve the next page of results.</p> <p>If a response does not contain a
* marker, then there are no more results to be retrieved.</p>
*/
inline void SetMarker(const char* value) { m_marker.assign(value); }
/**
* <p>An opaque string which can be used as part of a subsequent DescribeTapes call
* to retrieve the next page of results.</p> <p>If a response does not contain a
* marker, then there are no more results to be retrieved.</p>
*/
inline DescribeTapesResult& WithMarker(const Aws::String& value) { SetMarker(value); return *this;}
/**
* <p>An opaque string which can be used as part of a subsequent DescribeTapes call
* to retrieve the next page of results.</p> <p>If a response does not contain a
* marker, then there are no more results to be retrieved.</p>
*/
inline DescribeTapesResult& WithMarker(Aws::String&& value) { SetMarker(std::move(value)); return *this;}
/**
* <p>An opaque string which can be used as part of a subsequent DescribeTapes call
* to retrieve the next page of results.</p> <p>If a response does not contain a
* marker, then there are no more results to be retrieved.</p>
*/
inline DescribeTapesResult& WithMarker(const char* value) { SetMarker(value); return *this;}
private:
Aws::Vector<Tape> m_tapes;
Aws::String m_marker;
};
} // namespace Model
} // namespace StorageGateway
} // namespace Aws

Some files were not shown because too many files have changed in this diff Show More