/** * 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 of a trace summary error.

See Also:

AWS * API Reference

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

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

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

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

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

A list of services corresponding to an error. A service identifies a segment * and it 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 services corresponding to an error. A service identifies a segment * and it 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 services corresponding to an error. A service identifies a segment * and it contains a name, account ID, type, and inferred flag.

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

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

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

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

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

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

*/ inline ErrorRootCause& AddServices(ErrorRootCauseService&& 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 ErrorRootCause& 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