/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Information about hardware assets. See Also:
AWS
* API Reference
The ID of the asset.
*/ inline const Aws::String& GetAssetId() const{ return m_assetId; } /** *The ID of the asset.
*/ inline bool AssetIdHasBeenSet() const { return m_assetIdHasBeenSet; } /** *The ID of the asset.
*/ inline void SetAssetId(const Aws::String& value) { m_assetIdHasBeenSet = true; m_assetId = value; } /** *The ID of the asset.
*/ inline void SetAssetId(Aws::String&& value) { m_assetIdHasBeenSet = true; m_assetId = std::move(value); } /** *The ID of the asset.
*/ inline void SetAssetId(const char* value) { m_assetIdHasBeenSet = true; m_assetId.assign(value); } /** *The ID of the asset.
*/ inline AssetInfo& WithAssetId(const Aws::String& value) { SetAssetId(value); return *this;} /** *The ID of the asset.
*/ inline AssetInfo& WithAssetId(Aws::String&& value) { SetAssetId(std::move(value)); return *this;} /** *The ID of the asset.
*/ inline AssetInfo& WithAssetId(const char* value) { SetAssetId(value); return *this;} /** *The rack ID of the asset.
*/ inline const Aws::String& GetRackId() const{ return m_rackId; } /** *The rack ID of the asset.
*/ inline bool RackIdHasBeenSet() const { return m_rackIdHasBeenSet; } /** *The rack ID of the asset.
*/ inline void SetRackId(const Aws::String& value) { m_rackIdHasBeenSet = true; m_rackId = value; } /** *The rack ID of the asset.
*/ inline void SetRackId(Aws::String&& value) { m_rackIdHasBeenSet = true; m_rackId = std::move(value); } /** *The rack ID of the asset.
*/ inline void SetRackId(const char* value) { m_rackIdHasBeenSet = true; m_rackId.assign(value); } /** *The rack ID of the asset.
*/ inline AssetInfo& WithRackId(const Aws::String& value) { SetRackId(value); return *this;} /** *The rack ID of the asset.
*/ inline AssetInfo& WithRackId(Aws::String&& value) { SetRackId(std::move(value)); return *this;} /** *The rack ID of the asset.
*/ inline AssetInfo& WithRackId(const char* value) { SetRackId(value); return *this;} /** *The type of the asset.
*/ inline const AssetType& GetAssetType() const{ return m_assetType; } /** *The type of the asset.
*/ inline bool AssetTypeHasBeenSet() const { return m_assetTypeHasBeenSet; } /** *The type of the asset.
*/ inline void SetAssetType(const AssetType& value) { m_assetTypeHasBeenSet = true; m_assetType = value; } /** *The type of the asset.
*/ inline void SetAssetType(AssetType&& value) { m_assetTypeHasBeenSet = true; m_assetType = std::move(value); } /** *The type of the asset.
*/ inline AssetInfo& WithAssetType(const AssetType& value) { SetAssetType(value); return *this;} /** *The type of the asset.
*/ inline AssetInfo& WithAssetType(AssetType&& value) { SetAssetType(std::move(value)); return *this;} /** *Information about compute hardware assets.
*/ inline const ComputeAttributes& GetComputeAttributes() const{ return m_computeAttributes; } /** *Information about compute hardware assets.
*/ inline bool ComputeAttributesHasBeenSet() const { return m_computeAttributesHasBeenSet; } /** *Information about compute hardware assets.
*/ inline void SetComputeAttributes(const ComputeAttributes& value) { m_computeAttributesHasBeenSet = true; m_computeAttributes = value; } /** *Information about compute hardware assets.
*/ inline void SetComputeAttributes(ComputeAttributes&& value) { m_computeAttributesHasBeenSet = true; m_computeAttributes = std::move(value); } /** *Information about compute hardware assets.
*/ inline AssetInfo& WithComputeAttributes(const ComputeAttributes& value) { SetComputeAttributes(value); return *this;} /** *Information about compute hardware assets.
*/ inline AssetInfo& WithComputeAttributes(ComputeAttributes&& value) { SetComputeAttributes(std::move(value)); return *this;} /** *The position of an asset in a rack.
*/ inline const AssetLocation& GetAssetLocation() const{ return m_assetLocation; } /** *The position of an asset in a rack.
*/ inline bool AssetLocationHasBeenSet() const { return m_assetLocationHasBeenSet; } /** *The position of an asset in a rack.
*/ inline void SetAssetLocation(const AssetLocation& value) { m_assetLocationHasBeenSet = true; m_assetLocation = value; } /** *The position of an asset in a rack.
*/ inline void SetAssetLocation(AssetLocation&& value) { m_assetLocationHasBeenSet = true; m_assetLocation = std::move(value); } /** *The position of an asset in a rack.
*/ inline AssetInfo& WithAssetLocation(const AssetLocation& value) { SetAssetLocation(value); return *this;} /** *The position of an asset in a rack.
*/ inline AssetInfo& WithAssetLocation(AssetLocation&& value) { SetAssetLocation(std::move(value)); return *this;} private: Aws::String m_assetId; bool m_assetIdHasBeenSet = false; Aws::String m_rackId; bool m_rackIdHasBeenSet = false; AssetType m_assetType; bool m_assetTypeHasBeenSet = false; ComputeAttributes m_computeAttributes; bool m_computeAttributesHasBeenSet = false; AssetLocation m_assetLocation; bool m_assetLocationHasBeenSet = false; }; } // namespace Model } // namespace Outposts } // namespace Aws