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

Provides error information.

See Also:

AWS API * Reference

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

Error cause.

*/ inline const Aws::String& GetCause() const{ return m_cause; } /** *

Error cause.

*/ inline bool CauseHasBeenSet() const { return m_causeHasBeenSet; } /** *

Error cause.

*/ inline void SetCause(const Aws::String& value) { m_causeHasBeenSet = true; m_cause = value; } /** *

Error cause.

*/ inline void SetCause(Aws::String&& value) { m_causeHasBeenSet = true; m_cause = std::move(value); } /** *

Error cause.

*/ inline void SetCause(const char* value) { m_causeHasBeenSet = true; m_cause.assign(value); } /** *

Error cause.

*/ inline ErrorInfo& WithCause(const Aws::String& value) { SetCause(value); return *this;} /** *

Error cause.

*/ inline ErrorInfo& WithCause(Aws::String&& value) { SetCause(std::move(value)); return *this;} /** *

Error cause.

*/ inline ErrorInfo& WithCause(const char* value) { SetCause(value); return *this;} /** *

Error details.

*/ inline const Aws::String& GetDetails() const{ return m_details; } /** *

Error details.

*/ inline bool DetailsHasBeenSet() const { return m_detailsHasBeenSet; } /** *

Error details.

*/ inline void SetDetails(const Aws::String& value) { m_detailsHasBeenSet = true; m_details = value; } /** *

Error details.

*/ inline void SetDetails(Aws::String&& value) { m_detailsHasBeenSet = true; m_details = std::move(value); } /** *

Error details.

*/ inline void SetDetails(const char* value) { m_detailsHasBeenSet = true; m_details.assign(value); } /** *

Error details.

*/ inline ErrorInfo& WithDetails(const Aws::String& value) { SetDetails(value); return *this;} /** *

Error details.

*/ inline ErrorInfo& WithDetails(Aws::String&& value) { SetDetails(std::move(value)); return *this;} /** *

Error details.

*/ inline ErrorInfo& WithDetails(const char* value) { SetDetails(value); return *this;} private: Aws::String m_cause; bool m_causeHasBeenSet = false; Aws::String m_details; bool m_detailsHasBeenSet = false; }; } // namespace Model } // namespace tnb } // namespace Aws