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

Detailed information about an event. A combination of an Event * object, an EventDescription * object, and additional metadata about the event. Returned by the DescribeEventDetails * operation.

See Also:

AWS * API Reference

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

Summary information about the event.

*/ inline const Event& GetEvent() const{ return m_event; } /** *

Summary information about the event.

*/ inline bool EventHasBeenSet() const { return m_eventHasBeenSet; } /** *

Summary information about the event.

*/ inline void SetEvent(const Event& value) { m_eventHasBeenSet = true; m_event = value; } /** *

Summary information about the event.

*/ inline void SetEvent(Event&& value) { m_eventHasBeenSet = true; m_event = std::move(value); } /** *

Summary information about the event.

*/ inline EventDetails& WithEvent(const Event& value) { SetEvent(value); return *this;} /** *

Summary information about the event.

*/ inline EventDetails& WithEvent(Event&& value) { SetEvent(std::move(value)); return *this;} /** *

The most recent description of the event.

*/ inline const Aws::String& GetEventDescription() const{ return m_eventDescription; } /** *

The most recent description of the event.

*/ inline bool EventDescriptionHasBeenSet() const { return m_eventDescriptionHasBeenSet; } /** *

The most recent description of the event.

*/ inline void SetEventDescription(const Aws::String& value) { m_eventDescriptionHasBeenSet = true; m_eventDescription = value; } /** *

The most recent description of the event.

*/ inline void SetEventDescription(Aws::String&& value) { m_eventDescriptionHasBeenSet = true; m_eventDescription = std::move(value); } /** *

The most recent description of the event.

*/ inline void SetEventDescription(const char* value) { m_eventDescriptionHasBeenSet = true; m_eventDescription.assign(value); } /** *

The most recent description of the event.

*/ inline EventDetails& WithEventDescription(const Aws::String& value) { SetEventDescription(value); return *this;} /** *

The most recent description of the event.

*/ inline EventDetails& WithEventDescription(Aws::String&& value) { SetEventDescription(std::move(value)); return *this;} /** *

The most recent description of the event.

*/ inline EventDetails& WithEventDescription(const char* value) { SetEventDescription(value); return *this;} /** *

Additional metadata about the event.

*/ inline const Aws::Map& GetEventMetadata() const{ return m_eventMetadata; } /** *

Additional metadata about the event.

*/ inline bool EventMetadataHasBeenSet() const { return m_eventMetadataHasBeenSet; } /** *

Additional metadata about the event.

*/ inline void SetEventMetadata(const Aws::Map& value) { m_eventMetadataHasBeenSet = true; m_eventMetadata = value; } /** *

Additional metadata about the event.

*/ inline void SetEventMetadata(Aws::Map&& value) { m_eventMetadataHasBeenSet = true; m_eventMetadata = std::move(value); } /** *

Additional metadata about the event.

*/ inline EventDetails& WithEventMetadata(const Aws::Map& value) { SetEventMetadata(value); return *this;} /** *

Additional metadata about the event.

*/ inline EventDetails& WithEventMetadata(Aws::Map&& value) { SetEventMetadata(std::move(value)); return *this;} /** *

Additional metadata about the event.

*/ inline EventDetails& AddEventMetadata(const Aws::String& key, const Aws::String& value) { m_eventMetadataHasBeenSet = true; m_eventMetadata.emplace(key, value); return *this; } /** *

Additional metadata about the event.

*/ inline EventDetails& AddEventMetadata(Aws::String&& key, const Aws::String& value) { m_eventMetadataHasBeenSet = true; m_eventMetadata.emplace(std::move(key), value); return *this; } /** *

Additional metadata about the event.

*/ inline EventDetails& AddEventMetadata(const Aws::String& key, Aws::String&& value) { m_eventMetadataHasBeenSet = true; m_eventMetadata.emplace(key, std::move(value)); return *this; } /** *

Additional metadata about the event.

*/ inline EventDetails& AddEventMetadata(Aws::String&& key, Aws::String&& value) { m_eventMetadataHasBeenSet = true; m_eventMetadata.emplace(std::move(key), std::move(value)); return *this; } /** *

Additional metadata about the event.

*/ inline EventDetails& AddEventMetadata(const char* key, Aws::String&& value) { m_eventMetadataHasBeenSet = true; m_eventMetadata.emplace(key, std::move(value)); return *this; } /** *

Additional metadata about the event.

*/ inline EventDetails& AddEventMetadata(Aws::String&& key, const char* value) { m_eventMetadataHasBeenSet = true; m_eventMetadata.emplace(std::move(key), value); return *this; } /** *

Additional metadata about the event.

*/ inline EventDetails& AddEventMetadata(const char* key, const char* value) { m_eventMetadataHasBeenSet = true; m_eventMetadata.emplace(key, value); return *this; } private: Event m_event; bool m_eventHasBeenSet = false; Aws::String m_eventDescription; bool m_eventDescriptionHasBeenSet = false; Aws::Map m_eventMetadata; bool m_eventMetadataHasBeenSet = false; }; } // namespace Model } // namespace Health } // namespace Aws