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/iotanalytics/IoTAnalytics_EXPORTS.h>
8 #include <aws/core/utils/memory/stl/AWSString.h>
9 #include <aws/iotanalytics/model/DatasetActionType.h>
10 #include <utility>
11 
12 namespace Aws
13 {
14 namespace Utils
15 {
16 namespace Json
17 {
18   class JsonValue;
19   class JsonView;
20 } // namespace Json
21 } // namespace Utils
22 namespace IoTAnalytics
23 {
24 namespace Model
25 {
26 
27   /**
28    * <p>Information about the action that automatically creates the dataset's
29    * contents.</p><p><h3>See Also:</h3>   <a
30    * href="http://docs.aws.amazon.com/goto/WebAPI/iotanalytics-2017-11-27/DatasetActionSummary">AWS
31    * API Reference</a></p>
32    */
33   class AWS_IOTANALYTICS_API DatasetActionSummary
34   {
35   public:
36     DatasetActionSummary();
37     DatasetActionSummary(Aws::Utils::Json::JsonView jsonValue);
38     DatasetActionSummary& operator=(Aws::Utils::Json::JsonView jsonValue);
39     Aws::Utils::Json::JsonValue Jsonize() const;
40 
41 
42     /**
43      * <p>The name of the action that automatically creates the dataset's contents.</p>
44      */
GetActionName()45     inline const Aws::String& GetActionName() const{ return m_actionName; }
46 
47     /**
48      * <p>The name of the action that automatically creates the dataset's contents.</p>
49      */
ActionNameHasBeenSet()50     inline bool ActionNameHasBeenSet() const { return m_actionNameHasBeenSet; }
51 
52     /**
53      * <p>The name of the action that automatically creates the dataset's contents.</p>
54      */
SetActionName(const Aws::String & value)55     inline void SetActionName(const Aws::String& value) { m_actionNameHasBeenSet = true; m_actionName = value; }
56 
57     /**
58      * <p>The name of the action that automatically creates the dataset's contents.</p>
59      */
SetActionName(Aws::String && value)60     inline void SetActionName(Aws::String&& value) { m_actionNameHasBeenSet = true; m_actionName = std::move(value); }
61 
62     /**
63      * <p>The name of the action that automatically creates the dataset's contents.</p>
64      */
SetActionName(const char * value)65     inline void SetActionName(const char* value) { m_actionNameHasBeenSet = true; m_actionName.assign(value); }
66 
67     /**
68      * <p>The name of the action that automatically creates the dataset's contents.</p>
69      */
WithActionName(const Aws::String & value)70     inline DatasetActionSummary& WithActionName(const Aws::String& value) { SetActionName(value); return *this;}
71 
72     /**
73      * <p>The name of the action that automatically creates the dataset's contents.</p>
74      */
WithActionName(Aws::String && value)75     inline DatasetActionSummary& WithActionName(Aws::String&& value) { SetActionName(std::move(value)); return *this;}
76 
77     /**
78      * <p>The name of the action that automatically creates the dataset's contents.</p>
79      */
WithActionName(const char * value)80     inline DatasetActionSummary& WithActionName(const char* value) { SetActionName(value); return *this;}
81 
82 
83     /**
84      * <p>The type of action by which the dataset's contents are automatically
85      * created.</p>
86      */
GetActionType()87     inline const DatasetActionType& GetActionType() const{ return m_actionType; }
88 
89     /**
90      * <p>The type of action by which the dataset's contents are automatically
91      * created.</p>
92      */
ActionTypeHasBeenSet()93     inline bool ActionTypeHasBeenSet() const { return m_actionTypeHasBeenSet; }
94 
95     /**
96      * <p>The type of action by which the dataset's contents are automatically
97      * created.</p>
98      */
SetActionType(const DatasetActionType & value)99     inline void SetActionType(const DatasetActionType& value) { m_actionTypeHasBeenSet = true; m_actionType = value; }
100 
101     /**
102      * <p>The type of action by which the dataset's contents are automatically
103      * created.</p>
104      */
SetActionType(DatasetActionType && value)105     inline void SetActionType(DatasetActionType&& value) { m_actionTypeHasBeenSet = true; m_actionType = std::move(value); }
106 
107     /**
108      * <p>The type of action by which the dataset's contents are automatically
109      * created.</p>
110      */
WithActionType(const DatasetActionType & value)111     inline DatasetActionSummary& WithActionType(const DatasetActionType& value) { SetActionType(value); return *this;}
112 
113     /**
114      * <p>The type of action by which the dataset's contents are automatically
115      * created.</p>
116      */
WithActionType(DatasetActionType && value)117     inline DatasetActionSummary& WithActionType(DatasetActionType&& value) { SetActionType(std::move(value)); return *this;}
118 
119   private:
120 
121     Aws::String m_actionName;
122     bool m_actionNameHasBeenSet;
123 
124     DatasetActionType m_actionType;
125     bool m_actionTypeHasBeenSet;
126   };
127 
128 } // namespace Model
129 } // namespace IoTAnalytics
130 } // namespace Aws
131