AWS SDK for C++  0.12.9
AWS SDK for C++
VolumeiSCSIAttributes.h
Go to the documentation of this file.
1 /*
2 * Copyright 2010-2016 Amazon.com, Inc. or its affiliates. All Rights Reserved.
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License").
5 * You may not use this file except in compliance with the License.
6 * A copy of the License is located at
7 *
8 * http://aws.amazon.com/apache2.0
9 *
10 * or in the "license" file accompanying this file. This file is distributed
11 * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
12 * express or implied. See the License for the specific language governing
13 * permissions and limitations under the License.
14 */
15 #pragma once
18 
19 namespace Aws
20 {
21 namespace Utils
22 {
23 namespace Json
24 {
25  class JsonValue;
26 } // namespace Json
27 } // namespace Utils
28 namespace StorageGateway
29 {
30 namespace Model
31 {
32 
37  {
38  public:
41  VolumeiSCSIAttributes& operator=(const Aws::Utils::Json::JsonValue& jsonValue);
42  Aws::Utils::Json::JsonValue Jsonize() const;
43 
47  inline const Aws::String& GetTargetARN() const{ return m_targetARN; }
48 
52  inline void SetTargetARN(const Aws::String& value) { m_targetARNHasBeenSet = true; m_targetARN = value; }
53 
57  inline void SetTargetARN(Aws::String&& value) { m_targetARNHasBeenSet = true; m_targetARN = value; }
58 
62  inline void SetTargetARN(const char* value) { m_targetARNHasBeenSet = true; m_targetARN.assign(value); }
63 
67  inline VolumeiSCSIAttributes& WithTargetARN(const Aws::String& value) { SetTargetARN(value); return *this;}
68 
72  inline VolumeiSCSIAttributes& WithTargetARN(Aws::String&& value) { SetTargetARN(value); return *this;}
73 
77  inline VolumeiSCSIAttributes& WithTargetARN(const char* value) { SetTargetARN(value); return *this;}
78 
82  inline const Aws::String& GetNetworkInterfaceId() const{ return m_networkInterfaceId; }
83 
87  inline void SetNetworkInterfaceId(const Aws::String& value) { m_networkInterfaceIdHasBeenSet = true; m_networkInterfaceId = value; }
88 
92  inline void SetNetworkInterfaceId(Aws::String&& value) { m_networkInterfaceIdHasBeenSet = true; m_networkInterfaceId = value; }
93 
97  inline void SetNetworkInterfaceId(const char* value) { m_networkInterfaceIdHasBeenSet = true; m_networkInterfaceId.assign(value); }
98 
102  inline VolumeiSCSIAttributes& WithNetworkInterfaceId(const Aws::String& value) { SetNetworkInterfaceId(value); return *this;}
103 
107  inline VolumeiSCSIAttributes& WithNetworkInterfaceId(Aws::String&& value) { SetNetworkInterfaceId(value); return *this;}
108 
112  inline VolumeiSCSIAttributes& WithNetworkInterfaceId(const char* value) { SetNetworkInterfaceId(value); return *this;}
113 
117  inline long GetNetworkInterfacePort() const{ return m_networkInterfacePort; }
118 
122  inline void SetNetworkInterfacePort(long value) { m_networkInterfacePortHasBeenSet = true; m_networkInterfacePort = value; }
123 
127  inline VolumeiSCSIAttributes& WithNetworkInterfacePort(long value) { SetNetworkInterfacePort(value); return *this;}
128 
132  inline long GetLunNumber() const{ return m_lunNumber; }
133 
137  inline void SetLunNumber(long value) { m_lunNumberHasBeenSet = true; m_lunNumber = value; }
138 
142  inline VolumeiSCSIAttributes& WithLunNumber(long value) { SetLunNumber(value); return *this;}
143 
147  inline bool GetChapEnabled() const{ return m_chapEnabled; }
148 
152  inline void SetChapEnabled(bool value) { m_chapEnabledHasBeenSet = true; m_chapEnabled = value; }
153 
157  inline VolumeiSCSIAttributes& WithChapEnabled(bool value) { SetChapEnabled(value); return *this;}
158 
159  private:
160  Aws::String m_targetARN;
161  bool m_targetARNHasBeenSet;
162  Aws::String m_networkInterfaceId;
163  bool m_networkInterfaceIdHasBeenSet;
164  long m_networkInterfacePort;
165  bool m_networkInterfacePortHasBeenSet;
166  long m_lunNumber;
167  bool m_lunNumberHasBeenSet;
168  bool m_chapEnabled;
169  bool m_chapEnabledHasBeenSet;
170  };
171 
172 } // namespace Model
173 } // namespace StorageGateway
174 } // namespace Aws
VolumeiSCSIAttributes & WithNetworkInterfaceId(Aws::String &&value)
VolumeiSCSIAttributes & WithTargetARN(const Aws::String &value)
VolumeiSCSIAttributes & WithLunNumber(long value)
VolumeiSCSIAttributes & WithTargetARN(const char *value)
VolumeiSCSIAttributes & WithTargetARN(Aws::String &&value)
VolumeiSCSIAttributes & WithNetworkInterfacePort(long value)
VolumeiSCSIAttributes & WithChapEnabled(bool value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
VolumeiSCSIAttributes & WithNetworkInterfaceId(const Aws::String &value)
VolumeiSCSIAttributes & WithNetworkInterfaceId(const char *value)
#define AWS_STORAGEGATEWAY_API
JSON (JavaScript Object Notation).