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

Information about an order.

See Also:

AWS * API Reference

*/ class Order { public: AWS_PRIVATENETWORKS_API Order(); AWS_PRIVATENETWORKS_API Order(Aws::Utils::Json::JsonView jsonValue); AWS_PRIVATENETWORKS_API Order& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_PRIVATENETWORKS_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

The acknowledgement status of the order.

*/ inline const AcknowledgmentStatus& GetAcknowledgmentStatus() const{ return m_acknowledgmentStatus; } /** *

The acknowledgement status of the order.

*/ inline bool AcknowledgmentStatusHasBeenSet() const { return m_acknowledgmentStatusHasBeenSet; } /** *

The acknowledgement status of the order.

*/ inline void SetAcknowledgmentStatus(const AcknowledgmentStatus& value) { m_acknowledgmentStatusHasBeenSet = true; m_acknowledgmentStatus = value; } /** *

The acknowledgement status of the order.

*/ inline void SetAcknowledgmentStatus(AcknowledgmentStatus&& value) { m_acknowledgmentStatusHasBeenSet = true; m_acknowledgmentStatus = std::move(value); } /** *

The acknowledgement status of the order.

*/ inline Order& WithAcknowledgmentStatus(const AcknowledgmentStatus& value) { SetAcknowledgmentStatus(value); return *this;} /** *

The acknowledgement status of the order.

*/ inline Order& WithAcknowledgmentStatus(AcknowledgmentStatus&& value) { SetAcknowledgmentStatus(std::move(value)); return *this;} /** *

The creation time of the order.

*/ inline const Aws::Utils::DateTime& GetCreatedAt() const{ return m_createdAt; } /** *

The creation time of the order.

*/ inline bool CreatedAtHasBeenSet() const { return m_createdAtHasBeenSet; } /** *

The creation time of the order.

*/ inline void SetCreatedAt(const Aws::Utils::DateTime& value) { m_createdAtHasBeenSet = true; m_createdAt = value; } /** *

The creation time of the order.

*/ inline void SetCreatedAt(Aws::Utils::DateTime&& value) { m_createdAtHasBeenSet = true; m_createdAt = std::move(value); } /** *

The creation time of the order.

*/ inline Order& WithCreatedAt(const Aws::Utils::DateTime& value) { SetCreatedAt(value); return *this;} /** *

The creation time of the order.

*/ inline Order& WithCreatedAt(Aws::Utils::DateTime&& value) { SetCreatedAt(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the network associated with this order.

*/ inline const Aws::String& GetNetworkArn() const{ return m_networkArn; } /** *

The Amazon Resource Name (ARN) of the network associated with this order.

*/ inline bool NetworkArnHasBeenSet() const { return m_networkArnHasBeenSet; } /** *

The Amazon Resource Name (ARN) of the network associated with this order.

*/ inline void SetNetworkArn(const Aws::String& value) { m_networkArnHasBeenSet = true; m_networkArn = value; } /** *

The Amazon Resource Name (ARN) of the network associated with this order.

*/ inline void SetNetworkArn(Aws::String&& value) { m_networkArnHasBeenSet = true; m_networkArn = std::move(value); } /** *

The Amazon Resource Name (ARN) of the network associated with this order.

*/ inline void SetNetworkArn(const char* value) { m_networkArnHasBeenSet = true; m_networkArn.assign(value); } /** *

The Amazon Resource Name (ARN) of the network associated with this order.

*/ inline Order& WithNetworkArn(const Aws::String& value) { SetNetworkArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the network associated with this order.

*/ inline Order& WithNetworkArn(Aws::String&& value) { SetNetworkArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the network associated with this order.

*/ inline Order& WithNetworkArn(const char* value) { SetNetworkArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the network site associated with this * order.

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

The Amazon Resource Name (ARN) of the network site associated with this * order.

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

The Amazon Resource Name (ARN) of the network site associated with this * order.

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

The Amazon Resource Name (ARN) of the network site associated with this * order.

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

The Amazon Resource Name (ARN) of the network site associated with this * order.

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

The Amazon Resource Name (ARN) of the network site associated with this * order.

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

The Amazon Resource Name (ARN) of the network site associated with this * order.

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

The Amazon Resource Name (ARN) of the network site associated with this * order.

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

The Amazon Resource Name (ARN) of the order.

*/ inline const Aws::String& GetOrderArn() const{ return m_orderArn; } /** *

The Amazon Resource Name (ARN) of the order.

*/ inline bool OrderArnHasBeenSet() const { return m_orderArnHasBeenSet; } /** *

The Amazon Resource Name (ARN) of the order.

*/ inline void SetOrderArn(const Aws::String& value) { m_orderArnHasBeenSet = true; m_orderArn = value; } /** *

The Amazon Resource Name (ARN) of the order.

*/ inline void SetOrderArn(Aws::String&& value) { m_orderArnHasBeenSet = true; m_orderArn = std::move(value); } /** *

The Amazon Resource Name (ARN) of the order.

*/ inline void SetOrderArn(const char* value) { m_orderArnHasBeenSet = true; m_orderArn.assign(value); } /** *

The Amazon Resource Name (ARN) of the order.

*/ inline Order& WithOrderArn(const Aws::String& value) { SetOrderArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the order.

*/ inline Order& WithOrderArn(Aws::String&& value) { SetOrderArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the order.

*/ inline Order& WithOrderArn(const char* value) { SetOrderArn(value); return *this;} /** *

A list of the network resources placed in the order.

*/ inline const Aws::Vector& GetOrderedResources() const{ return m_orderedResources; } /** *

A list of the network resources placed in the order.

*/ inline bool OrderedResourcesHasBeenSet() const { return m_orderedResourcesHasBeenSet; } /** *

A list of the network resources placed in the order.

*/ inline void SetOrderedResources(const Aws::Vector& value) { m_orderedResourcesHasBeenSet = true; m_orderedResources = value; } /** *

A list of the network resources placed in the order.

*/ inline void SetOrderedResources(Aws::Vector&& value) { m_orderedResourcesHasBeenSet = true; m_orderedResources = std::move(value); } /** *

A list of the network resources placed in the order.

*/ inline Order& WithOrderedResources(const Aws::Vector& value) { SetOrderedResources(value); return *this;} /** *

A list of the network resources placed in the order.

*/ inline Order& WithOrderedResources(Aws::Vector&& value) { SetOrderedResources(std::move(value)); return *this;} /** *

A list of the network resources placed in the order.

*/ inline Order& AddOrderedResources(const OrderedResourceDefinition& value) { m_orderedResourcesHasBeenSet = true; m_orderedResources.push_back(value); return *this; } /** *

A list of the network resources placed in the order.

*/ inline Order& AddOrderedResources(OrderedResourceDefinition&& value) { m_orderedResourcesHasBeenSet = true; m_orderedResources.push_back(std::move(value)); return *this; } /** *

The shipping address of the order.

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

The shipping address of the order.

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

The shipping address of the order.

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

The shipping address of the order.

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

The shipping address of the order.

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

The shipping address of the order.

*/ inline Order& WithShippingAddress(Address&& value) { SetShippingAddress(std::move(value)); return *this;} /** *

The tracking information of the order.

*/ inline const Aws::Vector& GetTrackingInformation() const{ return m_trackingInformation; } /** *

The tracking information of the order.

*/ inline bool TrackingInformationHasBeenSet() const { return m_trackingInformationHasBeenSet; } /** *

The tracking information of the order.

*/ inline void SetTrackingInformation(const Aws::Vector& value) { m_trackingInformationHasBeenSet = true; m_trackingInformation = value; } /** *

The tracking information of the order.

*/ inline void SetTrackingInformation(Aws::Vector&& value) { m_trackingInformationHasBeenSet = true; m_trackingInformation = std::move(value); } /** *

The tracking information of the order.

*/ inline Order& WithTrackingInformation(const Aws::Vector& value) { SetTrackingInformation(value); return *this;} /** *

The tracking information of the order.

*/ inline Order& WithTrackingInformation(Aws::Vector&& value) { SetTrackingInformation(std::move(value)); return *this;} /** *

The tracking information of the order.

*/ inline Order& AddTrackingInformation(const TrackingInformation& value) { m_trackingInformationHasBeenSet = true; m_trackingInformation.push_back(value); return *this; } /** *

The tracking information of the order.

*/ inline Order& AddTrackingInformation(TrackingInformation&& value) { m_trackingInformationHasBeenSet = true; m_trackingInformation.push_back(std::move(value)); return *this; } private: AcknowledgmentStatus m_acknowledgmentStatus; bool m_acknowledgmentStatusHasBeenSet = false; Aws::Utils::DateTime m_createdAt; bool m_createdAtHasBeenSet = false; Aws::String m_networkArn; bool m_networkArnHasBeenSet = false; Aws::String m_networkSiteArn; bool m_networkSiteArnHasBeenSet = false; Aws::String m_orderArn; bool m_orderArnHasBeenSet = false; Aws::Vector m_orderedResources; bool m_orderedResourcesHasBeenSet = false; Address m_shippingAddress; bool m_shippingAddressHasBeenSet = false; Aws::Vector m_trackingInformation; bool m_trackingInformationHasBeenSet = false; }; } // namespace Model } // namespace PrivateNetworks } // namespace Aws