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

The container for the identifier for the token including the unique token ID * and its blockchain network.

Only the native tokens BTC,ETH, and * the ERC-20, ERC-721, and ERC 1155 token standards are supported.

*

See Also:

AWS * API Reference

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

The blockchain network of the token.

*/ inline const QueryNetwork& GetNetwork() const{ return m_network; } /** *

The blockchain network of the token.

*/ inline bool NetworkHasBeenSet() const { return m_networkHasBeenSet; } /** *

The blockchain network of the token.

*/ inline void SetNetwork(const QueryNetwork& value) { m_networkHasBeenSet = true; m_network = value; } /** *

The blockchain network of the token.

*/ inline void SetNetwork(QueryNetwork&& value) { m_networkHasBeenSet = true; m_network = std::move(value); } /** *

The blockchain network of the token.

*/ inline TokenIdentifier& WithNetwork(const QueryNetwork& value) { SetNetwork(value); return *this;} /** *

The blockchain network of the token.

*/ inline TokenIdentifier& WithNetwork(QueryNetwork&& value) { SetNetwork(std::move(value)); return *this;} /** *

This is the token's contract address.

*/ inline const Aws::String& GetContractAddress() const{ return m_contractAddress; } /** *

This is the token's contract address.

*/ inline bool ContractAddressHasBeenSet() const { return m_contractAddressHasBeenSet; } /** *

This is the token's contract address.

*/ inline void SetContractAddress(const Aws::String& value) { m_contractAddressHasBeenSet = true; m_contractAddress = value; } /** *

This is the token's contract address.

*/ inline void SetContractAddress(Aws::String&& value) { m_contractAddressHasBeenSet = true; m_contractAddress = std::move(value); } /** *

This is the token's contract address.

*/ inline void SetContractAddress(const char* value) { m_contractAddressHasBeenSet = true; m_contractAddress.assign(value); } /** *

This is the token's contract address.

*/ inline TokenIdentifier& WithContractAddress(const Aws::String& value) { SetContractAddress(value); return *this;} /** *

This is the token's contract address.

*/ inline TokenIdentifier& WithContractAddress(Aws::String&& value) { SetContractAddress(std::move(value)); return *this;} /** *

This is the token's contract address.

*/ inline TokenIdentifier& WithContractAddress(const char* value) { SetContractAddress(value); return *this;} /** *

The unique identifier of the token.

*/ inline const Aws::String& GetTokenId() const{ return m_tokenId; } /** *

The unique identifier of the token.

*/ inline bool TokenIdHasBeenSet() const { return m_tokenIdHasBeenSet; } /** *

The unique identifier of the token.

*/ inline void SetTokenId(const Aws::String& value) { m_tokenIdHasBeenSet = true; m_tokenId = value; } /** *

The unique identifier of the token.

*/ inline void SetTokenId(Aws::String&& value) { m_tokenIdHasBeenSet = true; m_tokenId = std::move(value); } /** *

The unique identifier of the token.

*/ inline void SetTokenId(const char* value) { m_tokenIdHasBeenSet = true; m_tokenId.assign(value); } /** *

The unique identifier of the token.

*/ inline TokenIdentifier& WithTokenId(const Aws::String& value) { SetTokenId(value); return *this;} /** *

The unique identifier of the token.

*/ inline TokenIdentifier& WithTokenId(Aws::String&& value) { SetTokenId(std::move(value)); return *this;} /** *

The unique identifier of the token.

*/ inline TokenIdentifier& WithTokenId(const char* value) { SetTokenId(value); return *this;} private: QueryNetwork m_network; bool m_networkHasBeenSet = false; Aws::String m_contractAddress; bool m_contractAddressHasBeenSet = false; Aws::String m_tokenId; bool m_tokenIdHasBeenSet = false; }; } // namespace Model } // namespace ManagedBlockchainQuery } // namespace Aws