/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Information about a line item.See Also:
AWS
* API Reference
The ID of the catalog item.
*/ inline const Aws::String& GetCatalogItemId() const{ return m_catalogItemId; } /** *The ID of the catalog item.
*/ inline bool CatalogItemIdHasBeenSet() const { return m_catalogItemIdHasBeenSet; } /** *The ID of the catalog item.
*/ inline void SetCatalogItemId(const Aws::String& value) { m_catalogItemIdHasBeenSet = true; m_catalogItemId = value; } /** *The ID of the catalog item.
*/ inline void SetCatalogItemId(Aws::String&& value) { m_catalogItemIdHasBeenSet = true; m_catalogItemId = std::move(value); } /** *The ID of the catalog item.
*/ inline void SetCatalogItemId(const char* value) { m_catalogItemIdHasBeenSet = true; m_catalogItemId.assign(value); } /** *The ID of the catalog item.
*/ inline LineItem& WithCatalogItemId(const Aws::String& value) { SetCatalogItemId(value); return *this;} /** *The ID of the catalog item.
*/ inline LineItem& WithCatalogItemId(Aws::String&& value) { SetCatalogItemId(std::move(value)); return *this;} /** *The ID of the catalog item.
*/ inline LineItem& WithCatalogItemId(const char* value) { SetCatalogItemId(value); return *this;} /** *The ID of the line item.
*/ inline const Aws::String& GetLineItemId() const{ return m_lineItemId; } /** *The ID of the line item.
*/ inline bool LineItemIdHasBeenSet() const { return m_lineItemIdHasBeenSet; } /** *The ID of the line item.
*/ inline void SetLineItemId(const Aws::String& value) { m_lineItemIdHasBeenSet = true; m_lineItemId = value; } /** *The ID of the line item.
*/ inline void SetLineItemId(Aws::String&& value) { m_lineItemIdHasBeenSet = true; m_lineItemId = std::move(value); } /** *The ID of the line item.
*/ inline void SetLineItemId(const char* value) { m_lineItemIdHasBeenSet = true; m_lineItemId.assign(value); } /** *The ID of the line item.
*/ inline LineItem& WithLineItemId(const Aws::String& value) { SetLineItemId(value); return *this;} /** *The ID of the line item.
*/ inline LineItem& WithLineItemId(Aws::String&& value) { SetLineItemId(std::move(value)); return *this;} /** *The ID of the line item.
*/ inline LineItem& WithLineItemId(const char* value) { SetLineItemId(value); return *this;} /** *The quantity of the line item.
*/ inline int GetQuantity() const{ return m_quantity; } /** *The quantity of the line item.
*/ inline bool QuantityHasBeenSet() const { return m_quantityHasBeenSet; } /** *The quantity of the line item.
*/ inline void SetQuantity(int value) { m_quantityHasBeenSet = true; m_quantity = value; } /** *The quantity of the line item.
*/ inline LineItem& WithQuantity(int value) { SetQuantity(value); return *this;} /** *The status of the line item.
*/ inline const LineItemStatus& GetStatus() const{ return m_status; } /** *The status of the line item.
*/ inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; } /** *The status of the line item.
*/ inline void SetStatus(const LineItemStatus& value) { m_statusHasBeenSet = true; m_status = value; } /** *The status of the line item.
*/ inline void SetStatus(LineItemStatus&& value) { m_statusHasBeenSet = true; m_status = std::move(value); } /** *The status of the line item.
*/ inline LineItem& WithStatus(const LineItemStatus& value) { SetStatus(value); return *this;} /** *The status of the line item.
*/ inline LineItem& WithStatus(LineItemStatus&& value) { SetStatus(std::move(value)); return *this;} /** *Information about a line item shipment.
*/ inline const ShipmentInformation& GetShipmentInformation() const{ return m_shipmentInformation; } /** *Information about a line item shipment.
*/ inline bool ShipmentInformationHasBeenSet() const { return m_shipmentInformationHasBeenSet; } /** *Information about a line item shipment.
*/ inline void SetShipmentInformation(const ShipmentInformation& value) { m_shipmentInformationHasBeenSet = true; m_shipmentInformation = value; } /** *Information about a line item shipment.
*/ inline void SetShipmentInformation(ShipmentInformation&& value) { m_shipmentInformationHasBeenSet = true; m_shipmentInformation = std::move(value); } /** *Information about a line item shipment.
*/ inline LineItem& WithShipmentInformation(const ShipmentInformation& value) { SetShipmentInformation(value); return *this;} /** *Information about a line item shipment.
*/ inline LineItem& WithShipmentInformation(ShipmentInformation&& value) { SetShipmentInformation(std::move(value)); return *this;} /** *Information about assets.
*/ inline const Aws::VectorInformation about assets.
*/ inline bool AssetInformationListHasBeenSet() const { return m_assetInformationListHasBeenSet; } /** *Information about assets.
*/ inline void SetAssetInformationList(const Aws::VectorInformation about assets.
*/ inline void SetAssetInformationList(Aws::VectorInformation about assets.
*/ inline LineItem& WithAssetInformationList(const Aws::VectorInformation about assets.
*/ inline LineItem& WithAssetInformationList(Aws::VectorInformation about assets.
*/ inline LineItem& AddAssetInformationList(const LineItemAssetInformation& value) { m_assetInformationListHasBeenSet = true; m_assetInformationList.push_back(value); return *this; } /** *Information about assets.
*/ inline LineItem& AddAssetInformationList(LineItemAssetInformation&& value) { m_assetInformationListHasBeenSet = true; m_assetInformationList.push_back(std::move(value)); return *this; } /** *The ID of the previous line item.
*/ inline const Aws::String& GetPreviousLineItemId() const{ return m_previousLineItemId; } /** *The ID of the previous line item.
*/ inline bool PreviousLineItemIdHasBeenSet() const { return m_previousLineItemIdHasBeenSet; } /** *The ID of the previous line item.
*/ inline void SetPreviousLineItemId(const Aws::String& value) { m_previousLineItemIdHasBeenSet = true; m_previousLineItemId = value; } /** *The ID of the previous line item.
*/ inline void SetPreviousLineItemId(Aws::String&& value) { m_previousLineItemIdHasBeenSet = true; m_previousLineItemId = std::move(value); } /** *The ID of the previous line item.
*/ inline void SetPreviousLineItemId(const char* value) { m_previousLineItemIdHasBeenSet = true; m_previousLineItemId.assign(value); } /** *The ID of the previous line item.
*/ inline LineItem& WithPreviousLineItemId(const Aws::String& value) { SetPreviousLineItemId(value); return *this;} /** *The ID of the previous line item.
*/ inline LineItem& WithPreviousLineItemId(Aws::String&& value) { SetPreviousLineItemId(std::move(value)); return *this;} /** *The ID of the previous line item.
*/ inline LineItem& WithPreviousLineItemId(const char* value) { SetPreviousLineItemId(value); return *this;} /** *The ID of the previous order item.
*/ inline const Aws::String& GetPreviousOrderId() const{ return m_previousOrderId; } /** *The ID of the previous order item.
*/ inline bool PreviousOrderIdHasBeenSet() const { return m_previousOrderIdHasBeenSet; } /** *The ID of the previous order item.
*/ inline void SetPreviousOrderId(const Aws::String& value) { m_previousOrderIdHasBeenSet = true; m_previousOrderId = value; } /** *The ID of the previous order item.
*/ inline void SetPreviousOrderId(Aws::String&& value) { m_previousOrderIdHasBeenSet = true; m_previousOrderId = std::move(value); } /** *The ID of the previous order item.
*/ inline void SetPreviousOrderId(const char* value) { m_previousOrderIdHasBeenSet = true; m_previousOrderId.assign(value); } /** *The ID of the previous order item.
*/ inline LineItem& WithPreviousOrderId(const Aws::String& value) { SetPreviousOrderId(value); return *this;} /** *The ID of the previous order item.
*/ inline LineItem& WithPreviousOrderId(Aws::String&& value) { SetPreviousOrderId(std::move(value)); return *this;} /** *The ID of the previous order item.
*/ inline LineItem& WithPreviousOrderId(const char* value) { SetPreviousOrderId(value); return *this;} private: Aws::String m_catalogItemId; bool m_catalogItemIdHasBeenSet = false; Aws::String m_lineItemId; bool m_lineItemIdHasBeenSet = false; int m_quantity; bool m_quantityHasBeenSet = false; LineItemStatus m_status; bool m_statusHasBeenSet = false; ShipmentInformation m_shipmentInformation; bool m_shipmentInformationHasBeenSet = false; Aws::Vector