/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Parameters to derive session key for an Emv2000 payment card for ARQC
* verification.See Also:
AWS
* API Reference
The transaction counter that is provided by the terminal during transaction * processing.
*/ inline const Aws::String& GetApplicationTransactionCounter() const{ return m_applicationTransactionCounter; } /** *The transaction counter that is provided by the terminal during transaction * processing.
*/ inline bool ApplicationTransactionCounterHasBeenSet() const { return m_applicationTransactionCounterHasBeenSet; } /** *The transaction counter that is provided by the terminal during transaction * processing.
*/ inline void SetApplicationTransactionCounter(const Aws::String& value) { m_applicationTransactionCounterHasBeenSet = true; m_applicationTransactionCounter = value; } /** *The transaction counter that is provided by the terminal during transaction * processing.
*/ inline void SetApplicationTransactionCounter(Aws::String&& value) { m_applicationTransactionCounterHasBeenSet = true; m_applicationTransactionCounter = std::move(value); } /** *The transaction counter that is provided by the terminal during transaction * processing.
*/ inline void SetApplicationTransactionCounter(const char* value) { m_applicationTransactionCounterHasBeenSet = true; m_applicationTransactionCounter.assign(value); } /** *The transaction counter that is provided by the terminal during transaction * processing.
*/ inline SessionKeyEmv2000& WithApplicationTransactionCounter(const Aws::String& value) { SetApplicationTransactionCounter(value); return *this;} /** *The transaction counter that is provided by the terminal during transaction * processing.
*/ inline SessionKeyEmv2000& WithApplicationTransactionCounter(Aws::String&& value) { SetApplicationTransactionCounter(std::move(value)); return *this;} /** *The transaction counter that is provided by the terminal during transaction * processing.
*/ inline SessionKeyEmv2000& 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 SessionKeyEmv2000& 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 SessionKeyEmv2000& 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 SessionKeyEmv2000& WithPanSequenceNumber(const char* value) { SetPanSequenceNumber(value); return *this;} /** *The Primary Account Number (PAN) of the cardholder. A PAN is a unique * identifier for a payment credit or debit card and associates the card to a * specific account holder.
*/ inline const Aws::String& GetPrimaryAccountNumber() const{ return m_primaryAccountNumber; } /** *The Primary Account Number (PAN) of the cardholder. A PAN is a unique * identifier for a payment credit or debit card and associates the card to a * specific account holder.
*/ inline bool PrimaryAccountNumberHasBeenSet() const { return m_primaryAccountNumberHasBeenSet; } /** *The Primary Account Number (PAN) of the cardholder. A PAN is a unique * identifier for a payment credit or debit card and associates the card to a * specific account holder.
*/ inline void SetPrimaryAccountNumber(const Aws::String& value) { m_primaryAccountNumberHasBeenSet = true; m_primaryAccountNumber = value; } /** *The Primary Account Number (PAN) of the cardholder. A PAN is a unique * identifier for a payment credit or debit card and associates the card to a * specific account holder.
*/ inline void SetPrimaryAccountNumber(Aws::String&& value) { m_primaryAccountNumberHasBeenSet = true; m_primaryAccountNumber = std::move(value); } /** *The Primary Account Number (PAN) of the cardholder. A PAN is a unique * identifier for a payment credit or debit card and associates the card to a * specific account holder.
*/ inline void SetPrimaryAccountNumber(const char* value) { m_primaryAccountNumberHasBeenSet = true; m_primaryAccountNumber.assign(value); } /** *The Primary Account Number (PAN) of the cardholder. A PAN is a unique * identifier for a payment credit or debit card and associates the card to a * specific account holder.
*/ inline SessionKeyEmv2000& WithPrimaryAccountNumber(const Aws::String& value) { SetPrimaryAccountNumber(value); return *this;} /** *The Primary Account Number (PAN) of the cardholder. A PAN is a unique * identifier for a payment credit or debit card and associates the card to a * specific account holder.
*/ inline SessionKeyEmv2000& WithPrimaryAccountNumber(Aws::String&& value) { SetPrimaryAccountNumber(std::move(value)); return *this;} /** *The Primary Account Number (PAN) of the cardholder. A PAN is a unique * identifier for a payment credit or debit card and associates the card to a * specific account holder.
*/ inline SessionKeyEmv2000& WithPrimaryAccountNumber(const char* value) { SetPrimaryAccountNumber(value); return *this;} private: Aws::String m_applicationTransactionCounter; bool m_applicationTransactionCounterHasBeenSet = false; Aws::String m_panSequenceNumber; bool m_panSequenceNumberHasBeenSet = false; Aws::String m_primaryAccountNumber; bool m_primaryAccountNumberHasBeenSet = false; }; } // namespace Model } // namespace PaymentCryptographyData } // namespace Aws