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

Specifies the configuration for experiment logging.

See Also:

* AWS * API Reference

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

The configuration for experiment logging to Amazon CloudWatch Logs.

*/ inline const ExperimentTemplateCloudWatchLogsLogConfigurationInput& GetCloudWatchLogsConfiguration() const{ return m_cloudWatchLogsConfiguration; } /** *

The configuration for experiment logging to Amazon CloudWatch Logs.

*/ inline bool CloudWatchLogsConfigurationHasBeenSet() const { return m_cloudWatchLogsConfigurationHasBeenSet; } /** *

The configuration for experiment logging to Amazon CloudWatch Logs.

*/ inline void SetCloudWatchLogsConfiguration(const ExperimentTemplateCloudWatchLogsLogConfigurationInput& value) { m_cloudWatchLogsConfigurationHasBeenSet = true; m_cloudWatchLogsConfiguration = value; } /** *

The configuration for experiment logging to Amazon CloudWatch Logs.

*/ inline void SetCloudWatchLogsConfiguration(ExperimentTemplateCloudWatchLogsLogConfigurationInput&& value) { m_cloudWatchLogsConfigurationHasBeenSet = true; m_cloudWatchLogsConfiguration = std::move(value); } /** *

The configuration for experiment logging to Amazon CloudWatch Logs.

*/ inline UpdateExperimentTemplateLogConfigurationInput& WithCloudWatchLogsConfiguration(const ExperimentTemplateCloudWatchLogsLogConfigurationInput& value) { SetCloudWatchLogsConfiguration(value); return *this;} /** *

The configuration for experiment logging to Amazon CloudWatch Logs.

*/ inline UpdateExperimentTemplateLogConfigurationInput& WithCloudWatchLogsConfiguration(ExperimentTemplateCloudWatchLogsLogConfigurationInput&& value) { SetCloudWatchLogsConfiguration(std::move(value)); return *this;} /** *

The configuration for experiment logging to Amazon S3.

*/ inline const ExperimentTemplateS3LogConfigurationInput& GetS3Configuration() const{ return m_s3Configuration; } /** *

The configuration for experiment logging to Amazon S3.

*/ inline bool S3ConfigurationHasBeenSet() const { return m_s3ConfigurationHasBeenSet; } /** *

The configuration for experiment logging to Amazon S3.

*/ inline void SetS3Configuration(const ExperimentTemplateS3LogConfigurationInput& value) { m_s3ConfigurationHasBeenSet = true; m_s3Configuration = value; } /** *

The configuration for experiment logging to Amazon S3.

*/ inline void SetS3Configuration(ExperimentTemplateS3LogConfigurationInput&& value) { m_s3ConfigurationHasBeenSet = true; m_s3Configuration = std::move(value); } /** *

The configuration for experiment logging to Amazon S3.

*/ inline UpdateExperimentTemplateLogConfigurationInput& WithS3Configuration(const ExperimentTemplateS3LogConfigurationInput& value) { SetS3Configuration(value); return *this;} /** *

The configuration for experiment logging to Amazon S3.

*/ inline UpdateExperimentTemplateLogConfigurationInput& WithS3Configuration(ExperimentTemplateS3LogConfigurationInput&& value) { SetS3Configuration(std::move(value)); return *this;} /** *

The schema version.

*/ inline int GetLogSchemaVersion() const{ return m_logSchemaVersion; } /** *

The schema version.

*/ inline bool LogSchemaVersionHasBeenSet() const { return m_logSchemaVersionHasBeenSet; } /** *

The schema version.

*/ inline void SetLogSchemaVersion(int value) { m_logSchemaVersionHasBeenSet = true; m_logSchemaVersion = value; } /** *

The schema version.

*/ inline UpdateExperimentTemplateLogConfigurationInput& WithLogSchemaVersion(int value) { SetLogSchemaVersion(value); return *this;} private: ExperimentTemplateCloudWatchLogsLogConfigurationInput m_cloudWatchLogsConfiguration; bool m_cloudWatchLogsConfigurationHasBeenSet = false; ExperimentTemplateS3LogConfigurationInput m_s3Configuration; bool m_s3ConfigurationHasBeenSet = false; int m_logSchemaVersion; bool m_logSchemaVersionHasBeenSet = false; }; } // namespace Model } // namespace FIS } // namespace Aws