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

Contains information about a returned public key.

See Also:

* AWS * API Reference

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

The DER encoded public key value in PKCS#1 format.

*/ inline const Aws::Utils::ByteBuffer& GetValue() const{ return m_value; } /** *

The DER encoded public key value in PKCS#1 format.

*/ inline bool ValueHasBeenSet() const { return m_valueHasBeenSet; } /** *

The DER encoded public key value in PKCS#1 format.

*/ inline void SetValue(const Aws::Utils::ByteBuffer& value) { m_valueHasBeenSet = true; m_value = value; } /** *

The DER encoded public key value in PKCS#1 format.

*/ inline void SetValue(Aws::Utils::ByteBuffer&& value) { m_valueHasBeenSet = true; m_value = std::move(value); } /** *

The DER encoded public key value in PKCS#1 format.

*/ inline PublicKey& WithValue(const Aws::Utils::ByteBuffer& value) { SetValue(value); return *this;} /** *

The DER encoded public key value in PKCS#1 format.

*/ inline PublicKey& WithValue(Aws::Utils::ByteBuffer&& value) { SetValue(std::move(value)); return *this;} /** *

The starting time of validity of the public key.

*/ inline const Aws::Utils::DateTime& GetValidityStartTime() const{ return m_validityStartTime; } /** *

The starting time of validity of the public key.

*/ inline bool ValidityStartTimeHasBeenSet() const { return m_validityStartTimeHasBeenSet; } /** *

The starting time of validity of the public key.

*/ inline void SetValidityStartTime(const Aws::Utils::DateTime& value) { m_validityStartTimeHasBeenSet = true; m_validityStartTime = value; } /** *

The starting time of validity of the public key.

*/ inline void SetValidityStartTime(Aws::Utils::DateTime&& value) { m_validityStartTimeHasBeenSet = true; m_validityStartTime = std::move(value); } /** *

The starting time of validity of the public key.

*/ inline PublicKey& WithValidityStartTime(const Aws::Utils::DateTime& value) { SetValidityStartTime(value); return *this;} /** *

The starting time of validity of the public key.

*/ inline PublicKey& WithValidityStartTime(Aws::Utils::DateTime&& value) { SetValidityStartTime(std::move(value)); return *this;} /** *

The ending time of validity of the public key.

*/ inline const Aws::Utils::DateTime& GetValidityEndTime() const{ return m_validityEndTime; } /** *

The ending time of validity of the public key.

*/ inline bool ValidityEndTimeHasBeenSet() const { return m_validityEndTimeHasBeenSet; } /** *

The ending time of validity of the public key.

*/ inline void SetValidityEndTime(const Aws::Utils::DateTime& value) { m_validityEndTimeHasBeenSet = true; m_validityEndTime = value; } /** *

The ending time of validity of the public key.

*/ inline void SetValidityEndTime(Aws::Utils::DateTime&& value) { m_validityEndTimeHasBeenSet = true; m_validityEndTime = std::move(value); } /** *

The ending time of validity of the public key.

*/ inline PublicKey& WithValidityEndTime(const Aws::Utils::DateTime& value) { SetValidityEndTime(value); return *this;} /** *

The ending time of validity of the public key.

*/ inline PublicKey& WithValidityEndTime(Aws::Utils::DateTime&& value) { SetValidityEndTime(std::move(value)); return *this;} /** *

The fingerprint of the public key.

*/ inline const Aws::String& GetFingerprint() const{ return m_fingerprint; } /** *

The fingerprint of the public key.

*/ inline bool FingerprintHasBeenSet() const { return m_fingerprintHasBeenSet; } /** *

The fingerprint of the public key.

*/ inline void SetFingerprint(const Aws::String& value) { m_fingerprintHasBeenSet = true; m_fingerprint = value; } /** *

The fingerprint of the public key.

*/ inline void SetFingerprint(Aws::String&& value) { m_fingerprintHasBeenSet = true; m_fingerprint = std::move(value); } /** *

The fingerprint of the public key.

*/ inline void SetFingerprint(const char* value) { m_fingerprintHasBeenSet = true; m_fingerprint.assign(value); } /** *

The fingerprint of the public key.

*/ inline PublicKey& WithFingerprint(const Aws::String& value) { SetFingerprint(value); return *this;} /** *

The fingerprint of the public key.

*/ inline PublicKey& WithFingerprint(Aws::String&& value) { SetFingerprint(std::move(value)); return *this;} /** *

The fingerprint of the public key.

*/ inline PublicKey& WithFingerprint(const char* value) { SetFingerprint(value); return *this;} private: Aws::Utils::ByteBuffer m_value; bool m_valueHasBeenSet = false; Aws::Utils::DateTime m_validityStartTime; bool m_validityStartTimeHasBeenSet = false; Aws::Utils::DateTime m_validityEndTime; bool m_validityEndTimeHasBeenSet = false; Aws::String m_fingerprint; bool m_fingerprintHasBeenSet = false; }; } // namespace Model } // namespace CloudTrail } // namespace Aws