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

The launch profile validation result.

See Also:

AWS * API Reference

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

The current state.

*/ inline const LaunchProfileValidationState& GetState() const{ return m_state; } /** *

The current state.

*/ inline bool StateHasBeenSet() const { return m_stateHasBeenSet; } /** *

The current state.

*/ inline void SetState(const LaunchProfileValidationState& value) { m_stateHasBeenSet = true; m_state = value; } /** *

The current state.

*/ inline void SetState(LaunchProfileValidationState&& value) { m_stateHasBeenSet = true; m_state = std::move(value); } /** *

The current state.

*/ inline ValidationResult& WithState(const LaunchProfileValidationState& value) { SetState(value); return *this;} /** *

The current state.

*/ inline ValidationResult& WithState(LaunchProfileValidationState&& value) { SetState(std::move(value)); return *this;} /** *

The status code. This will contain the failure reason if the state is * VALIDATION_FAILED.

*/ inline const LaunchProfileValidationStatusCode& GetStatusCode() const{ return m_statusCode; } /** *

The status code. This will contain the failure reason if the state is * VALIDATION_FAILED.

*/ inline bool StatusCodeHasBeenSet() const { return m_statusCodeHasBeenSet; } /** *

The status code. This will contain the failure reason if the state is * VALIDATION_FAILED.

*/ inline void SetStatusCode(const LaunchProfileValidationStatusCode& value) { m_statusCodeHasBeenSet = true; m_statusCode = value; } /** *

The status code. This will contain the failure reason if the state is * VALIDATION_FAILED.

*/ inline void SetStatusCode(LaunchProfileValidationStatusCode&& value) { m_statusCodeHasBeenSet = true; m_statusCode = std::move(value); } /** *

The status code. This will contain the failure reason if the state is * VALIDATION_FAILED.

*/ inline ValidationResult& WithStatusCode(const LaunchProfileValidationStatusCode& value) { SetStatusCode(value); return *this;} /** *

The status code. This will contain the failure reason if the state is * VALIDATION_FAILED.

*/ inline ValidationResult& WithStatusCode(LaunchProfileValidationStatusCode&& value) { SetStatusCode(std::move(value)); return *this;} /** *

The status message for the validation result.

*/ inline const Aws::String& GetStatusMessage() const{ return m_statusMessage; } /** *

The status message for the validation result.

*/ inline bool StatusMessageHasBeenSet() const { return m_statusMessageHasBeenSet; } /** *

The status message for the validation result.

*/ inline void SetStatusMessage(const Aws::String& value) { m_statusMessageHasBeenSet = true; m_statusMessage = value; } /** *

The status message for the validation result.

*/ inline void SetStatusMessage(Aws::String&& value) { m_statusMessageHasBeenSet = true; m_statusMessage = std::move(value); } /** *

The status message for the validation result.

*/ inline void SetStatusMessage(const char* value) { m_statusMessageHasBeenSet = true; m_statusMessage.assign(value); } /** *

The status message for the validation result.

*/ inline ValidationResult& WithStatusMessage(const Aws::String& value) { SetStatusMessage(value); return *this;} /** *

The status message for the validation result.

*/ inline ValidationResult& WithStatusMessage(Aws::String&& value) { SetStatusMessage(std::move(value)); return *this;} /** *

The status message for the validation result.

*/ inline ValidationResult& WithStatusMessage(const char* value) { SetStatusMessage(value); return *this;} /** *

The type of the validation result.

*/ inline const LaunchProfileValidationType& GetType() const{ return m_type; } /** *

The type of the validation result.

*/ inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; } /** *

The type of the validation result.

*/ inline void SetType(const LaunchProfileValidationType& value) { m_typeHasBeenSet = true; m_type = value; } /** *

The type of the validation result.

*/ inline void SetType(LaunchProfileValidationType&& value) { m_typeHasBeenSet = true; m_type = std::move(value); } /** *

The type of the validation result.

*/ inline ValidationResult& WithType(const LaunchProfileValidationType& value) { SetType(value); return *this;} /** *

The type of the validation result.

*/ inline ValidationResult& WithType(LaunchProfileValidationType&& value) { SetType(std::move(value)); return *this;} private: LaunchProfileValidationState m_state; bool m_stateHasBeenSet = false; LaunchProfileValidationStatusCode m_statusCode; bool m_statusCodeHasBeenSet = false; Aws::String m_statusMessage; bool m_statusMessageHasBeenSet = false; LaunchProfileValidationType m_type; bool m_typeHasBeenSet = false; }; } // namespace Model } // namespace NimbleStudio } // namespace Aws