/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include namespace Aws { namespace PrivateNetworks { namespace Model { /** */ class ActivateNetworkSiteRequest : public PrivateNetworksRequest { public: AWS_PRIVATENETWORKS_API ActivateNetworkSiteRequest(); // 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 "ActivateNetworkSite"; } AWS_PRIVATENETWORKS_API Aws::String SerializePayload() const override; /** *

Unique, case-sensitive identifier that you provide to ensure the idempotency * of the request. For more information, see How * to ensure idempotency.

*/ inline const Aws::String& GetClientToken() const{ return m_clientToken; } /** *

Unique, case-sensitive identifier that you provide to ensure the idempotency * of the request. For more information, see How * to ensure idempotency.

*/ inline bool ClientTokenHasBeenSet() const { return m_clientTokenHasBeenSet; } /** *

Unique, case-sensitive identifier that you provide to ensure the idempotency * of the request. For more information, see How * to ensure idempotency.

*/ inline void SetClientToken(const Aws::String& value) { m_clientTokenHasBeenSet = true; m_clientToken = value; } /** *

Unique, case-sensitive identifier that you provide to ensure the idempotency * of the request. For more information, see How * to ensure idempotency.

*/ inline void SetClientToken(Aws::String&& value) { m_clientTokenHasBeenSet = true; m_clientToken = std::move(value); } /** *

Unique, case-sensitive identifier that you provide to ensure the idempotency * of the request. For more information, see How * to ensure idempotency.

*/ inline void SetClientToken(const char* value) { m_clientTokenHasBeenSet = true; m_clientToken.assign(value); } /** *

Unique, case-sensitive identifier that you provide to ensure the idempotency * of the request. For more information, see How * to ensure idempotency.

*/ inline ActivateNetworkSiteRequest& WithClientToken(const Aws::String& value) { SetClientToken(value); return *this;} /** *

Unique, case-sensitive identifier that you provide to ensure the idempotency * of the request. For more information, see How * to ensure idempotency.

*/ inline ActivateNetworkSiteRequest& WithClientToken(Aws::String&& value) { SetClientToken(std::move(value)); return *this;} /** *

Unique, case-sensitive identifier that you provide to ensure the idempotency * of the request. For more information, see How * to ensure idempotency.

*/ inline ActivateNetworkSiteRequest& WithClientToken(const char* value) { SetClientToken(value); return *this;} /** *

Determines the duration and renewal status of the commitment period for all * pending radio units.

If you include commitmentConfiguration * in the ActivateNetworkSiteRequest action, you must specify the * following:

  • The commitment period for the radio unit. You can * choose a 60-day, 1-year, or 3-year period.

  • Whether you want * your commitment period to automatically renew for one more year after your * current commitment period expires.

For pricing, see Amazon Web Services Private 5G * Pricing.

If you do not include commitmentConfiguration * in the ActivateNetworkSiteRequest action, the commitment period is * set to 60-days.

*/ inline const CommitmentConfiguration& GetCommitmentConfiguration() const{ return m_commitmentConfiguration; } /** *

Determines the duration and renewal status of the commitment period for all * pending radio units.

If you include commitmentConfiguration * in the ActivateNetworkSiteRequest action, you must specify the * following:

  • The commitment period for the radio unit. You can * choose a 60-day, 1-year, or 3-year period.

  • Whether you want * your commitment period to automatically renew for one more year after your * current commitment period expires.

For pricing, see Amazon Web Services Private 5G * Pricing.

If you do not include commitmentConfiguration * in the ActivateNetworkSiteRequest action, the commitment period is * set to 60-days.

*/ inline bool CommitmentConfigurationHasBeenSet() const { return m_commitmentConfigurationHasBeenSet; } /** *

Determines the duration and renewal status of the commitment period for all * pending radio units.

If you include commitmentConfiguration * in the ActivateNetworkSiteRequest action, you must specify the * following:

  • The commitment period for the radio unit. You can * choose a 60-day, 1-year, or 3-year period.

  • Whether you want * your commitment period to automatically renew for one more year after your * current commitment period expires.

For pricing, see Amazon Web Services Private 5G * Pricing.

If you do not include commitmentConfiguration * in the ActivateNetworkSiteRequest action, the commitment period is * set to 60-days.

*/ inline void SetCommitmentConfiguration(const CommitmentConfiguration& value) { m_commitmentConfigurationHasBeenSet = true; m_commitmentConfiguration = value; } /** *

Determines the duration and renewal status of the commitment period for all * pending radio units.

If you include commitmentConfiguration * in the ActivateNetworkSiteRequest action, you must specify the * following:

  • The commitment period for the radio unit. You can * choose a 60-day, 1-year, or 3-year period.

  • Whether you want * your commitment period to automatically renew for one more year after your * current commitment period expires.

For pricing, see Amazon Web Services Private 5G * Pricing.

If you do not include commitmentConfiguration * in the ActivateNetworkSiteRequest action, the commitment period is * set to 60-days.

*/ inline void SetCommitmentConfiguration(CommitmentConfiguration&& value) { m_commitmentConfigurationHasBeenSet = true; m_commitmentConfiguration = std::move(value); } /** *

Determines the duration and renewal status of the commitment period for all * pending radio units.

If you include commitmentConfiguration * in the ActivateNetworkSiteRequest action, you must specify the * following:

  • The commitment period for the radio unit. You can * choose a 60-day, 1-year, or 3-year period.

  • Whether you want * your commitment period to automatically renew for one more year after your * current commitment period expires.

For pricing, see Amazon Web Services Private 5G * Pricing.

If you do not include commitmentConfiguration * in the ActivateNetworkSiteRequest action, the commitment period is * set to 60-days.

*/ inline ActivateNetworkSiteRequest& WithCommitmentConfiguration(const CommitmentConfiguration& value) { SetCommitmentConfiguration(value); return *this;} /** *

Determines the duration and renewal status of the commitment period for all * pending radio units.

If you include commitmentConfiguration * in the ActivateNetworkSiteRequest action, you must specify the * following:

  • The commitment period for the radio unit. You can * choose a 60-day, 1-year, or 3-year period.

  • Whether you want * your commitment period to automatically renew for one more year after your * current commitment period expires.

For pricing, see Amazon Web Services Private 5G * Pricing.

If you do not include commitmentConfiguration * in the ActivateNetworkSiteRequest action, the commitment period is * set to 60-days.

*/ inline ActivateNetworkSiteRequest& WithCommitmentConfiguration(CommitmentConfiguration&& value) { SetCommitmentConfiguration(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the network site.

*/ inline const Aws::String& GetNetworkSiteArn() const{ return m_networkSiteArn; } /** *

The Amazon Resource Name (ARN) of the network site.

*/ inline bool NetworkSiteArnHasBeenSet() const { return m_networkSiteArnHasBeenSet; } /** *

The Amazon Resource Name (ARN) of the network site.

*/ inline void SetNetworkSiteArn(const Aws::String& value) { m_networkSiteArnHasBeenSet = true; m_networkSiteArn = value; } /** *

The Amazon Resource Name (ARN) of the network site.

*/ inline void SetNetworkSiteArn(Aws::String&& value) { m_networkSiteArnHasBeenSet = true; m_networkSiteArn = std::move(value); } /** *

The Amazon Resource Name (ARN) of the network site.

*/ inline void SetNetworkSiteArn(const char* value) { m_networkSiteArnHasBeenSet = true; m_networkSiteArn.assign(value); } /** *

The Amazon Resource Name (ARN) of the network site.

*/ inline ActivateNetworkSiteRequest& WithNetworkSiteArn(const Aws::String& value) { SetNetworkSiteArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the network site.

*/ inline ActivateNetworkSiteRequest& WithNetworkSiteArn(Aws::String&& value) { SetNetworkSiteArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the network site.

*/ inline ActivateNetworkSiteRequest& WithNetworkSiteArn(const char* value) { SetNetworkSiteArn(value); return *this;} /** *

The shipping address of the network site.

*/ inline const Address& GetShippingAddress() const{ return m_shippingAddress; } /** *

The shipping address of the network site.

*/ inline bool ShippingAddressHasBeenSet() const { return m_shippingAddressHasBeenSet; } /** *

The shipping address of the network site.

*/ inline void SetShippingAddress(const Address& value) { m_shippingAddressHasBeenSet = true; m_shippingAddress = value; } /** *

The shipping address of the network site.

*/ inline void SetShippingAddress(Address&& value) { m_shippingAddressHasBeenSet = true; m_shippingAddress = std::move(value); } /** *

The shipping address of the network site.

*/ inline ActivateNetworkSiteRequest& WithShippingAddress(const Address& value) { SetShippingAddress(value); return *this;} /** *

The shipping address of the network site.

*/ inline ActivateNetworkSiteRequest& WithShippingAddress(Address&& value) { SetShippingAddress(std::move(value)); return *this;} private: Aws::String m_clientToken; bool m_clientTokenHasBeenSet = false; CommitmentConfiguration m_commitmentConfiguration; bool m_commitmentConfigurationHasBeenSet = false; Aws::String m_networkSiteArn; bool m_networkSiteArnHasBeenSet = false; Address m_shippingAddress; bool m_shippingAddressHasBeenSet = false; }; } // namespace Model } // namespace PrivateNetworks } // namespace Aws