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/swf/SWF_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 SWF 22 { 23 namespace Model 24 { 25 26 /** 27 * <p>Used to filter workflow execution query results by type. Each parameter, if 28 * specified, defines a rule that must be satisfied by each returned 29 * result.</p><p><h3>See Also:</h3> <a 30 * href="http://docs.aws.amazon.com/goto/WebAPI/swf-2012-01-25/WorkflowTypeFilter">AWS 31 * API Reference</a></p> 32 */ 33 class AWS_SWF_API WorkflowTypeFilter 34 { 35 public: 36 WorkflowTypeFilter(); 37 WorkflowTypeFilter(Aws::Utils::Json::JsonView jsonValue); 38 WorkflowTypeFilter& operator=(Aws::Utils::Json::JsonView jsonValue); 39 Aws::Utils::Json::JsonValue Jsonize() const; 40 41 42 /** 43 * <p> Name of the workflow type.</p> 44 */ GetName()45 inline const Aws::String& GetName() const{ return m_name; } 46 47 /** 48 * <p> Name of the workflow type.</p> 49 */ NameHasBeenSet()50 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; } 51 52 /** 53 * <p> Name of the workflow type.</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> Name of the workflow type.</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> Name of the workflow type.</p> 64 */ SetName(const char * value)65 inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); } 66 67 /** 68 * <p> Name of the workflow type.</p> 69 */ WithName(const Aws::String & value)70 inline WorkflowTypeFilter& WithName(const Aws::String& value) { SetName(value); return *this;} 71 72 /** 73 * <p> Name of the workflow type.</p> 74 */ WithName(Aws::String && value)75 inline WorkflowTypeFilter& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;} 76 77 /** 78 * <p> Name of the workflow type.</p> 79 */ WithName(const char * value)80 inline WorkflowTypeFilter& WithName(const char* value) { SetName(value); return *this;} 81 82 83 /** 84 * <p>Version of the workflow type.</p> 85 */ GetVersion()86 inline const Aws::String& GetVersion() const{ return m_version; } 87 88 /** 89 * <p>Version of the workflow type.</p> 90 */ VersionHasBeenSet()91 inline bool VersionHasBeenSet() const { return m_versionHasBeenSet; } 92 93 /** 94 * <p>Version of the workflow type.</p> 95 */ SetVersion(const Aws::String & value)96 inline void SetVersion(const Aws::String& value) { m_versionHasBeenSet = true; m_version = value; } 97 98 /** 99 * <p>Version of the workflow type.</p> 100 */ SetVersion(Aws::String && value)101 inline void SetVersion(Aws::String&& value) { m_versionHasBeenSet = true; m_version = std::move(value); } 102 103 /** 104 * <p>Version of the workflow type.</p> 105 */ SetVersion(const char * value)106 inline void SetVersion(const char* value) { m_versionHasBeenSet = true; m_version.assign(value); } 107 108 /** 109 * <p>Version of the workflow type.</p> 110 */ WithVersion(const Aws::String & value)111 inline WorkflowTypeFilter& WithVersion(const Aws::String& value) { SetVersion(value); return *this;} 112 113 /** 114 * <p>Version of the workflow type.</p> 115 */ WithVersion(Aws::String && value)116 inline WorkflowTypeFilter& WithVersion(Aws::String&& value) { SetVersion(std::move(value)); return *this;} 117 118 /** 119 * <p>Version of the workflow type.</p> 120 */ WithVersion(const char * value)121 inline WorkflowTypeFilter& WithVersion(const char* value) { SetVersion(value); return *this;} 122 123 private: 124 125 Aws::String m_name; 126 bool m_nameHasBeenSet; 127 128 Aws::String m_version; 129 bool m_versionHasBeenSet; 130 }; 131 132 } // namespace Model 133 } // namespace SWF 134 } // namespace Aws 135