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

Card data parameters that are required to generate a cardholder verification * value for the payment card.

See Also:

AWS * API Reference

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

The transaction counter value that comes from a point of sale terminal.

*/ inline const Aws::String& GetApplicationTransactionCounter() const{ return m_applicationTransactionCounter; } /** *

The transaction counter value that comes from a point of sale terminal.

*/ inline bool ApplicationTransactionCounterHasBeenSet() const { return m_applicationTransactionCounterHasBeenSet; } /** *

The transaction counter value that comes from a point of sale terminal.

*/ inline void SetApplicationTransactionCounter(const Aws::String& value) { m_applicationTransactionCounterHasBeenSet = true; m_applicationTransactionCounter = value; } /** *

The transaction counter value that comes from a point of sale terminal.

*/ inline void SetApplicationTransactionCounter(Aws::String&& value) { m_applicationTransactionCounterHasBeenSet = true; m_applicationTransactionCounter = std::move(value); } /** *

The transaction counter value that comes from a point of sale terminal.

*/ inline void SetApplicationTransactionCounter(const char* value) { m_applicationTransactionCounterHasBeenSet = true; m_applicationTransactionCounter.assign(value); } /** *

The transaction counter value that comes from a point of sale terminal.

*/ inline CardHolderVerificationValue& WithApplicationTransactionCounter(const Aws::String& value) { SetApplicationTransactionCounter(value); return *this;} /** *

The transaction counter value that comes from a point of sale terminal.

*/ inline CardHolderVerificationValue& WithApplicationTransactionCounter(Aws::String&& value) { SetApplicationTransactionCounter(std::move(value)); return *this;} /** *

The transaction counter value that comes from a point of sale terminal.

*/ inline CardHolderVerificationValue& WithApplicationTransactionCounter(const char* value) { SetApplicationTransactionCounter(value); return *this;} /** *

A number that identifies and differentiates payment cards with the same * Primary Account Number (PAN).

*/ inline const Aws::String& GetPanSequenceNumber() const{ return m_panSequenceNumber; } /** *

A number that identifies and differentiates payment cards with the same * Primary Account Number (PAN).

*/ inline bool PanSequenceNumberHasBeenSet() const { return m_panSequenceNumberHasBeenSet; } /** *

A number that identifies and differentiates payment cards with the same * Primary Account Number (PAN).

*/ inline void SetPanSequenceNumber(const Aws::String& value) { m_panSequenceNumberHasBeenSet = true; m_panSequenceNumber = value; } /** *

A number that identifies and differentiates payment cards with the same * Primary Account Number (PAN).

*/ inline void SetPanSequenceNumber(Aws::String&& value) { m_panSequenceNumberHasBeenSet = true; m_panSequenceNumber = std::move(value); } /** *

A number that identifies and differentiates payment cards with the same * Primary Account Number (PAN).

*/ inline void SetPanSequenceNumber(const char* value) { m_panSequenceNumberHasBeenSet = true; m_panSequenceNumber.assign(value); } /** *

A number that identifies and differentiates payment cards with the same * Primary Account Number (PAN).

*/ inline CardHolderVerificationValue& WithPanSequenceNumber(const Aws::String& value) { SetPanSequenceNumber(value); return *this;} /** *

A number that identifies and differentiates payment cards with the same * Primary Account Number (PAN).

*/ inline CardHolderVerificationValue& WithPanSequenceNumber(Aws::String&& value) { SetPanSequenceNumber(std::move(value)); return *this;} /** *

A number that identifies and differentiates payment cards with the same * Primary Account Number (PAN).

*/ inline CardHolderVerificationValue& WithPanSequenceNumber(const char* value) { SetPanSequenceNumber(value); return *this;} /** *

A random number generated by the issuer.

*/ inline const Aws::String& GetUnpredictableNumber() const{ return m_unpredictableNumber; } /** *

A random number generated by the issuer.

*/ inline bool UnpredictableNumberHasBeenSet() const { return m_unpredictableNumberHasBeenSet; } /** *

A random number generated by the issuer.

*/ inline void SetUnpredictableNumber(const Aws::String& value) { m_unpredictableNumberHasBeenSet = true; m_unpredictableNumber = value; } /** *

A random number generated by the issuer.

*/ inline void SetUnpredictableNumber(Aws::String&& value) { m_unpredictableNumberHasBeenSet = true; m_unpredictableNumber = std::move(value); } /** *

A random number generated by the issuer.

*/ inline void SetUnpredictableNumber(const char* value) { m_unpredictableNumberHasBeenSet = true; m_unpredictableNumber.assign(value); } /** *

A random number generated by the issuer.

*/ inline CardHolderVerificationValue& WithUnpredictableNumber(const Aws::String& value) { SetUnpredictableNumber(value); return *this;} /** *

A random number generated by the issuer.

*/ inline CardHolderVerificationValue& WithUnpredictableNumber(Aws::String&& value) { SetUnpredictableNumber(std::move(value)); return *this;} /** *

A random number generated by the issuer.

*/ inline CardHolderVerificationValue& WithUnpredictableNumber(const char* value) { SetUnpredictableNumber(value); return *this;} private: Aws::String m_applicationTransactionCounter; bool m_applicationTransactionCounterHasBeenSet = false; Aws::String m_panSequenceNumber; bool m_panSequenceNumberHasBeenSet = false; Aws::String m_unpredictableNumber; bool m_unpredictableNumberHasBeenSet = false; }; } // namespace Model } // namespace PaymentCryptographyData } // namespace Aws