/** * 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 PaymentCryptographyData { namespace Model { /** *

Parameters that are required for Authorization Response Cryptogram (ARPC) * generation after Authorization Request Cryptogram (ARQC) verification is * successful.

See Also:

AWS * API Reference

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

Parameters that are required for ARPC response generation using method1 after * ARQC verification is successful.

*/ inline const CryptogramVerificationArpcMethod1& GetArpcMethod1() const{ return m_arpcMethod1; } /** *

Parameters that are required for ARPC response generation using method1 after * ARQC verification is successful.

*/ inline bool ArpcMethod1HasBeenSet() const { return m_arpcMethod1HasBeenSet; } /** *

Parameters that are required for ARPC response generation using method1 after * ARQC verification is successful.

*/ inline void SetArpcMethod1(const CryptogramVerificationArpcMethod1& value) { m_arpcMethod1HasBeenSet = true; m_arpcMethod1 = value; } /** *

Parameters that are required for ARPC response generation using method1 after * ARQC verification is successful.

*/ inline void SetArpcMethod1(CryptogramVerificationArpcMethod1&& value) { m_arpcMethod1HasBeenSet = true; m_arpcMethod1 = std::move(value); } /** *

Parameters that are required for ARPC response generation using method1 after * ARQC verification is successful.

*/ inline CryptogramAuthResponse& WithArpcMethod1(const CryptogramVerificationArpcMethod1& value) { SetArpcMethod1(value); return *this;} /** *

Parameters that are required for ARPC response generation using method1 after * ARQC verification is successful.

*/ inline CryptogramAuthResponse& WithArpcMethod1(CryptogramVerificationArpcMethod1&& value) { SetArpcMethod1(std::move(value)); return *this;} /** *

Parameters that are required for ARPC response generation using method2 after * ARQC verification is successful.

*/ inline const CryptogramVerificationArpcMethod2& GetArpcMethod2() const{ return m_arpcMethod2; } /** *

Parameters that are required for ARPC response generation using method2 after * ARQC verification is successful.

*/ inline bool ArpcMethod2HasBeenSet() const { return m_arpcMethod2HasBeenSet; } /** *

Parameters that are required for ARPC response generation using method2 after * ARQC verification is successful.

*/ inline void SetArpcMethod2(const CryptogramVerificationArpcMethod2& value) { m_arpcMethod2HasBeenSet = true; m_arpcMethod2 = value; } /** *

Parameters that are required for ARPC response generation using method2 after * ARQC verification is successful.

*/ inline void SetArpcMethod2(CryptogramVerificationArpcMethod2&& value) { m_arpcMethod2HasBeenSet = true; m_arpcMethod2 = std::move(value); } /** *

Parameters that are required for ARPC response generation using method2 after * ARQC verification is successful.

*/ inline CryptogramAuthResponse& WithArpcMethod2(const CryptogramVerificationArpcMethod2& value) { SetArpcMethod2(value); return *this;} /** *

Parameters that are required for ARPC response generation using method2 after * ARQC verification is successful.

*/ inline CryptogramAuthResponse& WithArpcMethod2(CryptogramVerificationArpcMethod2&& value) { SetArpcMethod2(std::move(value)); return *this;} private: CryptogramVerificationArpcMethod1 m_arpcMethod1; bool m_arpcMethod1HasBeenSet = false; CryptogramVerificationArpcMethod2 m_arpcMethod2; bool m_arpcMethod2HasBeenSet = false; }; } // namespace Model } // namespace PaymentCryptographyData } // namespace Aws