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/securityhub/SecurityHub_EXPORTS.h> 8 #include <aws/core/utils/memory/stl/AWSString.h> 9 #include <aws/securityhub/model/MalwareType.h> 10 #include <aws/securityhub/model/MalwareState.h> 11 #include <utility> 12 13 namespace Aws 14 { 15 namespace Utils 16 { 17 namespace Json 18 { 19 class JsonValue; 20 class JsonView; 21 } // namespace Json 22 } // namespace Utils 23 namespace SecurityHub 24 { 25 namespace Model 26 { 27 28 /** 29 * <p>A list of malware related to a finding.</p><p><h3>See Also:</h3> <a 30 * href="http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/Malware">AWS 31 * API Reference</a></p> 32 */ 33 class AWS_SECURITYHUB_API Malware 34 { 35 public: 36 Malware(); 37 Malware(Aws::Utils::Json::JsonView jsonValue); 38 Malware& operator=(Aws::Utils::Json::JsonView jsonValue); 39 Aws::Utils::Json::JsonValue Jsonize() const; 40 41 42 /** 43 * <p>The name of the malware that was observed.</p> 44 */ GetName()45 inline const Aws::String& GetName() const{ return m_name; } 46 47 /** 48 * <p>The name of the malware that was observed.</p> 49 */ NameHasBeenSet()50 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; } 51 52 /** 53 * <p>The name of the malware that was observed.</p> 54 */ SetName(const Aws::String & value)55 inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; } 56 57 /** 58 * <p>The name of the malware that was observed.</p> 59 */ SetName(Aws::String && value)60 inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); } 61 62 /** 63 * <p>The name of the malware that was observed.</p> 64 */ SetName(const char * value)65 inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); } 66 67 /** 68 * <p>The name of the malware that was observed.</p> 69 */ WithName(const Aws::String & value)70 inline Malware& WithName(const Aws::String& value) { SetName(value); return *this;} 71 72 /** 73 * <p>The name of the malware that was observed.</p> 74 */ WithName(Aws::String && value)75 inline Malware& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;} 76 77 /** 78 * <p>The name of the malware that was observed.</p> 79 */ WithName(const char * value)80 inline Malware& WithName(const char* value) { SetName(value); return *this;} 81 82 83 /** 84 * <p>The type of the malware that was observed.</p> 85 */ GetType()86 inline const MalwareType& GetType() const{ return m_type; } 87 88 /** 89 * <p>The type of the malware that was observed.</p> 90 */ TypeHasBeenSet()91 inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; } 92 93 /** 94 * <p>The type of the malware that was observed.</p> 95 */ SetType(const MalwareType & value)96 inline void SetType(const MalwareType& value) { m_typeHasBeenSet = true; m_type = value; } 97 98 /** 99 * <p>The type of the malware that was observed.</p> 100 */ SetType(MalwareType && value)101 inline void SetType(MalwareType&& value) { m_typeHasBeenSet = true; m_type = std::move(value); } 102 103 /** 104 * <p>The type of the malware that was observed.</p> 105 */ WithType(const MalwareType & value)106 inline Malware& WithType(const MalwareType& value) { SetType(value); return *this;} 107 108 /** 109 * <p>The type of the malware that was observed.</p> 110 */ WithType(MalwareType && value)111 inline Malware& WithType(MalwareType&& value) { SetType(std::move(value)); return *this;} 112 113 114 /** 115 * <p>The file system path of the malware that was observed.</p> 116 */ GetPath()117 inline const Aws::String& GetPath() const{ return m_path; } 118 119 /** 120 * <p>The file system path of the malware that was observed.</p> 121 */ PathHasBeenSet()122 inline bool PathHasBeenSet() const { return m_pathHasBeenSet; } 123 124 /** 125 * <p>The file system path of the malware that was observed.</p> 126 */ SetPath(const Aws::String & value)127 inline void SetPath(const Aws::String& value) { m_pathHasBeenSet = true; m_path = value; } 128 129 /** 130 * <p>The file system path of the malware that was observed.</p> 131 */ SetPath(Aws::String && value)132 inline void SetPath(Aws::String&& value) { m_pathHasBeenSet = true; m_path = std::move(value); } 133 134 /** 135 * <p>The file system path of the malware that was observed.</p> 136 */ SetPath(const char * value)137 inline void SetPath(const char* value) { m_pathHasBeenSet = true; m_path.assign(value); } 138 139 /** 140 * <p>The file system path of the malware that was observed.</p> 141 */ WithPath(const Aws::String & value)142 inline Malware& WithPath(const Aws::String& value) { SetPath(value); return *this;} 143 144 /** 145 * <p>The file system path of the malware that was observed.</p> 146 */ WithPath(Aws::String && value)147 inline Malware& WithPath(Aws::String&& value) { SetPath(std::move(value)); return *this;} 148 149 /** 150 * <p>The file system path of the malware that was observed.</p> 151 */ WithPath(const char * value)152 inline Malware& WithPath(const char* value) { SetPath(value); return *this;} 153 154 155 /** 156 * <p>The state of the malware that was observed.</p> 157 */ GetState()158 inline const MalwareState& GetState() const{ return m_state; } 159 160 /** 161 * <p>The state of the malware that was observed.</p> 162 */ StateHasBeenSet()163 inline bool StateHasBeenSet() const { return m_stateHasBeenSet; } 164 165 /** 166 * <p>The state of the malware that was observed.</p> 167 */ SetState(const MalwareState & value)168 inline void SetState(const MalwareState& value) { m_stateHasBeenSet = true; m_state = value; } 169 170 /** 171 * <p>The state of the malware that was observed.</p> 172 */ SetState(MalwareState && value)173 inline void SetState(MalwareState&& value) { m_stateHasBeenSet = true; m_state = std::move(value); } 174 175 /** 176 * <p>The state of the malware that was observed.</p> 177 */ WithState(const MalwareState & value)178 inline Malware& WithState(const MalwareState& value) { SetState(value); return *this;} 179 180 /** 181 * <p>The state of the malware that was observed.</p> 182 */ WithState(MalwareState && value)183 inline Malware& WithState(MalwareState&& value) { SetState(std::move(value)); return *this;} 184 185 private: 186 187 Aws::String m_name; 188 bool m_nameHasBeenSet; 189 190 MalwareType m_type; 191 bool m_typeHasBeenSet; 192 193 Aws::String m_path; 194 bool m_pathHasBeenSet; 195 196 MalwareState m_state; 197 bool m_stateHasBeenSet; 198 }; 199 200 } // namespace Model 201 } // namespace SecurityHub 202 } // namespace Aws 203