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

Metadata about the detection source that generates proactive anomalies. The * anomaly is detected using analysis of the metric data
 over a period of * time

See Also:

AWS * API Reference

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

The source of the anomaly.

*/ inline const Aws::String& GetSource() const{ return m_source; } /** *

The source of the anomaly.

*/ inline bool SourceHasBeenSet() const { return m_sourceHasBeenSet; } /** *

The source of the anomaly.

*/ inline void SetSource(const Aws::String& value) { m_sourceHasBeenSet = true; m_source = value; } /** *

The source of the anomaly.

*/ inline void SetSource(Aws::String&& value) { m_sourceHasBeenSet = true; m_source = std::move(value); } /** *

The source of the anomaly.

*/ inline void SetSource(const char* value) { m_sourceHasBeenSet = true; m_source.assign(value); } /** *

The source of the anomaly.

*/ inline AnomalySourceMetadata& WithSource(const Aws::String& value) { SetSource(value); return *this;} /** *

The source of the anomaly.

*/ inline AnomalySourceMetadata& WithSource(Aws::String&& value) { SetSource(std::move(value)); return *this;} /** *

The source of the anomaly.

*/ inline AnomalySourceMetadata& WithSource(const char* value) { SetSource(value); return *this;} /** *

The name of the anomaly's resource.

*/ inline const Aws::String& GetSourceResourceName() const{ return m_sourceResourceName; } /** *

The name of the anomaly's resource.

*/ inline bool SourceResourceNameHasBeenSet() const { return m_sourceResourceNameHasBeenSet; } /** *

The name of the anomaly's resource.

*/ inline void SetSourceResourceName(const Aws::String& value) { m_sourceResourceNameHasBeenSet = true; m_sourceResourceName = value; } /** *

The name of the anomaly's resource.

*/ inline void SetSourceResourceName(Aws::String&& value) { m_sourceResourceNameHasBeenSet = true; m_sourceResourceName = std::move(value); } /** *

The name of the anomaly's resource.

*/ inline void SetSourceResourceName(const char* value) { m_sourceResourceNameHasBeenSet = true; m_sourceResourceName.assign(value); } /** *

The name of the anomaly's resource.

*/ inline AnomalySourceMetadata& WithSourceResourceName(const Aws::String& value) { SetSourceResourceName(value); return *this;} /** *

The name of the anomaly's resource.

*/ inline AnomalySourceMetadata& WithSourceResourceName(Aws::String&& value) { SetSourceResourceName(std::move(value)); return *this;} /** *

The name of the anomaly's resource.

*/ inline AnomalySourceMetadata& WithSourceResourceName(const char* value) { SetSourceResourceName(value); return *this;} /** *

The anomaly's resource type.

*/ inline const Aws::String& GetSourceResourceType() const{ return m_sourceResourceType; } /** *

The anomaly's resource type.

*/ inline bool SourceResourceTypeHasBeenSet() const { return m_sourceResourceTypeHasBeenSet; } /** *

The anomaly's resource type.

*/ inline void SetSourceResourceType(const Aws::String& value) { m_sourceResourceTypeHasBeenSet = true; m_sourceResourceType = value; } /** *

The anomaly's resource type.

*/ inline void SetSourceResourceType(Aws::String&& value) { m_sourceResourceTypeHasBeenSet = true; m_sourceResourceType = std::move(value); } /** *

The anomaly's resource type.

*/ inline void SetSourceResourceType(const char* value) { m_sourceResourceTypeHasBeenSet = true; m_sourceResourceType.assign(value); } /** *

The anomaly's resource type.

*/ inline AnomalySourceMetadata& WithSourceResourceType(const Aws::String& value) { SetSourceResourceType(value); return *this;} /** *

The anomaly's resource type.

*/ inline AnomalySourceMetadata& WithSourceResourceType(Aws::String&& value) { SetSourceResourceType(std::move(value)); return *this;} /** *

The anomaly's resource type.

*/ inline AnomalySourceMetadata& WithSourceResourceType(const char* value) { SetSourceResourceType(value); return *this;} private: Aws::String m_source; bool m_sourceHasBeenSet = false; Aws::String m_sourceResourceName; bool m_sourceResourceNameHasBeenSet = false; Aws::String m_sourceResourceType; bool m_sourceResourceTypeHasBeenSet = false; }; } // namespace Model } // namespace DevOpsGuru } // namespace Aws