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

Specifies an attribute and value that filter the events * returned.

See Also:

AWS * API Reference

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

Specifies an attribute on which to filter the events returned.

*/ inline const LookupAttributeKey& GetAttributeKey() const{ return m_attributeKey; } /** *

Specifies an attribute on which to filter the events returned.

*/ inline bool AttributeKeyHasBeenSet() const { return m_attributeKeyHasBeenSet; } /** *

Specifies an attribute on which to filter the events returned.

*/ inline void SetAttributeKey(const LookupAttributeKey& value) { m_attributeKeyHasBeenSet = true; m_attributeKey = value; } /** *

Specifies an attribute on which to filter the events returned.

*/ inline void SetAttributeKey(LookupAttributeKey&& value) { m_attributeKeyHasBeenSet = true; m_attributeKey = std::move(value); } /** *

Specifies an attribute on which to filter the events returned.

*/ inline LookupAttribute& WithAttributeKey(const LookupAttributeKey& value) { SetAttributeKey(value); return *this;} /** *

Specifies an attribute on which to filter the events returned.

*/ inline LookupAttribute& WithAttributeKey(LookupAttributeKey&& value) { SetAttributeKey(std::move(value)); return *this;} /** *

Specifies a value for the specified AttributeKey.

*/ inline const Aws::String& GetAttributeValue() const{ return m_attributeValue; } /** *

Specifies a value for the specified AttributeKey.

*/ inline bool AttributeValueHasBeenSet() const { return m_attributeValueHasBeenSet; } /** *

Specifies a value for the specified AttributeKey.

*/ inline void SetAttributeValue(const Aws::String& value) { m_attributeValueHasBeenSet = true; m_attributeValue = value; } /** *

Specifies a value for the specified AttributeKey.

*/ inline void SetAttributeValue(Aws::String&& value) { m_attributeValueHasBeenSet = true; m_attributeValue = std::move(value); } /** *

Specifies a value for the specified AttributeKey.

*/ inline void SetAttributeValue(const char* value) { m_attributeValueHasBeenSet = true; m_attributeValue.assign(value); } /** *

Specifies a value for the specified AttributeKey.

*/ inline LookupAttribute& WithAttributeValue(const Aws::String& value) { SetAttributeValue(value); return *this;} /** *

Specifies a value for the specified AttributeKey.

*/ inline LookupAttribute& WithAttributeValue(Aws::String&& value) { SetAttributeValue(std::move(value)); return *this;} /** *

Specifies a value for the specified AttributeKey.

*/ inline LookupAttribute& WithAttributeValue(const char* value) { SetAttributeValue(value); return *this;} private: LookupAttributeKey m_attributeKey; bool m_attributeKeyHasBeenSet = false; Aws::String m_attributeValue; bool m_attributeValueHasBeenSet = false; }; } // namespace Model } // namespace CloudTrail } // namespace Aws