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

The root cause information for a response time warning.

See * Also:

AWS * API Reference

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

A list of corresponding services. A service identifies a segment and contains * a name, account ID, type, and inferred flag.

*/ inline const Aws::Vector& GetServices() const{ return m_services; } /** *

A list of corresponding services. A service identifies a segment and contains * a name, account ID, type, and inferred flag.

*/ inline bool ServicesHasBeenSet() const { return m_servicesHasBeenSet; } /** *

A list of corresponding services. A service identifies a segment and contains * a name, account ID, type, and inferred flag.

*/ inline void SetServices(const Aws::Vector& value) { m_servicesHasBeenSet = true; m_services = value; } /** *

A list of corresponding services. A service identifies a segment and contains * a name, account ID, type, and inferred flag.

*/ inline void SetServices(Aws::Vector&& value) { m_servicesHasBeenSet = true; m_services = std::move(value); } /** *

A list of corresponding services. A service identifies a segment and contains * a name, account ID, type, and inferred flag.

*/ inline ResponseTimeRootCause& WithServices(const Aws::Vector& value) { SetServices(value); return *this;} /** *

A list of corresponding services. A service identifies a segment and contains * a name, account ID, type, and inferred flag.

*/ inline ResponseTimeRootCause& WithServices(Aws::Vector&& value) { SetServices(std::move(value)); return *this;} /** *

A list of corresponding services. A service identifies a segment and contains * a name, account ID, type, and inferred flag.

*/ inline ResponseTimeRootCause& AddServices(const ResponseTimeRootCauseService& value) { m_servicesHasBeenSet = true; m_services.push_back(value); return *this; } /** *

A list of corresponding services. A service identifies a segment and contains * a name, account ID, type, and inferred flag.

*/ inline ResponseTimeRootCause& AddServices(ResponseTimeRootCauseService&& value) { m_servicesHasBeenSet = true; m_services.push_back(std::move(value)); return *this; } /** *

A flag that denotes that the root cause impacts the trace client.

*/ inline bool GetClientImpacting() const{ return m_clientImpacting; } /** *

A flag that denotes that the root cause impacts the trace client.

*/ inline bool ClientImpactingHasBeenSet() const { return m_clientImpactingHasBeenSet; } /** *

A flag that denotes that the root cause impacts the trace client.

*/ inline void SetClientImpacting(bool value) { m_clientImpactingHasBeenSet = true; m_clientImpacting = value; } /** *

A flag that denotes that the root cause impacts the trace client.

*/ inline ResponseTimeRootCause& WithClientImpacting(bool value) { SetClientImpacting(value); return *this;} private: Aws::Vector m_services; bool m_servicesHasBeenSet = false; bool m_clientImpacting; bool m_clientImpactingHasBeenSet = false; }; } // namespace Model } // namespace XRay } // namespace Aws