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/s3/S3_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 Xml
16 {
17   class XmlNode;
18 } // namespace Xml
19 } // namespace Utils
20 namespace S3
21 {
22 namespace Model
23 {
24 
25   /**
26    * <p>Container for the owner's display name and ID.</p><p><h3>See Also:</h3>   <a
27    * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/Owner">AWS API
28    * Reference</a></p>
29    */
30   class AWS_S3_API Owner
31   {
32   public:
33     Owner();
34     Owner(const Aws::Utils::Xml::XmlNode& xmlNode);
35     Owner& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
36 
37     void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
38 
39 
40     /**
41      * <p>Container for the display name of the owner.</p>
42      */
GetDisplayName()43     inline const Aws::String& GetDisplayName() const{ return m_displayName; }
44 
45     /**
46      * <p>Container for the display name of the owner.</p>
47      */
DisplayNameHasBeenSet()48     inline bool DisplayNameHasBeenSet() const { return m_displayNameHasBeenSet; }
49 
50     /**
51      * <p>Container for the display name of the owner.</p>
52      */
SetDisplayName(const Aws::String & value)53     inline void SetDisplayName(const Aws::String& value) { m_displayNameHasBeenSet = true; m_displayName = value; }
54 
55     /**
56      * <p>Container for the display name of the owner.</p>
57      */
SetDisplayName(Aws::String && value)58     inline void SetDisplayName(Aws::String&& value) { m_displayNameHasBeenSet = true; m_displayName = std::move(value); }
59 
60     /**
61      * <p>Container for the display name of the owner.</p>
62      */
SetDisplayName(const char * value)63     inline void SetDisplayName(const char* value) { m_displayNameHasBeenSet = true; m_displayName.assign(value); }
64 
65     /**
66      * <p>Container for the display name of the owner.</p>
67      */
WithDisplayName(const Aws::String & value)68     inline Owner& WithDisplayName(const Aws::String& value) { SetDisplayName(value); return *this;}
69 
70     /**
71      * <p>Container for the display name of the owner.</p>
72      */
WithDisplayName(Aws::String && value)73     inline Owner& WithDisplayName(Aws::String&& value) { SetDisplayName(std::move(value)); return *this;}
74 
75     /**
76      * <p>Container for the display name of the owner.</p>
77      */
WithDisplayName(const char * value)78     inline Owner& WithDisplayName(const char* value) { SetDisplayName(value); return *this;}
79 
80 
81     /**
82      * <p>Container for the ID of the owner.</p>
83      */
GetID()84     inline const Aws::String& GetID() const{ return m_iD; }
85 
86     /**
87      * <p>Container for the ID of the owner.</p>
88      */
IDHasBeenSet()89     inline bool IDHasBeenSet() const { return m_iDHasBeenSet; }
90 
91     /**
92      * <p>Container for the ID of the owner.</p>
93      */
SetID(const Aws::String & value)94     inline void SetID(const Aws::String& value) { m_iDHasBeenSet = true; m_iD = value; }
95 
96     /**
97      * <p>Container for the ID of the owner.</p>
98      */
SetID(Aws::String && value)99     inline void SetID(Aws::String&& value) { m_iDHasBeenSet = true; m_iD = std::move(value); }
100 
101     /**
102      * <p>Container for the ID of the owner.</p>
103      */
SetID(const char * value)104     inline void SetID(const char* value) { m_iDHasBeenSet = true; m_iD.assign(value); }
105 
106     /**
107      * <p>Container for the ID of the owner.</p>
108      */
WithID(const Aws::String & value)109     inline Owner& WithID(const Aws::String& value) { SetID(value); return *this;}
110 
111     /**
112      * <p>Container for the ID of the owner.</p>
113      */
WithID(Aws::String && value)114     inline Owner& WithID(Aws::String&& value) { SetID(std::move(value)); return *this;}
115 
116     /**
117      * <p>Container for the ID of the owner.</p>
118      */
WithID(const char * value)119     inline Owner& WithID(const char* value) { SetID(value); return *this;}
120 
121   private:
122 
123     Aws::String m_displayName;
124     bool m_displayNameHasBeenSet;
125 
126     Aws::String m_iD;
127     bool m_iDHasBeenSet;
128   };
129 
130 } // namespace Model
131 } // namespace S3
132 } // namespace Aws
133