1 /** 2 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. 3 * SPDX-License-Identifier: Apache-2.0. 4 */ 5 6 #pragma once 7 #include <aws/awstransfer/Transfer_EXPORTS.h> 8 #include <aws/core/utils/memory/stl/AWSString.h> 9 #include <utility> 10 11 namespace Aws 12 { 13 namespace Utils 14 { 15 namespace Json 16 { 17 class JsonValue; 18 class JsonView; 19 } // namespace Json 20 } // namespace Utils 21 namespace Transfer 22 { 23 namespace Model 24 { 25 26 /** 27 * <p>Consists of the logging role and the log group name.</p><p><h3>See Also:</h3> 28 * <a 29 * href="http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/LoggingConfiguration">AWS 30 * API Reference</a></p> 31 */ 32 class AWS_TRANSFER_API LoggingConfiguration 33 { 34 public: 35 LoggingConfiguration(); 36 LoggingConfiguration(Aws::Utils::Json::JsonView jsonValue); 37 LoggingConfiguration& operator=(Aws::Utils::Json::JsonView jsonValue); 38 Aws::Utils::Json::JsonValue Jsonize() const; 39 40 41 /** 42 * <p>Specifies the Amazon Resource Name (ARN) of the Amazon Web Services Identity 43 * and Access Management (IAM) role that allows a server to turn on Amazon 44 * CloudWatch logging for Amazon S3 or Amazon EFS events. When set, user activity 45 * can be viewed in your CloudWatch logs.</p> 46 */ GetLoggingRole()47 inline const Aws::String& GetLoggingRole() const{ return m_loggingRole; } 48 49 /** 50 * <p>Specifies the Amazon Resource Name (ARN) of the Amazon Web Services Identity 51 * and Access Management (IAM) role that allows a server to turn on Amazon 52 * CloudWatch logging for Amazon S3 or Amazon EFS events. When set, user activity 53 * can be viewed in your CloudWatch logs.</p> 54 */ LoggingRoleHasBeenSet()55 inline bool LoggingRoleHasBeenSet() const { return m_loggingRoleHasBeenSet; } 56 57 /** 58 * <p>Specifies the Amazon Resource Name (ARN) of the Amazon Web Services Identity 59 * and Access Management (IAM) role that allows a server to turn on Amazon 60 * CloudWatch logging for Amazon S3 or Amazon EFS events. When set, user activity 61 * can be viewed in your CloudWatch logs.</p> 62 */ SetLoggingRole(const Aws::String & value)63 inline void SetLoggingRole(const Aws::String& value) { m_loggingRoleHasBeenSet = true; m_loggingRole = value; } 64 65 /** 66 * <p>Specifies the Amazon Resource Name (ARN) of the Amazon Web Services Identity 67 * and Access Management (IAM) role that allows a server to turn on Amazon 68 * CloudWatch logging for Amazon S3 or Amazon EFS events. When set, user activity 69 * can be viewed in your CloudWatch logs.</p> 70 */ SetLoggingRole(Aws::String && value)71 inline void SetLoggingRole(Aws::String&& value) { m_loggingRoleHasBeenSet = true; m_loggingRole = std::move(value); } 72 73 /** 74 * <p>Specifies the Amazon Resource Name (ARN) of the Amazon Web Services Identity 75 * and Access Management (IAM) role that allows a server to turn on Amazon 76 * CloudWatch logging for Amazon S3 or Amazon EFS events. When set, user activity 77 * can be viewed in your CloudWatch logs.</p> 78 */ SetLoggingRole(const char * value)79 inline void SetLoggingRole(const char* value) { m_loggingRoleHasBeenSet = true; m_loggingRole.assign(value); } 80 81 /** 82 * <p>Specifies the Amazon Resource Name (ARN) of the Amazon Web Services Identity 83 * and Access Management (IAM) role that allows a server to turn on Amazon 84 * CloudWatch logging for Amazon S3 or Amazon EFS events. When set, user activity 85 * can be viewed in your CloudWatch logs.</p> 86 */ WithLoggingRole(const Aws::String & value)87 inline LoggingConfiguration& WithLoggingRole(const Aws::String& value) { SetLoggingRole(value); return *this;} 88 89 /** 90 * <p>Specifies the Amazon Resource Name (ARN) of the Amazon Web Services Identity 91 * and Access Management (IAM) role that allows a server to turn on Amazon 92 * CloudWatch logging for Amazon S3 or Amazon EFS events. When set, user activity 93 * can be viewed in your CloudWatch logs.</p> 94 */ WithLoggingRole(Aws::String && value)95 inline LoggingConfiguration& WithLoggingRole(Aws::String&& value) { SetLoggingRole(std::move(value)); return *this;} 96 97 /** 98 * <p>Specifies the Amazon Resource Name (ARN) of the Amazon Web Services Identity 99 * and Access Management (IAM) role that allows a server to turn on Amazon 100 * CloudWatch logging for Amazon S3 or Amazon EFS events. When set, user activity 101 * can be viewed in your CloudWatch logs.</p> 102 */ WithLoggingRole(const char * value)103 inline LoggingConfiguration& WithLoggingRole(const char* value) { SetLoggingRole(value); return *this;} 104 105 106 /** 107 * <p>The name of the CloudWatch logging group for the Amazon Web Services Transfer 108 * server to which this workflow belongs.</p> 109 */ GetLogGroupName()110 inline const Aws::String& GetLogGroupName() const{ return m_logGroupName; } 111 112 /** 113 * <p>The name of the CloudWatch logging group for the Amazon Web Services Transfer 114 * server to which this workflow belongs.</p> 115 */ LogGroupNameHasBeenSet()116 inline bool LogGroupNameHasBeenSet() const { return m_logGroupNameHasBeenSet; } 117 118 /** 119 * <p>The name of the CloudWatch logging group for the Amazon Web Services Transfer 120 * server to which this workflow belongs.</p> 121 */ SetLogGroupName(const Aws::String & value)122 inline void SetLogGroupName(const Aws::String& value) { m_logGroupNameHasBeenSet = true; m_logGroupName = value; } 123 124 /** 125 * <p>The name of the CloudWatch logging group for the Amazon Web Services Transfer 126 * server to which this workflow belongs.</p> 127 */ SetLogGroupName(Aws::String && value)128 inline void SetLogGroupName(Aws::String&& value) { m_logGroupNameHasBeenSet = true; m_logGroupName = std::move(value); } 129 130 /** 131 * <p>The name of the CloudWatch logging group for the Amazon Web Services Transfer 132 * server to which this workflow belongs.</p> 133 */ SetLogGroupName(const char * value)134 inline void SetLogGroupName(const char* value) { m_logGroupNameHasBeenSet = true; m_logGroupName.assign(value); } 135 136 /** 137 * <p>The name of the CloudWatch logging group for the Amazon Web Services Transfer 138 * server to which this workflow belongs.</p> 139 */ WithLogGroupName(const Aws::String & value)140 inline LoggingConfiguration& WithLogGroupName(const Aws::String& value) { SetLogGroupName(value); return *this;} 141 142 /** 143 * <p>The name of the CloudWatch logging group for the Amazon Web Services Transfer 144 * server to which this workflow belongs.</p> 145 */ WithLogGroupName(Aws::String && value)146 inline LoggingConfiguration& WithLogGroupName(Aws::String&& value) { SetLogGroupName(std::move(value)); return *this;} 147 148 /** 149 * <p>The name of the CloudWatch logging group for the Amazon Web Services Transfer 150 * server to which this workflow belongs.</p> 151 */ WithLogGroupName(const char * value)152 inline LoggingConfiguration& WithLogGroupName(const char* value) { SetLogGroupName(value); return *this;} 153 154 private: 155 156 Aws::String m_loggingRole; 157 bool m_loggingRoleHasBeenSet; 158 159 Aws::String m_logGroupName; 160 bool m_logGroupNameHasBeenSet; 161 }; 162 163 } // namespace Model 164 } // namespace Transfer 165 } // namespace Aws 166