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/elasticache/ElastiCache_EXPORTS.h> 8 #include <aws/elasticache/ElastiCacheRequest.h> 9 #include <aws/core/utils/memory/stl/AWSString.h> 10 #include <aws/core/utils/memory/stl/AWSVector.h> 11 #include <aws/elasticache/model/TimeRangeFilter.h> 12 #include <aws/elasticache/model/ServiceUpdateStatus.h> 13 #include <aws/elasticache/model/UpdateActionStatus.h> 14 #include <utility> 15 16 namespace Aws 17 { 18 namespace ElastiCache 19 { 20 namespace Model 21 { 22 23 /** 24 */ 25 class AWS_ELASTICACHE_API DescribeUpdateActionsRequest : public ElastiCacheRequest 26 { 27 public: 28 DescribeUpdateActionsRequest(); 29 30 // Service request name is the Operation name which will send this request out, 31 // each operation should has unique request name, so that we can get operation's name from this request. 32 // Note: this is not true for response, multiple operations may have the same response name, 33 // so we can not get operation's name from response. GetServiceRequestName()34 inline virtual const char* GetServiceRequestName() const override { return "DescribeUpdateActions"; } 35 36 Aws::String SerializePayload() const override; 37 38 protected: 39 void DumpBodyToUrl(Aws::Http::URI& uri ) const override; 40 41 public: 42 43 /** 44 * <p>The unique ID of the service update</p> 45 */ GetServiceUpdateName()46 inline const Aws::String& GetServiceUpdateName() const{ return m_serviceUpdateName; } 47 48 /** 49 * <p>The unique ID of the service update</p> 50 */ ServiceUpdateNameHasBeenSet()51 inline bool ServiceUpdateNameHasBeenSet() const { return m_serviceUpdateNameHasBeenSet; } 52 53 /** 54 * <p>The unique ID of the service update</p> 55 */ SetServiceUpdateName(const Aws::String & value)56 inline void SetServiceUpdateName(const Aws::String& value) { m_serviceUpdateNameHasBeenSet = true; m_serviceUpdateName = value; } 57 58 /** 59 * <p>The unique ID of the service update</p> 60 */ SetServiceUpdateName(Aws::String && value)61 inline void SetServiceUpdateName(Aws::String&& value) { m_serviceUpdateNameHasBeenSet = true; m_serviceUpdateName = std::move(value); } 62 63 /** 64 * <p>The unique ID of the service update</p> 65 */ SetServiceUpdateName(const char * value)66 inline void SetServiceUpdateName(const char* value) { m_serviceUpdateNameHasBeenSet = true; m_serviceUpdateName.assign(value); } 67 68 /** 69 * <p>The unique ID of the service update</p> 70 */ WithServiceUpdateName(const Aws::String & value)71 inline DescribeUpdateActionsRequest& WithServiceUpdateName(const Aws::String& value) { SetServiceUpdateName(value); return *this;} 72 73 /** 74 * <p>The unique ID of the service update</p> 75 */ WithServiceUpdateName(Aws::String && value)76 inline DescribeUpdateActionsRequest& WithServiceUpdateName(Aws::String&& value) { SetServiceUpdateName(std::move(value)); return *this;} 77 78 /** 79 * <p>The unique ID of the service update</p> 80 */ WithServiceUpdateName(const char * value)81 inline DescribeUpdateActionsRequest& WithServiceUpdateName(const char* value) { SetServiceUpdateName(value); return *this;} 82 83 84 /** 85 * <p>The replication group IDs</p> 86 */ GetReplicationGroupIds()87 inline const Aws::Vector<Aws::String>& GetReplicationGroupIds() const{ return m_replicationGroupIds; } 88 89 /** 90 * <p>The replication group IDs</p> 91 */ ReplicationGroupIdsHasBeenSet()92 inline bool ReplicationGroupIdsHasBeenSet() const { return m_replicationGroupIdsHasBeenSet; } 93 94 /** 95 * <p>The replication group IDs</p> 96 */ SetReplicationGroupIds(const Aws::Vector<Aws::String> & value)97 inline void SetReplicationGroupIds(const Aws::Vector<Aws::String>& value) { m_replicationGroupIdsHasBeenSet = true; m_replicationGroupIds = value; } 98 99 /** 100 * <p>The replication group IDs</p> 101 */ SetReplicationGroupIds(Aws::Vector<Aws::String> && value)102 inline void SetReplicationGroupIds(Aws::Vector<Aws::String>&& value) { m_replicationGroupIdsHasBeenSet = true; m_replicationGroupIds = std::move(value); } 103 104 /** 105 * <p>The replication group IDs</p> 106 */ WithReplicationGroupIds(const Aws::Vector<Aws::String> & value)107 inline DescribeUpdateActionsRequest& WithReplicationGroupIds(const Aws::Vector<Aws::String>& value) { SetReplicationGroupIds(value); return *this;} 108 109 /** 110 * <p>The replication group IDs</p> 111 */ WithReplicationGroupIds(Aws::Vector<Aws::String> && value)112 inline DescribeUpdateActionsRequest& WithReplicationGroupIds(Aws::Vector<Aws::String>&& value) { SetReplicationGroupIds(std::move(value)); return *this;} 113 114 /** 115 * <p>The replication group IDs</p> 116 */ AddReplicationGroupIds(const Aws::String & value)117 inline DescribeUpdateActionsRequest& AddReplicationGroupIds(const Aws::String& value) { m_replicationGroupIdsHasBeenSet = true; m_replicationGroupIds.push_back(value); return *this; } 118 119 /** 120 * <p>The replication group IDs</p> 121 */ AddReplicationGroupIds(Aws::String && value)122 inline DescribeUpdateActionsRequest& AddReplicationGroupIds(Aws::String&& value) { m_replicationGroupIdsHasBeenSet = true; m_replicationGroupIds.push_back(std::move(value)); return *this; } 123 124 /** 125 * <p>The replication group IDs</p> 126 */ AddReplicationGroupIds(const char * value)127 inline DescribeUpdateActionsRequest& AddReplicationGroupIds(const char* value) { m_replicationGroupIdsHasBeenSet = true; m_replicationGroupIds.push_back(value); return *this; } 128 129 130 /** 131 * <p>The cache cluster IDs</p> 132 */ GetCacheClusterIds()133 inline const Aws::Vector<Aws::String>& GetCacheClusterIds() const{ return m_cacheClusterIds; } 134 135 /** 136 * <p>The cache cluster IDs</p> 137 */ CacheClusterIdsHasBeenSet()138 inline bool CacheClusterIdsHasBeenSet() const { return m_cacheClusterIdsHasBeenSet; } 139 140 /** 141 * <p>The cache cluster IDs</p> 142 */ SetCacheClusterIds(const Aws::Vector<Aws::String> & value)143 inline void SetCacheClusterIds(const Aws::Vector<Aws::String>& value) { m_cacheClusterIdsHasBeenSet = true; m_cacheClusterIds = value; } 144 145 /** 146 * <p>The cache cluster IDs</p> 147 */ SetCacheClusterIds(Aws::Vector<Aws::String> && value)148 inline void SetCacheClusterIds(Aws::Vector<Aws::String>&& value) { m_cacheClusterIdsHasBeenSet = true; m_cacheClusterIds = std::move(value); } 149 150 /** 151 * <p>The cache cluster IDs</p> 152 */ WithCacheClusterIds(const Aws::Vector<Aws::String> & value)153 inline DescribeUpdateActionsRequest& WithCacheClusterIds(const Aws::Vector<Aws::String>& value) { SetCacheClusterIds(value); return *this;} 154 155 /** 156 * <p>The cache cluster IDs</p> 157 */ WithCacheClusterIds(Aws::Vector<Aws::String> && value)158 inline DescribeUpdateActionsRequest& WithCacheClusterIds(Aws::Vector<Aws::String>&& value) { SetCacheClusterIds(std::move(value)); return *this;} 159 160 /** 161 * <p>The cache cluster IDs</p> 162 */ AddCacheClusterIds(const Aws::String & value)163 inline DescribeUpdateActionsRequest& AddCacheClusterIds(const Aws::String& value) { m_cacheClusterIdsHasBeenSet = true; m_cacheClusterIds.push_back(value); return *this; } 164 165 /** 166 * <p>The cache cluster IDs</p> 167 */ AddCacheClusterIds(Aws::String && value)168 inline DescribeUpdateActionsRequest& AddCacheClusterIds(Aws::String&& value) { m_cacheClusterIdsHasBeenSet = true; m_cacheClusterIds.push_back(std::move(value)); return *this; } 169 170 /** 171 * <p>The cache cluster IDs</p> 172 */ AddCacheClusterIds(const char * value)173 inline DescribeUpdateActionsRequest& AddCacheClusterIds(const char* value) { m_cacheClusterIdsHasBeenSet = true; m_cacheClusterIds.push_back(value); return *this; } 174 175 176 /** 177 * <p>The Elasticache engine to which the update applies. Either Redis or Memcached 178 * </p> 179 */ GetEngine()180 inline const Aws::String& GetEngine() const{ return m_engine; } 181 182 /** 183 * <p>The Elasticache engine to which the update applies. Either Redis or Memcached 184 * </p> 185 */ EngineHasBeenSet()186 inline bool EngineHasBeenSet() const { return m_engineHasBeenSet; } 187 188 /** 189 * <p>The Elasticache engine to which the update applies. Either Redis or Memcached 190 * </p> 191 */ SetEngine(const Aws::String & value)192 inline void SetEngine(const Aws::String& value) { m_engineHasBeenSet = true; m_engine = value; } 193 194 /** 195 * <p>The Elasticache engine to which the update applies. Either Redis or Memcached 196 * </p> 197 */ SetEngine(Aws::String && value)198 inline void SetEngine(Aws::String&& value) { m_engineHasBeenSet = true; m_engine = std::move(value); } 199 200 /** 201 * <p>The Elasticache engine to which the update applies. Either Redis or Memcached 202 * </p> 203 */ SetEngine(const char * value)204 inline void SetEngine(const char* value) { m_engineHasBeenSet = true; m_engine.assign(value); } 205 206 /** 207 * <p>The Elasticache engine to which the update applies. Either Redis or Memcached 208 * </p> 209 */ WithEngine(const Aws::String & value)210 inline DescribeUpdateActionsRequest& WithEngine(const Aws::String& value) { SetEngine(value); return *this;} 211 212 /** 213 * <p>The Elasticache engine to which the update applies. Either Redis or Memcached 214 * </p> 215 */ WithEngine(Aws::String && value)216 inline DescribeUpdateActionsRequest& WithEngine(Aws::String&& value) { SetEngine(std::move(value)); return *this;} 217 218 /** 219 * <p>The Elasticache engine to which the update applies. Either Redis or Memcached 220 * </p> 221 */ WithEngine(const char * value)222 inline DescribeUpdateActionsRequest& WithEngine(const char* value) { SetEngine(value); return *this;} 223 224 225 /** 226 * <p>The status of the service update</p> 227 */ GetServiceUpdateStatus()228 inline const Aws::Vector<ServiceUpdateStatus>& GetServiceUpdateStatus() const{ return m_serviceUpdateStatus; } 229 230 /** 231 * <p>The status of the service update</p> 232 */ ServiceUpdateStatusHasBeenSet()233 inline bool ServiceUpdateStatusHasBeenSet() const { return m_serviceUpdateStatusHasBeenSet; } 234 235 /** 236 * <p>The status of the service update</p> 237 */ SetServiceUpdateStatus(const Aws::Vector<ServiceUpdateStatus> & value)238 inline void SetServiceUpdateStatus(const Aws::Vector<ServiceUpdateStatus>& value) { m_serviceUpdateStatusHasBeenSet = true; m_serviceUpdateStatus = value; } 239 240 /** 241 * <p>The status of the service update</p> 242 */ SetServiceUpdateStatus(Aws::Vector<ServiceUpdateStatus> && value)243 inline void SetServiceUpdateStatus(Aws::Vector<ServiceUpdateStatus>&& value) { m_serviceUpdateStatusHasBeenSet = true; m_serviceUpdateStatus = std::move(value); } 244 245 /** 246 * <p>The status of the service update</p> 247 */ WithServiceUpdateStatus(const Aws::Vector<ServiceUpdateStatus> & value)248 inline DescribeUpdateActionsRequest& WithServiceUpdateStatus(const Aws::Vector<ServiceUpdateStatus>& value) { SetServiceUpdateStatus(value); return *this;} 249 250 /** 251 * <p>The status of the service update</p> 252 */ WithServiceUpdateStatus(Aws::Vector<ServiceUpdateStatus> && value)253 inline DescribeUpdateActionsRequest& WithServiceUpdateStatus(Aws::Vector<ServiceUpdateStatus>&& value) { SetServiceUpdateStatus(std::move(value)); return *this;} 254 255 /** 256 * <p>The status of the service update</p> 257 */ AddServiceUpdateStatus(const ServiceUpdateStatus & value)258 inline DescribeUpdateActionsRequest& AddServiceUpdateStatus(const ServiceUpdateStatus& value) { m_serviceUpdateStatusHasBeenSet = true; m_serviceUpdateStatus.push_back(value); return *this; } 259 260 /** 261 * <p>The status of the service update</p> 262 */ AddServiceUpdateStatus(ServiceUpdateStatus && value)263 inline DescribeUpdateActionsRequest& AddServiceUpdateStatus(ServiceUpdateStatus&& value) { m_serviceUpdateStatusHasBeenSet = true; m_serviceUpdateStatus.push_back(std::move(value)); return *this; } 264 265 266 /** 267 * <p>The range of time specified to search for service updates that are in 268 * available status</p> 269 */ GetServiceUpdateTimeRange()270 inline const TimeRangeFilter& GetServiceUpdateTimeRange() const{ return m_serviceUpdateTimeRange; } 271 272 /** 273 * <p>The range of time specified to search for service updates that are in 274 * available status</p> 275 */ ServiceUpdateTimeRangeHasBeenSet()276 inline bool ServiceUpdateTimeRangeHasBeenSet() const { return m_serviceUpdateTimeRangeHasBeenSet; } 277 278 /** 279 * <p>The range of time specified to search for service updates that are in 280 * available status</p> 281 */ SetServiceUpdateTimeRange(const TimeRangeFilter & value)282 inline void SetServiceUpdateTimeRange(const TimeRangeFilter& value) { m_serviceUpdateTimeRangeHasBeenSet = true; m_serviceUpdateTimeRange = value; } 283 284 /** 285 * <p>The range of time specified to search for service updates that are in 286 * available status</p> 287 */ SetServiceUpdateTimeRange(TimeRangeFilter && value)288 inline void SetServiceUpdateTimeRange(TimeRangeFilter&& value) { m_serviceUpdateTimeRangeHasBeenSet = true; m_serviceUpdateTimeRange = std::move(value); } 289 290 /** 291 * <p>The range of time specified to search for service updates that are in 292 * available status</p> 293 */ WithServiceUpdateTimeRange(const TimeRangeFilter & value)294 inline DescribeUpdateActionsRequest& WithServiceUpdateTimeRange(const TimeRangeFilter& value) { SetServiceUpdateTimeRange(value); return *this;} 295 296 /** 297 * <p>The range of time specified to search for service updates that are in 298 * available status</p> 299 */ WithServiceUpdateTimeRange(TimeRangeFilter && value)300 inline DescribeUpdateActionsRequest& WithServiceUpdateTimeRange(TimeRangeFilter&& value) { SetServiceUpdateTimeRange(std::move(value)); return *this;} 301 302 303 /** 304 * <p>The status of the update action.</p> 305 */ GetUpdateActionStatus()306 inline const Aws::Vector<UpdateActionStatus>& GetUpdateActionStatus() const{ return m_updateActionStatus; } 307 308 /** 309 * <p>The status of the update action.</p> 310 */ UpdateActionStatusHasBeenSet()311 inline bool UpdateActionStatusHasBeenSet() const { return m_updateActionStatusHasBeenSet; } 312 313 /** 314 * <p>The status of the update action.</p> 315 */ SetUpdateActionStatus(const Aws::Vector<UpdateActionStatus> & value)316 inline void SetUpdateActionStatus(const Aws::Vector<UpdateActionStatus>& value) { m_updateActionStatusHasBeenSet = true; m_updateActionStatus = value; } 317 318 /** 319 * <p>The status of the update action.</p> 320 */ SetUpdateActionStatus(Aws::Vector<UpdateActionStatus> && value)321 inline void SetUpdateActionStatus(Aws::Vector<UpdateActionStatus>&& value) { m_updateActionStatusHasBeenSet = true; m_updateActionStatus = std::move(value); } 322 323 /** 324 * <p>The status of the update action.</p> 325 */ WithUpdateActionStatus(const Aws::Vector<UpdateActionStatus> & value)326 inline DescribeUpdateActionsRequest& WithUpdateActionStatus(const Aws::Vector<UpdateActionStatus>& value) { SetUpdateActionStatus(value); return *this;} 327 328 /** 329 * <p>The status of the update action.</p> 330 */ WithUpdateActionStatus(Aws::Vector<UpdateActionStatus> && value)331 inline DescribeUpdateActionsRequest& WithUpdateActionStatus(Aws::Vector<UpdateActionStatus>&& value) { SetUpdateActionStatus(std::move(value)); return *this;} 332 333 /** 334 * <p>The status of the update action.</p> 335 */ AddUpdateActionStatus(const UpdateActionStatus & value)336 inline DescribeUpdateActionsRequest& AddUpdateActionStatus(const UpdateActionStatus& value) { m_updateActionStatusHasBeenSet = true; m_updateActionStatus.push_back(value); return *this; } 337 338 /** 339 * <p>The status of the update action.</p> 340 */ AddUpdateActionStatus(UpdateActionStatus && value)341 inline DescribeUpdateActionsRequest& AddUpdateActionStatus(UpdateActionStatus&& value) { m_updateActionStatusHasBeenSet = true; m_updateActionStatus.push_back(std::move(value)); return *this; } 342 343 344 /** 345 * <p>Dictates whether to include node level update status in the response </p> 346 */ GetShowNodeLevelUpdateStatus()347 inline bool GetShowNodeLevelUpdateStatus() const{ return m_showNodeLevelUpdateStatus; } 348 349 /** 350 * <p>Dictates whether to include node level update status in the response </p> 351 */ ShowNodeLevelUpdateStatusHasBeenSet()352 inline bool ShowNodeLevelUpdateStatusHasBeenSet() const { return m_showNodeLevelUpdateStatusHasBeenSet; } 353 354 /** 355 * <p>Dictates whether to include node level update status in the response </p> 356 */ SetShowNodeLevelUpdateStatus(bool value)357 inline void SetShowNodeLevelUpdateStatus(bool value) { m_showNodeLevelUpdateStatusHasBeenSet = true; m_showNodeLevelUpdateStatus = value; } 358 359 /** 360 * <p>Dictates whether to include node level update status in the response </p> 361 */ WithShowNodeLevelUpdateStatus(bool value)362 inline DescribeUpdateActionsRequest& WithShowNodeLevelUpdateStatus(bool value) { SetShowNodeLevelUpdateStatus(value); return *this;} 363 364 365 /** 366 * <p>The maximum number of records to include in the response</p> 367 */ GetMaxRecords()368 inline int GetMaxRecords() const{ return m_maxRecords; } 369 370 /** 371 * <p>The maximum number of records to include in the response</p> 372 */ MaxRecordsHasBeenSet()373 inline bool MaxRecordsHasBeenSet() const { return m_maxRecordsHasBeenSet; } 374 375 /** 376 * <p>The maximum number of records to include in the response</p> 377 */ SetMaxRecords(int value)378 inline void SetMaxRecords(int value) { m_maxRecordsHasBeenSet = true; m_maxRecords = value; } 379 380 /** 381 * <p>The maximum number of records to include in the response</p> 382 */ WithMaxRecords(int value)383 inline DescribeUpdateActionsRequest& WithMaxRecords(int value) { SetMaxRecords(value); return *this;} 384 385 386 /** 387 * <p>An optional marker returned from a prior request. Use this marker for 388 * pagination of results from this operation. If this parameter is specified, the 389 * response includes only records beyond the marker, up to the value specified by 390 * <code>MaxRecords</code>.</p> 391 */ GetMarker()392 inline const Aws::String& GetMarker() const{ return m_marker; } 393 394 /** 395 * <p>An optional marker returned from a prior request. Use this marker for 396 * pagination of results from this operation. If this parameter is specified, the 397 * response includes only records beyond the marker, up to the value specified by 398 * <code>MaxRecords</code>.</p> 399 */ MarkerHasBeenSet()400 inline bool MarkerHasBeenSet() const { return m_markerHasBeenSet; } 401 402 /** 403 * <p>An optional marker returned from a prior request. Use this marker for 404 * pagination of results from this operation. If this parameter is specified, the 405 * response includes only records beyond the marker, up to the value specified by 406 * <code>MaxRecords</code>.</p> 407 */ SetMarker(const Aws::String & value)408 inline void SetMarker(const Aws::String& value) { m_markerHasBeenSet = true; m_marker = value; } 409 410 /** 411 * <p>An optional marker returned from a prior request. Use this marker for 412 * pagination of results from this operation. If this parameter is specified, the 413 * response includes only records beyond the marker, up to the value specified by 414 * <code>MaxRecords</code>.</p> 415 */ SetMarker(Aws::String && value)416 inline void SetMarker(Aws::String&& value) { m_markerHasBeenSet = true; m_marker = std::move(value); } 417 418 /** 419 * <p>An optional marker returned from a prior request. Use this marker for 420 * pagination of results from this operation. If this parameter is specified, the 421 * response includes only records beyond the marker, up to the value specified by 422 * <code>MaxRecords</code>.</p> 423 */ SetMarker(const char * value)424 inline void SetMarker(const char* value) { m_markerHasBeenSet = true; m_marker.assign(value); } 425 426 /** 427 * <p>An optional marker returned from a prior request. Use this marker for 428 * pagination of results from this operation. If this parameter is specified, the 429 * response includes only records beyond the marker, up to the value specified by 430 * <code>MaxRecords</code>.</p> 431 */ WithMarker(const Aws::String & value)432 inline DescribeUpdateActionsRequest& WithMarker(const Aws::String& value) { SetMarker(value); return *this;} 433 434 /** 435 * <p>An optional marker returned from a prior request. Use this marker for 436 * pagination of results from this operation. If this parameter is specified, the 437 * response includes only records beyond the marker, up to the value specified by 438 * <code>MaxRecords</code>.</p> 439 */ WithMarker(Aws::String && value)440 inline DescribeUpdateActionsRequest& WithMarker(Aws::String&& value) { SetMarker(std::move(value)); return *this;} 441 442 /** 443 * <p>An optional marker returned from a prior request. Use this marker for 444 * pagination of results from this operation. If this parameter is specified, the 445 * response includes only records beyond the marker, up to the value specified by 446 * <code>MaxRecords</code>.</p> 447 */ WithMarker(const char * value)448 inline DescribeUpdateActionsRequest& WithMarker(const char* value) { SetMarker(value); return *this;} 449 450 private: 451 452 Aws::String m_serviceUpdateName; 453 bool m_serviceUpdateNameHasBeenSet; 454 455 Aws::Vector<Aws::String> m_replicationGroupIds; 456 bool m_replicationGroupIdsHasBeenSet; 457 458 Aws::Vector<Aws::String> m_cacheClusterIds; 459 bool m_cacheClusterIdsHasBeenSet; 460 461 Aws::String m_engine; 462 bool m_engineHasBeenSet; 463 464 Aws::Vector<ServiceUpdateStatus> m_serviceUpdateStatus; 465 bool m_serviceUpdateStatusHasBeenSet; 466 467 TimeRangeFilter m_serviceUpdateTimeRange; 468 bool m_serviceUpdateTimeRangeHasBeenSet; 469 470 Aws::Vector<UpdateActionStatus> m_updateActionStatus; 471 bool m_updateActionStatusHasBeenSet; 472 473 bool m_showNodeLevelUpdateStatus; 474 bool m_showNodeLevelUpdateStatusHasBeenSet; 475 476 int m_maxRecords; 477 bool m_maxRecordsHasBeenSet; 478 479 Aws::String m_marker; 480 bool m_markerHasBeenSet; 481 }; 482 483 } // namespace Model 484 } // namespace ElastiCache 485 } // namespace Aws 486