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

Consists of the logging role and the log group name.

See Also:

* AWS * API Reference

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

The Amazon Resource Name (ARN) of the Identity and Access Management (IAM) * role that allows a server to turn on Amazon CloudWatch logging for Amazon S3 or * Amazon EFSevents. When set, you can view user activity in your CloudWatch * logs.

*/ inline const Aws::String& GetLoggingRole() const{ return m_loggingRole; } /** *

The Amazon Resource Name (ARN) of the Identity and Access Management (IAM) * role that allows a server to turn on Amazon CloudWatch logging for Amazon S3 or * Amazon EFSevents. When set, you can view user activity in your CloudWatch * logs.

*/ inline bool LoggingRoleHasBeenSet() const { return m_loggingRoleHasBeenSet; } /** *

The Amazon Resource Name (ARN) of the Identity and Access Management (IAM) * role that allows a server to turn on Amazon CloudWatch logging for Amazon S3 or * Amazon EFSevents. When set, you can view user activity in your CloudWatch * logs.

*/ inline void SetLoggingRole(const Aws::String& value) { m_loggingRoleHasBeenSet = true; m_loggingRole = value; } /** *

The Amazon Resource Name (ARN) of the Identity and Access Management (IAM) * role that allows a server to turn on Amazon CloudWatch logging for Amazon S3 or * Amazon EFSevents. When set, you can view user activity in your CloudWatch * logs.

*/ inline void SetLoggingRole(Aws::String&& value) { m_loggingRoleHasBeenSet = true; m_loggingRole = std::move(value); } /** *

The Amazon Resource Name (ARN) of the Identity and Access Management (IAM) * role that allows a server to turn on Amazon CloudWatch logging for Amazon S3 or * Amazon EFSevents. When set, you can view user activity in your CloudWatch * logs.

*/ inline void SetLoggingRole(const char* value) { m_loggingRoleHasBeenSet = true; m_loggingRole.assign(value); } /** *

The Amazon Resource Name (ARN) of the Identity and Access Management (IAM) * role that allows a server to turn on Amazon CloudWatch logging for Amazon S3 or * Amazon EFSevents. When set, you can view user activity in your CloudWatch * logs.

*/ inline LoggingConfiguration& WithLoggingRole(const Aws::String& value) { SetLoggingRole(value); return *this;} /** *

The Amazon Resource Name (ARN) of the Identity and Access Management (IAM) * role that allows a server to turn on Amazon CloudWatch logging for Amazon S3 or * Amazon EFSevents. When set, you can view user activity in your CloudWatch * logs.

*/ inline LoggingConfiguration& WithLoggingRole(Aws::String&& value) { SetLoggingRole(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the Identity and Access Management (IAM) * role that allows a server to turn on Amazon CloudWatch logging for Amazon S3 or * Amazon EFSevents. When set, you can view user activity in your CloudWatch * logs.

*/ inline LoggingConfiguration& WithLoggingRole(const char* value) { SetLoggingRole(value); return *this;} /** *

The name of the CloudWatch logging group for the Transfer Family server to * which this workflow belongs.

*/ inline const Aws::String& GetLogGroupName() const{ return m_logGroupName; } /** *

The name of the CloudWatch logging group for the Transfer Family server to * which this workflow belongs.

*/ inline bool LogGroupNameHasBeenSet() const { return m_logGroupNameHasBeenSet; } /** *

The name of the CloudWatch logging group for the Transfer Family server to * which this workflow belongs.

*/ inline void SetLogGroupName(const Aws::String& value) { m_logGroupNameHasBeenSet = true; m_logGroupName = value; } /** *

The name of the CloudWatch logging group for the Transfer Family server to * which this workflow belongs.

*/ inline void SetLogGroupName(Aws::String&& value) { m_logGroupNameHasBeenSet = true; m_logGroupName = std::move(value); } /** *

The name of the CloudWatch logging group for the Transfer Family server to * which this workflow belongs.

*/ inline void SetLogGroupName(const char* value) { m_logGroupNameHasBeenSet = true; m_logGroupName.assign(value); } /** *

The name of the CloudWatch logging group for the Transfer Family server to * which this workflow belongs.

*/ inline LoggingConfiguration& WithLogGroupName(const Aws::String& value) { SetLogGroupName(value); return *this;} /** *

The name of the CloudWatch logging group for the Transfer Family server to * which this workflow belongs.

*/ inline LoggingConfiguration& WithLogGroupName(Aws::String&& value) { SetLogGroupName(std::move(value)); return *this;} /** *

The name of the CloudWatch logging group for the Transfer Family server to * which this workflow belongs.

*/ inline LoggingConfiguration& WithLogGroupName(const char* value) { SetLogGroupName(value); return *this;} private: Aws::String m_loggingRole; bool m_loggingRoleHasBeenSet = false; Aws::String m_logGroupName; bool m_logGroupNameHasBeenSet = false; }; } // namespace Model } // namespace Transfer } // namespace Aws