github.com/aavshr/aws-sdk-go@v1.41.3/service/redshift/api.go (about) 1 // Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. 2 3 package redshift 4 5 import ( 6 "fmt" 7 "time" 8 9 "github.com/aavshr/aws-sdk-go/aws" 10 "github.com/aavshr/aws-sdk-go/aws/awsutil" 11 "github.com/aavshr/aws-sdk-go/aws/request" 12 "github.com/aavshr/aws-sdk-go/private/protocol" 13 "github.com/aavshr/aws-sdk-go/private/protocol/query" 14 ) 15 16 const opAcceptReservedNodeExchange = "AcceptReservedNodeExchange" 17 18 // AcceptReservedNodeExchangeRequest generates a "aws/request.Request" representing the 19 // client's request for the AcceptReservedNodeExchange operation. The "output" return 20 // value will be populated with the request's response once the request completes 21 // successfully. 22 // 23 // Use "Send" method on the returned Request to send the API call to the service. 24 // the "output" return value is not valid until after Send returns without error. 25 // 26 // See AcceptReservedNodeExchange for more information on using the AcceptReservedNodeExchange 27 // API call, and error handling. 28 // 29 // This method is useful when you want to inject custom logic or configuration 30 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 31 // 32 // 33 // // Example sending a request using the AcceptReservedNodeExchangeRequest method. 34 // req, resp := client.AcceptReservedNodeExchangeRequest(params) 35 // 36 // err := req.Send() 37 // if err == nil { // resp is now filled 38 // fmt.Println(resp) 39 // } 40 // 41 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/AcceptReservedNodeExchange 42 func (c *Redshift) AcceptReservedNodeExchangeRequest(input *AcceptReservedNodeExchangeInput) (req *request.Request, output *AcceptReservedNodeExchangeOutput) { 43 op := &request.Operation{ 44 Name: opAcceptReservedNodeExchange, 45 HTTPMethod: "POST", 46 HTTPPath: "/", 47 } 48 49 if input == nil { 50 input = &AcceptReservedNodeExchangeInput{} 51 } 52 53 output = &AcceptReservedNodeExchangeOutput{} 54 req = c.newRequest(op, input, output) 55 return 56 } 57 58 // AcceptReservedNodeExchange API operation for Amazon Redshift. 59 // 60 // Exchanges a DC1 Reserved Node for a DC2 Reserved Node with no changes to 61 // the configuration (term, payment type, or number of nodes) and no additional 62 // costs. 63 // 64 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 65 // with awserr.Error's Code and Message methods to get detailed information about 66 // the error. 67 // 68 // See the AWS API reference guide for Amazon Redshift's 69 // API operation AcceptReservedNodeExchange for usage and error information. 70 // 71 // Returned Error Codes: 72 // * ErrCodeReservedNodeNotFoundFault "ReservedNodeNotFound" 73 // The specified reserved compute node not found. 74 // 75 // * ErrCodeInvalidReservedNodeStateFault "InvalidReservedNodeState" 76 // Indicates that the Reserved Node being exchanged is not in an active state. 77 // 78 // * ErrCodeReservedNodeAlreadyMigratedFault "ReservedNodeAlreadyMigrated" 79 // Indicates that the reserved node has already been exchanged. 80 // 81 // * ErrCodeReservedNodeOfferingNotFoundFault "ReservedNodeOfferingNotFound" 82 // Specified offering does not exist. 83 // 84 // * ErrCodeUnsupportedOperationFault "UnsupportedOperation" 85 // The requested operation isn't supported. 86 // 87 // * ErrCodeDependentServiceUnavailableFault "DependentServiceUnavailableFault" 88 // Your request cannot be completed because a dependent internal service is 89 // temporarily unavailable. Wait 30 to 60 seconds and try again. 90 // 91 // * ErrCodeReservedNodeAlreadyExistsFault "ReservedNodeAlreadyExists" 92 // User already has a reservation with the given identifier. 93 // 94 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/AcceptReservedNodeExchange 95 func (c *Redshift) AcceptReservedNodeExchange(input *AcceptReservedNodeExchangeInput) (*AcceptReservedNodeExchangeOutput, error) { 96 req, out := c.AcceptReservedNodeExchangeRequest(input) 97 return out, req.Send() 98 } 99 100 // AcceptReservedNodeExchangeWithContext is the same as AcceptReservedNodeExchange with the addition of 101 // the ability to pass a context and additional request options. 102 // 103 // See AcceptReservedNodeExchange for details on how to use this API operation. 104 // 105 // The context must be non-nil and will be used for request cancellation. If 106 // the context is nil a panic will occur. In the future the SDK may create 107 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 108 // for more information on using Contexts. 109 func (c *Redshift) AcceptReservedNodeExchangeWithContext(ctx aws.Context, input *AcceptReservedNodeExchangeInput, opts ...request.Option) (*AcceptReservedNodeExchangeOutput, error) { 110 req, out := c.AcceptReservedNodeExchangeRequest(input) 111 req.SetContext(ctx) 112 req.ApplyOptions(opts...) 113 return out, req.Send() 114 } 115 116 const opAddPartner = "AddPartner" 117 118 // AddPartnerRequest generates a "aws/request.Request" representing the 119 // client's request for the AddPartner operation. The "output" return 120 // value will be populated with the request's response once the request completes 121 // successfully. 122 // 123 // Use "Send" method on the returned Request to send the API call to the service. 124 // the "output" return value is not valid until after Send returns without error. 125 // 126 // See AddPartner for more information on using the AddPartner 127 // API call, and error handling. 128 // 129 // This method is useful when you want to inject custom logic or configuration 130 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 131 // 132 // 133 // // Example sending a request using the AddPartnerRequest method. 134 // req, resp := client.AddPartnerRequest(params) 135 // 136 // err := req.Send() 137 // if err == nil { // resp is now filled 138 // fmt.Println(resp) 139 // } 140 // 141 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/AddPartner 142 func (c *Redshift) AddPartnerRequest(input *AddPartnerInput) (req *request.Request, output *AddPartnerOutput) { 143 op := &request.Operation{ 144 Name: opAddPartner, 145 HTTPMethod: "POST", 146 HTTPPath: "/", 147 } 148 149 if input == nil { 150 input = &AddPartnerInput{} 151 } 152 153 output = &AddPartnerOutput{} 154 req = c.newRequest(op, input, output) 155 return 156 } 157 158 // AddPartner API operation for Amazon Redshift. 159 // 160 // Adds a partner integration to a cluster. This operation authorizes a partner 161 // to push status updates for the specified database. To complete the integration, 162 // you also set up the integration on the partner website. 163 // 164 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 165 // with awserr.Error's Code and Message methods to get detailed information about 166 // the error. 167 // 168 // See the AWS API reference guide for Amazon Redshift's 169 // API operation AddPartner for usage and error information. 170 // 171 // Returned Error Codes: 172 // * ErrCodePartnerNotFoundFault "PartnerNotFound" 173 // The name of the partner was not found. 174 // 175 // * ErrCodeClusterNotFoundFault "ClusterNotFound" 176 // The ClusterIdentifier parameter does not refer to an existing cluster. 177 // 178 // * ErrCodeUnauthorizedPartnerIntegrationFault "UnauthorizedPartnerIntegration" 179 // The partner integration is not authorized. 180 // 181 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/AddPartner 182 func (c *Redshift) AddPartner(input *AddPartnerInput) (*AddPartnerOutput, error) { 183 req, out := c.AddPartnerRequest(input) 184 return out, req.Send() 185 } 186 187 // AddPartnerWithContext is the same as AddPartner with the addition of 188 // the ability to pass a context and additional request options. 189 // 190 // See AddPartner for details on how to use this API operation. 191 // 192 // The context must be non-nil and will be used for request cancellation. If 193 // the context is nil a panic will occur. In the future the SDK may create 194 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 195 // for more information on using Contexts. 196 func (c *Redshift) AddPartnerWithContext(ctx aws.Context, input *AddPartnerInput, opts ...request.Option) (*AddPartnerOutput, error) { 197 req, out := c.AddPartnerRequest(input) 198 req.SetContext(ctx) 199 req.ApplyOptions(opts...) 200 return out, req.Send() 201 } 202 203 const opAssociateDataShareConsumer = "AssociateDataShareConsumer" 204 205 // AssociateDataShareConsumerRequest generates a "aws/request.Request" representing the 206 // client's request for the AssociateDataShareConsumer operation. The "output" return 207 // value will be populated with the request's response once the request completes 208 // successfully. 209 // 210 // Use "Send" method on the returned Request to send the API call to the service. 211 // the "output" return value is not valid until after Send returns without error. 212 // 213 // See AssociateDataShareConsumer for more information on using the AssociateDataShareConsumer 214 // API call, and error handling. 215 // 216 // This method is useful when you want to inject custom logic or configuration 217 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 218 // 219 // 220 // // Example sending a request using the AssociateDataShareConsumerRequest method. 221 // req, resp := client.AssociateDataShareConsumerRequest(params) 222 // 223 // err := req.Send() 224 // if err == nil { // resp is now filled 225 // fmt.Println(resp) 226 // } 227 // 228 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/AssociateDataShareConsumer 229 func (c *Redshift) AssociateDataShareConsumerRequest(input *AssociateDataShareConsumerInput) (req *request.Request, output *AssociateDataShareConsumerOutput) { 230 op := &request.Operation{ 231 Name: opAssociateDataShareConsumer, 232 HTTPMethod: "POST", 233 HTTPPath: "/", 234 } 235 236 if input == nil { 237 input = &AssociateDataShareConsumerInput{} 238 } 239 240 output = &AssociateDataShareConsumerOutput{} 241 req = c.newRequest(op, input, output) 242 return 243 } 244 245 // AssociateDataShareConsumer API operation for Amazon Redshift. 246 // 247 // From a datashare consumer account, associates a datashare with the account 248 // (AssociateEntireAccount) or the specified namespace (ConsumerArn). If you 249 // make this association, the consumer can consume the datashare. 250 // 251 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 252 // with awserr.Error's Code and Message methods to get detailed information about 253 // the error. 254 // 255 // See the AWS API reference guide for Amazon Redshift's 256 // API operation AssociateDataShareConsumer for usage and error information. 257 // 258 // Returned Error Codes: 259 // * ErrCodeInvalidDataShareFault "InvalidDataShareFault" 260 // There is an error with the datashare. 261 // 262 // * ErrCodeInvalidNamespaceFault "InvalidNamespaceFault" 263 // The namespace isn't valid because the namespace doesn't exist. Provide a 264 // valid namespace. 265 // 266 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/AssociateDataShareConsumer 267 func (c *Redshift) AssociateDataShareConsumer(input *AssociateDataShareConsumerInput) (*AssociateDataShareConsumerOutput, error) { 268 req, out := c.AssociateDataShareConsumerRequest(input) 269 return out, req.Send() 270 } 271 272 // AssociateDataShareConsumerWithContext is the same as AssociateDataShareConsumer with the addition of 273 // the ability to pass a context and additional request options. 274 // 275 // See AssociateDataShareConsumer for details on how to use this API operation. 276 // 277 // The context must be non-nil and will be used for request cancellation. If 278 // the context is nil a panic will occur. In the future the SDK may create 279 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 280 // for more information on using Contexts. 281 func (c *Redshift) AssociateDataShareConsumerWithContext(ctx aws.Context, input *AssociateDataShareConsumerInput, opts ...request.Option) (*AssociateDataShareConsumerOutput, error) { 282 req, out := c.AssociateDataShareConsumerRequest(input) 283 req.SetContext(ctx) 284 req.ApplyOptions(opts...) 285 return out, req.Send() 286 } 287 288 const opAuthorizeClusterSecurityGroupIngress = "AuthorizeClusterSecurityGroupIngress" 289 290 // AuthorizeClusterSecurityGroupIngressRequest generates a "aws/request.Request" representing the 291 // client's request for the AuthorizeClusterSecurityGroupIngress operation. The "output" return 292 // value will be populated with the request's response once the request completes 293 // successfully. 294 // 295 // Use "Send" method on the returned Request to send the API call to the service. 296 // the "output" return value is not valid until after Send returns without error. 297 // 298 // See AuthorizeClusterSecurityGroupIngress for more information on using the AuthorizeClusterSecurityGroupIngress 299 // API call, and error handling. 300 // 301 // This method is useful when you want to inject custom logic or configuration 302 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 303 // 304 // 305 // // Example sending a request using the AuthorizeClusterSecurityGroupIngressRequest method. 306 // req, resp := client.AuthorizeClusterSecurityGroupIngressRequest(params) 307 // 308 // err := req.Send() 309 // if err == nil { // resp is now filled 310 // fmt.Println(resp) 311 // } 312 // 313 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/AuthorizeClusterSecurityGroupIngress 314 func (c *Redshift) AuthorizeClusterSecurityGroupIngressRequest(input *AuthorizeClusterSecurityGroupIngressInput) (req *request.Request, output *AuthorizeClusterSecurityGroupIngressOutput) { 315 op := &request.Operation{ 316 Name: opAuthorizeClusterSecurityGroupIngress, 317 HTTPMethod: "POST", 318 HTTPPath: "/", 319 } 320 321 if input == nil { 322 input = &AuthorizeClusterSecurityGroupIngressInput{} 323 } 324 325 output = &AuthorizeClusterSecurityGroupIngressOutput{} 326 req = c.newRequest(op, input, output) 327 return 328 } 329 330 // AuthorizeClusterSecurityGroupIngress API operation for Amazon Redshift. 331 // 332 // Adds an inbound (ingress) rule to an Amazon Redshift security group. Depending 333 // on whether the application accessing your cluster is running on the Internet 334 // or an Amazon EC2 instance, you can authorize inbound access to either a Classless 335 // Interdomain Routing (CIDR)/Internet Protocol (IP) range or to an Amazon EC2 336 // security group. You can add as many as 20 ingress rules to an Amazon Redshift 337 // security group. 338 // 339 // If you authorize access to an Amazon EC2 security group, specify EC2SecurityGroupName 340 // and EC2SecurityGroupOwnerId. The Amazon EC2 security group and Amazon Redshift 341 // cluster must be in the same Amazon Web Services Region. 342 // 343 // If you authorize access to a CIDR/IP address range, specify CIDRIP. For an 344 // overview of CIDR blocks, see the Wikipedia article on Classless Inter-Domain 345 // Routing (http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing). 346 // 347 // You must also associate the security group with a cluster so that clients 348 // running on these IP addresses or the EC2 instance are authorized to connect 349 // to the cluster. For information about managing security groups, go to Working 350 // with Security Groups (https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-security-groups.html) 351 // in the Amazon Redshift Cluster Management Guide. 352 // 353 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 354 // with awserr.Error's Code and Message methods to get detailed information about 355 // the error. 356 // 357 // See the AWS API reference guide for Amazon Redshift's 358 // API operation AuthorizeClusterSecurityGroupIngress for usage and error information. 359 // 360 // Returned Error Codes: 361 // * ErrCodeClusterSecurityGroupNotFoundFault "ClusterSecurityGroupNotFound" 362 // The cluster security group name does not refer to an existing cluster security 363 // group. 364 // 365 // * ErrCodeInvalidClusterSecurityGroupStateFault "InvalidClusterSecurityGroupState" 366 // The state of the cluster security group is not available. 367 // 368 // * ErrCodeAuthorizationAlreadyExistsFault "AuthorizationAlreadyExists" 369 // The specified CIDR block or EC2 security group is already authorized for 370 // the specified cluster security group. 371 // 372 // * ErrCodeAuthorizationQuotaExceededFault "AuthorizationQuotaExceeded" 373 // The authorization quota for the cluster security group has been reached. 374 // 375 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/AuthorizeClusterSecurityGroupIngress 376 func (c *Redshift) AuthorizeClusterSecurityGroupIngress(input *AuthorizeClusterSecurityGroupIngressInput) (*AuthorizeClusterSecurityGroupIngressOutput, error) { 377 req, out := c.AuthorizeClusterSecurityGroupIngressRequest(input) 378 return out, req.Send() 379 } 380 381 // AuthorizeClusterSecurityGroupIngressWithContext is the same as AuthorizeClusterSecurityGroupIngress with the addition of 382 // the ability to pass a context and additional request options. 383 // 384 // See AuthorizeClusterSecurityGroupIngress for details on how to use this API operation. 385 // 386 // The context must be non-nil and will be used for request cancellation. If 387 // the context is nil a panic will occur. In the future the SDK may create 388 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 389 // for more information on using Contexts. 390 func (c *Redshift) AuthorizeClusterSecurityGroupIngressWithContext(ctx aws.Context, input *AuthorizeClusterSecurityGroupIngressInput, opts ...request.Option) (*AuthorizeClusterSecurityGroupIngressOutput, error) { 391 req, out := c.AuthorizeClusterSecurityGroupIngressRequest(input) 392 req.SetContext(ctx) 393 req.ApplyOptions(opts...) 394 return out, req.Send() 395 } 396 397 const opAuthorizeDataShare = "AuthorizeDataShare" 398 399 // AuthorizeDataShareRequest generates a "aws/request.Request" representing the 400 // client's request for the AuthorizeDataShare operation. The "output" return 401 // value will be populated with the request's response once the request completes 402 // successfully. 403 // 404 // Use "Send" method on the returned Request to send the API call to the service. 405 // the "output" return value is not valid until after Send returns without error. 406 // 407 // See AuthorizeDataShare for more information on using the AuthorizeDataShare 408 // API call, and error handling. 409 // 410 // This method is useful when you want to inject custom logic or configuration 411 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 412 // 413 // 414 // // Example sending a request using the AuthorizeDataShareRequest method. 415 // req, resp := client.AuthorizeDataShareRequest(params) 416 // 417 // err := req.Send() 418 // if err == nil { // resp is now filled 419 // fmt.Println(resp) 420 // } 421 // 422 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/AuthorizeDataShare 423 func (c *Redshift) AuthorizeDataShareRequest(input *AuthorizeDataShareInput) (req *request.Request, output *AuthorizeDataShareOutput) { 424 op := &request.Operation{ 425 Name: opAuthorizeDataShare, 426 HTTPMethod: "POST", 427 HTTPPath: "/", 428 } 429 430 if input == nil { 431 input = &AuthorizeDataShareInput{} 432 } 433 434 output = &AuthorizeDataShareOutput{} 435 req = c.newRequest(op, input, output) 436 return 437 } 438 439 // AuthorizeDataShare API operation for Amazon Redshift. 440 // 441 // From a data producer account, authorizes the sharing of a datashare with 442 // one or more consumer accounts. To authorize a datashare for a data consumer, 443 // the producer account must have the correct access privileges. 444 // 445 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 446 // with awserr.Error's Code and Message methods to get detailed information about 447 // the error. 448 // 449 // See the AWS API reference guide for Amazon Redshift's 450 // API operation AuthorizeDataShare for usage and error information. 451 // 452 // Returned Error Codes: 453 // * ErrCodeInvalidDataShareFault "InvalidDataShareFault" 454 // There is an error with the datashare. 455 // 456 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/AuthorizeDataShare 457 func (c *Redshift) AuthorizeDataShare(input *AuthorizeDataShareInput) (*AuthorizeDataShareOutput, error) { 458 req, out := c.AuthorizeDataShareRequest(input) 459 return out, req.Send() 460 } 461 462 // AuthorizeDataShareWithContext is the same as AuthorizeDataShare with the addition of 463 // the ability to pass a context and additional request options. 464 // 465 // See AuthorizeDataShare for details on how to use this API operation. 466 // 467 // The context must be non-nil and will be used for request cancellation. If 468 // the context is nil a panic will occur. In the future the SDK may create 469 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 470 // for more information on using Contexts. 471 func (c *Redshift) AuthorizeDataShareWithContext(ctx aws.Context, input *AuthorizeDataShareInput, opts ...request.Option) (*AuthorizeDataShareOutput, error) { 472 req, out := c.AuthorizeDataShareRequest(input) 473 req.SetContext(ctx) 474 req.ApplyOptions(opts...) 475 return out, req.Send() 476 } 477 478 const opAuthorizeEndpointAccess = "AuthorizeEndpointAccess" 479 480 // AuthorizeEndpointAccessRequest generates a "aws/request.Request" representing the 481 // client's request for the AuthorizeEndpointAccess operation. The "output" return 482 // value will be populated with the request's response once the request completes 483 // successfully. 484 // 485 // Use "Send" method on the returned Request to send the API call to the service. 486 // the "output" return value is not valid until after Send returns without error. 487 // 488 // See AuthorizeEndpointAccess for more information on using the AuthorizeEndpointAccess 489 // API call, and error handling. 490 // 491 // This method is useful when you want to inject custom logic or configuration 492 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 493 // 494 // 495 // // Example sending a request using the AuthorizeEndpointAccessRequest method. 496 // req, resp := client.AuthorizeEndpointAccessRequest(params) 497 // 498 // err := req.Send() 499 // if err == nil { // resp is now filled 500 // fmt.Println(resp) 501 // } 502 // 503 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/AuthorizeEndpointAccess 504 func (c *Redshift) AuthorizeEndpointAccessRequest(input *AuthorizeEndpointAccessInput) (req *request.Request, output *AuthorizeEndpointAccessOutput) { 505 op := &request.Operation{ 506 Name: opAuthorizeEndpointAccess, 507 HTTPMethod: "POST", 508 HTTPPath: "/", 509 } 510 511 if input == nil { 512 input = &AuthorizeEndpointAccessInput{} 513 } 514 515 output = &AuthorizeEndpointAccessOutput{} 516 req = c.newRequest(op, input, output) 517 return 518 } 519 520 // AuthorizeEndpointAccess API operation for Amazon Redshift. 521 // 522 // Grants access to a cluster. 523 // 524 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 525 // with awserr.Error's Code and Message methods to get detailed information about 526 // the error. 527 // 528 // See the AWS API reference guide for Amazon Redshift's 529 // API operation AuthorizeEndpointAccess for usage and error information. 530 // 531 // Returned Error Codes: 532 // * ErrCodeClusterNotFoundFault "ClusterNotFound" 533 // The ClusterIdentifier parameter does not refer to an existing cluster. 534 // 535 // * ErrCodeEndpointAuthorizationsPerClusterLimitExceededFault "EndpointAuthorizationsPerClusterLimitExceeded" 536 // The number of endpoint authorizations per cluster has exceeded its limit. 537 // 538 // * ErrCodeUnsupportedOperationFault "UnsupportedOperation" 539 // The requested operation isn't supported. 540 // 541 // * ErrCodeEndpointAuthorizationAlreadyExistsFault "EndpointAuthorizationAlreadyExists" 542 // The authorization already exists for this endpoint. 543 // 544 // * ErrCodeInvalidAuthorizationStateFault "InvalidAuthorizationState" 545 // The status of the authorization is not valid. 546 // 547 // * ErrCodeInvalidClusterStateFault "InvalidClusterState" 548 // The specified cluster is not in the available state. 549 // 550 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/AuthorizeEndpointAccess 551 func (c *Redshift) AuthorizeEndpointAccess(input *AuthorizeEndpointAccessInput) (*AuthorizeEndpointAccessOutput, error) { 552 req, out := c.AuthorizeEndpointAccessRequest(input) 553 return out, req.Send() 554 } 555 556 // AuthorizeEndpointAccessWithContext is the same as AuthorizeEndpointAccess with the addition of 557 // the ability to pass a context and additional request options. 558 // 559 // See AuthorizeEndpointAccess for details on how to use this API operation. 560 // 561 // The context must be non-nil and will be used for request cancellation. If 562 // the context is nil a panic will occur. In the future the SDK may create 563 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 564 // for more information on using Contexts. 565 func (c *Redshift) AuthorizeEndpointAccessWithContext(ctx aws.Context, input *AuthorizeEndpointAccessInput, opts ...request.Option) (*AuthorizeEndpointAccessOutput, error) { 566 req, out := c.AuthorizeEndpointAccessRequest(input) 567 req.SetContext(ctx) 568 req.ApplyOptions(opts...) 569 return out, req.Send() 570 } 571 572 const opAuthorizeSnapshotAccess = "AuthorizeSnapshotAccess" 573 574 // AuthorizeSnapshotAccessRequest generates a "aws/request.Request" representing the 575 // client's request for the AuthorizeSnapshotAccess operation. The "output" return 576 // value will be populated with the request's response once the request completes 577 // successfully. 578 // 579 // Use "Send" method on the returned Request to send the API call to the service. 580 // the "output" return value is not valid until after Send returns without error. 581 // 582 // See AuthorizeSnapshotAccess for more information on using the AuthorizeSnapshotAccess 583 // API call, and error handling. 584 // 585 // This method is useful when you want to inject custom logic or configuration 586 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 587 // 588 // 589 // // Example sending a request using the AuthorizeSnapshotAccessRequest method. 590 // req, resp := client.AuthorizeSnapshotAccessRequest(params) 591 // 592 // err := req.Send() 593 // if err == nil { // resp is now filled 594 // fmt.Println(resp) 595 // } 596 // 597 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/AuthorizeSnapshotAccess 598 func (c *Redshift) AuthorizeSnapshotAccessRequest(input *AuthorizeSnapshotAccessInput) (req *request.Request, output *AuthorizeSnapshotAccessOutput) { 599 op := &request.Operation{ 600 Name: opAuthorizeSnapshotAccess, 601 HTTPMethod: "POST", 602 HTTPPath: "/", 603 } 604 605 if input == nil { 606 input = &AuthorizeSnapshotAccessInput{} 607 } 608 609 output = &AuthorizeSnapshotAccessOutput{} 610 req = c.newRequest(op, input, output) 611 return 612 } 613 614 // AuthorizeSnapshotAccess API operation for Amazon Redshift. 615 // 616 // Authorizes the specified Amazon Web Services account to restore the specified 617 // snapshot. 618 // 619 // For more information about working with snapshots, go to Amazon Redshift 620 // Snapshots (https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-snapshots.html) 621 // in the Amazon Redshift Cluster Management Guide. 622 // 623 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 624 // with awserr.Error's Code and Message methods to get detailed information about 625 // the error. 626 // 627 // See the AWS API reference guide for Amazon Redshift's 628 // API operation AuthorizeSnapshotAccess for usage and error information. 629 // 630 // Returned Error Codes: 631 // * ErrCodeClusterSnapshotNotFoundFault "ClusterSnapshotNotFound" 632 // The snapshot identifier does not refer to an existing cluster snapshot. 633 // 634 // * ErrCodeAuthorizationAlreadyExistsFault "AuthorizationAlreadyExists" 635 // The specified CIDR block or EC2 security group is already authorized for 636 // the specified cluster security group. 637 // 638 // * ErrCodeAuthorizationQuotaExceededFault "AuthorizationQuotaExceeded" 639 // The authorization quota for the cluster security group has been reached. 640 // 641 // * ErrCodeDependentServiceRequestThrottlingFault "DependentServiceRequestThrottlingFault" 642 // The request cannot be completed because a dependent service is throttling 643 // requests made by Amazon Redshift on your behalf. Wait and retry the request. 644 // 645 // * ErrCodeInvalidClusterSnapshotStateFault "InvalidClusterSnapshotState" 646 // The specified cluster snapshot is not in the available state, or other accounts 647 // are authorized to access the snapshot. 648 // 649 // * ErrCodeLimitExceededFault "LimitExceededFault" 650 // The encryption key has exceeded its grant limit in Amazon Web Services KMS. 651 // 652 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/AuthorizeSnapshotAccess 653 func (c *Redshift) AuthorizeSnapshotAccess(input *AuthorizeSnapshotAccessInput) (*AuthorizeSnapshotAccessOutput, error) { 654 req, out := c.AuthorizeSnapshotAccessRequest(input) 655 return out, req.Send() 656 } 657 658 // AuthorizeSnapshotAccessWithContext is the same as AuthorizeSnapshotAccess with the addition of 659 // the ability to pass a context and additional request options. 660 // 661 // See AuthorizeSnapshotAccess for details on how to use this API operation. 662 // 663 // The context must be non-nil and will be used for request cancellation. If 664 // the context is nil a panic will occur. In the future the SDK may create 665 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 666 // for more information on using Contexts. 667 func (c *Redshift) AuthorizeSnapshotAccessWithContext(ctx aws.Context, input *AuthorizeSnapshotAccessInput, opts ...request.Option) (*AuthorizeSnapshotAccessOutput, error) { 668 req, out := c.AuthorizeSnapshotAccessRequest(input) 669 req.SetContext(ctx) 670 req.ApplyOptions(opts...) 671 return out, req.Send() 672 } 673 674 const opBatchDeleteClusterSnapshots = "BatchDeleteClusterSnapshots" 675 676 // BatchDeleteClusterSnapshotsRequest generates a "aws/request.Request" representing the 677 // client's request for the BatchDeleteClusterSnapshots operation. The "output" return 678 // value will be populated with the request's response once the request completes 679 // successfully. 680 // 681 // Use "Send" method on the returned Request to send the API call to the service. 682 // the "output" return value is not valid until after Send returns without error. 683 // 684 // See BatchDeleteClusterSnapshots for more information on using the BatchDeleteClusterSnapshots 685 // API call, and error handling. 686 // 687 // This method is useful when you want to inject custom logic or configuration 688 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 689 // 690 // 691 // // Example sending a request using the BatchDeleteClusterSnapshotsRequest method. 692 // req, resp := client.BatchDeleteClusterSnapshotsRequest(params) 693 // 694 // err := req.Send() 695 // if err == nil { // resp is now filled 696 // fmt.Println(resp) 697 // } 698 // 699 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/BatchDeleteClusterSnapshots 700 func (c *Redshift) BatchDeleteClusterSnapshotsRequest(input *BatchDeleteClusterSnapshotsInput) (req *request.Request, output *BatchDeleteClusterSnapshotsOutput) { 701 op := &request.Operation{ 702 Name: opBatchDeleteClusterSnapshots, 703 HTTPMethod: "POST", 704 HTTPPath: "/", 705 } 706 707 if input == nil { 708 input = &BatchDeleteClusterSnapshotsInput{} 709 } 710 711 output = &BatchDeleteClusterSnapshotsOutput{} 712 req = c.newRequest(op, input, output) 713 return 714 } 715 716 // BatchDeleteClusterSnapshots API operation for Amazon Redshift. 717 // 718 // Deletes a set of cluster snapshots. 719 // 720 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 721 // with awserr.Error's Code and Message methods to get detailed information about 722 // the error. 723 // 724 // See the AWS API reference guide for Amazon Redshift's 725 // API operation BatchDeleteClusterSnapshots for usage and error information. 726 // 727 // Returned Error Codes: 728 // * ErrCodeBatchDeleteRequestSizeExceededFault "BatchDeleteRequestSizeExceeded" 729 // The maximum number for a batch delete of snapshots has been reached. The 730 // limit is 100. 731 // 732 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/BatchDeleteClusterSnapshots 733 func (c *Redshift) BatchDeleteClusterSnapshots(input *BatchDeleteClusterSnapshotsInput) (*BatchDeleteClusterSnapshotsOutput, error) { 734 req, out := c.BatchDeleteClusterSnapshotsRequest(input) 735 return out, req.Send() 736 } 737 738 // BatchDeleteClusterSnapshotsWithContext is the same as BatchDeleteClusterSnapshots with the addition of 739 // the ability to pass a context and additional request options. 740 // 741 // See BatchDeleteClusterSnapshots for details on how to use this API operation. 742 // 743 // The context must be non-nil and will be used for request cancellation. If 744 // the context is nil a panic will occur. In the future the SDK may create 745 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 746 // for more information on using Contexts. 747 func (c *Redshift) BatchDeleteClusterSnapshotsWithContext(ctx aws.Context, input *BatchDeleteClusterSnapshotsInput, opts ...request.Option) (*BatchDeleteClusterSnapshotsOutput, error) { 748 req, out := c.BatchDeleteClusterSnapshotsRequest(input) 749 req.SetContext(ctx) 750 req.ApplyOptions(opts...) 751 return out, req.Send() 752 } 753 754 const opBatchModifyClusterSnapshots = "BatchModifyClusterSnapshots" 755 756 // BatchModifyClusterSnapshotsRequest generates a "aws/request.Request" representing the 757 // client's request for the BatchModifyClusterSnapshots operation. The "output" return 758 // value will be populated with the request's response once the request completes 759 // successfully. 760 // 761 // Use "Send" method on the returned Request to send the API call to the service. 762 // the "output" return value is not valid until after Send returns without error. 763 // 764 // See BatchModifyClusterSnapshots for more information on using the BatchModifyClusterSnapshots 765 // API call, and error handling. 766 // 767 // This method is useful when you want to inject custom logic or configuration 768 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 769 // 770 // 771 // // Example sending a request using the BatchModifyClusterSnapshotsRequest method. 772 // req, resp := client.BatchModifyClusterSnapshotsRequest(params) 773 // 774 // err := req.Send() 775 // if err == nil { // resp is now filled 776 // fmt.Println(resp) 777 // } 778 // 779 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/BatchModifyClusterSnapshots 780 func (c *Redshift) BatchModifyClusterSnapshotsRequest(input *BatchModifyClusterSnapshotsInput) (req *request.Request, output *BatchModifyClusterSnapshotsOutput) { 781 op := &request.Operation{ 782 Name: opBatchModifyClusterSnapshots, 783 HTTPMethod: "POST", 784 HTTPPath: "/", 785 } 786 787 if input == nil { 788 input = &BatchModifyClusterSnapshotsInput{} 789 } 790 791 output = &BatchModifyClusterSnapshotsOutput{} 792 req = c.newRequest(op, input, output) 793 return 794 } 795 796 // BatchModifyClusterSnapshots API operation for Amazon Redshift. 797 // 798 // Modifies the settings for a set of cluster snapshots. 799 // 800 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 801 // with awserr.Error's Code and Message methods to get detailed information about 802 // the error. 803 // 804 // See the AWS API reference guide for Amazon Redshift's 805 // API operation BatchModifyClusterSnapshots for usage and error information. 806 // 807 // Returned Error Codes: 808 // * ErrCodeInvalidRetentionPeriodFault "InvalidRetentionPeriodFault" 809 // The retention period specified is either in the past or is not a valid value. 810 // 811 // The value must be either -1 or an integer between 1 and 3,653. 812 // 813 // * ErrCodeBatchModifyClusterSnapshotsLimitExceededFault "BatchModifyClusterSnapshotsLimitExceededFault" 814 // The maximum number for snapshot identifiers has been reached. The limit is 815 // 100. 816 // 817 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/BatchModifyClusterSnapshots 818 func (c *Redshift) BatchModifyClusterSnapshots(input *BatchModifyClusterSnapshotsInput) (*BatchModifyClusterSnapshotsOutput, error) { 819 req, out := c.BatchModifyClusterSnapshotsRequest(input) 820 return out, req.Send() 821 } 822 823 // BatchModifyClusterSnapshotsWithContext is the same as BatchModifyClusterSnapshots with the addition of 824 // the ability to pass a context and additional request options. 825 // 826 // See BatchModifyClusterSnapshots for details on how to use this API operation. 827 // 828 // The context must be non-nil and will be used for request cancellation. If 829 // the context is nil a panic will occur. In the future the SDK may create 830 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 831 // for more information on using Contexts. 832 func (c *Redshift) BatchModifyClusterSnapshotsWithContext(ctx aws.Context, input *BatchModifyClusterSnapshotsInput, opts ...request.Option) (*BatchModifyClusterSnapshotsOutput, error) { 833 req, out := c.BatchModifyClusterSnapshotsRequest(input) 834 req.SetContext(ctx) 835 req.ApplyOptions(opts...) 836 return out, req.Send() 837 } 838 839 const opCancelResize = "CancelResize" 840 841 // CancelResizeRequest generates a "aws/request.Request" representing the 842 // client's request for the CancelResize operation. The "output" return 843 // value will be populated with the request's response once the request completes 844 // successfully. 845 // 846 // Use "Send" method on the returned Request to send the API call to the service. 847 // the "output" return value is not valid until after Send returns without error. 848 // 849 // See CancelResize for more information on using the CancelResize 850 // API call, and error handling. 851 // 852 // This method is useful when you want to inject custom logic or configuration 853 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 854 // 855 // 856 // // Example sending a request using the CancelResizeRequest method. 857 // req, resp := client.CancelResizeRequest(params) 858 // 859 // err := req.Send() 860 // if err == nil { // resp is now filled 861 // fmt.Println(resp) 862 // } 863 // 864 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/CancelResize 865 func (c *Redshift) CancelResizeRequest(input *CancelResizeInput) (req *request.Request, output *CancelResizeOutput) { 866 op := &request.Operation{ 867 Name: opCancelResize, 868 HTTPMethod: "POST", 869 HTTPPath: "/", 870 } 871 872 if input == nil { 873 input = &CancelResizeInput{} 874 } 875 876 output = &CancelResizeOutput{} 877 req = c.newRequest(op, input, output) 878 return 879 } 880 881 // CancelResize API operation for Amazon Redshift. 882 // 883 // Cancels a resize operation for a cluster. 884 // 885 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 886 // with awserr.Error's Code and Message methods to get detailed information about 887 // the error. 888 // 889 // See the AWS API reference guide for Amazon Redshift's 890 // API operation CancelResize for usage and error information. 891 // 892 // Returned Error Codes: 893 // * ErrCodeClusterNotFoundFault "ClusterNotFound" 894 // The ClusterIdentifier parameter does not refer to an existing cluster. 895 // 896 // * ErrCodeResizeNotFoundFault "ResizeNotFound" 897 // A resize operation for the specified cluster is not found. 898 // 899 // * ErrCodeInvalidClusterStateFault "InvalidClusterState" 900 // The specified cluster is not in the available state. 901 // 902 // * ErrCodeUnsupportedOperationFault "UnsupportedOperation" 903 // The requested operation isn't supported. 904 // 905 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/CancelResize 906 func (c *Redshift) CancelResize(input *CancelResizeInput) (*CancelResizeOutput, error) { 907 req, out := c.CancelResizeRequest(input) 908 return out, req.Send() 909 } 910 911 // CancelResizeWithContext is the same as CancelResize with the addition of 912 // the ability to pass a context and additional request options. 913 // 914 // See CancelResize for details on how to use this API operation. 915 // 916 // The context must be non-nil and will be used for request cancellation. If 917 // the context is nil a panic will occur. In the future the SDK may create 918 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 919 // for more information on using Contexts. 920 func (c *Redshift) CancelResizeWithContext(ctx aws.Context, input *CancelResizeInput, opts ...request.Option) (*CancelResizeOutput, error) { 921 req, out := c.CancelResizeRequest(input) 922 req.SetContext(ctx) 923 req.ApplyOptions(opts...) 924 return out, req.Send() 925 } 926 927 const opCopyClusterSnapshot = "CopyClusterSnapshot" 928 929 // CopyClusterSnapshotRequest generates a "aws/request.Request" representing the 930 // client's request for the CopyClusterSnapshot operation. The "output" return 931 // value will be populated with the request's response once the request completes 932 // successfully. 933 // 934 // Use "Send" method on the returned Request to send the API call to the service. 935 // the "output" return value is not valid until after Send returns without error. 936 // 937 // See CopyClusterSnapshot for more information on using the CopyClusterSnapshot 938 // API call, and error handling. 939 // 940 // This method is useful when you want to inject custom logic or configuration 941 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 942 // 943 // 944 // // Example sending a request using the CopyClusterSnapshotRequest method. 945 // req, resp := client.CopyClusterSnapshotRequest(params) 946 // 947 // err := req.Send() 948 // if err == nil { // resp is now filled 949 // fmt.Println(resp) 950 // } 951 // 952 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/CopyClusterSnapshot 953 func (c *Redshift) CopyClusterSnapshotRequest(input *CopyClusterSnapshotInput) (req *request.Request, output *CopyClusterSnapshotOutput) { 954 op := &request.Operation{ 955 Name: opCopyClusterSnapshot, 956 HTTPMethod: "POST", 957 HTTPPath: "/", 958 } 959 960 if input == nil { 961 input = &CopyClusterSnapshotInput{} 962 } 963 964 output = &CopyClusterSnapshotOutput{} 965 req = c.newRequest(op, input, output) 966 return 967 } 968 969 // CopyClusterSnapshot API operation for Amazon Redshift. 970 // 971 // Copies the specified automated cluster snapshot to a new manual cluster snapshot. 972 // The source must be an automated snapshot and it must be in the available 973 // state. 974 // 975 // When you delete a cluster, Amazon Redshift deletes any automated snapshots 976 // of the cluster. Also, when the retention period of the snapshot expires, 977 // Amazon Redshift automatically deletes it. If you want to keep an automated 978 // snapshot for a longer period, you can make a manual copy of the snapshot. 979 // Manual snapshots are retained until you delete them. 980 // 981 // For more information about working with snapshots, go to Amazon Redshift 982 // Snapshots (https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-snapshots.html) 983 // in the Amazon Redshift Cluster Management Guide. 984 // 985 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 986 // with awserr.Error's Code and Message methods to get detailed information about 987 // the error. 988 // 989 // See the AWS API reference guide for Amazon Redshift's 990 // API operation CopyClusterSnapshot for usage and error information. 991 // 992 // Returned Error Codes: 993 // * ErrCodeClusterSnapshotAlreadyExistsFault "ClusterSnapshotAlreadyExists" 994 // The value specified as a snapshot identifier is already used by an existing 995 // snapshot. 996 // 997 // * ErrCodeClusterSnapshotNotFoundFault "ClusterSnapshotNotFound" 998 // The snapshot identifier does not refer to an existing cluster snapshot. 999 // 1000 // * ErrCodeInvalidClusterSnapshotStateFault "InvalidClusterSnapshotState" 1001 // The specified cluster snapshot is not in the available state, or other accounts 1002 // are authorized to access the snapshot. 1003 // 1004 // * ErrCodeClusterSnapshotQuotaExceededFault "ClusterSnapshotQuotaExceeded" 1005 // The request would result in the user exceeding the allowed number of cluster 1006 // snapshots. 1007 // 1008 // * ErrCodeInvalidRetentionPeriodFault "InvalidRetentionPeriodFault" 1009 // The retention period specified is either in the past or is not a valid value. 1010 // 1011 // The value must be either -1 or an integer between 1 and 3,653. 1012 // 1013 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/CopyClusterSnapshot 1014 func (c *Redshift) CopyClusterSnapshot(input *CopyClusterSnapshotInput) (*CopyClusterSnapshotOutput, error) { 1015 req, out := c.CopyClusterSnapshotRequest(input) 1016 return out, req.Send() 1017 } 1018 1019 // CopyClusterSnapshotWithContext is the same as CopyClusterSnapshot with the addition of 1020 // the ability to pass a context and additional request options. 1021 // 1022 // See CopyClusterSnapshot for details on how to use this API operation. 1023 // 1024 // The context must be non-nil and will be used for request cancellation. If 1025 // the context is nil a panic will occur. In the future the SDK may create 1026 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1027 // for more information on using Contexts. 1028 func (c *Redshift) CopyClusterSnapshotWithContext(ctx aws.Context, input *CopyClusterSnapshotInput, opts ...request.Option) (*CopyClusterSnapshotOutput, error) { 1029 req, out := c.CopyClusterSnapshotRequest(input) 1030 req.SetContext(ctx) 1031 req.ApplyOptions(opts...) 1032 return out, req.Send() 1033 } 1034 1035 const opCreateAuthenticationProfile = "CreateAuthenticationProfile" 1036 1037 // CreateAuthenticationProfileRequest generates a "aws/request.Request" representing the 1038 // client's request for the CreateAuthenticationProfile operation. The "output" return 1039 // value will be populated with the request's response once the request completes 1040 // successfully. 1041 // 1042 // Use "Send" method on the returned Request to send the API call to the service. 1043 // the "output" return value is not valid until after Send returns without error. 1044 // 1045 // See CreateAuthenticationProfile for more information on using the CreateAuthenticationProfile 1046 // API call, and error handling. 1047 // 1048 // This method is useful when you want to inject custom logic or configuration 1049 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 1050 // 1051 // 1052 // // Example sending a request using the CreateAuthenticationProfileRequest method. 1053 // req, resp := client.CreateAuthenticationProfileRequest(params) 1054 // 1055 // err := req.Send() 1056 // if err == nil { // resp is now filled 1057 // fmt.Println(resp) 1058 // } 1059 // 1060 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/CreateAuthenticationProfile 1061 func (c *Redshift) CreateAuthenticationProfileRequest(input *CreateAuthenticationProfileInput) (req *request.Request, output *CreateAuthenticationProfileOutput) { 1062 op := &request.Operation{ 1063 Name: opCreateAuthenticationProfile, 1064 HTTPMethod: "POST", 1065 HTTPPath: "/", 1066 } 1067 1068 if input == nil { 1069 input = &CreateAuthenticationProfileInput{} 1070 } 1071 1072 output = &CreateAuthenticationProfileOutput{} 1073 req = c.newRequest(op, input, output) 1074 return 1075 } 1076 1077 // CreateAuthenticationProfile API operation for Amazon Redshift. 1078 // 1079 // Creates an authentication profile with the specified parameters. 1080 // 1081 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1082 // with awserr.Error's Code and Message methods to get detailed information about 1083 // the error. 1084 // 1085 // See the AWS API reference guide for Amazon Redshift's 1086 // API operation CreateAuthenticationProfile for usage and error information. 1087 // 1088 // Returned Error Codes: 1089 // * ErrCodeAuthenticationProfileAlreadyExistsFault "AuthenticationProfileAlreadyExistsFault" 1090 // The authentication profile already exists. 1091 // 1092 // * ErrCodeAuthenticationProfileQuotaExceededFault "AuthenticationProfileQuotaExceededFault" 1093 // The size or number of authentication profiles has exceeded the quota. The 1094 // maximum length of the JSON string and maximum number of authentication profiles 1095 // is determined by a quota for your account. 1096 // 1097 // * ErrCodeInvalidAuthenticationProfileRequestFault "InvalidAuthenticationProfileRequestFault" 1098 // The authentication profile request is not valid. The profile name can't be 1099 // null or empty. The authentication profile API operation must be available 1100 // in the Amazon Web Services Region. 1101 // 1102 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/CreateAuthenticationProfile 1103 func (c *Redshift) CreateAuthenticationProfile(input *CreateAuthenticationProfileInput) (*CreateAuthenticationProfileOutput, error) { 1104 req, out := c.CreateAuthenticationProfileRequest(input) 1105 return out, req.Send() 1106 } 1107 1108 // CreateAuthenticationProfileWithContext is the same as CreateAuthenticationProfile with the addition of 1109 // the ability to pass a context and additional request options. 1110 // 1111 // See CreateAuthenticationProfile for details on how to use this API operation. 1112 // 1113 // The context must be non-nil and will be used for request cancellation. If 1114 // the context is nil a panic will occur. In the future the SDK may create 1115 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1116 // for more information on using Contexts. 1117 func (c *Redshift) CreateAuthenticationProfileWithContext(ctx aws.Context, input *CreateAuthenticationProfileInput, opts ...request.Option) (*CreateAuthenticationProfileOutput, error) { 1118 req, out := c.CreateAuthenticationProfileRequest(input) 1119 req.SetContext(ctx) 1120 req.ApplyOptions(opts...) 1121 return out, req.Send() 1122 } 1123 1124 const opCreateCluster = "CreateCluster" 1125 1126 // CreateClusterRequest generates a "aws/request.Request" representing the 1127 // client's request for the CreateCluster operation. The "output" return 1128 // value will be populated with the request's response once the request completes 1129 // successfully. 1130 // 1131 // Use "Send" method on the returned Request to send the API call to the service. 1132 // the "output" return value is not valid until after Send returns without error. 1133 // 1134 // See CreateCluster for more information on using the CreateCluster 1135 // API call, and error handling. 1136 // 1137 // This method is useful when you want to inject custom logic or configuration 1138 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 1139 // 1140 // 1141 // // Example sending a request using the CreateClusterRequest method. 1142 // req, resp := client.CreateClusterRequest(params) 1143 // 1144 // err := req.Send() 1145 // if err == nil { // resp is now filled 1146 // fmt.Println(resp) 1147 // } 1148 // 1149 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/CreateCluster 1150 func (c *Redshift) CreateClusterRequest(input *CreateClusterInput) (req *request.Request, output *CreateClusterOutput) { 1151 op := &request.Operation{ 1152 Name: opCreateCluster, 1153 HTTPMethod: "POST", 1154 HTTPPath: "/", 1155 } 1156 1157 if input == nil { 1158 input = &CreateClusterInput{} 1159 } 1160 1161 output = &CreateClusterOutput{} 1162 req = c.newRequest(op, input, output) 1163 return 1164 } 1165 1166 // CreateCluster API operation for Amazon Redshift. 1167 // 1168 // Creates a new cluster with the specified parameters. 1169 // 1170 // To create a cluster in Virtual Private Cloud (VPC), you must provide a cluster 1171 // subnet group name. The cluster subnet group identifies the subnets of your 1172 // VPC that Amazon Redshift uses when creating the cluster. For more information 1173 // about managing clusters, go to Amazon Redshift Clusters (https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-clusters.html) 1174 // in the Amazon Redshift Cluster Management Guide. 1175 // 1176 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1177 // with awserr.Error's Code and Message methods to get detailed information about 1178 // the error. 1179 // 1180 // See the AWS API reference guide for Amazon Redshift's 1181 // API operation CreateCluster for usage and error information. 1182 // 1183 // Returned Error Codes: 1184 // * ErrCodeClusterAlreadyExistsFault "ClusterAlreadyExists" 1185 // The account already has a cluster with the given identifier. 1186 // 1187 // * ErrCodeInsufficientClusterCapacityFault "InsufficientClusterCapacity" 1188 // The number of nodes specified exceeds the allotted capacity of the cluster. 1189 // 1190 // * ErrCodeClusterParameterGroupNotFoundFault "ClusterParameterGroupNotFound" 1191 // The parameter group name does not refer to an existing parameter group. 1192 // 1193 // * ErrCodeClusterSecurityGroupNotFoundFault "ClusterSecurityGroupNotFound" 1194 // The cluster security group name does not refer to an existing cluster security 1195 // group. 1196 // 1197 // * ErrCodeClusterQuotaExceededFault "ClusterQuotaExceeded" 1198 // The request would exceed the allowed number of cluster instances for this 1199 // account. For information about increasing your quota, go to Limits in Amazon 1200 // Redshift (https://docs.aws.amazon.com/redshift/latest/mgmt/amazon-redshift-limits.html) 1201 // in the Amazon Redshift Cluster Management Guide. 1202 // 1203 // * ErrCodeNumberOfNodesQuotaExceededFault "NumberOfNodesQuotaExceeded" 1204 // The operation would exceed the number of nodes allotted to the account. For 1205 // information about increasing your quota, go to Limits in Amazon Redshift 1206 // (https://docs.aws.amazon.com/redshift/latest/mgmt/amazon-redshift-limits.html) 1207 // in the Amazon Redshift Cluster Management Guide. 1208 // 1209 // * ErrCodeNumberOfNodesPerClusterLimitExceededFault "NumberOfNodesPerClusterLimitExceeded" 1210 // The operation would exceed the number of nodes allowed for a cluster. 1211 // 1212 // * ErrCodeClusterSubnetGroupNotFoundFault "ClusterSubnetGroupNotFoundFault" 1213 // The cluster subnet group name does not refer to an existing cluster subnet 1214 // group. 1215 // 1216 // * ErrCodeInvalidVPCNetworkStateFault "InvalidVPCNetworkStateFault" 1217 // The cluster subnet group does not cover all Availability Zones. 1218 // 1219 // * ErrCodeInvalidClusterSubnetGroupStateFault "InvalidClusterSubnetGroupStateFault" 1220 // The cluster subnet group cannot be deleted because it is in use. 1221 // 1222 // * ErrCodeInvalidSubnet "InvalidSubnet" 1223 // The requested subnet is not valid, or not all of the subnets are in the same 1224 // VPC. 1225 // 1226 // * ErrCodeUnauthorizedOperation "UnauthorizedOperation" 1227 // Your account is not authorized to perform the requested operation. 1228 // 1229 // * ErrCodeHsmClientCertificateNotFoundFault "HsmClientCertificateNotFoundFault" 1230 // There is no Amazon Redshift HSM client certificate with the specified identifier. 1231 // 1232 // * ErrCodeHsmConfigurationNotFoundFault "HsmConfigurationNotFoundFault" 1233 // There is no Amazon Redshift HSM configuration with the specified identifier. 1234 // 1235 // * ErrCodeInvalidElasticIpFault "InvalidElasticIpFault" 1236 // The Elastic IP (EIP) is invalid or cannot be found. 1237 // 1238 // * ErrCodeTagLimitExceededFault "TagLimitExceededFault" 1239 // You have exceeded the number of tags allowed. 1240 // 1241 // * ErrCodeInvalidTagFault "InvalidTagFault" 1242 // The tag is invalid. 1243 // 1244 // * ErrCodeLimitExceededFault "LimitExceededFault" 1245 // The encryption key has exceeded its grant limit in Amazon Web Services KMS. 1246 // 1247 // * ErrCodeDependentServiceRequestThrottlingFault "DependentServiceRequestThrottlingFault" 1248 // The request cannot be completed because a dependent service is throttling 1249 // requests made by Amazon Redshift on your behalf. Wait and retry the request. 1250 // 1251 // * ErrCodeInvalidClusterTrackFault "InvalidClusterTrack" 1252 // The provided cluster track name is not valid. 1253 // 1254 // * ErrCodeSnapshotScheduleNotFoundFault "SnapshotScheduleNotFound" 1255 // We could not find the specified snapshot schedule. 1256 // 1257 // * ErrCodeInvalidRetentionPeriodFault "InvalidRetentionPeriodFault" 1258 // The retention period specified is either in the past or is not a valid value. 1259 // 1260 // The value must be either -1 or an integer between 1 and 3,653. 1261 // 1262 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/CreateCluster 1263 func (c *Redshift) CreateCluster(input *CreateClusterInput) (*CreateClusterOutput, error) { 1264 req, out := c.CreateClusterRequest(input) 1265 return out, req.Send() 1266 } 1267 1268 // CreateClusterWithContext is the same as CreateCluster with the addition of 1269 // the ability to pass a context and additional request options. 1270 // 1271 // See CreateCluster for details on how to use this API operation. 1272 // 1273 // The context must be non-nil and will be used for request cancellation. If 1274 // the context is nil a panic will occur. In the future the SDK may create 1275 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1276 // for more information on using Contexts. 1277 func (c *Redshift) CreateClusterWithContext(ctx aws.Context, input *CreateClusterInput, opts ...request.Option) (*CreateClusterOutput, error) { 1278 req, out := c.CreateClusterRequest(input) 1279 req.SetContext(ctx) 1280 req.ApplyOptions(opts...) 1281 return out, req.Send() 1282 } 1283 1284 const opCreateClusterParameterGroup = "CreateClusterParameterGroup" 1285 1286 // CreateClusterParameterGroupRequest generates a "aws/request.Request" representing the 1287 // client's request for the CreateClusterParameterGroup operation. The "output" return 1288 // value will be populated with the request's response once the request completes 1289 // successfully. 1290 // 1291 // Use "Send" method on the returned Request to send the API call to the service. 1292 // the "output" return value is not valid until after Send returns without error. 1293 // 1294 // See CreateClusterParameterGroup for more information on using the CreateClusterParameterGroup 1295 // API call, and error handling. 1296 // 1297 // This method is useful when you want to inject custom logic or configuration 1298 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 1299 // 1300 // 1301 // // Example sending a request using the CreateClusterParameterGroupRequest method. 1302 // req, resp := client.CreateClusterParameterGroupRequest(params) 1303 // 1304 // err := req.Send() 1305 // if err == nil { // resp is now filled 1306 // fmt.Println(resp) 1307 // } 1308 // 1309 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/CreateClusterParameterGroup 1310 func (c *Redshift) CreateClusterParameterGroupRequest(input *CreateClusterParameterGroupInput) (req *request.Request, output *CreateClusterParameterGroupOutput) { 1311 op := &request.Operation{ 1312 Name: opCreateClusterParameterGroup, 1313 HTTPMethod: "POST", 1314 HTTPPath: "/", 1315 } 1316 1317 if input == nil { 1318 input = &CreateClusterParameterGroupInput{} 1319 } 1320 1321 output = &CreateClusterParameterGroupOutput{} 1322 req = c.newRequest(op, input, output) 1323 return 1324 } 1325 1326 // CreateClusterParameterGroup API operation for Amazon Redshift. 1327 // 1328 // Creates an Amazon Redshift parameter group. 1329 // 1330 // Creating parameter groups is independent of creating clusters. You can associate 1331 // a cluster with a parameter group when you create the cluster. You can also 1332 // associate an existing cluster with a parameter group after the cluster is 1333 // created by using ModifyCluster. 1334 // 1335 // Parameters in the parameter group define specific behavior that applies to 1336 // the databases you create on the cluster. For more information about parameters 1337 // and parameter groups, go to Amazon Redshift Parameter Groups (https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-parameter-groups.html) 1338 // in the Amazon Redshift Cluster Management Guide. 1339 // 1340 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1341 // with awserr.Error's Code and Message methods to get detailed information about 1342 // the error. 1343 // 1344 // See the AWS API reference guide for Amazon Redshift's 1345 // API operation CreateClusterParameterGroup for usage and error information. 1346 // 1347 // Returned Error Codes: 1348 // * ErrCodeClusterParameterGroupQuotaExceededFault "ClusterParameterGroupQuotaExceeded" 1349 // The request would result in the user exceeding the allowed number of cluster 1350 // parameter groups. For information about increasing your quota, go to Limits 1351 // in Amazon Redshift (https://docs.aws.amazon.com/redshift/latest/mgmt/amazon-redshift-limits.html) 1352 // in the Amazon Redshift Cluster Management Guide. 1353 // 1354 // * ErrCodeClusterParameterGroupAlreadyExistsFault "ClusterParameterGroupAlreadyExists" 1355 // A cluster parameter group with the same name already exists. 1356 // 1357 // * ErrCodeTagLimitExceededFault "TagLimitExceededFault" 1358 // You have exceeded the number of tags allowed. 1359 // 1360 // * ErrCodeInvalidTagFault "InvalidTagFault" 1361 // The tag is invalid. 1362 // 1363 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/CreateClusterParameterGroup 1364 func (c *Redshift) CreateClusterParameterGroup(input *CreateClusterParameterGroupInput) (*CreateClusterParameterGroupOutput, error) { 1365 req, out := c.CreateClusterParameterGroupRequest(input) 1366 return out, req.Send() 1367 } 1368 1369 // CreateClusterParameterGroupWithContext is the same as CreateClusterParameterGroup with the addition of 1370 // the ability to pass a context and additional request options. 1371 // 1372 // See CreateClusterParameterGroup for details on how to use this API operation. 1373 // 1374 // The context must be non-nil and will be used for request cancellation. If 1375 // the context is nil a panic will occur. In the future the SDK may create 1376 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1377 // for more information on using Contexts. 1378 func (c *Redshift) CreateClusterParameterGroupWithContext(ctx aws.Context, input *CreateClusterParameterGroupInput, opts ...request.Option) (*CreateClusterParameterGroupOutput, error) { 1379 req, out := c.CreateClusterParameterGroupRequest(input) 1380 req.SetContext(ctx) 1381 req.ApplyOptions(opts...) 1382 return out, req.Send() 1383 } 1384 1385 const opCreateClusterSecurityGroup = "CreateClusterSecurityGroup" 1386 1387 // CreateClusterSecurityGroupRequest generates a "aws/request.Request" representing the 1388 // client's request for the CreateClusterSecurityGroup operation. The "output" return 1389 // value will be populated with the request's response once the request completes 1390 // successfully. 1391 // 1392 // Use "Send" method on the returned Request to send the API call to the service. 1393 // the "output" return value is not valid until after Send returns without error. 1394 // 1395 // See CreateClusterSecurityGroup for more information on using the CreateClusterSecurityGroup 1396 // API call, and error handling. 1397 // 1398 // This method is useful when you want to inject custom logic or configuration 1399 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 1400 // 1401 // 1402 // // Example sending a request using the CreateClusterSecurityGroupRequest method. 1403 // req, resp := client.CreateClusterSecurityGroupRequest(params) 1404 // 1405 // err := req.Send() 1406 // if err == nil { // resp is now filled 1407 // fmt.Println(resp) 1408 // } 1409 // 1410 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/CreateClusterSecurityGroup 1411 func (c *Redshift) CreateClusterSecurityGroupRequest(input *CreateClusterSecurityGroupInput) (req *request.Request, output *CreateClusterSecurityGroupOutput) { 1412 op := &request.Operation{ 1413 Name: opCreateClusterSecurityGroup, 1414 HTTPMethod: "POST", 1415 HTTPPath: "/", 1416 } 1417 1418 if input == nil { 1419 input = &CreateClusterSecurityGroupInput{} 1420 } 1421 1422 output = &CreateClusterSecurityGroupOutput{} 1423 req = c.newRequest(op, input, output) 1424 return 1425 } 1426 1427 // CreateClusterSecurityGroup API operation for Amazon Redshift. 1428 // 1429 // Creates a new Amazon Redshift security group. You use security groups to 1430 // control access to non-VPC clusters. 1431 // 1432 // For information about managing security groups, go to Amazon Redshift Cluster 1433 // Security Groups (https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-security-groups.html) 1434 // in the Amazon Redshift Cluster Management Guide. 1435 // 1436 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1437 // with awserr.Error's Code and Message methods to get detailed information about 1438 // the error. 1439 // 1440 // See the AWS API reference guide for Amazon Redshift's 1441 // API operation CreateClusterSecurityGroup for usage and error information. 1442 // 1443 // Returned Error Codes: 1444 // * ErrCodeClusterSecurityGroupAlreadyExistsFault "ClusterSecurityGroupAlreadyExists" 1445 // A cluster security group with the same name already exists. 1446 // 1447 // * ErrCodeClusterSecurityGroupQuotaExceededFault "QuotaExceeded.ClusterSecurityGroup" 1448 // The request would result in the user exceeding the allowed number of cluster 1449 // security groups. For information about increasing your quota, go to Limits 1450 // in Amazon Redshift (https://docs.aws.amazon.com/redshift/latest/mgmt/amazon-redshift-limits.html) 1451 // in the Amazon Redshift Cluster Management Guide. 1452 // 1453 // * ErrCodeTagLimitExceededFault "TagLimitExceededFault" 1454 // You have exceeded the number of tags allowed. 1455 // 1456 // * ErrCodeInvalidTagFault "InvalidTagFault" 1457 // The tag is invalid. 1458 // 1459 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/CreateClusterSecurityGroup 1460 func (c *Redshift) CreateClusterSecurityGroup(input *CreateClusterSecurityGroupInput) (*CreateClusterSecurityGroupOutput, error) { 1461 req, out := c.CreateClusterSecurityGroupRequest(input) 1462 return out, req.Send() 1463 } 1464 1465 // CreateClusterSecurityGroupWithContext is the same as CreateClusterSecurityGroup with the addition of 1466 // the ability to pass a context and additional request options. 1467 // 1468 // See CreateClusterSecurityGroup for details on how to use this API operation. 1469 // 1470 // The context must be non-nil and will be used for request cancellation. If 1471 // the context is nil a panic will occur. In the future the SDK may create 1472 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1473 // for more information on using Contexts. 1474 func (c *Redshift) CreateClusterSecurityGroupWithContext(ctx aws.Context, input *CreateClusterSecurityGroupInput, opts ...request.Option) (*CreateClusterSecurityGroupOutput, error) { 1475 req, out := c.CreateClusterSecurityGroupRequest(input) 1476 req.SetContext(ctx) 1477 req.ApplyOptions(opts...) 1478 return out, req.Send() 1479 } 1480 1481 const opCreateClusterSnapshot = "CreateClusterSnapshot" 1482 1483 // CreateClusterSnapshotRequest generates a "aws/request.Request" representing the 1484 // client's request for the CreateClusterSnapshot operation. The "output" return 1485 // value will be populated with the request's response once the request completes 1486 // successfully. 1487 // 1488 // Use "Send" method on the returned Request to send the API call to the service. 1489 // the "output" return value is not valid until after Send returns without error. 1490 // 1491 // See CreateClusterSnapshot for more information on using the CreateClusterSnapshot 1492 // API call, and error handling. 1493 // 1494 // This method is useful when you want to inject custom logic or configuration 1495 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 1496 // 1497 // 1498 // // Example sending a request using the CreateClusterSnapshotRequest method. 1499 // req, resp := client.CreateClusterSnapshotRequest(params) 1500 // 1501 // err := req.Send() 1502 // if err == nil { // resp is now filled 1503 // fmt.Println(resp) 1504 // } 1505 // 1506 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/CreateClusterSnapshot 1507 func (c *Redshift) CreateClusterSnapshotRequest(input *CreateClusterSnapshotInput) (req *request.Request, output *CreateClusterSnapshotOutput) { 1508 op := &request.Operation{ 1509 Name: opCreateClusterSnapshot, 1510 HTTPMethod: "POST", 1511 HTTPPath: "/", 1512 } 1513 1514 if input == nil { 1515 input = &CreateClusterSnapshotInput{} 1516 } 1517 1518 output = &CreateClusterSnapshotOutput{} 1519 req = c.newRequest(op, input, output) 1520 return 1521 } 1522 1523 // CreateClusterSnapshot API operation for Amazon Redshift. 1524 // 1525 // Creates a manual snapshot of the specified cluster. The cluster must be in 1526 // the available state. 1527 // 1528 // For more information about working with snapshots, go to Amazon Redshift 1529 // Snapshots (https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-snapshots.html) 1530 // in the Amazon Redshift Cluster Management Guide. 1531 // 1532 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1533 // with awserr.Error's Code and Message methods to get detailed information about 1534 // the error. 1535 // 1536 // See the AWS API reference guide for Amazon Redshift's 1537 // API operation CreateClusterSnapshot for usage and error information. 1538 // 1539 // Returned Error Codes: 1540 // * ErrCodeClusterSnapshotAlreadyExistsFault "ClusterSnapshotAlreadyExists" 1541 // The value specified as a snapshot identifier is already used by an existing 1542 // snapshot. 1543 // 1544 // * ErrCodeInvalidClusterStateFault "InvalidClusterState" 1545 // The specified cluster is not in the available state. 1546 // 1547 // * ErrCodeClusterNotFoundFault "ClusterNotFound" 1548 // The ClusterIdentifier parameter does not refer to an existing cluster. 1549 // 1550 // * ErrCodeClusterSnapshotQuotaExceededFault "ClusterSnapshotQuotaExceeded" 1551 // The request would result in the user exceeding the allowed number of cluster 1552 // snapshots. 1553 // 1554 // * ErrCodeTagLimitExceededFault "TagLimitExceededFault" 1555 // You have exceeded the number of tags allowed. 1556 // 1557 // * ErrCodeInvalidTagFault "InvalidTagFault" 1558 // The tag is invalid. 1559 // 1560 // * ErrCodeInvalidRetentionPeriodFault "InvalidRetentionPeriodFault" 1561 // The retention period specified is either in the past or is not a valid value. 1562 // 1563 // The value must be either -1 or an integer between 1 and 3,653. 1564 // 1565 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/CreateClusterSnapshot 1566 func (c *Redshift) CreateClusterSnapshot(input *CreateClusterSnapshotInput) (*CreateClusterSnapshotOutput, error) { 1567 req, out := c.CreateClusterSnapshotRequest(input) 1568 return out, req.Send() 1569 } 1570 1571 // CreateClusterSnapshotWithContext is the same as CreateClusterSnapshot with the addition of 1572 // the ability to pass a context and additional request options. 1573 // 1574 // See CreateClusterSnapshot for details on how to use this API operation. 1575 // 1576 // The context must be non-nil and will be used for request cancellation. If 1577 // the context is nil a panic will occur. In the future the SDK may create 1578 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1579 // for more information on using Contexts. 1580 func (c *Redshift) CreateClusterSnapshotWithContext(ctx aws.Context, input *CreateClusterSnapshotInput, opts ...request.Option) (*CreateClusterSnapshotOutput, error) { 1581 req, out := c.CreateClusterSnapshotRequest(input) 1582 req.SetContext(ctx) 1583 req.ApplyOptions(opts...) 1584 return out, req.Send() 1585 } 1586 1587 const opCreateClusterSubnetGroup = "CreateClusterSubnetGroup" 1588 1589 // CreateClusterSubnetGroupRequest generates a "aws/request.Request" representing the 1590 // client's request for the CreateClusterSubnetGroup operation. The "output" return 1591 // value will be populated with the request's response once the request completes 1592 // successfully. 1593 // 1594 // Use "Send" method on the returned Request to send the API call to the service. 1595 // the "output" return value is not valid until after Send returns without error. 1596 // 1597 // See CreateClusterSubnetGroup for more information on using the CreateClusterSubnetGroup 1598 // API call, and error handling. 1599 // 1600 // This method is useful when you want to inject custom logic or configuration 1601 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 1602 // 1603 // 1604 // // Example sending a request using the CreateClusterSubnetGroupRequest method. 1605 // req, resp := client.CreateClusterSubnetGroupRequest(params) 1606 // 1607 // err := req.Send() 1608 // if err == nil { // resp is now filled 1609 // fmt.Println(resp) 1610 // } 1611 // 1612 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/CreateClusterSubnetGroup 1613 func (c *Redshift) CreateClusterSubnetGroupRequest(input *CreateClusterSubnetGroupInput) (req *request.Request, output *CreateClusterSubnetGroupOutput) { 1614 op := &request.Operation{ 1615 Name: opCreateClusterSubnetGroup, 1616 HTTPMethod: "POST", 1617 HTTPPath: "/", 1618 } 1619 1620 if input == nil { 1621 input = &CreateClusterSubnetGroupInput{} 1622 } 1623 1624 output = &CreateClusterSubnetGroupOutput{} 1625 req = c.newRequest(op, input, output) 1626 return 1627 } 1628 1629 // CreateClusterSubnetGroup API operation for Amazon Redshift. 1630 // 1631 // Creates a new Amazon Redshift subnet group. You must provide a list of one 1632 // or more subnets in your existing Amazon Virtual Private Cloud (Amazon VPC) 1633 // when creating Amazon Redshift subnet group. 1634 // 1635 // For information about subnet groups, go to Amazon Redshift Cluster Subnet 1636 // Groups (https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-cluster-subnet-groups.html) 1637 // in the Amazon Redshift Cluster Management Guide. 1638 // 1639 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1640 // with awserr.Error's Code and Message methods to get detailed information about 1641 // the error. 1642 // 1643 // See the AWS API reference guide for Amazon Redshift's 1644 // API operation CreateClusterSubnetGroup for usage and error information. 1645 // 1646 // Returned Error Codes: 1647 // * ErrCodeClusterSubnetGroupAlreadyExistsFault "ClusterSubnetGroupAlreadyExists" 1648 // A ClusterSubnetGroupName is already used by an existing cluster subnet group. 1649 // 1650 // * ErrCodeClusterSubnetGroupQuotaExceededFault "ClusterSubnetGroupQuotaExceeded" 1651 // The request would result in user exceeding the allowed number of cluster 1652 // subnet groups. For information about increasing your quota, go to Limits 1653 // in Amazon Redshift (https://docs.aws.amazon.com/redshift/latest/mgmt/amazon-redshift-limits.html) 1654 // in the Amazon Redshift Cluster Management Guide. 1655 // 1656 // * ErrCodeClusterSubnetQuotaExceededFault "ClusterSubnetQuotaExceededFault" 1657 // The request would result in user exceeding the allowed number of subnets 1658 // in a cluster subnet groups. For information about increasing your quota, 1659 // go to Limits in Amazon Redshift (https://docs.aws.amazon.com/redshift/latest/mgmt/amazon-redshift-limits.html) 1660 // in the Amazon Redshift Cluster Management Guide. 1661 // 1662 // * ErrCodeInvalidSubnet "InvalidSubnet" 1663 // The requested subnet is not valid, or not all of the subnets are in the same 1664 // VPC. 1665 // 1666 // * ErrCodeUnauthorizedOperation "UnauthorizedOperation" 1667 // Your account is not authorized to perform the requested operation. 1668 // 1669 // * ErrCodeTagLimitExceededFault "TagLimitExceededFault" 1670 // You have exceeded the number of tags allowed. 1671 // 1672 // * ErrCodeInvalidTagFault "InvalidTagFault" 1673 // The tag is invalid. 1674 // 1675 // * ErrCodeDependentServiceRequestThrottlingFault "DependentServiceRequestThrottlingFault" 1676 // The request cannot be completed because a dependent service is throttling 1677 // requests made by Amazon Redshift on your behalf. Wait and retry the request. 1678 // 1679 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/CreateClusterSubnetGroup 1680 func (c *Redshift) CreateClusterSubnetGroup(input *CreateClusterSubnetGroupInput) (*CreateClusterSubnetGroupOutput, error) { 1681 req, out := c.CreateClusterSubnetGroupRequest(input) 1682 return out, req.Send() 1683 } 1684 1685 // CreateClusterSubnetGroupWithContext is the same as CreateClusterSubnetGroup with the addition of 1686 // the ability to pass a context and additional request options. 1687 // 1688 // See CreateClusterSubnetGroup for details on how to use this API operation. 1689 // 1690 // The context must be non-nil and will be used for request cancellation. If 1691 // the context is nil a panic will occur. In the future the SDK may create 1692 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1693 // for more information on using Contexts. 1694 func (c *Redshift) CreateClusterSubnetGroupWithContext(ctx aws.Context, input *CreateClusterSubnetGroupInput, opts ...request.Option) (*CreateClusterSubnetGroupOutput, error) { 1695 req, out := c.CreateClusterSubnetGroupRequest(input) 1696 req.SetContext(ctx) 1697 req.ApplyOptions(opts...) 1698 return out, req.Send() 1699 } 1700 1701 const opCreateEndpointAccess = "CreateEndpointAccess" 1702 1703 // CreateEndpointAccessRequest generates a "aws/request.Request" representing the 1704 // client's request for the CreateEndpointAccess operation. The "output" return 1705 // value will be populated with the request's response once the request completes 1706 // successfully. 1707 // 1708 // Use "Send" method on the returned Request to send the API call to the service. 1709 // the "output" return value is not valid until after Send returns without error. 1710 // 1711 // See CreateEndpointAccess for more information on using the CreateEndpointAccess 1712 // API call, and error handling. 1713 // 1714 // This method is useful when you want to inject custom logic or configuration 1715 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 1716 // 1717 // 1718 // // Example sending a request using the CreateEndpointAccessRequest method. 1719 // req, resp := client.CreateEndpointAccessRequest(params) 1720 // 1721 // err := req.Send() 1722 // if err == nil { // resp is now filled 1723 // fmt.Println(resp) 1724 // } 1725 // 1726 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/CreateEndpointAccess 1727 func (c *Redshift) CreateEndpointAccessRequest(input *CreateEndpointAccessInput) (req *request.Request, output *CreateEndpointAccessOutput) { 1728 op := &request.Operation{ 1729 Name: opCreateEndpointAccess, 1730 HTTPMethod: "POST", 1731 HTTPPath: "/", 1732 } 1733 1734 if input == nil { 1735 input = &CreateEndpointAccessInput{} 1736 } 1737 1738 output = &CreateEndpointAccessOutput{} 1739 req = c.newRequest(op, input, output) 1740 return 1741 } 1742 1743 // CreateEndpointAccess API operation for Amazon Redshift. 1744 // 1745 // Creates a Redshift-managed VPC endpoint. 1746 // 1747 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1748 // with awserr.Error's Code and Message methods to get detailed information about 1749 // the error. 1750 // 1751 // See the AWS API reference guide for Amazon Redshift's 1752 // API operation CreateEndpointAccess for usage and error information. 1753 // 1754 // Returned Error Codes: 1755 // * ErrCodeClusterNotFoundFault "ClusterNotFound" 1756 // The ClusterIdentifier parameter does not refer to an existing cluster. 1757 // 1758 // * ErrCodeAccessToClusterDeniedFault "AccessToClusterDenied" 1759 // You are not authorized to access the cluster. 1760 // 1761 // * ErrCodeEndpointsPerClusterLimitExceededFault "EndpointsPerClusterLimitExceeded" 1762 // The number of Redshift-managed VPC endpoints per cluster has exceeded its 1763 // limit. 1764 // 1765 // * ErrCodeEndpointsPerAuthorizationLimitExceededFault "EndpointsPerAuthorizationLimitExceeded" 1766 // The number of Redshift-managed VPC endpoints per authorization has exceeded 1767 // its limit. 1768 // 1769 // * ErrCodeInvalidClusterSecurityGroupStateFault "InvalidClusterSecurityGroupState" 1770 // The state of the cluster security group is not available. 1771 // 1772 // * ErrCodeClusterSubnetGroupNotFoundFault "ClusterSubnetGroupNotFoundFault" 1773 // The cluster subnet group name does not refer to an existing cluster subnet 1774 // group. 1775 // 1776 // * ErrCodeEndpointAlreadyExistsFault "EndpointAlreadyExists" 1777 // The account already has a Redshift-managed VPC endpoint with the given identifier. 1778 // 1779 // * ErrCodeUnsupportedOperationFault "UnsupportedOperation" 1780 // The requested operation isn't supported. 1781 // 1782 // * ErrCodeInvalidClusterStateFault "InvalidClusterState" 1783 // The specified cluster is not in the available state. 1784 // 1785 // * ErrCodeUnauthorizedOperation "UnauthorizedOperation" 1786 // Your account is not authorized to perform the requested operation. 1787 // 1788 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/CreateEndpointAccess 1789 func (c *Redshift) CreateEndpointAccess(input *CreateEndpointAccessInput) (*CreateEndpointAccessOutput, error) { 1790 req, out := c.CreateEndpointAccessRequest(input) 1791 return out, req.Send() 1792 } 1793 1794 // CreateEndpointAccessWithContext is the same as CreateEndpointAccess with the addition of 1795 // the ability to pass a context and additional request options. 1796 // 1797 // See CreateEndpointAccess for details on how to use this API operation. 1798 // 1799 // The context must be non-nil and will be used for request cancellation. If 1800 // the context is nil a panic will occur. In the future the SDK may create 1801 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1802 // for more information on using Contexts. 1803 func (c *Redshift) CreateEndpointAccessWithContext(ctx aws.Context, input *CreateEndpointAccessInput, opts ...request.Option) (*CreateEndpointAccessOutput, error) { 1804 req, out := c.CreateEndpointAccessRequest(input) 1805 req.SetContext(ctx) 1806 req.ApplyOptions(opts...) 1807 return out, req.Send() 1808 } 1809 1810 const opCreateEventSubscription = "CreateEventSubscription" 1811 1812 // CreateEventSubscriptionRequest generates a "aws/request.Request" representing the 1813 // client's request for the CreateEventSubscription operation. The "output" return 1814 // value will be populated with the request's response once the request completes 1815 // successfully. 1816 // 1817 // Use "Send" method on the returned Request to send the API call to the service. 1818 // the "output" return value is not valid until after Send returns without error. 1819 // 1820 // See CreateEventSubscription for more information on using the CreateEventSubscription 1821 // API call, and error handling. 1822 // 1823 // This method is useful when you want to inject custom logic or configuration 1824 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 1825 // 1826 // 1827 // // Example sending a request using the CreateEventSubscriptionRequest method. 1828 // req, resp := client.CreateEventSubscriptionRequest(params) 1829 // 1830 // err := req.Send() 1831 // if err == nil { // resp is now filled 1832 // fmt.Println(resp) 1833 // } 1834 // 1835 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/CreateEventSubscription 1836 func (c *Redshift) CreateEventSubscriptionRequest(input *CreateEventSubscriptionInput) (req *request.Request, output *CreateEventSubscriptionOutput) { 1837 op := &request.Operation{ 1838 Name: opCreateEventSubscription, 1839 HTTPMethod: "POST", 1840 HTTPPath: "/", 1841 } 1842 1843 if input == nil { 1844 input = &CreateEventSubscriptionInput{} 1845 } 1846 1847 output = &CreateEventSubscriptionOutput{} 1848 req = c.newRequest(op, input, output) 1849 return 1850 } 1851 1852 // CreateEventSubscription API operation for Amazon Redshift. 1853 // 1854 // Creates an Amazon Redshift event notification subscription. This action requires 1855 // an ARN (Amazon Resource Name) of an Amazon SNS topic created by either the 1856 // Amazon Redshift console, the Amazon SNS console, or the Amazon SNS API. To 1857 // obtain an ARN with Amazon SNS, you must create a topic in Amazon SNS and 1858 // subscribe to the topic. The ARN is displayed in the SNS console. 1859 // 1860 // You can specify the source type, and lists of Amazon Redshift source IDs, 1861 // event categories, and event severities. Notifications will be sent for all 1862 // events you want that match those criteria. For example, you can specify source 1863 // type = cluster, source ID = my-cluster-1 and mycluster2, event categories 1864 // = Availability, Backup, and severity = ERROR. The subscription will only 1865 // send notifications for those ERROR events in the Availability and Backup 1866 // categories for the specified clusters. 1867 // 1868 // If you specify both the source type and source IDs, such as source type = 1869 // cluster and source identifier = my-cluster-1, notifications will be sent 1870 // for all the cluster events for my-cluster-1. If you specify a source type 1871 // but do not specify a source identifier, you will receive notice of the events 1872 // for the objects of that type in your Amazon Web Services account. If you 1873 // do not specify either the SourceType nor the SourceIdentifier, you will be 1874 // notified of events generated from all Amazon Redshift sources belonging to 1875 // your Amazon Web Services account. You must specify a source type if you specify 1876 // a source ID. 1877 // 1878 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1879 // with awserr.Error's Code and Message methods to get detailed information about 1880 // the error. 1881 // 1882 // See the AWS API reference guide for Amazon Redshift's 1883 // API operation CreateEventSubscription for usage and error information. 1884 // 1885 // Returned Error Codes: 1886 // * ErrCodeEventSubscriptionQuotaExceededFault "EventSubscriptionQuotaExceeded" 1887 // The request would exceed the allowed number of event subscriptions for this 1888 // account. For information about increasing your quota, go to Limits in Amazon 1889 // Redshift (https://docs.aws.amazon.com/redshift/latest/mgmt/amazon-redshift-limits.html) 1890 // in the Amazon Redshift Cluster Management Guide. 1891 // 1892 // * ErrCodeSubscriptionAlreadyExistFault "SubscriptionAlreadyExist" 1893 // There is already an existing event notification subscription with the specified 1894 // name. 1895 // 1896 // * ErrCodeSNSInvalidTopicFault "SNSInvalidTopic" 1897 // Amazon SNS has responded that there is a problem with the specified Amazon 1898 // SNS topic. 1899 // 1900 // * ErrCodeSNSNoAuthorizationFault "SNSNoAuthorization" 1901 // You do not have permission to publish to the specified Amazon SNS topic. 1902 // 1903 // * ErrCodeSNSTopicArnNotFoundFault "SNSTopicArnNotFound" 1904 // An Amazon SNS topic with the specified Amazon Resource Name (ARN) does not 1905 // exist. 1906 // 1907 // * ErrCodeSubscriptionEventIdNotFoundFault "SubscriptionEventIdNotFound" 1908 // An Amazon Redshift event with the specified event ID does not exist. 1909 // 1910 // * ErrCodeSubscriptionCategoryNotFoundFault "SubscriptionCategoryNotFound" 1911 // The value specified for the event category was not one of the allowed values, 1912 // or it specified a category that does not apply to the specified source type. 1913 // The allowed values are Configuration, Management, Monitoring, and Security. 1914 // 1915 // * ErrCodeSubscriptionSeverityNotFoundFault "SubscriptionSeverityNotFound" 1916 // The value specified for the event severity was not one of the allowed values, 1917 // or it specified a severity that does not apply to the specified source type. 1918 // The allowed values are ERROR and INFO. 1919 // 1920 // * ErrCodeSourceNotFoundFault "SourceNotFound" 1921 // The specified Amazon Redshift event source could not be found. 1922 // 1923 // * ErrCodeTagLimitExceededFault "TagLimitExceededFault" 1924 // You have exceeded the number of tags allowed. 1925 // 1926 // * ErrCodeInvalidTagFault "InvalidTagFault" 1927 // The tag is invalid. 1928 // 1929 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/CreateEventSubscription 1930 func (c *Redshift) CreateEventSubscription(input *CreateEventSubscriptionInput) (*CreateEventSubscriptionOutput, error) { 1931 req, out := c.CreateEventSubscriptionRequest(input) 1932 return out, req.Send() 1933 } 1934 1935 // CreateEventSubscriptionWithContext is the same as CreateEventSubscription with the addition of 1936 // the ability to pass a context and additional request options. 1937 // 1938 // See CreateEventSubscription for details on how to use this API operation. 1939 // 1940 // The context must be non-nil and will be used for request cancellation. If 1941 // the context is nil a panic will occur. In the future the SDK may create 1942 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1943 // for more information on using Contexts. 1944 func (c *Redshift) CreateEventSubscriptionWithContext(ctx aws.Context, input *CreateEventSubscriptionInput, opts ...request.Option) (*CreateEventSubscriptionOutput, error) { 1945 req, out := c.CreateEventSubscriptionRequest(input) 1946 req.SetContext(ctx) 1947 req.ApplyOptions(opts...) 1948 return out, req.Send() 1949 } 1950 1951 const opCreateHsmClientCertificate = "CreateHsmClientCertificate" 1952 1953 // CreateHsmClientCertificateRequest generates a "aws/request.Request" representing the 1954 // client's request for the CreateHsmClientCertificate operation. The "output" return 1955 // value will be populated with the request's response once the request completes 1956 // successfully. 1957 // 1958 // Use "Send" method on the returned Request to send the API call to the service. 1959 // the "output" return value is not valid until after Send returns without error. 1960 // 1961 // See CreateHsmClientCertificate for more information on using the CreateHsmClientCertificate 1962 // API call, and error handling. 1963 // 1964 // This method is useful when you want to inject custom logic or configuration 1965 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 1966 // 1967 // 1968 // // Example sending a request using the CreateHsmClientCertificateRequest method. 1969 // req, resp := client.CreateHsmClientCertificateRequest(params) 1970 // 1971 // err := req.Send() 1972 // if err == nil { // resp is now filled 1973 // fmt.Println(resp) 1974 // } 1975 // 1976 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/CreateHsmClientCertificate 1977 func (c *Redshift) CreateHsmClientCertificateRequest(input *CreateHsmClientCertificateInput) (req *request.Request, output *CreateHsmClientCertificateOutput) { 1978 op := &request.Operation{ 1979 Name: opCreateHsmClientCertificate, 1980 HTTPMethod: "POST", 1981 HTTPPath: "/", 1982 } 1983 1984 if input == nil { 1985 input = &CreateHsmClientCertificateInput{} 1986 } 1987 1988 output = &CreateHsmClientCertificateOutput{} 1989 req = c.newRequest(op, input, output) 1990 return 1991 } 1992 1993 // CreateHsmClientCertificate API operation for Amazon Redshift. 1994 // 1995 // Creates an HSM client certificate that an Amazon Redshift cluster will use 1996 // to connect to the client's HSM in order to store and retrieve the keys used 1997 // to encrypt the cluster databases. 1998 // 1999 // The command returns a public key, which you must store in the HSM. In addition 2000 // to creating the HSM certificate, you must create an Amazon Redshift HSM configuration 2001 // that provides a cluster the information needed to store and use encryption 2002 // keys in the HSM. For more information, go to Hardware Security Modules (https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-db-encryption.html#working-with-HSM) 2003 // in the Amazon Redshift Cluster Management Guide. 2004 // 2005 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2006 // with awserr.Error's Code and Message methods to get detailed information about 2007 // the error. 2008 // 2009 // See the AWS API reference guide for Amazon Redshift's 2010 // API operation CreateHsmClientCertificate for usage and error information. 2011 // 2012 // Returned Error Codes: 2013 // * ErrCodeHsmClientCertificateAlreadyExistsFault "HsmClientCertificateAlreadyExistsFault" 2014 // There is already an existing Amazon Redshift HSM client certificate with 2015 // the specified identifier. 2016 // 2017 // * ErrCodeHsmClientCertificateQuotaExceededFault "HsmClientCertificateQuotaExceededFault" 2018 // The quota for HSM client certificates has been reached. For information about 2019 // increasing your quota, go to Limits in Amazon Redshift (https://docs.aws.amazon.com/redshift/latest/mgmt/amazon-redshift-limits.html) 2020 // in the Amazon Redshift Cluster Management Guide. 2021 // 2022 // * ErrCodeTagLimitExceededFault "TagLimitExceededFault" 2023 // You have exceeded the number of tags allowed. 2024 // 2025 // * ErrCodeInvalidTagFault "InvalidTagFault" 2026 // The tag is invalid. 2027 // 2028 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/CreateHsmClientCertificate 2029 func (c *Redshift) CreateHsmClientCertificate(input *CreateHsmClientCertificateInput) (*CreateHsmClientCertificateOutput, error) { 2030 req, out := c.CreateHsmClientCertificateRequest(input) 2031 return out, req.Send() 2032 } 2033 2034 // CreateHsmClientCertificateWithContext is the same as CreateHsmClientCertificate with the addition of 2035 // the ability to pass a context and additional request options. 2036 // 2037 // See CreateHsmClientCertificate for details on how to use this API operation. 2038 // 2039 // The context must be non-nil and will be used for request cancellation. If 2040 // the context is nil a panic will occur. In the future the SDK may create 2041 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2042 // for more information on using Contexts. 2043 func (c *Redshift) CreateHsmClientCertificateWithContext(ctx aws.Context, input *CreateHsmClientCertificateInput, opts ...request.Option) (*CreateHsmClientCertificateOutput, error) { 2044 req, out := c.CreateHsmClientCertificateRequest(input) 2045 req.SetContext(ctx) 2046 req.ApplyOptions(opts...) 2047 return out, req.Send() 2048 } 2049 2050 const opCreateHsmConfiguration = "CreateHsmConfiguration" 2051 2052 // CreateHsmConfigurationRequest generates a "aws/request.Request" representing the 2053 // client's request for the CreateHsmConfiguration operation. The "output" return 2054 // value will be populated with the request's response once the request completes 2055 // successfully. 2056 // 2057 // Use "Send" method on the returned Request to send the API call to the service. 2058 // the "output" return value is not valid until after Send returns without error. 2059 // 2060 // See CreateHsmConfiguration for more information on using the CreateHsmConfiguration 2061 // API call, and error handling. 2062 // 2063 // This method is useful when you want to inject custom logic or configuration 2064 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 2065 // 2066 // 2067 // // Example sending a request using the CreateHsmConfigurationRequest method. 2068 // req, resp := client.CreateHsmConfigurationRequest(params) 2069 // 2070 // err := req.Send() 2071 // if err == nil { // resp is now filled 2072 // fmt.Println(resp) 2073 // } 2074 // 2075 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/CreateHsmConfiguration 2076 func (c *Redshift) CreateHsmConfigurationRequest(input *CreateHsmConfigurationInput) (req *request.Request, output *CreateHsmConfigurationOutput) { 2077 op := &request.Operation{ 2078 Name: opCreateHsmConfiguration, 2079 HTTPMethod: "POST", 2080 HTTPPath: "/", 2081 } 2082 2083 if input == nil { 2084 input = &CreateHsmConfigurationInput{} 2085 } 2086 2087 output = &CreateHsmConfigurationOutput{} 2088 req = c.newRequest(op, input, output) 2089 return 2090 } 2091 2092 // CreateHsmConfiguration API operation for Amazon Redshift. 2093 // 2094 // Creates an HSM configuration that contains the information required by an 2095 // Amazon Redshift cluster to store and use database encryption keys in a Hardware 2096 // Security Module (HSM). After creating the HSM configuration, you can specify 2097 // it as a parameter when creating a cluster. The cluster will then store its 2098 // encryption keys in the HSM. 2099 // 2100 // In addition to creating an HSM configuration, you must also create an HSM 2101 // client certificate. For more information, go to Hardware Security Modules 2102 // (https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-HSM.html) 2103 // in the Amazon Redshift Cluster Management Guide. 2104 // 2105 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2106 // with awserr.Error's Code and Message methods to get detailed information about 2107 // the error. 2108 // 2109 // See the AWS API reference guide for Amazon Redshift's 2110 // API operation CreateHsmConfiguration for usage and error information. 2111 // 2112 // Returned Error Codes: 2113 // * ErrCodeHsmConfigurationAlreadyExistsFault "HsmConfigurationAlreadyExistsFault" 2114 // There is already an existing Amazon Redshift HSM configuration with the specified 2115 // identifier. 2116 // 2117 // * ErrCodeHsmConfigurationQuotaExceededFault "HsmConfigurationQuotaExceededFault" 2118 // The quota for HSM configurations has been reached. For information about 2119 // increasing your quota, go to Limits in Amazon Redshift (https://docs.aws.amazon.com/redshift/latest/mgmt/amazon-redshift-limits.html) 2120 // in the Amazon Redshift Cluster Management Guide. 2121 // 2122 // * ErrCodeTagLimitExceededFault "TagLimitExceededFault" 2123 // You have exceeded the number of tags allowed. 2124 // 2125 // * ErrCodeInvalidTagFault "InvalidTagFault" 2126 // The tag is invalid. 2127 // 2128 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/CreateHsmConfiguration 2129 func (c *Redshift) CreateHsmConfiguration(input *CreateHsmConfigurationInput) (*CreateHsmConfigurationOutput, error) { 2130 req, out := c.CreateHsmConfigurationRequest(input) 2131 return out, req.Send() 2132 } 2133 2134 // CreateHsmConfigurationWithContext is the same as CreateHsmConfiguration with the addition of 2135 // the ability to pass a context and additional request options. 2136 // 2137 // See CreateHsmConfiguration for details on how to use this API operation. 2138 // 2139 // The context must be non-nil and will be used for request cancellation. If 2140 // the context is nil a panic will occur. In the future the SDK may create 2141 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2142 // for more information on using Contexts. 2143 func (c *Redshift) CreateHsmConfigurationWithContext(ctx aws.Context, input *CreateHsmConfigurationInput, opts ...request.Option) (*CreateHsmConfigurationOutput, error) { 2144 req, out := c.CreateHsmConfigurationRequest(input) 2145 req.SetContext(ctx) 2146 req.ApplyOptions(opts...) 2147 return out, req.Send() 2148 } 2149 2150 const opCreateScheduledAction = "CreateScheduledAction" 2151 2152 // CreateScheduledActionRequest generates a "aws/request.Request" representing the 2153 // client's request for the CreateScheduledAction operation. The "output" return 2154 // value will be populated with the request's response once the request completes 2155 // successfully. 2156 // 2157 // Use "Send" method on the returned Request to send the API call to the service. 2158 // the "output" return value is not valid until after Send returns without error. 2159 // 2160 // See CreateScheduledAction for more information on using the CreateScheduledAction 2161 // API call, and error handling. 2162 // 2163 // This method is useful when you want to inject custom logic or configuration 2164 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 2165 // 2166 // 2167 // // Example sending a request using the CreateScheduledActionRequest method. 2168 // req, resp := client.CreateScheduledActionRequest(params) 2169 // 2170 // err := req.Send() 2171 // if err == nil { // resp is now filled 2172 // fmt.Println(resp) 2173 // } 2174 // 2175 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/CreateScheduledAction 2176 func (c *Redshift) CreateScheduledActionRequest(input *CreateScheduledActionInput) (req *request.Request, output *CreateScheduledActionOutput) { 2177 op := &request.Operation{ 2178 Name: opCreateScheduledAction, 2179 HTTPMethod: "POST", 2180 HTTPPath: "/", 2181 } 2182 2183 if input == nil { 2184 input = &CreateScheduledActionInput{} 2185 } 2186 2187 output = &CreateScheduledActionOutput{} 2188 req = c.newRequest(op, input, output) 2189 return 2190 } 2191 2192 // CreateScheduledAction API operation for Amazon Redshift. 2193 // 2194 // Creates a scheduled action. A scheduled action contains a schedule and an 2195 // Amazon Redshift API action. For example, you can create a schedule of when 2196 // to run the ResizeCluster API operation. 2197 // 2198 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2199 // with awserr.Error's Code and Message methods to get detailed information about 2200 // the error. 2201 // 2202 // See the AWS API reference guide for Amazon Redshift's 2203 // API operation CreateScheduledAction for usage and error information. 2204 // 2205 // Returned Error Codes: 2206 // * ErrCodeScheduledActionAlreadyExistsFault "ScheduledActionAlreadyExists" 2207 // The scheduled action already exists. 2208 // 2209 // * ErrCodeScheduledActionQuotaExceededFault "ScheduledActionQuotaExceeded" 2210 // The quota for scheduled actions exceeded. 2211 // 2212 // * ErrCodeScheduledActionTypeUnsupportedFault "ScheduledActionTypeUnsupported" 2213 // The action type specified for a scheduled action is not supported. 2214 // 2215 // * ErrCodeInvalidScheduleFault "InvalidSchedule" 2216 // The schedule you submitted isn't valid. 2217 // 2218 // * ErrCodeInvalidScheduledActionFault "InvalidScheduledAction" 2219 // The scheduled action is not valid. 2220 // 2221 // * ErrCodeUnauthorizedOperation "UnauthorizedOperation" 2222 // Your account is not authorized to perform the requested operation. 2223 // 2224 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/CreateScheduledAction 2225 func (c *Redshift) CreateScheduledAction(input *CreateScheduledActionInput) (*CreateScheduledActionOutput, error) { 2226 req, out := c.CreateScheduledActionRequest(input) 2227 return out, req.Send() 2228 } 2229 2230 // CreateScheduledActionWithContext is the same as CreateScheduledAction with the addition of 2231 // the ability to pass a context and additional request options. 2232 // 2233 // See CreateScheduledAction for details on how to use this API operation. 2234 // 2235 // The context must be non-nil and will be used for request cancellation. If 2236 // the context is nil a panic will occur. In the future the SDK may create 2237 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2238 // for more information on using Contexts. 2239 func (c *Redshift) CreateScheduledActionWithContext(ctx aws.Context, input *CreateScheduledActionInput, opts ...request.Option) (*CreateScheduledActionOutput, error) { 2240 req, out := c.CreateScheduledActionRequest(input) 2241 req.SetContext(ctx) 2242 req.ApplyOptions(opts...) 2243 return out, req.Send() 2244 } 2245 2246 const opCreateSnapshotCopyGrant = "CreateSnapshotCopyGrant" 2247 2248 // CreateSnapshotCopyGrantRequest generates a "aws/request.Request" representing the 2249 // client's request for the CreateSnapshotCopyGrant operation. The "output" return 2250 // value will be populated with the request's response once the request completes 2251 // successfully. 2252 // 2253 // Use "Send" method on the returned Request to send the API call to the service. 2254 // the "output" return value is not valid until after Send returns without error. 2255 // 2256 // See CreateSnapshotCopyGrant for more information on using the CreateSnapshotCopyGrant 2257 // API call, and error handling. 2258 // 2259 // This method is useful when you want to inject custom logic or configuration 2260 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 2261 // 2262 // 2263 // // Example sending a request using the CreateSnapshotCopyGrantRequest method. 2264 // req, resp := client.CreateSnapshotCopyGrantRequest(params) 2265 // 2266 // err := req.Send() 2267 // if err == nil { // resp is now filled 2268 // fmt.Println(resp) 2269 // } 2270 // 2271 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/CreateSnapshotCopyGrant 2272 func (c *Redshift) CreateSnapshotCopyGrantRequest(input *CreateSnapshotCopyGrantInput) (req *request.Request, output *CreateSnapshotCopyGrantOutput) { 2273 op := &request.Operation{ 2274 Name: opCreateSnapshotCopyGrant, 2275 HTTPMethod: "POST", 2276 HTTPPath: "/", 2277 } 2278 2279 if input == nil { 2280 input = &CreateSnapshotCopyGrantInput{} 2281 } 2282 2283 output = &CreateSnapshotCopyGrantOutput{} 2284 req = c.newRequest(op, input, output) 2285 return 2286 } 2287 2288 // CreateSnapshotCopyGrant API operation for Amazon Redshift. 2289 // 2290 // Creates a snapshot copy grant that permits Amazon Redshift to use a customer 2291 // master key (CMK) from Key Management Service (KMS) to encrypt copied snapshots 2292 // in a destination region. 2293 // 2294 // For more information about managing snapshot copy grants, go to Amazon Redshift 2295 // Database Encryption (https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-db-encryption.html) 2296 // in the Amazon Redshift Cluster Management Guide. 2297 // 2298 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2299 // with awserr.Error's Code and Message methods to get detailed information about 2300 // the error. 2301 // 2302 // See the AWS API reference guide for Amazon Redshift's 2303 // API operation CreateSnapshotCopyGrant for usage and error information. 2304 // 2305 // Returned Error Codes: 2306 // * ErrCodeSnapshotCopyGrantAlreadyExistsFault "SnapshotCopyGrantAlreadyExistsFault" 2307 // The snapshot copy grant can't be created because a grant with the same name 2308 // already exists. 2309 // 2310 // * ErrCodeSnapshotCopyGrantQuotaExceededFault "SnapshotCopyGrantQuotaExceededFault" 2311 // The Amazon Web Services account has exceeded the maximum number of snapshot 2312 // copy grants in this region. 2313 // 2314 // * ErrCodeLimitExceededFault "LimitExceededFault" 2315 // The encryption key has exceeded its grant limit in Amazon Web Services KMS. 2316 // 2317 // * ErrCodeTagLimitExceededFault "TagLimitExceededFault" 2318 // You have exceeded the number of tags allowed. 2319 // 2320 // * ErrCodeInvalidTagFault "InvalidTagFault" 2321 // The tag is invalid. 2322 // 2323 // * ErrCodeDependentServiceRequestThrottlingFault "DependentServiceRequestThrottlingFault" 2324 // The request cannot be completed because a dependent service is throttling 2325 // requests made by Amazon Redshift on your behalf. Wait and retry the request. 2326 // 2327 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/CreateSnapshotCopyGrant 2328 func (c *Redshift) CreateSnapshotCopyGrant(input *CreateSnapshotCopyGrantInput) (*CreateSnapshotCopyGrantOutput, error) { 2329 req, out := c.CreateSnapshotCopyGrantRequest(input) 2330 return out, req.Send() 2331 } 2332 2333 // CreateSnapshotCopyGrantWithContext is the same as CreateSnapshotCopyGrant with the addition of 2334 // the ability to pass a context and additional request options. 2335 // 2336 // See CreateSnapshotCopyGrant for details on how to use this API operation. 2337 // 2338 // The context must be non-nil and will be used for request cancellation. If 2339 // the context is nil a panic will occur. In the future the SDK may create 2340 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2341 // for more information on using Contexts. 2342 func (c *Redshift) CreateSnapshotCopyGrantWithContext(ctx aws.Context, input *CreateSnapshotCopyGrantInput, opts ...request.Option) (*CreateSnapshotCopyGrantOutput, error) { 2343 req, out := c.CreateSnapshotCopyGrantRequest(input) 2344 req.SetContext(ctx) 2345 req.ApplyOptions(opts...) 2346 return out, req.Send() 2347 } 2348 2349 const opCreateSnapshotSchedule = "CreateSnapshotSchedule" 2350 2351 // CreateSnapshotScheduleRequest generates a "aws/request.Request" representing the 2352 // client's request for the CreateSnapshotSchedule operation. The "output" return 2353 // value will be populated with the request's response once the request completes 2354 // successfully. 2355 // 2356 // Use "Send" method on the returned Request to send the API call to the service. 2357 // the "output" return value is not valid until after Send returns without error. 2358 // 2359 // See CreateSnapshotSchedule for more information on using the CreateSnapshotSchedule 2360 // API call, and error handling. 2361 // 2362 // This method is useful when you want to inject custom logic or configuration 2363 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 2364 // 2365 // 2366 // // Example sending a request using the CreateSnapshotScheduleRequest method. 2367 // req, resp := client.CreateSnapshotScheduleRequest(params) 2368 // 2369 // err := req.Send() 2370 // if err == nil { // resp is now filled 2371 // fmt.Println(resp) 2372 // } 2373 // 2374 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/CreateSnapshotSchedule 2375 func (c *Redshift) CreateSnapshotScheduleRequest(input *CreateSnapshotScheduleInput) (req *request.Request, output *CreateSnapshotScheduleOutput) { 2376 op := &request.Operation{ 2377 Name: opCreateSnapshotSchedule, 2378 HTTPMethod: "POST", 2379 HTTPPath: "/", 2380 } 2381 2382 if input == nil { 2383 input = &CreateSnapshotScheduleInput{} 2384 } 2385 2386 output = &CreateSnapshotScheduleOutput{} 2387 req = c.newRequest(op, input, output) 2388 return 2389 } 2390 2391 // CreateSnapshotSchedule API operation for Amazon Redshift. 2392 // 2393 // Create a snapshot schedule that can be associated to a cluster and which 2394 // overrides the default system backup schedule. 2395 // 2396 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2397 // with awserr.Error's Code and Message methods to get detailed information about 2398 // the error. 2399 // 2400 // See the AWS API reference guide for Amazon Redshift's 2401 // API operation CreateSnapshotSchedule for usage and error information. 2402 // 2403 // Returned Error Codes: 2404 // * ErrCodeSnapshotScheduleAlreadyExistsFault "SnapshotScheduleAlreadyExists" 2405 // The specified snapshot schedule already exists. 2406 // 2407 // * ErrCodeInvalidScheduleFault "InvalidSchedule" 2408 // The schedule you submitted isn't valid. 2409 // 2410 // * ErrCodeSnapshotScheduleQuotaExceededFault "SnapshotScheduleQuotaExceeded" 2411 // You have exceeded the quota of snapshot schedules. 2412 // 2413 // * ErrCodeTagLimitExceededFault "TagLimitExceededFault" 2414 // You have exceeded the number of tags allowed. 2415 // 2416 // * ErrCodeScheduleDefinitionTypeUnsupportedFault "ScheduleDefinitionTypeUnsupported" 2417 // The definition you submitted is not supported. 2418 // 2419 // * ErrCodeInvalidTagFault "InvalidTagFault" 2420 // The tag is invalid. 2421 // 2422 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/CreateSnapshotSchedule 2423 func (c *Redshift) CreateSnapshotSchedule(input *CreateSnapshotScheduleInput) (*CreateSnapshotScheduleOutput, error) { 2424 req, out := c.CreateSnapshotScheduleRequest(input) 2425 return out, req.Send() 2426 } 2427 2428 // CreateSnapshotScheduleWithContext is the same as CreateSnapshotSchedule with the addition of 2429 // the ability to pass a context and additional request options. 2430 // 2431 // See CreateSnapshotSchedule for details on how to use this API operation. 2432 // 2433 // The context must be non-nil and will be used for request cancellation. If 2434 // the context is nil a panic will occur. In the future the SDK may create 2435 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2436 // for more information on using Contexts. 2437 func (c *Redshift) CreateSnapshotScheduleWithContext(ctx aws.Context, input *CreateSnapshotScheduleInput, opts ...request.Option) (*CreateSnapshotScheduleOutput, error) { 2438 req, out := c.CreateSnapshotScheduleRequest(input) 2439 req.SetContext(ctx) 2440 req.ApplyOptions(opts...) 2441 return out, req.Send() 2442 } 2443 2444 const opCreateTags = "CreateTags" 2445 2446 // CreateTagsRequest generates a "aws/request.Request" representing the 2447 // client's request for the CreateTags operation. The "output" return 2448 // value will be populated with the request's response once the request completes 2449 // successfully. 2450 // 2451 // Use "Send" method on the returned Request to send the API call to the service. 2452 // the "output" return value is not valid until after Send returns without error. 2453 // 2454 // See CreateTags for more information on using the CreateTags 2455 // API call, and error handling. 2456 // 2457 // This method is useful when you want to inject custom logic or configuration 2458 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 2459 // 2460 // 2461 // // Example sending a request using the CreateTagsRequest method. 2462 // req, resp := client.CreateTagsRequest(params) 2463 // 2464 // err := req.Send() 2465 // if err == nil { // resp is now filled 2466 // fmt.Println(resp) 2467 // } 2468 // 2469 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/CreateTags 2470 func (c *Redshift) CreateTagsRequest(input *CreateTagsInput) (req *request.Request, output *CreateTagsOutput) { 2471 op := &request.Operation{ 2472 Name: opCreateTags, 2473 HTTPMethod: "POST", 2474 HTTPPath: "/", 2475 } 2476 2477 if input == nil { 2478 input = &CreateTagsInput{} 2479 } 2480 2481 output = &CreateTagsOutput{} 2482 req = c.newRequest(op, input, output) 2483 req.Handlers.Unmarshal.Swap(query.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 2484 return 2485 } 2486 2487 // CreateTags API operation for Amazon Redshift. 2488 // 2489 // Adds tags to a cluster. 2490 // 2491 // A resource can have up to 50 tags. If you try to create more than 50 tags 2492 // for a resource, you will receive an error and the attempt will fail. 2493 // 2494 // If you specify a key that already exists for the resource, the value for 2495 // that key will be updated with the new value. 2496 // 2497 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2498 // with awserr.Error's Code and Message methods to get detailed information about 2499 // the error. 2500 // 2501 // See the AWS API reference guide for Amazon Redshift's 2502 // API operation CreateTags for usage and error information. 2503 // 2504 // Returned Error Codes: 2505 // * ErrCodeTagLimitExceededFault "TagLimitExceededFault" 2506 // You have exceeded the number of tags allowed. 2507 // 2508 // * ErrCodeResourceNotFoundFault "ResourceNotFoundFault" 2509 // The resource could not be found. 2510 // 2511 // * ErrCodeInvalidTagFault "InvalidTagFault" 2512 // The tag is invalid. 2513 // 2514 // * ErrCodeInvalidClusterStateFault "InvalidClusterState" 2515 // The specified cluster is not in the available state. 2516 // 2517 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/CreateTags 2518 func (c *Redshift) CreateTags(input *CreateTagsInput) (*CreateTagsOutput, error) { 2519 req, out := c.CreateTagsRequest(input) 2520 return out, req.Send() 2521 } 2522 2523 // CreateTagsWithContext is the same as CreateTags with the addition of 2524 // the ability to pass a context and additional request options. 2525 // 2526 // See CreateTags for details on how to use this API operation. 2527 // 2528 // The context must be non-nil and will be used for request cancellation. If 2529 // the context is nil a panic will occur. In the future the SDK may create 2530 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2531 // for more information on using Contexts. 2532 func (c *Redshift) CreateTagsWithContext(ctx aws.Context, input *CreateTagsInput, opts ...request.Option) (*CreateTagsOutput, error) { 2533 req, out := c.CreateTagsRequest(input) 2534 req.SetContext(ctx) 2535 req.ApplyOptions(opts...) 2536 return out, req.Send() 2537 } 2538 2539 const opCreateUsageLimit = "CreateUsageLimit" 2540 2541 // CreateUsageLimitRequest generates a "aws/request.Request" representing the 2542 // client's request for the CreateUsageLimit operation. The "output" return 2543 // value will be populated with the request's response once the request completes 2544 // successfully. 2545 // 2546 // Use "Send" method on the returned Request to send the API call to the service. 2547 // the "output" return value is not valid until after Send returns without error. 2548 // 2549 // See CreateUsageLimit for more information on using the CreateUsageLimit 2550 // API call, and error handling. 2551 // 2552 // This method is useful when you want to inject custom logic or configuration 2553 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 2554 // 2555 // 2556 // // Example sending a request using the CreateUsageLimitRequest method. 2557 // req, resp := client.CreateUsageLimitRequest(params) 2558 // 2559 // err := req.Send() 2560 // if err == nil { // resp is now filled 2561 // fmt.Println(resp) 2562 // } 2563 // 2564 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/CreateUsageLimit 2565 func (c *Redshift) CreateUsageLimitRequest(input *CreateUsageLimitInput) (req *request.Request, output *CreateUsageLimitOutput) { 2566 op := &request.Operation{ 2567 Name: opCreateUsageLimit, 2568 HTTPMethod: "POST", 2569 HTTPPath: "/", 2570 } 2571 2572 if input == nil { 2573 input = &CreateUsageLimitInput{} 2574 } 2575 2576 output = &CreateUsageLimitOutput{} 2577 req = c.newRequest(op, input, output) 2578 return 2579 } 2580 2581 // CreateUsageLimit API operation for Amazon Redshift. 2582 // 2583 // Creates a usage limit for a specified Amazon Redshift feature on a cluster. 2584 // The usage limit is identified by the returned usage limit identifier. 2585 // 2586 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2587 // with awserr.Error's Code and Message methods to get detailed information about 2588 // the error. 2589 // 2590 // See the AWS API reference guide for Amazon Redshift's 2591 // API operation CreateUsageLimit for usage and error information. 2592 // 2593 // Returned Error Codes: 2594 // * ErrCodeClusterNotFoundFault "ClusterNotFound" 2595 // The ClusterIdentifier parameter does not refer to an existing cluster. 2596 // 2597 // * ErrCodeInvalidClusterStateFault "InvalidClusterState" 2598 // The specified cluster is not in the available state. 2599 // 2600 // * ErrCodeLimitExceededFault "LimitExceededFault" 2601 // The encryption key has exceeded its grant limit in Amazon Web Services KMS. 2602 // 2603 // * ErrCodeUsageLimitAlreadyExistsFault "UsageLimitAlreadyExists" 2604 // The usage limit already exists. 2605 // 2606 // * ErrCodeInvalidUsageLimitFault "InvalidUsageLimit" 2607 // The usage limit is not valid. 2608 // 2609 // * ErrCodeTagLimitExceededFault "TagLimitExceededFault" 2610 // You have exceeded the number of tags allowed. 2611 // 2612 // * ErrCodeUnsupportedOperationFault "UnsupportedOperation" 2613 // The requested operation isn't supported. 2614 // 2615 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/CreateUsageLimit 2616 func (c *Redshift) CreateUsageLimit(input *CreateUsageLimitInput) (*CreateUsageLimitOutput, error) { 2617 req, out := c.CreateUsageLimitRequest(input) 2618 return out, req.Send() 2619 } 2620 2621 // CreateUsageLimitWithContext is the same as CreateUsageLimit with the addition of 2622 // the ability to pass a context and additional request options. 2623 // 2624 // See CreateUsageLimit for details on how to use this API operation. 2625 // 2626 // The context must be non-nil and will be used for request cancellation. If 2627 // the context is nil a panic will occur. In the future the SDK may create 2628 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2629 // for more information on using Contexts. 2630 func (c *Redshift) CreateUsageLimitWithContext(ctx aws.Context, input *CreateUsageLimitInput, opts ...request.Option) (*CreateUsageLimitOutput, error) { 2631 req, out := c.CreateUsageLimitRequest(input) 2632 req.SetContext(ctx) 2633 req.ApplyOptions(opts...) 2634 return out, req.Send() 2635 } 2636 2637 const opDeauthorizeDataShare = "DeauthorizeDataShare" 2638 2639 // DeauthorizeDataShareRequest generates a "aws/request.Request" representing the 2640 // client's request for the DeauthorizeDataShare operation. The "output" return 2641 // value will be populated with the request's response once the request completes 2642 // successfully. 2643 // 2644 // Use "Send" method on the returned Request to send the API call to the service. 2645 // the "output" return value is not valid until after Send returns without error. 2646 // 2647 // See DeauthorizeDataShare for more information on using the DeauthorizeDataShare 2648 // API call, and error handling. 2649 // 2650 // This method is useful when you want to inject custom logic or configuration 2651 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 2652 // 2653 // 2654 // // Example sending a request using the DeauthorizeDataShareRequest method. 2655 // req, resp := client.DeauthorizeDataShareRequest(params) 2656 // 2657 // err := req.Send() 2658 // if err == nil { // resp is now filled 2659 // fmt.Println(resp) 2660 // } 2661 // 2662 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DeauthorizeDataShare 2663 func (c *Redshift) DeauthorizeDataShareRequest(input *DeauthorizeDataShareInput) (req *request.Request, output *DeauthorizeDataShareOutput) { 2664 op := &request.Operation{ 2665 Name: opDeauthorizeDataShare, 2666 HTTPMethod: "POST", 2667 HTTPPath: "/", 2668 } 2669 2670 if input == nil { 2671 input = &DeauthorizeDataShareInput{} 2672 } 2673 2674 output = &DeauthorizeDataShareOutput{} 2675 req = c.newRequest(op, input, output) 2676 return 2677 } 2678 2679 // DeauthorizeDataShare API operation for Amazon Redshift. 2680 // 2681 // From the producer account, removes authorization from the specified datashare. 2682 // 2683 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2684 // with awserr.Error's Code and Message methods to get detailed information about 2685 // the error. 2686 // 2687 // See the AWS API reference guide for Amazon Redshift's 2688 // API operation DeauthorizeDataShare for usage and error information. 2689 // 2690 // Returned Error Codes: 2691 // * ErrCodeInvalidDataShareFault "InvalidDataShareFault" 2692 // There is an error with the datashare. 2693 // 2694 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DeauthorizeDataShare 2695 func (c *Redshift) DeauthorizeDataShare(input *DeauthorizeDataShareInput) (*DeauthorizeDataShareOutput, error) { 2696 req, out := c.DeauthorizeDataShareRequest(input) 2697 return out, req.Send() 2698 } 2699 2700 // DeauthorizeDataShareWithContext is the same as DeauthorizeDataShare with the addition of 2701 // the ability to pass a context and additional request options. 2702 // 2703 // See DeauthorizeDataShare for details on how to use this API operation. 2704 // 2705 // The context must be non-nil and will be used for request cancellation. If 2706 // the context is nil a panic will occur. In the future the SDK may create 2707 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2708 // for more information on using Contexts. 2709 func (c *Redshift) DeauthorizeDataShareWithContext(ctx aws.Context, input *DeauthorizeDataShareInput, opts ...request.Option) (*DeauthorizeDataShareOutput, error) { 2710 req, out := c.DeauthorizeDataShareRequest(input) 2711 req.SetContext(ctx) 2712 req.ApplyOptions(opts...) 2713 return out, req.Send() 2714 } 2715 2716 const opDeleteAuthenticationProfile = "DeleteAuthenticationProfile" 2717 2718 // DeleteAuthenticationProfileRequest generates a "aws/request.Request" representing the 2719 // client's request for the DeleteAuthenticationProfile operation. The "output" return 2720 // value will be populated with the request's response once the request completes 2721 // successfully. 2722 // 2723 // Use "Send" method on the returned Request to send the API call to the service. 2724 // the "output" return value is not valid until after Send returns without error. 2725 // 2726 // See DeleteAuthenticationProfile for more information on using the DeleteAuthenticationProfile 2727 // API call, and error handling. 2728 // 2729 // This method is useful when you want to inject custom logic or configuration 2730 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 2731 // 2732 // 2733 // // Example sending a request using the DeleteAuthenticationProfileRequest method. 2734 // req, resp := client.DeleteAuthenticationProfileRequest(params) 2735 // 2736 // err := req.Send() 2737 // if err == nil { // resp is now filled 2738 // fmt.Println(resp) 2739 // } 2740 // 2741 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DeleteAuthenticationProfile 2742 func (c *Redshift) DeleteAuthenticationProfileRequest(input *DeleteAuthenticationProfileInput) (req *request.Request, output *DeleteAuthenticationProfileOutput) { 2743 op := &request.Operation{ 2744 Name: opDeleteAuthenticationProfile, 2745 HTTPMethod: "POST", 2746 HTTPPath: "/", 2747 } 2748 2749 if input == nil { 2750 input = &DeleteAuthenticationProfileInput{} 2751 } 2752 2753 output = &DeleteAuthenticationProfileOutput{} 2754 req = c.newRequest(op, input, output) 2755 return 2756 } 2757 2758 // DeleteAuthenticationProfile API operation for Amazon Redshift. 2759 // 2760 // Deletes an authentication profile. 2761 // 2762 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2763 // with awserr.Error's Code and Message methods to get detailed information about 2764 // the error. 2765 // 2766 // See the AWS API reference guide for Amazon Redshift's 2767 // API operation DeleteAuthenticationProfile for usage and error information. 2768 // 2769 // Returned Error Codes: 2770 // * ErrCodeAuthenticationProfileNotFoundFault "AuthenticationProfileNotFoundFault" 2771 // The authentication profile can't be found. 2772 // 2773 // * ErrCodeInvalidAuthenticationProfileRequestFault "InvalidAuthenticationProfileRequestFault" 2774 // The authentication profile request is not valid. The profile name can't be 2775 // null or empty. The authentication profile API operation must be available 2776 // in the Amazon Web Services Region. 2777 // 2778 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DeleteAuthenticationProfile 2779 func (c *Redshift) DeleteAuthenticationProfile(input *DeleteAuthenticationProfileInput) (*DeleteAuthenticationProfileOutput, error) { 2780 req, out := c.DeleteAuthenticationProfileRequest(input) 2781 return out, req.Send() 2782 } 2783 2784 // DeleteAuthenticationProfileWithContext is the same as DeleteAuthenticationProfile with the addition of 2785 // the ability to pass a context and additional request options. 2786 // 2787 // See DeleteAuthenticationProfile for details on how to use this API operation. 2788 // 2789 // The context must be non-nil and will be used for request cancellation. If 2790 // the context is nil a panic will occur. In the future the SDK may create 2791 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2792 // for more information on using Contexts. 2793 func (c *Redshift) DeleteAuthenticationProfileWithContext(ctx aws.Context, input *DeleteAuthenticationProfileInput, opts ...request.Option) (*DeleteAuthenticationProfileOutput, error) { 2794 req, out := c.DeleteAuthenticationProfileRequest(input) 2795 req.SetContext(ctx) 2796 req.ApplyOptions(opts...) 2797 return out, req.Send() 2798 } 2799 2800 const opDeleteCluster = "DeleteCluster" 2801 2802 // DeleteClusterRequest generates a "aws/request.Request" representing the 2803 // client's request for the DeleteCluster operation. The "output" return 2804 // value will be populated with the request's response once the request completes 2805 // successfully. 2806 // 2807 // Use "Send" method on the returned Request to send the API call to the service. 2808 // the "output" return value is not valid until after Send returns without error. 2809 // 2810 // See DeleteCluster for more information on using the DeleteCluster 2811 // API call, and error handling. 2812 // 2813 // This method is useful when you want to inject custom logic or configuration 2814 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 2815 // 2816 // 2817 // // Example sending a request using the DeleteClusterRequest method. 2818 // req, resp := client.DeleteClusterRequest(params) 2819 // 2820 // err := req.Send() 2821 // if err == nil { // resp is now filled 2822 // fmt.Println(resp) 2823 // } 2824 // 2825 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DeleteCluster 2826 func (c *Redshift) DeleteClusterRequest(input *DeleteClusterInput) (req *request.Request, output *DeleteClusterOutput) { 2827 op := &request.Operation{ 2828 Name: opDeleteCluster, 2829 HTTPMethod: "POST", 2830 HTTPPath: "/", 2831 } 2832 2833 if input == nil { 2834 input = &DeleteClusterInput{} 2835 } 2836 2837 output = &DeleteClusterOutput{} 2838 req = c.newRequest(op, input, output) 2839 return 2840 } 2841 2842 // DeleteCluster API operation for Amazon Redshift. 2843 // 2844 // Deletes a previously provisioned cluster without its final snapshot being 2845 // created. A successful response from the web service indicates that the request 2846 // was received correctly. Use DescribeClusters to monitor the status of the 2847 // deletion. The delete operation cannot be canceled or reverted once submitted. 2848 // For more information about managing clusters, go to Amazon Redshift Clusters 2849 // (https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-clusters.html) 2850 // in the Amazon Redshift Cluster Management Guide. 2851 // 2852 // If you want to shut down the cluster and retain it for future use, set SkipFinalClusterSnapshot 2853 // to false and specify a name for FinalClusterSnapshotIdentifier. You can later 2854 // restore this snapshot to resume using the cluster. If a final cluster snapshot 2855 // is requested, the status of the cluster will be "final-snapshot" while the 2856 // snapshot is being taken, then it's "deleting" once Amazon Redshift begins 2857 // deleting the cluster. 2858 // 2859 // For more information about managing clusters, go to Amazon Redshift Clusters 2860 // (https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-clusters.html) 2861 // in the Amazon Redshift Cluster Management Guide. 2862 // 2863 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2864 // with awserr.Error's Code and Message methods to get detailed information about 2865 // the error. 2866 // 2867 // See the AWS API reference guide for Amazon Redshift's 2868 // API operation DeleteCluster for usage and error information. 2869 // 2870 // Returned Error Codes: 2871 // * ErrCodeClusterNotFoundFault "ClusterNotFound" 2872 // The ClusterIdentifier parameter does not refer to an existing cluster. 2873 // 2874 // * ErrCodeInvalidClusterStateFault "InvalidClusterState" 2875 // The specified cluster is not in the available state. 2876 // 2877 // * ErrCodeClusterSnapshotAlreadyExistsFault "ClusterSnapshotAlreadyExists" 2878 // The value specified as a snapshot identifier is already used by an existing 2879 // snapshot. 2880 // 2881 // * ErrCodeClusterSnapshotQuotaExceededFault "ClusterSnapshotQuotaExceeded" 2882 // The request would result in the user exceeding the allowed number of cluster 2883 // snapshots. 2884 // 2885 // * ErrCodeInvalidRetentionPeriodFault "InvalidRetentionPeriodFault" 2886 // The retention period specified is either in the past or is not a valid value. 2887 // 2888 // The value must be either -1 or an integer between 1 and 3,653. 2889 // 2890 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DeleteCluster 2891 func (c *Redshift) DeleteCluster(input *DeleteClusterInput) (*DeleteClusterOutput, error) { 2892 req, out := c.DeleteClusterRequest(input) 2893 return out, req.Send() 2894 } 2895 2896 // DeleteClusterWithContext is the same as DeleteCluster with the addition of 2897 // the ability to pass a context and additional request options. 2898 // 2899 // See DeleteCluster for details on how to use this API operation. 2900 // 2901 // The context must be non-nil and will be used for request cancellation. If 2902 // the context is nil a panic will occur. In the future the SDK may create 2903 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2904 // for more information on using Contexts. 2905 func (c *Redshift) DeleteClusterWithContext(ctx aws.Context, input *DeleteClusterInput, opts ...request.Option) (*DeleteClusterOutput, error) { 2906 req, out := c.DeleteClusterRequest(input) 2907 req.SetContext(ctx) 2908 req.ApplyOptions(opts...) 2909 return out, req.Send() 2910 } 2911 2912 const opDeleteClusterParameterGroup = "DeleteClusterParameterGroup" 2913 2914 // DeleteClusterParameterGroupRequest generates a "aws/request.Request" representing the 2915 // client's request for the DeleteClusterParameterGroup operation. The "output" return 2916 // value will be populated with the request's response once the request completes 2917 // successfully. 2918 // 2919 // Use "Send" method on the returned Request to send the API call to the service. 2920 // the "output" return value is not valid until after Send returns without error. 2921 // 2922 // See DeleteClusterParameterGroup for more information on using the DeleteClusterParameterGroup 2923 // API call, and error handling. 2924 // 2925 // This method is useful when you want to inject custom logic or configuration 2926 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 2927 // 2928 // 2929 // // Example sending a request using the DeleteClusterParameterGroupRequest method. 2930 // req, resp := client.DeleteClusterParameterGroupRequest(params) 2931 // 2932 // err := req.Send() 2933 // if err == nil { // resp is now filled 2934 // fmt.Println(resp) 2935 // } 2936 // 2937 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DeleteClusterParameterGroup 2938 func (c *Redshift) DeleteClusterParameterGroupRequest(input *DeleteClusterParameterGroupInput) (req *request.Request, output *DeleteClusterParameterGroupOutput) { 2939 op := &request.Operation{ 2940 Name: opDeleteClusterParameterGroup, 2941 HTTPMethod: "POST", 2942 HTTPPath: "/", 2943 } 2944 2945 if input == nil { 2946 input = &DeleteClusterParameterGroupInput{} 2947 } 2948 2949 output = &DeleteClusterParameterGroupOutput{} 2950 req = c.newRequest(op, input, output) 2951 req.Handlers.Unmarshal.Swap(query.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 2952 return 2953 } 2954 2955 // DeleteClusterParameterGroup API operation for Amazon Redshift. 2956 // 2957 // Deletes a specified Amazon Redshift parameter group. 2958 // 2959 // You cannot delete a parameter group if it is associated with a cluster. 2960 // 2961 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2962 // with awserr.Error's Code and Message methods to get detailed information about 2963 // the error. 2964 // 2965 // See the AWS API reference guide for Amazon Redshift's 2966 // API operation DeleteClusterParameterGroup for usage and error information. 2967 // 2968 // Returned Error Codes: 2969 // * ErrCodeInvalidClusterParameterGroupStateFault "InvalidClusterParameterGroupState" 2970 // The cluster parameter group action can not be completed because another task 2971 // is in progress that involves the parameter group. Wait a few moments and 2972 // try the operation again. 2973 // 2974 // * ErrCodeClusterParameterGroupNotFoundFault "ClusterParameterGroupNotFound" 2975 // The parameter group name does not refer to an existing parameter group. 2976 // 2977 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DeleteClusterParameterGroup 2978 func (c *Redshift) DeleteClusterParameterGroup(input *DeleteClusterParameterGroupInput) (*DeleteClusterParameterGroupOutput, error) { 2979 req, out := c.DeleteClusterParameterGroupRequest(input) 2980 return out, req.Send() 2981 } 2982 2983 // DeleteClusterParameterGroupWithContext is the same as DeleteClusterParameterGroup with the addition of 2984 // the ability to pass a context and additional request options. 2985 // 2986 // See DeleteClusterParameterGroup for details on how to use this API operation. 2987 // 2988 // The context must be non-nil and will be used for request cancellation. If 2989 // the context is nil a panic will occur. In the future the SDK may create 2990 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2991 // for more information on using Contexts. 2992 func (c *Redshift) DeleteClusterParameterGroupWithContext(ctx aws.Context, input *DeleteClusterParameterGroupInput, opts ...request.Option) (*DeleteClusterParameterGroupOutput, error) { 2993 req, out := c.DeleteClusterParameterGroupRequest(input) 2994 req.SetContext(ctx) 2995 req.ApplyOptions(opts...) 2996 return out, req.Send() 2997 } 2998 2999 const opDeleteClusterSecurityGroup = "DeleteClusterSecurityGroup" 3000 3001 // DeleteClusterSecurityGroupRequest generates a "aws/request.Request" representing the 3002 // client's request for the DeleteClusterSecurityGroup operation. The "output" return 3003 // value will be populated with the request's response once the request completes 3004 // successfully. 3005 // 3006 // Use "Send" method on the returned Request to send the API call to the service. 3007 // the "output" return value is not valid until after Send returns without error. 3008 // 3009 // See DeleteClusterSecurityGroup for more information on using the DeleteClusterSecurityGroup 3010 // API call, and error handling. 3011 // 3012 // This method is useful when you want to inject custom logic or configuration 3013 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 3014 // 3015 // 3016 // // Example sending a request using the DeleteClusterSecurityGroupRequest method. 3017 // req, resp := client.DeleteClusterSecurityGroupRequest(params) 3018 // 3019 // err := req.Send() 3020 // if err == nil { // resp is now filled 3021 // fmt.Println(resp) 3022 // } 3023 // 3024 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DeleteClusterSecurityGroup 3025 func (c *Redshift) DeleteClusterSecurityGroupRequest(input *DeleteClusterSecurityGroupInput) (req *request.Request, output *DeleteClusterSecurityGroupOutput) { 3026 op := &request.Operation{ 3027 Name: opDeleteClusterSecurityGroup, 3028 HTTPMethod: "POST", 3029 HTTPPath: "/", 3030 } 3031 3032 if input == nil { 3033 input = &DeleteClusterSecurityGroupInput{} 3034 } 3035 3036 output = &DeleteClusterSecurityGroupOutput{} 3037 req = c.newRequest(op, input, output) 3038 req.Handlers.Unmarshal.Swap(query.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 3039 return 3040 } 3041 3042 // DeleteClusterSecurityGroup API operation for Amazon Redshift. 3043 // 3044 // Deletes an Amazon Redshift security group. 3045 // 3046 // You cannot delete a security group that is associated with any clusters. 3047 // You cannot delete the default security group. 3048 // 3049 // For information about managing security groups, go to Amazon Redshift Cluster 3050 // Security Groups (https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-security-groups.html) 3051 // in the Amazon Redshift Cluster Management Guide. 3052 // 3053 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3054 // with awserr.Error's Code and Message methods to get detailed information about 3055 // the error. 3056 // 3057 // See the AWS API reference guide for Amazon Redshift's 3058 // API operation DeleteClusterSecurityGroup for usage and error information. 3059 // 3060 // Returned Error Codes: 3061 // * ErrCodeInvalidClusterSecurityGroupStateFault "InvalidClusterSecurityGroupState" 3062 // The state of the cluster security group is not available. 3063 // 3064 // * ErrCodeClusterSecurityGroupNotFoundFault "ClusterSecurityGroupNotFound" 3065 // The cluster security group name does not refer to an existing cluster security 3066 // group. 3067 // 3068 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DeleteClusterSecurityGroup 3069 func (c *Redshift) DeleteClusterSecurityGroup(input *DeleteClusterSecurityGroupInput) (*DeleteClusterSecurityGroupOutput, error) { 3070 req, out := c.DeleteClusterSecurityGroupRequest(input) 3071 return out, req.Send() 3072 } 3073 3074 // DeleteClusterSecurityGroupWithContext is the same as DeleteClusterSecurityGroup with the addition of 3075 // the ability to pass a context and additional request options. 3076 // 3077 // See DeleteClusterSecurityGroup for details on how to use this API operation. 3078 // 3079 // The context must be non-nil and will be used for request cancellation. If 3080 // the context is nil a panic will occur. In the future the SDK may create 3081 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3082 // for more information on using Contexts. 3083 func (c *Redshift) DeleteClusterSecurityGroupWithContext(ctx aws.Context, input *DeleteClusterSecurityGroupInput, opts ...request.Option) (*DeleteClusterSecurityGroupOutput, error) { 3084 req, out := c.DeleteClusterSecurityGroupRequest(input) 3085 req.SetContext(ctx) 3086 req.ApplyOptions(opts...) 3087 return out, req.Send() 3088 } 3089 3090 const opDeleteClusterSnapshot = "DeleteClusterSnapshot" 3091 3092 // DeleteClusterSnapshotRequest generates a "aws/request.Request" representing the 3093 // client's request for the DeleteClusterSnapshot operation. The "output" return 3094 // value will be populated with the request's response once the request completes 3095 // successfully. 3096 // 3097 // Use "Send" method on the returned Request to send the API call to the service. 3098 // the "output" return value is not valid until after Send returns without error. 3099 // 3100 // See DeleteClusterSnapshot for more information on using the DeleteClusterSnapshot 3101 // API call, and error handling. 3102 // 3103 // This method is useful when you want to inject custom logic or configuration 3104 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 3105 // 3106 // 3107 // // Example sending a request using the DeleteClusterSnapshotRequest method. 3108 // req, resp := client.DeleteClusterSnapshotRequest(params) 3109 // 3110 // err := req.Send() 3111 // if err == nil { // resp is now filled 3112 // fmt.Println(resp) 3113 // } 3114 // 3115 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DeleteClusterSnapshot 3116 func (c *Redshift) DeleteClusterSnapshotRequest(input *DeleteClusterSnapshotInput) (req *request.Request, output *DeleteClusterSnapshotOutput) { 3117 op := &request.Operation{ 3118 Name: opDeleteClusterSnapshot, 3119 HTTPMethod: "POST", 3120 HTTPPath: "/", 3121 } 3122 3123 if input == nil { 3124 input = &DeleteClusterSnapshotInput{} 3125 } 3126 3127 output = &DeleteClusterSnapshotOutput{} 3128 req = c.newRequest(op, input, output) 3129 return 3130 } 3131 3132 // DeleteClusterSnapshot API operation for Amazon Redshift. 3133 // 3134 // Deletes the specified manual snapshot. The snapshot must be in the available 3135 // state, with no other users authorized to access the snapshot. 3136 // 3137 // Unlike automated snapshots, manual snapshots are retained even after you 3138 // delete your cluster. Amazon Redshift does not delete your manual snapshots. 3139 // You must delete manual snapshot explicitly to avoid getting charged. If other 3140 // accounts are authorized to access the snapshot, you must revoke all of the 3141 // authorizations before you can delete the snapshot. 3142 // 3143 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3144 // with awserr.Error's Code and Message methods to get detailed information about 3145 // the error. 3146 // 3147 // See the AWS API reference guide for Amazon Redshift's 3148 // API operation DeleteClusterSnapshot for usage and error information. 3149 // 3150 // Returned Error Codes: 3151 // * ErrCodeInvalidClusterSnapshotStateFault "InvalidClusterSnapshotState" 3152 // The specified cluster snapshot is not in the available state, or other accounts 3153 // are authorized to access the snapshot. 3154 // 3155 // * ErrCodeClusterSnapshotNotFoundFault "ClusterSnapshotNotFound" 3156 // The snapshot identifier does not refer to an existing cluster snapshot. 3157 // 3158 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DeleteClusterSnapshot 3159 func (c *Redshift) DeleteClusterSnapshot(input *DeleteClusterSnapshotInput) (*DeleteClusterSnapshotOutput, error) { 3160 req, out := c.DeleteClusterSnapshotRequest(input) 3161 return out, req.Send() 3162 } 3163 3164 // DeleteClusterSnapshotWithContext is the same as DeleteClusterSnapshot with the addition of 3165 // the ability to pass a context and additional request options. 3166 // 3167 // See DeleteClusterSnapshot for details on how to use this API operation. 3168 // 3169 // The context must be non-nil and will be used for request cancellation. If 3170 // the context is nil a panic will occur. In the future the SDK may create 3171 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3172 // for more information on using Contexts. 3173 func (c *Redshift) DeleteClusterSnapshotWithContext(ctx aws.Context, input *DeleteClusterSnapshotInput, opts ...request.Option) (*DeleteClusterSnapshotOutput, error) { 3174 req, out := c.DeleteClusterSnapshotRequest(input) 3175 req.SetContext(ctx) 3176 req.ApplyOptions(opts...) 3177 return out, req.Send() 3178 } 3179 3180 const opDeleteClusterSubnetGroup = "DeleteClusterSubnetGroup" 3181 3182 // DeleteClusterSubnetGroupRequest generates a "aws/request.Request" representing the 3183 // client's request for the DeleteClusterSubnetGroup operation. The "output" return 3184 // value will be populated with the request's response once the request completes 3185 // successfully. 3186 // 3187 // Use "Send" method on the returned Request to send the API call to the service. 3188 // the "output" return value is not valid until after Send returns without error. 3189 // 3190 // See DeleteClusterSubnetGroup for more information on using the DeleteClusterSubnetGroup 3191 // API call, and error handling. 3192 // 3193 // This method is useful when you want to inject custom logic or configuration 3194 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 3195 // 3196 // 3197 // // Example sending a request using the DeleteClusterSubnetGroupRequest method. 3198 // req, resp := client.DeleteClusterSubnetGroupRequest(params) 3199 // 3200 // err := req.Send() 3201 // if err == nil { // resp is now filled 3202 // fmt.Println(resp) 3203 // } 3204 // 3205 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DeleteClusterSubnetGroup 3206 func (c *Redshift) DeleteClusterSubnetGroupRequest(input *DeleteClusterSubnetGroupInput) (req *request.Request, output *DeleteClusterSubnetGroupOutput) { 3207 op := &request.Operation{ 3208 Name: opDeleteClusterSubnetGroup, 3209 HTTPMethod: "POST", 3210 HTTPPath: "/", 3211 } 3212 3213 if input == nil { 3214 input = &DeleteClusterSubnetGroupInput{} 3215 } 3216 3217 output = &DeleteClusterSubnetGroupOutput{} 3218 req = c.newRequest(op, input, output) 3219 req.Handlers.Unmarshal.Swap(query.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 3220 return 3221 } 3222 3223 // DeleteClusterSubnetGroup API operation for Amazon Redshift. 3224 // 3225 // Deletes the specified cluster subnet group. 3226 // 3227 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3228 // with awserr.Error's Code and Message methods to get detailed information about 3229 // the error. 3230 // 3231 // See the AWS API reference guide for Amazon Redshift's 3232 // API operation DeleteClusterSubnetGroup for usage and error information. 3233 // 3234 // Returned Error Codes: 3235 // * ErrCodeInvalidClusterSubnetGroupStateFault "InvalidClusterSubnetGroupStateFault" 3236 // The cluster subnet group cannot be deleted because it is in use. 3237 // 3238 // * ErrCodeInvalidClusterSubnetStateFault "InvalidClusterSubnetStateFault" 3239 // The state of the subnet is invalid. 3240 // 3241 // * ErrCodeClusterSubnetGroupNotFoundFault "ClusterSubnetGroupNotFoundFault" 3242 // The cluster subnet group name does not refer to an existing cluster subnet 3243 // group. 3244 // 3245 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DeleteClusterSubnetGroup 3246 func (c *Redshift) DeleteClusterSubnetGroup(input *DeleteClusterSubnetGroupInput) (*DeleteClusterSubnetGroupOutput, error) { 3247 req, out := c.DeleteClusterSubnetGroupRequest(input) 3248 return out, req.Send() 3249 } 3250 3251 // DeleteClusterSubnetGroupWithContext is the same as DeleteClusterSubnetGroup with the addition of 3252 // the ability to pass a context and additional request options. 3253 // 3254 // See DeleteClusterSubnetGroup for details on how to use this API operation. 3255 // 3256 // The context must be non-nil and will be used for request cancellation. If 3257 // the context is nil a panic will occur. In the future the SDK may create 3258 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3259 // for more information on using Contexts. 3260 func (c *Redshift) DeleteClusterSubnetGroupWithContext(ctx aws.Context, input *DeleteClusterSubnetGroupInput, opts ...request.Option) (*DeleteClusterSubnetGroupOutput, error) { 3261 req, out := c.DeleteClusterSubnetGroupRequest(input) 3262 req.SetContext(ctx) 3263 req.ApplyOptions(opts...) 3264 return out, req.Send() 3265 } 3266 3267 const opDeleteEndpointAccess = "DeleteEndpointAccess" 3268 3269 // DeleteEndpointAccessRequest generates a "aws/request.Request" representing the 3270 // client's request for the DeleteEndpointAccess operation. The "output" return 3271 // value will be populated with the request's response once the request completes 3272 // successfully. 3273 // 3274 // Use "Send" method on the returned Request to send the API call to the service. 3275 // the "output" return value is not valid until after Send returns without error. 3276 // 3277 // See DeleteEndpointAccess for more information on using the DeleteEndpointAccess 3278 // API call, and error handling. 3279 // 3280 // This method is useful when you want to inject custom logic or configuration 3281 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 3282 // 3283 // 3284 // // Example sending a request using the DeleteEndpointAccessRequest method. 3285 // req, resp := client.DeleteEndpointAccessRequest(params) 3286 // 3287 // err := req.Send() 3288 // if err == nil { // resp is now filled 3289 // fmt.Println(resp) 3290 // } 3291 // 3292 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DeleteEndpointAccess 3293 func (c *Redshift) DeleteEndpointAccessRequest(input *DeleteEndpointAccessInput) (req *request.Request, output *DeleteEndpointAccessOutput) { 3294 op := &request.Operation{ 3295 Name: opDeleteEndpointAccess, 3296 HTTPMethod: "POST", 3297 HTTPPath: "/", 3298 } 3299 3300 if input == nil { 3301 input = &DeleteEndpointAccessInput{} 3302 } 3303 3304 output = &DeleteEndpointAccessOutput{} 3305 req = c.newRequest(op, input, output) 3306 return 3307 } 3308 3309 // DeleteEndpointAccess API operation for Amazon Redshift. 3310 // 3311 // Deletes a Redshift-managed VPC endpoint. 3312 // 3313 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3314 // with awserr.Error's Code and Message methods to get detailed information about 3315 // the error. 3316 // 3317 // See the AWS API reference guide for Amazon Redshift's 3318 // API operation DeleteEndpointAccess for usage and error information. 3319 // 3320 // Returned Error Codes: 3321 // * ErrCodeClusterNotFoundFault "ClusterNotFound" 3322 // The ClusterIdentifier parameter does not refer to an existing cluster. 3323 // 3324 // * ErrCodeInvalidEndpointStateFault "InvalidEndpointState" 3325 // The status of the endpoint is not valid. 3326 // 3327 // * ErrCodeInvalidClusterSecurityGroupStateFault "InvalidClusterSecurityGroupState" 3328 // The state of the cluster security group is not available. 3329 // 3330 // * ErrCodeEndpointNotFoundFault "EndpointNotFound" 3331 // The endpoint name doesn't refer to an existing endpoint. 3332 // 3333 // * ErrCodeInvalidClusterStateFault "InvalidClusterState" 3334 // The specified cluster is not in the available state. 3335 // 3336 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DeleteEndpointAccess 3337 func (c *Redshift) DeleteEndpointAccess(input *DeleteEndpointAccessInput) (*DeleteEndpointAccessOutput, error) { 3338 req, out := c.DeleteEndpointAccessRequest(input) 3339 return out, req.Send() 3340 } 3341 3342 // DeleteEndpointAccessWithContext is the same as DeleteEndpointAccess with the addition of 3343 // the ability to pass a context and additional request options. 3344 // 3345 // See DeleteEndpointAccess for details on how to use this API operation. 3346 // 3347 // The context must be non-nil and will be used for request cancellation. If 3348 // the context is nil a panic will occur. In the future the SDK may create 3349 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3350 // for more information on using Contexts. 3351 func (c *Redshift) DeleteEndpointAccessWithContext(ctx aws.Context, input *DeleteEndpointAccessInput, opts ...request.Option) (*DeleteEndpointAccessOutput, error) { 3352 req, out := c.DeleteEndpointAccessRequest(input) 3353 req.SetContext(ctx) 3354 req.ApplyOptions(opts...) 3355 return out, req.Send() 3356 } 3357 3358 const opDeleteEventSubscription = "DeleteEventSubscription" 3359 3360 // DeleteEventSubscriptionRequest generates a "aws/request.Request" representing the 3361 // client's request for the DeleteEventSubscription operation. The "output" return 3362 // value will be populated with the request's response once the request completes 3363 // successfully. 3364 // 3365 // Use "Send" method on the returned Request to send the API call to the service. 3366 // the "output" return value is not valid until after Send returns without error. 3367 // 3368 // See DeleteEventSubscription for more information on using the DeleteEventSubscription 3369 // API call, and error handling. 3370 // 3371 // This method is useful when you want to inject custom logic or configuration 3372 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 3373 // 3374 // 3375 // // Example sending a request using the DeleteEventSubscriptionRequest method. 3376 // req, resp := client.DeleteEventSubscriptionRequest(params) 3377 // 3378 // err := req.Send() 3379 // if err == nil { // resp is now filled 3380 // fmt.Println(resp) 3381 // } 3382 // 3383 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DeleteEventSubscription 3384 func (c *Redshift) DeleteEventSubscriptionRequest(input *DeleteEventSubscriptionInput) (req *request.Request, output *DeleteEventSubscriptionOutput) { 3385 op := &request.Operation{ 3386 Name: opDeleteEventSubscription, 3387 HTTPMethod: "POST", 3388 HTTPPath: "/", 3389 } 3390 3391 if input == nil { 3392 input = &DeleteEventSubscriptionInput{} 3393 } 3394 3395 output = &DeleteEventSubscriptionOutput{} 3396 req = c.newRequest(op, input, output) 3397 req.Handlers.Unmarshal.Swap(query.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 3398 return 3399 } 3400 3401 // DeleteEventSubscription API operation for Amazon Redshift. 3402 // 3403 // Deletes an Amazon Redshift event notification subscription. 3404 // 3405 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3406 // with awserr.Error's Code and Message methods to get detailed information about 3407 // the error. 3408 // 3409 // See the AWS API reference guide for Amazon Redshift's 3410 // API operation DeleteEventSubscription for usage and error information. 3411 // 3412 // Returned Error Codes: 3413 // * ErrCodeSubscriptionNotFoundFault "SubscriptionNotFound" 3414 // An Amazon Redshift event notification subscription with the specified name 3415 // does not exist. 3416 // 3417 // * ErrCodeInvalidSubscriptionStateFault "InvalidSubscriptionStateFault" 3418 // The subscription request is invalid because it is a duplicate request. This 3419 // subscription request is already in progress. 3420 // 3421 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DeleteEventSubscription 3422 func (c *Redshift) DeleteEventSubscription(input *DeleteEventSubscriptionInput) (*DeleteEventSubscriptionOutput, error) { 3423 req, out := c.DeleteEventSubscriptionRequest(input) 3424 return out, req.Send() 3425 } 3426 3427 // DeleteEventSubscriptionWithContext is the same as DeleteEventSubscription with the addition of 3428 // the ability to pass a context and additional request options. 3429 // 3430 // See DeleteEventSubscription for details on how to use this API operation. 3431 // 3432 // The context must be non-nil and will be used for request cancellation. If 3433 // the context is nil a panic will occur. In the future the SDK may create 3434 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3435 // for more information on using Contexts. 3436 func (c *Redshift) DeleteEventSubscriptionWithContext(ctx aws.Context, input *DeleteEventSubscriptionInput, opts ...request.Option) (*DeleteEventSubscriptionOutput, error) { 3437 req, out := c.DeleteEventSubscriptionRequest(input) 3438 req.SetContext(ctx) 3439 req.ApplyOptions(opts...) 3440 return out, req.Send() 3441 } 3442 3443 const opDeleteHsmClientCertificate = "DeleteHsmClientCertificate" 3444 3445 // DeleteHsmClientCertificateRequest generates a "aws/request.Request" representing the 3446 // client's request for the DeleteHsmClientCertificate operation. The "output" return 3447 // value will be populated with the request's response once the request completes 3448 // successfully. 3449 // 3450 // Use "Send" method on the returned Request to send the API call to the service. 3451 // the "output" return value is not valid until after Send returns without error. 3452 // 3453 // See DeleteHsmClientCertificate for more information on using the DeleteHsmClientCertificate 3454 // API call, and error handling. 3455 // 3456 // This method is useful when you want to inject custom logic or configuration 3457 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 3458 // 3459 // 3460 // // Example sending a request using the DeleteHsmClientCertificateRequest method. 3461 // req, resp := client.DeleteHsmClientCertificateRequest(params) 3462 // 3463 // err := req.Send() 3464 // if err == nil { // resp is now filled 3465 // fmt.Println(resp) 3466 // } 3467 // 3468 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DeleteHsmClientCertificate 3469 func (c *Redshift) DeleteHsmClientCertificateRequest(input *DeleteHsmClientCertificateInput) (req *request.Request, output *DeleteHsmClientCertificateOutput) { 3470 op := &request.Operation{ 3471 Name: opDeleteHsmClientCertificate, 3472 HTTPMethod: "POST", 3473 HTTPPath: "/", 3474 } 3475 3476 if input == nil { 3477 input = &DeleteHsmClientCertificateInput{} 3478 } 3479 3480 output = &DeleteHsmClientCertificateOutput{} 3481 req = c.newRequest(op, input, output) 3482 req.Handlers.Unmarshal.Swap(query.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 3483 return 3484 } 3485 3486 // DeleteHsmClientCertificate API operation for Amazon Redshift. 3487 // 3488 // Deletes the specified HSM client certificate. 3489 // 3490 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3491 // with awserr.Error's Code and Message methods to get detailed information about 3492 // the error. 3493 // 3494 // See the AWS API reference guide for Amazon Redshift's 3495 // API operation DeleteHsmClientCertificate for usage and error information. 3496 // 3497 // Returned Error Codes: 3498 // * ErrCodeInvalidHsmClientCertificateStateFault "InvalidHsmClientCertificateStateFault" 3499 // The specified HSM client certificate is not in the available state, or it 3500 // is still in use by one or more Amazon Redshift clusters. 3501 // 3502 // * ErrCodeHsmClientCertificateNotFoundFault "HsmClientCertificateNotFoundFault" 3503 // There is no Amazon Redshift HSM client certificate with the specified identifier. 3504 // 3505 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DeleteHsmClientCertificate 3506 func (c *Redshift) DeleteHsmClientCertificate(input *DeleteHsmClientCertificateInput) (*DeleteHsmClientCertificateOutput, error) { 3507 req, out := c.DeleteHsmClientCertificateRequest(input) 3508 return out, req.Send() 3509 } 3510 3511 // DeleteHsmClientCertificateWithContext is the same as DeleteHsmClientCertificate with the addition of 3512 // the ability to pass a context and additional request options. 3513 // 3514 // See DeleteHsmClientCertificate for details on how to use this API operation. 3515 // 3516 // The context must be non-nil and will be used for request cancellation. If 3517 // the context is nil a panic will occur. In the future the SDK may create 3518 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3519 // for more information on using Contexts. 3520 func (c *Redshift) DeleteHsmClientCertificateWithContext(ctx aws.Context, input *DeleteHsmClientCertificateInput, opts ...request.Option) (*DeleteHsmClientCertificateOutput, error) { 3521 req, out := c.DeleteHsmClientCertificateRequest(input) 3522 req.SetContext(ctx) 3523 req.ApplyOptions(opts...) 3524 return out, req.Send() 3525 } 3526 3527 const opDeleteHsmConfiguration = "DeleteHsmConfiguration" 3528 3529 // DeleteHsmConfigurationRequest generates a "aws/request.Request" representing the 3530 // client's request for the DeleteHsmConfiguration operation. The "output" return 3531 // value will be populated with the request's response once the request completes 3532 // successfully. 3533 // 3534 // Use "Send" method on the returned Request to send the API call to the service. 3535 // the "output" return value is not valid until after Send returns without error. 3536 // 3537 // See DeleteHsmConfiguration for more information on using the DeleteHsmConfiguration 3538 // API call, and error handling. 3539 // 3540 // This method is useful when you want to inject custom logic or configuration 3541 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 3542 // 3543 // 3544 // // Example sending a request using the DeleteHsmConfigurationRequest method. 3545 // req, resp := client.DeleteHsmConfigurationRequest(params) 3546 // 3547 // err := req.Send() 3548 // if err == nil { // resp is now filled 3549 // fmt.Println(resp) 3550 // } 3551 // 3552 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DeleteHsmConfiguration 3553 func (c *Redshift) DeleteHsmConfigurationRequest(input *DeleteHsmConfigurationInput) (req *request.Request, output *DeleteHsmConfigurationOutput) { 3554 op := &request.Operation{ 3555 Name: opDeleteHsmConfiguration, 3556 HTTPMethod: "POST", 3557 HTTPPath: "/", 3558 } 3559 3560 if input == nil { 3561 input = &DeleteHsmConfigurationInput{} 3562 } 3563 3564 output = &DeleteHsmConfigurationOutput{} 3565 req = c.newRequest(op, input, output) 3566 req.Handlers.Unmarshal.Swap(query.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 3567 return 3568 } 3569 3570 // DeleteHsmConfiguration API operation for Amazon Redshift. 3571 // 3572 // Deletes the specified Amazon Redshift HSM configuration. 3573 // 3574 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3575 // with awserr.Error's Code and Message methods to get detailed information about 3576 // the error. 3577 // 3578 // See the AWS API reference guide for Amazon Redshift's 3579 // API operation DeleteHsmConfiguration for usage and error information. 3580 // 3581 // Returned Error Codes: 3582 // * ErrCodeInvalidHsmConfigurationStateFault "InvalidHsmConfigurationStateFault" 3583 // The specified HSM configuration is not in the available state, or it is still 3584 // in use by one or more Amazon Redshift clusters. 3585 // 3586 // * ErrCodeHsmConfigurationNotFoundFault "HsmConfigurationNotFoundFault" 3587 // There is no Amazon Redshift HSM configuration with the specified identifier. 3588 // 3589 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DeleteHsmConfiguration 3590 func (c *Redshift) DeleteHsmConfiguration(input *DeleteHsmConfigurationInput) (*DeleteHsmConfigurationOutput, error) { 3591 req, out := c.DeleteHsmConfigurationRequest(input) 3592 return out, req.Send() 3593 } 3594 3595 // DeleteHsmConfigurationWithContext is the same as DeleteHsmConfiguration with the addition of 3596 // the ability to pass a context and additional request options. 3597 // 3598 // See DeleteHsmConfiguration for details on how to use this API operation. 3599 // 3600 // The context must be non-nil and will be used for request cancellation. If 3601 // the context is nil a panic will occur. In the future the SDK may create 3602 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3603 // for more information on using Contexts. 3604 func (c *Redshift) DeleteHsmConfigurationWithContext(ctx aws.Context, input *DeleteHsmConfigurationInput, opts ...request.Option) (*DeleteHsmConfigurationOutput, error) { 3605 req, out := c.DeleteHsmConfigurationRequest(input) 3606 req.SetContext(ctx) 3607 req.ApplyOptions(opts...) 3608 return out, req.Send() 3609 } 3610 3611 const opDeletePartner = "DeletePartner" 3612 3613 // DeletePartnerRequest generates a "aws/request.Request" representing the 3614 // client's request for the DeletePartner operation. The "output" return 3615 // value will be populated with the request's response once the request completes 3616 // successfully. 3617 // 3618 // Use "Send" method on the returned Request to send the API call to the service. 3619 // the "output" return value is not valid until after Send returns without error. 3620 // 3621 // See DeletePartner for more information on using the DeletePartner 3622 // API call, and error handling. 3623 // 3624 // This method is useful when you want to inject custom logic or configuration 3625 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 3626 // 3627 // 3628 // // Example sending a request using the DeletePartnerRequest method. 3629 // req, resp := client.DeletePartnerRequest(params) 3630 // 3631 // err := req.Send() 3632 // if err == nil { // resp is now filled 3633 // fmt.Println(resp) 3634 // } 3635 // 3636 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DeletePartner 3637 func (c *Redshift) DeletePartnerRequest(input *DeletePartnerInput) (req *request.Request, output *DeletePartnerOutput) { 3638 op := &request.Operation{ 3639 Name: opDeletePartner, 3640 HTTPMethod: "POST", 3641 HTTPPath: "/", 3642 } 3643 3644 if input == nil { 3645 input = &DeletePartnerInput{} 3646 } 3647 3648 output = &DeletePartnerOutput{} 3649 req = c.newRequest(op, input, output) 3650 return 3651 } 3652 3653 // DeletePartner API operation for Amazon Redshift. 3654 // 3655 // Deletes a partner integration from a cluster. Data can still flow to the 3656 // cluster until the integration is deleted at the partner's website. 3657 // 3658 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3659 // with awserr.Error's Code and Message methods to get detailed information about 3660 // the error. 3661 // 3662 // See the AWS API reference guide for Amazon Redshift's 3663 // API operation DeletePartner for usage and error information. 3664 // 3665 // Returned Error Codes: 3666 // * ErrCodePartnerNotFoundFault "PartnerNotFound" 3667 // The name of the partner was not found. 3668 // 3669 // * ErrCodeClusterNotFoundFault "ClusterNotFound" 3670 // The ClusterIdentifier parameter does not refer to an existing cluster. 3671 // 3672 // * ErrCodeUnauthorizedPartnerIntegrationFault "UnauthorizedPartnerIntegration" 3673 // The partner integration is not authorized. 3674 // 3675 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DeletePartner 3676 func (c *Redshift) DeletePartner(input *DeletePartnerInput) (*DeletePartnerOutput, error) { 3677 req, out := c.DeletePartnerRequest(input) 3678 return out, req.Send() 3679 } 3680 3681 // DeletePartnerWithContext is the same as DeletePartner with the addition of 3682 // the ability to pass a context and additional request options. 3683 // 3684 // See DeletePartner for details on how to use this API operation. 3685 // 3686 // The context must be non-nil and will be used for request cancellation. If 3687 // the context is nil a panic will occur. In the future the SDK may create 3688 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3689 // for more information on using Contexts. 3690 func (c *Redshift) DeletePartnerWithContext(ctx aws.Context, input *DeletePartnerInput, opts ...request.Option) (*DeletePartnerOutput, error) { 3691 req, out := c.DeletePartnerRequest(input) 3692 req.SetContext(ctx) 3693 req.ApplyOptions(opts...) 3694 return out, req.Send() 3695 } 3696 3697 const opDeleteScheduledAction = "DeleteScheduledAction" 3698 3699 // DeleteScheduledActionRequest generates a "aws/request.Request" representing the 3700 // client's request for the DeleteScheduledAction operation. The "output" return 3701 // value will be populated with the request's response once the request completes 3702 // successfully. 3703 // 3704 // Use "Send" method on the returned Request to send the API call to the service. 3705 // the "output" return value is not valid until after Send returns without error. 3706 // 3707 // See DeleteScheduledAction for more information on using the DeleteScheduledAction 3708 // API call, and error handling. 3709 // 3710 // This method is useful when you want to inject custom logic or configuration 3711 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 3712 // 3713 // 3714 // // Example sending a request using the DeleteScheduledActionRequest method. 3715 // req, resp := client.DeleteScheduledActionRequest(params) 3716 // 3717 // err := req.Send() 3718 // if err == nil { // resp is now filled 3719 // fmt.Println(resp) 3720 // } 3721 // 3722 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DeleteScheduledAction 3723 func (c *Redshift) DeleteScheduledActionRequest(input *DeleteScheduledActionInput) (req *request.Request, output *DeleteScheduledActionOutput) { 3724 op := &request.Operation{ 3725 Name: opDeleteScheduledAction, 3726 HTTPMethod: "POST", 3727 HTTPPath: "/", 3728 } 3729 3730 if input == nil { 3731 input = &DeleteScheduledActionInput{} 3732 } 3733 3734 output = &DeleteScheduledActionOutput{} 3735 req = c.newRequest(op, input, output) 3736 req.Handlers.Unmarshal.Swap(query.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 3737 return 3738 } 3739 3740 // DeleteScheduledAction API operation for Amazon Redshift. 3741 // 3742 // Deletes a scheduled action. 3743 // 3744 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3745 // with awserr.Error's Code and Message methods to get detailed information about 3746 // the error. 3747 // 3748 // See the AWS API reference guide for Amazon Redshift's 3749 // API operation DeleteScheduledAction for usage and error information. 3750 // 3751 // Returned Error Codes: 3752 // * ErrCodeScheduledActionNotFoundFault "ScheduledActionNotFound" 3753 // The scheduled action cannot be found. 3754 // 3755 // * ErrCodeUnauthorizedOperation "UnauthorizedOperation" 3756 // Your account is not authorized to perform the requested operation. 3757 // 3758 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DeleteScheduledAction 3759 func (c *Redshift) DeleteScheduledAction(input *DeleteScheduledActionInput) (*DeleteScheduledActionOutput, error) { 3760 req, out := c.DeleteScheduledActionRequest(input) 3761 return out, req.Send() 3762 } 3763 3764 // DeleteScheduledActionWithContext is the same as DeleteScheduledAction with the addition of 3765 // the ability to pass a context and additional request options. 3766 // 3767 // See DeleteScheduledAction for details on how to use this API operation. 3768 // 3769 // The context must be non-nil and will be used for request cancellation. If 3770 // the context is nil a panic will occur. In the future the SDK may create 3771 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3772 // for more information on using Contexts. 3773 func (c *Redshift) DeleteScheduledActionWithContext(ctx aws.Context, input *DeleteScheduledActionInput, opts ...request.Option) (*DeleteScheduledActionOutput, error) { 3774 req, out := c.DeleteScheduledActionRequest(input) 3775 req.SetContext(ctx) 3776 req.ApplyOptions(opts...) 3777 return out, req.Send() 3778 } 3779 3780 const opDeleteSnapshotCopyGrant = "DeleteSnapshotCopyGrant" 3781 3782 // DeleteSnapshotCopyGrantRequest generates a "aws/request.Request" representing the 3783 // client's request for the DeleteSnapshotCopyGrant operation. The "output" return 3784 // value will be populated with the request's response once the request completes 3785 // successfully. 3786 // 3787 // Use "Send" method on the returned Request to send the API call to the service. 3788 // the "output" return value is not valid until after Send returns without error. 3789 // 3790 // See DeleteSnapshotCopyGrant for more information on using the DeleteSnapshotCopyGrant 3791 // API call, and error handling. 3792 // 3793 // This method is useful when you want to inject custom logic or configuration 3794 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 3795 // 3796 // 3797 // // Example sending a request using the DeleteSnapshotCopyGrantRequest method. 3798 // req, resp := client.DeleteSnapshotCopyGrantRequest(params) 3799 // 3800 // err := req.Send() 3801 // if err == nil { // resp is now filled 3802 // fmt.Println(resp) 3803 // } 3804 // 3805 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DeleteSnapshotCopyGrant 3806 func (c *Redshift) DeleteSnapshotCopyGrantRequest(input *DeleteSnapshotCopyGrantInput) (req *request.Request, output *DeleteSnapshotCopyGrantOutput) { 3807 op := &request.Operation{ 3808 Name: opDeleteSnapshotCopyGrant, 3809 HTTPMethod: "POST", 3810 HTTPPath: "/", 3811 } 3812 3813 if input == nil { 3814 input = &DeleteSnapshotCopyGrantInput{} 3815 } 3816 3817 output = &DeleteSnapshotCopyGrantOutput{} 3818 req = c.newRequest(op, input, output) 3819 req.Handlers.Unmarshal.Swap(query.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 3820 return 3821 } 3822 3823 // DeleteSnapshotCopyGrant API operation for Amazon Redshift. 3824 // 3825 // Deletes the specified snapshot copy grant. 3826 // 3827 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3828 // with awserr.Error's Code and Message methods to get detailed information about 3829 // the error. 3830 // 3831 // See the AWS API reference guide for Amazon Redshift's 3832 // API operation DeleteSnapshotCopyGrant for usage and error information. 3833 // 3834 // Returned Error Codes: 3835 // * ErrCodeInvalidSnapshotCopyGrantStateFault "InvalidSnapshotCopyGrantStateFault" 3836 // The snapshot copy grant can't be deleted because it is used by one or more 3837 // clusters. 3838 // 3839 // * ErrCodeSnapshotCopyGrantNotFoundFault "SnapshotCopyGrantNotFoundFault" 3840 // The specified snapshot copy grant can't be found. Make sure that the name 3841 // is typed correctly and that the grant exists in the destination region. 3842 // 3843 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DeleteSnapshotCopyGrant 3844 func (c *Redshift) DeleteSnapshotCopyGrant(input *DeleteSnapshotCopyGrantInput) (*DeleteSnapshotCopyGrantOutput, error) { 3845 req, out := c.DeleteSnapshotCopyGrantRequest(input) 3846 return out, req.Send() 3847 } 3848 3849 // DeleteSnapshotCopyGrantWithContext is the same as DeleteSnapshotCopyGrant with the addition of 3850 // the ability to pass a context and additional request options. 3851 // 3852 // See DeleteSnapshotCopyGrant for details on how to use this API operation. 3853 // 3854 // The context must be non-nil and will be used for request cancellation. If 3855 // the context is nil a panic will occur. In the future the SDK may create 3856 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3857 // for more information on using Contexts. 3858 func (c *Redshift) DeleteSnapshotCopyGrantWithContext(ctx aws.Context, input *DeleteSnapshotCopyGrantInput, opts ...request.Option) (*DeleteSnapshotCopyGrantOutput, error) { 3859 req, out := c.DeleteSnapshotCopyGrantRequest(input) 3860 req.SetContext(ctx) 3861 req.ApplyOptions(opts...) 3862 return out, req.Send() 3863 } 3864 3865 const opDeleteSnapshotSchedule = "DeleteSnapshotSchedule" 3866 3867 // DeleteSnapshotScheduleRequest generates a "aws/request.Request" representing the 3868 // client's request for the DeleteSnapshotSchedule operation. The "output" return 3869 // value will be populated with the request's response once the request completes 3870 // successfully. 3871 // 3872 // Use "Send" method on the returned Request to send the API call to the service. 3873 // the "output" return value is not valid until after Send returns without error. 3874 // 3875 // See DeleteSnapshotSchedule for more information on using the DeleteSnapshotSchedule 3876 // API call, and error handling. 3877 // 3878 // This method is useful when you want to inject custom logic or configuration 3879 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 3880 // 3881 // 3882 // // Example sending a request using the DeleteSnapshotScheduleRequest method. 3883 // req, resp := client.DeleteSnapshotScheduleRequest(params) 3884 // 3885 // err := req.Send() 3886 // if err == nil { // resp is now filled 3887 // fmt.Println(resp) 3888 // } 3889 // 3890 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DeleteSnapshotSchedule 3891 func (c *Redshift) DeleteSnapshotScheduleRequest(input *DeleteSnapshotScheduleInput) (req *request.Request, output *DeleteSnapshotScheduleOutput) { 3892 op := &request.Operation{ 3893 Name: opDeleteSnapshotSchedule, 3894 HTTPMethod: "POST", 3895 HTTPPath: "/", 3896 } 3897 3898 if input == nil { 3899 input = &DeleteSnapshotScheduleInput{} 3900 } 3901 3902 output = &DeleteSnapshotScheduleOutput{} 3903 req = c.newRequest(op, input, output) 3904 req.Handlers.Unmarshal.Swap(query.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 3905 return 3906 } 3907 3908 // DeleteSnapshotSchedule API operation for Amazon Redshift. 3909 // 3910 // Deletes a snapshot schedule. 3911 // 3912 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3913 // with awserr.Error's Code and Message methods to get detailed information about 3914 // the error. 3915 // 3916 // See the AWS API reference guide for Amazon Redshift's 3917 // API operation DeleteSnapshotSchedule for usage and error information. 3918 // 3919 // Returned Error Codes: 3920 // * ErrCodeInvalidClusterSnapshotScheduleStateFault "InvalidClusterSnapshotScheduleState" 3921 // The cluster snapshot schedule state is not valid. 3922 // 3923 // * ErrCodeSnapshotScheduleNotFoundFault "SnapshotScheduleNotFound" 3924 // We could not find the specified snapshot schedule. 3925 // 3926 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DeleteSnapshotSchedule 3927 func (c *Redshift) DeleteSnapshotSchedule(input *DeleteSnapshotScheduleInput) (*DeleteSnapshotScheduleOutput, error) { 3928 req, out := c.DeleteSnapshotScheduleRequest(input) 3929 return out, req.Send() 3930 } 3931 3932 // DeleteSnapshotScheduleWithContext is the same as DeleteSnapshotSchedule with the addition of 3933 // the ability to pass a context and additional request options. 3934 // 3935 // See DeleteSnapshotSchedule for details on how to use this API operation. 3936 // 3937 // The context must be non-nil and will be used for request cancellation. If 3938 // the context is nil a panic will occur. In the future the SDK may create 3939 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3940 // for more information on using Contexts. 3941 func (c *Redshift) DeleteSnapshotScheduleWithContext(ctx aws.Context, input *DeleteSnapshotScheduleInput, opts ...request.Option) (*DeleteSnapshotScheduleOutput, error) { 3942 req, out := c.DeleteSnapshotScheduleRequest(input) 3943 req.SetContext(ctx) 3944 req.ApplyOptions(opts...) 3945 return out, req.Send() 3946 } 3947 3948 const opDeleteTags = "DeleteTags" 3949 3950 // DeleteTagsRequest generates a "aws/request.Request" representing the 3951 // client's request for the DeleteTags operation. The "output" return 3952 // value will be populated with the request's response once the request completes 3953 // successfully. 3954 // 3955 // Use "Send" method on the returned Request to send the API call to the service. 3956 // the "output" return value is not valid until after Send returns without error. 3957 // 3958 // See DeleteTags for more information on using the DeleteTags 3959 // API call, and error handling. 3960 // 3961 // This method is useful when you want to inject custom logic or configuration 3962 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 3963 // 3964 // 3965 // // Example sending a request using the DeleteTagsRequest method. 3966 // req, resp := client.DeleteTagsRequest(params) 3967 // 3968 // err := req.Send() 3969 // if err == nil { // resp is now filled 3970 // fmt.Println(resp) 3971 // } 3972 // 3973 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DeleteTags 3974 func (c *Redshift) DeleteTagsRequest(input *DeleteTagsInput) (req *request.Request, output *DeleteTagsOutput) { 3975 op := &request.Operation{ 3976 Name: opDeleteTags, 3977 HTTPMethod: "POST", 3978 HTTPPath: "/", 3979 } 3980 3981 if input == nil { 3982 input = &DeleteTagsInput{} 3983 } 3984 3985 output = &DeleteTagsOutput{} 3986 req = c.newRequest(op, input, output) 3987 req.Handlers.Unmarshal.Swap(query.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 3988 return 3989 } 3990 3991 // DeleteTags API operation for Amazon Redshift. 3992 // 3993 // Deletes tags from a resource. You must provide the ARN of the resource from 3994 // which you want to delete the tag or tags. 3995 // 3996 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3997 // with awserr.Error's Code and Message methods to get detailed information about 3998 // the error. 3999 // 4000 // See the AWS API reference guide for Amazon Redshift's 4001 // API operation DeleteTags for usage and error information. 4002 // 4003 // Returned Error Codes: 4004 // * ErrCodeResourceNotFoundFault "ResourceNotFoundFault" 4005 // The resource could not be found. 4006 // 4007 // * ErrCodeInvalidTagFault "InvalidTagFault" 4008 // The tag is invalid. 4009 // 4010 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DeleteTags 4011 func (c *Redshift) DeleteTags(input *DeleteTagsInput) (*DeleteTagsOutput, error) { 4012 req, out := c.DeleteTagsRequest(input) 4013 return out, req.Send() 4014 } 4015 4016 // DeleteTagsWithContext is the same as DeleteTags with the addition of 4017 // the ability to pass a context and additional request options. 4018 // 4019 // See DeleteTags for details on how to use this API operation. 4020 // 4021 // The context must be non-nil and will be used for request cancellation. If 4022 // the context is nil a panic will occur. In the future the SDK may create 4023 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 4024 // for more information on using Contexts. 4025 func (c *Redshift) DeleteTagsWithContext(ctx aws.Context, input *DeleteTagsInput, opts ...request.Option) (*DeleteTagsOutput, error) { 4026 req, out := c.DeleteTagsRequest(input) 4027 req.SetContext(ctx) 4028 req.ApplyOptions(opts...) 4029 return out, req.Send() 4030 } 4031 4032 const opDeleteUsageLimit = "DeleteUsageLimit" 4033 4034 // DeleteUsageLimitRequest generates a "aws/request.Request" representing the 4035 // client's request for the DeleteUsageLimit operation. The "output" return 4036 // value will be populated with the request's response once the request completes 4037 // successfully. 4038 // 4039 // Use "Send" method on the returned Request to send the API call to the service. 4040 // the "output" return value is not valid until after Send returns without error. 4041 // 4042 // See DeleteUsageLimit for more information on using the DeleteUsageLimit 4043 // API call, and error handling. 4044 // 4045 // This method is useful when you want to inject custom logic or configuration 4046 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 4047 // 4048 // 4049 // // Example sending a request using the DeleteUsageLimitRequest method. 4050 // req, resp := client.DeleteUsageLimitRequest(params) 4051 // 4052 // err := req.Send() 4053 // if err == nil { // resp is now filled 4054 // fmt.Println(resp) 4055 // } 4056 // 4057 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DeleteUsageLimit 4058 func (c *Redshift) DeleteUsageLimitRequest(input *DeleteUsageLimitInput) (req *request.Request, output *DeleteUsageLimitOutput) { 4059 op := &request.Operation{ 4060 Name: opDeleteUsageLimit, 4061 HTTPMethod: "POST", 4062 HTTPPath: "/", 4063 } 4064 4065 if input == nil { 4066 input = &DeleteUsageLimitInput{} 4067 } 4068 4069 output = &DeleteUsageLimitOutput{} 4070 req = c.newRequest(op, input, output) 4071 req.Handlers.Unmarshal.Swap(query.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 4072 return 4073 } 4074 4075 // DeleteUsageLimit API operation for Amazon Redshift. 4076 // 4077 // Deletes a usage limit from a cluster. 4078 // 4079 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 4080 // with awserr.Error's Code and Message methods to get detailed information about 4081 // the error. 4082 // 4083 // See the AWS API reference guide for Amazon Redshift's 4084 // API operation DeleteUsageLimit for usage and error information. 4085 // 4086 // Returned Error Codes: 4087 // * ErrCodeUsageLimitNotFoundFault "UsageLimitNotFound" 4088 // The usage limit identifier can't be found. 4089 // 4090 // * ErrCodeUnsupportedOperationFault "UnsupportedOperation" 4091 // The requested operation isn't supported. 4092 // 4093 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DeleteUsageLimit 4094 func (c *Redshift) DeleteUsageLimit(input *DeleteUsageLimitInput) (*DeleteUsageLimitOutput, error) { 4095 req, out := c.DeleteUsageLimitRequest(input) 4096 return out, req.Send() 4097 } 4098 4099 // DeleteUsageLimitWithContext is the same as DeleteUsageLimit with the addition of 4100 // the ability to pass a context and additional request options. 4101 // 4102 // See DeleteUsageLimit for details on how to use this API operation. 4103 // 4104 // The context must be non-nil and will be used for request cancellation. If 4105 // the context is nil a panic will occur. In the future the SDK may create 4106 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 4107 // for more information on using Contexts. 4108 func (c *Redshift) DeleteUsageLimitWithContext(ctx aws.Context, input *DeleteUsageLimitInput, opts ...request.Option) (*DeleteUsageLimitOutput, error) { 4109 req, out := c.DeleteUsageLimitRequest(input) 4110 req.SetContext(ctx) 4111 req.ApplyOptions(opts...) 4112 return out, req.Send() 4113 } 4114 4115 const opDescribeAccountAttributes = "DescribeAccountAttributes" 4116 4117 // DescribeAccountAttributesRequest generates a "aws/request.Request" representing the 4118 // client's request for the DescribeAccountAttributes operation. The "output" return 4119 // value will be populated with the request's response once the request completes 4120 // successfully. 4121 // 4122 // Use "Send" method on the returned Request to send the API call to the service. 4123 // the "output" return value is not valid until after Send returns without error. 4124 // 4125 // See DescribeAccountAttributes for more information on using the DescribeAccountAttributes 4126 // API call, and error handling. 4127 // 4128 // This method is useful when you want to inject custom logic or configuration 4129 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 4130 // 4131 // 4132 // // Example sending a request using the DescribeAccountAttributesRequest method. 4133 // req, resp := client.DescribeAccountAttributesRequest(params) 4134 // 4135 // err := req.Send() 4136 // if err == nil { // resp is now filled 4137 // fmt.Println(resp) 4138 // } 4139 // 4140 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeAccountAttributes 4141 func (c *Redshift) DescribeAccountAttributesRequest(input *DescribeAccountAttributesInput) (req *request.Request, output *DescribeAccountAttributesOutput) { 4142 op := &request.Operation{ 4143 Name: opDescribeAccountAttributes, 4144 HTTPMethod: "POST", 4145 HTTPPath: "/", 4146 } 4147 4148 if input == nil { 4149 input = &DescribeAccountAttributesInput{} 4150 } 4151 4152 output = &DescribeAccountAttributesOutput{} 4153 req = c.newRequest(op, input, output) 4154 return 4155 } 4156 4157 // DescribeAccountAttributes API operation for Amazon Redshift. 4158 // 4159 // Returns a list of attributes attached to an account 4160 // 4161 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 4162 // with awserr.Error's Code and Message methods to get detailed information about 4163 // the error. 4164 // 4165 // See the AWS API reference guide for Amazon Redshift's 4166 // API operation DescribeAccountAttributes for usage and error information. 4167 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeAccountAttributes 4168 func (c *Redshift) DescribeAccountAttributes(input *DescribeAccountAttributesInput) (*DescribeAccountAttributesOutput, error) { 4169 req, out := c.DescribeAccountAttributesRequest(input) 4170 return out, req.Send() 4171 } 4172 4173 // DescribeAccountAttributesWithContext is the same as DescribeAccountAttributes with the addition of 4174 // the ability to pass a context and additional request options. 4175 // 4176 // See DescribeAccountAttributes for details on how to use this API operation. 4177 // 4178 // The context must be non-nil and will be used for request cancellation. If 4179 // the context is nil a panic will occur. In the future the SDK may create 4180 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 4181 // for more information on using Contexts. 4182 func (c *Redshift) DescribeAccountAttributesWithContext(ctx aws.Context, input *DescribeAccountAttributesInput, opts ...request.Option) (*DescribeAccountAttributesOutput, error) { 4183 req, out := c.DescribeAccountAttributesRequest(input) 4184 req.SetContext(ctx) 4185 req.ApplyOptions(opts...) 4186 return out, req.Send() 4187 } 4188 4189 const opDescribeAuthenticationProfiles = "DescribeAuthenticationProfiles" 4190 4191 // DescribeAuthenticationProfilesRequest generates a "aws/request.Request" representing the 4192 // client's request for the DescribeAuthenticationProfiles operation. The "output" return 4193 // value will be populated with the request's response once the request completes 4194 // successfully. 4195 // 4196 // Use "Send" method on the returned Request to send the API call to the service. 4197 // the "output" return value is not valid until after Send returns without error. 4198 // 4199 // See DescribeAuthenticationProfiles for more information on using the DescribeAuthenticationProfiles 4200 // API call, and error handling. 4201 // 4202 // This method is useful when you want to inject custom logic or configuration 4203 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 4204 // 4205 // 4206 // // Example sending a request using the DescribeAuthenticationProfilesRequest method. 4207 // req, resp := client.DescribeAuthenticationProfilesRequest(params) 4208 // 4209 // err := req.Send() 4210 // if err == nil { // resp is now filled 4211 // fmt.Println(resp) 4212 // } 4213 // 4214 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeAuthenticationProfiles 4215 func (c *Redshift) DescribeAuthenticationProfilesRequest(input *DescribeAuthenticationProfilesInput) (req *request.Request, output *DescribeAuthenticationProfilesOutput) { 4216 op := &request.Operation{ 4217 Name: opDescribeAuthenticationProfiles, 4218 HTTPMethod: "POST", 4219 HTTPPath: "/", 4220 } 4221 4222 if input == nil { 4223 input = &DescribeAuthenticationProfilesInput{} 4224 } 4225 4226 output = &DescribeAuthenticationProfilesOutput{} 4227 req = c.newRequest(op, input, output) 4228 return 4229 } 4230 4231 // DescribeAuthenticationProfiles API operation for Amazon Redshift. 4232 // 4233 // Describes an authentication profile. 4234 // 4235 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 4236 // with awserr.Error's Code and Message methods to get detailed information about 4237 // the error. 4238 // 4239 // See the AWS API reference guide for Amazon Redshift's 4240 // API operation DescribeAuthenticationProfiles for usage and error information. 4241 // 4242 // Returned Error Codes: 4243 // * ErrCodeAuthenticationProfileNotFoundFault "AuthenticationProfileNotFoundFault" 4244 // The authentication profile can't be found. 4245 // 4246 // * ErrCodeInvalidAuthenticationProfileRequestFault "InvalidAuthenticationProfileRequestFault" 4247 // The authentication profile request is not valid. The profile name can't be 4248 // null or empty. The authentication profile API operation must be available 4249 // in the Amazon Web Services Region. 4250 // 4251 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeAuthenticationProfiles 4252 func (c *Redshift) DescribeAuthenticationProfiles(input *DescribeAuthenticationProfilesInput) (*DescribeAuthenticationProfilesOutput, error) { 4253 req, out := c.DescribeAuthenticationProfilesRequest(input) 4254 return out, req.Send() 4255 } 4256 4257 // DescribeAuthenticationProfilesWithContext is the same as DescribeAuthenticationProfiles with the addition of 4258 // the ability to pass a context and additional request options. 4259 // 4260 // See DescribeAuthenticationProfiles for details on how to use this API operation. 4261 // 4262 // The context must be non-nil and will be used for request cancellation. If 4263 // the context is nil a panic will occur. In the future the SDK may create 4264 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 4265 // for more information on using Contexts. 4266 func (c *Redshift) DescribeAuthenticationProfilesWithContext(ctx aws.Context, input *DescribeAuthenticationProfilesInput, opts ...request.Option) (*DescribeAuthenticationProfilesOutput, error) { 4267 req, out := c.DescribeAuthenticationProfilesRequest(input) 4268 req.SetContext(ctx) 4269 req.ApplyOptions(opts...) 4270 return out, req.Send() 4271 } 4272 4273 const opDescribeClusterDbRevisions = "DescribeClusterDbRevisions" 4274 4275 // DescribeClusterDbRevisionsRequest generates a "aws/request.Request" representing the 4276 // client's request for the DescribeClusterDbRevisions operation. The "output" return 4277 // value will be populated with the request's response once the request completes 4278 // successfully. 4279 // 4280 // Use "Send" method on the returned Request to send the API call to the service. 4281 // the "output" return value is not valid until after Send returns without error. 4282 // 4283 // See DescribeClusterDbRevisions for more information on using the DescribeClusterDbRevisions 4284 // API call, and error handling. 4285 // 4286 // This method is useful when you want to inject custom logic or configuration 4287 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 4288 // 4289 // 4290 // // Example sending a request using the DescribeClusterDbRevisionsRequest method. 4291 // req, resp := client.DescribeClusterDbRevisionsRequest(params) 4292 // 4293 // err := req.Send() 4294 // if err == nil { // resp is now filled 4295 // fmt.Println(resp) 4296 // } 4297 // 4298 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeClusterDbRevisions 4299 func (c *Redshift) DescribeClusterDbRevisionsRequest(input *DescribeClusterDbRevisionsInput) (req *request.Request, output *DescribeClusterDbRevisionsOutput) { 4300 op := &request.Operation{ 4301 Name: opDescribeClusterDbRevisions, 4302 HTTPMethod: "POST", 4303 HTTPPath: "/", 4304 Paginator: &request.Paginator{ 4305 InputTokens: []string{"Marker"}, 4306 OutputTokens: []string{"Marker"}, 4307 LimitToken: "MaxRecords", 4308 TruncationToken: "", 4309 }, 4310 } 4311 4312 if input == nil { 4313 input = &DescribeClusterDbRevisionsInput{} 4314 } 4315 4316 output = &DescribeClusterDbRevisionsOutput{} 4317 req = c.newRequest(op, input, output) 4318 return 4319 } 4320 4321 // DescribeClusterDbRevisions API operation for Amazon Redshift. 4322 // 4323 // Returns an array of ClusterDbRevision objects. 4324 // 4325 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 4326 // with awserr.Error's Code and Message methods to get detailed information about 4327 // the error. 4328 // 4329 // See the AWS API reference guide for Amazon Redshift's 4330 // API operation DescribeClusterDbRevisions for usage and error information. 4331 // 4332 // Returned Error Codes: 4333 // * ErrCodeClusterNotFoundFault "ClusterNotFound" 4334 // The ClusterIdentifier parameter does not refer to an existing cluster. 4335 // 4336 // * ErrCodeInvalidClusterStateFault "InvalidClusterState" 4337 // The specified cluster is not in the available state. 4338 // 4339 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeClusterDbRevisions 4340 func (c *Redshift) DescribeClusterDbRevisions(input *DescribeClusterDbRevisionsInput) (*DescribeClusterDbRevisionsOutput, error) { 4341 req, out := c.DescribeClusterDbRevisionsRequest(input) 4342 return out, req.Send() 4343 } 4344 4345 // DescribeClusterDbRevisionsWithContext is the same as DescribeClusterDbRevisions with the addition of 4346 // the ability to pass a context and additional request options. 4347 // 4348 // See DescribeClusterDbRevisions for details on how to use this API operation. 4349 // 4350 // The context must be non-nil and will be used for request cancellation. If 4351 // the context is nil a panic will occur. In the future the SDK may create 4352 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 4353 // for more information on using Contexts. 4354 func (c *Redshift) DescribeClusterDbRevisionsWithContext(ctx aws.Context, input *DescribeClusterDbRevisionsInput, opts ...request.Option) (*DescribeClusterDbRevisionsOutput, error) { 4355 req, out := c.DescribeClusterDbRevisionsRequest(input) 4356 req.SetContext(ctx) 4357 req.ApplyOptions(opts...) 4358 return out, req.Send() 4359 } 4360 4361 // DescribeClusterDbRevisionsPages iterates over the pages of a DescribeClusterDbRevisions operation, 4362 // calling the "fn" function with the response data for each page. To stop 4363 // iterating, return false from the fn function. 4364 // 4365 // See DescribeClusterDbRevisions method for more information on how to use this operation. 4366 // 4367 // Note: This operation can generate multiple requests to a service. 4368 // 4369 // // Example iterating over at most 3 pages of a DescribeClusterDbRevisions operation. 4370 // pageNum := 0 4371 // err := client.DescribeClusterDbRevisionsPages(params, 4372 // func(page *redshift.DescribeClusterDbRevisionsOutput, lastPage bool) bool { 4373 // pageNum++ 4374 // fmt.Println(page) 4375 // return pageNum <= 3 4376 // }) 4377 // 4378 func (c *Redshift) DescribeClusterDbRevisionsPages(input *DescribeClusterDbRevisionsInput, fn func(*DescribeClusterDbRevisionsOutput, bool) bool) error { 4379 return c.DescribeClusterDbRevisionsPagesWithContext(aws.BackgroundContext(), input, fn) 4380 } 4381 4382 // DescribeClusterDbRevisionsPagesWithContext same as DescribeClusterDbRevisionsPages except 4383 // it takes a Context and allows setting request options on the pages. 4384 // 4385 // The context must be non-nil and will be used for request cancellation. If 4386 // the context is nil a panic will occur. In the future the SDK may create 4387 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 4388 // for more information on using Contexts. 4389 func (c *Redshift) DescribeClusterDbRevisionsPagesWithContext(ctx aws.Context, input *DescribeClusterDbRevisionsInput, fn func(*DescribeClusterDbRevisionsOutput, bool) bool, opts ...request.Option) error { 4390 p := request.Pagination{ 4391 NewRequest: func() (*request.Request, error) { 4392 var inCpy *DescribeClusterDbRevisionsInput 4393 if input != nil { 4394 tmp := *input 4395 inCpy = &tmp 4396 } 4397 req, _ := c.DescribeClusterDbRevisionsRequest(inCpy) 4398 req.SetContext(ctx) 4399 req.ApplyOptions(opts...) 4400 return req, nil 4401 }, 4402 } 4403 4404 for p.Next() { 4405 if !fn(p.Page().(*DescribeClusterDbRevisionsOutput), !p.HasNextPage()) { 4406 break 4407 } 4408 } 4409 4410 return p.Err() 4411 } 4412 4413 const opDescribeClusterParameterGroups = "DescribeClusterParameterGroups" 4414 4415 // DescribeClusterParameterGroupsRequest generates a "aws/request.Request" representing the 4416 // client's request for the DescribeClusterParameterGroups operation. The "output" return 4417 // value will be populated with the request's response once the request completes 4418 // successfully. 4419 // 4420 // Use "Send" method on the returned Request to send the API call to the service. 4421 // the "output" return value is not valid until after Send returns without error. 4422 // 4423 // See DescribeClusterParameterGroups for more information on using the DescribeClusterParameterGroups 4424 // API call, and error handling. 4425 // 4426 // This method is useful when you want to inject custom logic or configuration 4427 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 4428 // 4429 // 4430 // // Example sending a request using the DescribeClusterParameterGroupsRequest method. 4431 // req, resp := client.DescribeClusterParameterGroupsRequest(params) 4432 // 4433 // err := req.Send() 4434 // if err == nil { // resp is now filled 4435 // fmt.Println(resp) 4436 // } 4437 // 4438 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeClusterParameterGroups 4439 func (c *Redshift) DescribeClusterParameterGroupsRequest(input *DescribeClusterParameterGroupsInput) (req *request.Request, output *DescribeClusterParameterGroupsOutput) { 4440 op := &request.Operation{ 4441 Name: opDescribeClusterParameterGroups, 4442 HTTPMethod: "POST", 4443 HTTPPath: "/", 4444 Paginator: &request.Paginator{ 4445 InputTokens: []string{"Marker"}, 4446 OutputTokens: []string{"Marker"}, 4447 LimitToken: "MaxRecords", 4448 TruncationToken: "", 4449 }, 4450 } 4451 4452 if input == nil { 4453 input = &DescribeClusterParameterGroupsInput{} 4454 } 4455 4456 output = &DescribeClusterParameterGroupsOutput{} 4457 req = c.newRequest(op, input, output) 4458 return 4459 } 4460 4461 // DescribeClusterParameterGroups API operation for Amazon Redshift. 4462 // 4463 // Returns a list of Amazon Redshift parameter groups, including parameter groups 4464 // you created and the default parameter group. For each parameter group, the 4465 // response includes the parameter group name, description, and parameter group 4466 // family name. You can optionally specify a name to retrieve the description 4467 // of a specific parameter group. 4468 // 4469 // For more information about parameters and parameter groups, go to Amazon 4470 // Redshift Parameter Groups (https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-parameter-groups.html) 4471 // in the Amazon Redshift Cluster Management Guide. 4472 // 4473 // If you specify both tag keys and tag values in the same request, Amazon Redshift 4474 // returns all parameter groups that match any combination of the specified 4475 // keys and values. For example, if you have owner and environment for tag keys, 4476 // and admin and test for tag values, all parameter groups that have any combination 4477 // of those values are returned. 4478 // 4479 // If both tag keys and values are omitted from the request, parameter groups 4480 // are returned regardless of whether they have tag keys or values associated 4481 // with them. 4482 // 4483 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 4484 // with awserr.Error's Code and Message methods to get detailed information about 4485 // the error. 4486 // 4487 // See the AWS API reference guide for Amazon Redshift's 4488 // API operation DescribeClusterParameterGroups for usage and error information. 4489 // 4490 // Returned Error Codes: 4491 // * ErrCodeClusterParameterGroupNotFoundFault "ClusterParameterGroupNotFound" 4492 // The parameter group name does not refer to an existing parameter group. 4493 // 4494 // * ErrCodeInvalidTagFault "InvalidTagFault" 4495 // The tag is invalid. 4496 // 4497 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeClusterParameterGroups 4498 func (c *Redshift) DescribeClusterParameterGroups(input *DescribeClusterParameterGroupsInput) (*DescribeClusterParameterGroupsOutput, error) { 4499 req, out := c.DescribeClusterParameterGroupsRequest(input) 4500 return out, req.Send() 4501 } 4502 4503 // DescribeClusterParameterGroupsWithContext is the same as DescribeClusterParameterGroups with the addition of 4504 // the ability to pass a context and additional request options. 4505 // 4506 // See DescribeClusterParameterGroups for details on how to use this API operation. 4507 // 4508 // The context must be non-nil and will be used for request cancellation. If 4509 // the context is nil a panic will occur. In the future the SDK may create 4510 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 4511 // for more information on using Contexts. 4512 func (c *Redshift) DescribeClusterParameterGroupsWithContext(ctx aws.Context, input *DescribeClusterParameterGroupsInput, opts ...request.Option) (*DescribeClusterParameterGroupsOutput, error) { 4513 req, out := c.DescribeClusterParameterGroupsRequest(input) 4514 req.SetContext(ctx) 4515 req.ApplyOptions(opts...) 4516 return out, req.Send() 4517 } 4518 4519 // DescribeClusterParameterGroupsPages iterates over the pages of a DescribeClusterParameterGroups operation, 4520 // calling the "fn" function with the response data for each page. To stop 4521 // iterating, return false from the fn function. 4522 // 4523 // See DescribeClusterParameterGroups method for more information on how to use this operation. 4524 // 4525 // Note: This operation can generate multiple requests to a service. 4526 // 4527 // // Example iterating over at most 3 pages of a DescribeClusterParameterGroups operation. 4528 // pageNum := 0 4529 // err := client.DescribeClusterParameterGroupsPages(params, 4530 // func(page *redshift.DescribeClusterParameterGroupsOutput, lastPage bool) bool { 4531 // pageNum++ 4532 // fmt.Println(page) 4533 // return pageNum <= 3 4534 // }) 4535 // 4536 func (c *Redshift) DescribeClusterParameterGroupsPages(input *DescribeClusterParameterGroupsInput, fn func(*DescribeClusterParameterGroupsOutput, bool) bool) error { 4537 return c.DescribeClusterParameterGroupsPagesWithContext(aws.BackgroundContext(), input, fn) 4538 } 4539 4540 // DescribeClusterParameterGroupsPagesWithContext same as DescribeClusterParameterGroupsPages except 4541 // it takes a Context and allows setting request options on the pages. 4542 // 4543 // The context must be non-nil and will be used for request cancellation. If 4544 // the context is nil a panic will occur. In the future the SDK may create 4545 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 4546 // for more information on using Contexts. 4547 func (c *Redshift) DescribeClusterParameterGroupsPagesWithContext(ctx aws.Context, input *DescribeClusterParameterGroupsInput, fn func(*DescribeClusterParameterGroupsOutput, bool) bool, opts ...request.Option) error { 4548 p := request.Pagination{ 4549 NewRequest: func() (*request.Request, error) { 4550 var inCpy *DescribeClusterParameterGroupsInput 4551 if input != nil { 4552 tmp := *input 4553 inCpy = &tmp 4554 } 4555 req, _ := c.DescribeClusterParameterGroupsRequest(inCpy) 4556 req.SetContext(ctx) 4557 req.ApplyOptions(opts...) 4558 return req, nil 4559 }, 4560 } 4561 4562 for p.Next() { 4563 if !fn(p.Page().(*DescribeClusterParameterGroupsOutput), !p.HasNextPage()) { 4564 break 4565 } 4566 } 4567 4568 return p.Err() 4569 } 4570 4571 const opDescribeClusterParameters = "DescribeClusterParameters" 4572 4573 // DescribeClusterParametersRequest generates a "aws/request.Request" representing the 4574 // client's request for the DescribeClusterParameters operation. The "output" return 4575 // value will be populated with the request's response once the request completes 4576 // successfully. 4577 // 4578 // Use "Send" method on the returned Request to send the API call to the service. 4579 // the "output" return value is not valid until after Send returns without error. 4580 // 4581 // See DescribeClusterParameters for more information on using the DescribeClusterParameters 4582 // API call, and error handling. 4583 // 4584 // This method is useful when you want to inject custom logic or configuration 4585 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 4586 // 4587 // 4588 // // Example sending a request using the DescribeClusterParametersRequest method. 4589 // req, resp := client.DescribeClusterParametersRequest(params) 4590 // 4591 // err := req.Send() 4592 // if err == nil { // resp is now filled 4593 // fmt.Println(resp) 4594 // } 4595 // 4596 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeClusterParameters 4597 func (c *Redshift) DescribeClusterParametersRequest(input *DescribeClusterParametersInput) (req *request.Request, output *DescribeClusterParametersOutput) { 4598 op := &request.Operation{ 4599 Name: opDescribeClusterParameters, 4600 HTTPMethod: "POST", 4601 HTTPPath: "/", 4602 Paginator: &request.Paginator{ 4603 InputTokens: []string{"Marker"}, 4604 OutputTokens: []string{"Marker"}, 4605 LimitToken: "MaxRecords", 4606 TruncationToken: "", 4607 }, 4608 } 4609 4610 if input == nil { 4611 input = &DescribeClusterParametersInput{} 4612 } 4613 4614 output = &DescribeClusterParametersOutput{} 4615 req = c.newRequest(op, input, output) 4616 return 4617 } 4618 4619 // DescribeClusterParameters API operation for Amazon Redshift. 4620 // 4621 // Returns a detailed list of parameters contained within the specified Amazon 4622 // Redshift parameter group. For each parameter the response includes information 4623 // such as parameter name, description, data type, value, whether the parameter 4624 // value is modifiable, and so on. 4625 // 4626 // You can specify source filter to retrieve parameters of only specific type. 4627 // For example, to retrieve parameters that were modified by a user action such 4628 // as from ModifyClusterParameterGroup, you can specify source equal to user. 4629 // 4630 // For more information about parameters and parameter groups, go to Amazon 4631 // Redshift Parameter Groups (https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-parameter-groups.html) 4632 // in the Amazon Redshift Cluster Management Guide. 4633 // 4634 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 4635 // with awserr.Error's Code and Message methods to get detailed information about 4636 // the error. 4637 // 4638 // See the AWS API reference guide for Amazon Redshift's 4639 // API operation DescribeClusterParameters for usage and error information. 4640 // 4641 // Returned Error Codes: 4642 // * ErrCodeClusterParameterGroupNotFoundFault "ClusterParameterGroupNotFound" 4643 // The parameter group name does not refer to an existing parameter group. 4644 // 4645 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeClusterParameters 4646 func (c *Redshift) DescribeClusterParameters(input *DescribeClusterParametersInput) (*DescribeClusterParametersOutput, error) { 4647 req, out := c.DescribeClusterParametersRequest(input) 4648 return out, req.Send() 4649 } 4650 4651 // DescribeClusterParametersWithContext is the same as DescribeClusterParameters with the addition of 4652 // the ability to pass a context and additional request options. 4653 // 4654 // See DescribeClusterParameters for details on how to use this API operation. 4655 // 4656 // The context must be non-nil and will be used for request cancellation. If 4657 // the context is nil a panic will occur. In the future the SDK may create 4658 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 4659 // for more information on using Contexts. 4660 func (c *Redshift) DescribeClusterParametersWithContext(ctx aws.Context, input *DescribeClusterParametersInput, opts ...request.Option) (*DescribeClusterParametersOutput, error) { 4661 req, out := c.DescribeClusterParametersRequest(input) 4662 req.SetContext(ctx) 4663 req.ApplyOptions(opts...) 4664 return out, req.Send() 4665 } 4666 4667 // DescribeClusterParametersPages iterates over the pages of a DescribeClusterParameters operation, 4668 // calling the "fn" function with the response data for each page. To stop 4669 // iterating, return false from the fn function. 4670 // 4671 // See DescribeClusterParameters method for more information on how to use this operation. 4672 // 4673 // Note: This operation can generate multiple requests to a service. 4674 // 4675 // // Example iterating over at most 3 pages of a DescribeClusterParameters operation. 4676 // pageNum := 0 4677 // err := client.DescribeClusterParametersPages(params, 4678 // func(page *redshift.DescribeClusterParametersOutput, lastPage bool) bool { 4679 // pageNum++ 4680 // fmt.Println(page) 4681 // return pageNum <= 3 4682 // }) 4683 // 4684 func (c *Redshift) DescribeClusterParametersPages(input *DescribeClusterParametersInput, fn func(*DescribeClusterParametersOutput, bool) bool) error { 4685 return c.DescribeClusterParametersPagesWithContext(aws.BackgroundContext(), input, fn) 4686 } 4687 4688 // DescribeClusterParametersPagesWithContext same as DescribeClusterParametersPages except 4689 // it takes a Context and allows setting request options on the pages. 4690 // 4691 // The context must be non-nil and will be used for request cancellation. If 4692 // the context is nil a panic will occur. In the future the SDK may create 4693 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 4694 // for more information on using Contexts. 4695 func (c *Redshift) DescribeClusterParametersPagesWithContext(ctx aws.Context, input *DescribeClusterParametersInput, fn func(*DescribeClusterParametersOutput, bool) bool, opts ...request.Option) error { 4696 p := request.Pagination{ 4697 NewRequest: func() (*request.Request, error) { 4698 var inCpy *DescribeClusterParametersInput 4699 if input != nil { 4700 tmp := *input 4701 inCpy = &tmp 4702 } 4703 req, _ := c.DescribeClusterParametersRequest(inCpy) 4704 req.SetContext(ctx) 4705 req.ApplyOptions(opts...) 4706 return req, nil 4707 }, 4708 } 4709 4710 for p.Next() { 4711 if !fn(p.Page().(*DescribeClusterParametersOutput), !p.HasNextPage()) { 4712 break 4713 } 4714 } 4715 4716 return p.Err() 4717 } 4718 4719 const opDescribeClusterSecurityGroups = "DescribeClusterSecurityGroups" 4720 4721 // DescribeClusterSecurityGroupsRequest generates a "aws/request.Request" representing the 4722 // client's request for the DescribeClusterSecurityGroups operation. The "output" return 4723 // value will be populated with the request's response once the request completes 4724 // successfully. 4725 // 4726 // Use "Send" method on the returned Request to send the API call to the service. 4727 // the "output" return value is not valid until after Send returns without error. 4728 // 4729 // See DescribeClusterSecurityGroups for more information on using the DescribeClusterSecurityGroups 4730 // API call, and error handling. 4731 // 4732 // This method is useful when you want to inject custom logic or configuration 4733 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 4734 // 4735 // 4736 // // Example sending a request using the DescribeClusterSecurityGroupsRequest method. 4737 // req, resp := client.DescribeClusterSecurityGroupsRequest(params) 4738 // 4739 // err := req.Send() 4740 // if err == nil { // resp is now filled 4741 // fmt.Println(resp) 4742 // } 4743 // 4744 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeClusterSecurityGroups 4745 func (c *Redshift) DescribeClusterSecurityGroupsRequest(input *DescribeClusterSecurityGroupsInput) (req *request.Request, output *DescribeClusterSecurityGroupsOutput) { 4746 op := &request.Operation{ 4747 Name: opDescribeClusterSecurityGroups, 4748 HTTPMethod: "POST", 4749 HTTPPath: "/", 4750 Paginator: &request.Paginator{ 4751 InputTokens: []string{"Marker"}, 4752 OutputTokens: []string{"Marker"}, 4753 LimitToken: "MaxRecords", 4754 TruncationToken: "", 4755 }, 4756 } 4757 4758 if input == nil { 4759 input = &DescribeClusterSecurityGroupsInput{} 4760 } 4761 4762 output = &DescribeClusterSecurityGroupsOutput{} 4763 req = c.newRequest(op, input, output) 4764 return 4765 } 4766 4767 // DescribeClusterSecurityGroups API operation for Amazon Redshift. 4768 // 4769 // Returns information about Amazon Redshift security groups. If the name of 4770 // a security group is specified, the response will contain only information 4771 // about only that security group. 4772 // 4773 // For information about managing security groups, go to Amazon Redshift Cluster 4774 // Security Groups (https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-security-groups.html) 4775 // in the Amazon Redshift Cluster Management Guide. 4776 // 4777 // If you specify both tag keys and tag values in the same request, Amazon Redshift 4778 // returns all security groups that match any combination of the specified keys 4779 // and values. For example, if you have owner and environment for tag keys, 4780 // and admin and test for tag values, all security groups that have any combination 4781 // of those values are returned. 4782 // 4783 // If both tag keys and values are omitted from the request, security groups 4784 // are returned regardless of whether they have tag keys or values associated 4785 // with them. 4786 // 4787 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 4788 // with awserr.Error's Code and Message methods to get detailed information about 4789 // the error. 4790 // 4791 // See the AWS API reference guide for Amazon Redshift's 4792 // API operation DescribeClusterSecurityGroups for usage and error information. 4793 // 4794 // Returned Error Codes: 4795 // * ErrCodeClusterSecurityGroupNotFoundFault "ClusterSecurityGroupNotFound" 4796 // The cluster security group name does not refer to an existing cluster security 4797 // group. 4798 // 4799 // * ErrCodeInvalidTagFault "InvalidTagFault" 4800 // The tag is invalid. 4801 // 4802 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeClusterSecurityGroups 4803 func (c *Redshift) DescribeClusterSecurityGroups(input *DescribeClusterSecurityGroupsInput) (*DescribeClusterSecurityGroupsOutput, error) { 4804 req, out := c.DescribeClusterSecurityGroupsRequest(input) 4805 return out, req.Send() 4806 } 4807 4808 // DescribeClusterSecurityGroupsWithContext is the same as DescribeClusterSecurityGroups with the addition of 4809 // the ability to pass a context and additional request options. 4810 // 4811 // See DescribeClusterSecurityGroups for details on how to use this API operation. 4812 // 4813 // The context must be non-nil and will be used for request cancellation. If 4814 // the context is nil a panic will occur. In the future the SDK may create 4815 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 4816 // for more information on using Contexts. 4817 func (c *Redshift) DescribeClusterSecurityGroupsWithContext(ctx aws.Context, input *DescribeClusterSecurityGroupsInput, opts ...request.Option) (*DescribeClusterSecurityGroupsOutput, error) { 4818 req, out := c.DescribeClusterSecurityGroupsRequest(input) 4819 req.SetContext(ctx) 4820 req.ApplyOptions(opts...) 4821 return out, req.Send() 4822 } 4823 4824 // DescribeClusterSecurityGroupsPages iterates over the pages of a DescribeClusterSecurityGroups operation, 4825 // calling the "fn" function with the response data for each page. To stop 4826 // iterating, return false from the fn function. 4827 // 4828 // See DescribeClusterSecurityGroups method for more information on how to use this operation. 4829 // 4830 // Note: This operation can generate multiple requests to a service. 4831 // 4832 // // Example iterating over at most 3 pages of a DescribeClusterSecurityGroups operation. 4833 // pageNum := 0 4834 // err := client.DescribeClusterSecurityGroupsPages(params, 4835 // func(page *redshift.DescribeClusterSecurityGroupsOutput, lastPage bool) bool { 4836 // pageNum++ 4837 // fmt.Println(page) 4838 // return pageNum <= 3 4839 // }) 4840 // 4841 func (c *Redshift) DescribeClusterSecurityGroupsPages(input *DescribeClusterSecurityGroupsInput, fn func(*DescribeClusterSecurityGroupsOutput, bool) bool) error { 4842 return c.DescribeClusterSecurityGroupsPagesWithContext(aws.BackgroundContext(), input, fn) 4843 } 4844 4845 // DescribeClusterSecurityGroupsPagesWithContext same as DescribeClusterSecurityGroupsPages except 4846 // it takes a Context and allows setting request options on the pages. 4847 // 4848 // The context must be non-nil and will be used for request cancellation. If 4849 // the context is nil a panic will occur. In the future the SDK may create 4850 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 4851 // for more information on using Contexts. 4852 func (c *Redshift) DescribeClusterSecurityGroupsPagesWithContext(ctx aws.Context, input *DescribeClusterSecurityGroupsInput, fn func(*DescribeClusterSecurityGroupsOutput, bool) bool, opts ...request.Option) error { 4853 p := request.Pagination{ 4854 NewRequest: func() (*request.Request, error) { 4855 var inCpy *DescribeClusterSecurityGroupsInput 4856 if input != nil { 4857 tmp := *input 4858 inCpy = &tmp 4859 } 4860 req, _ := c.DescribeClusterSecurityGroupsRequest(inCpy) 4861 req.SetContext(ctx) 4862 req.ApplyOptions(opts...) 4863 return req, nil 4864 }, 4865 } 4866 4867 for p.Next() { 4868 if !fn(p.Page().(*DescribeClusterSecurityGroupsOutput), !p.HasNextPage()) { 4869 break 4870 } 4871 } 4872 4873 return p.Err() 4874 } 4875 4876 const opDescribeClusterSnapshots = "DescribeClusterSnapshots" 4877 4878 // DescribeClusterSnapshotsRequest generates a "aws/request.Request" representing the 4879 // client's request for the DescribeClusterSnapshots operation. The "output" return 4880 // value will be populated with the request's response once the request completes 4881 // successfully. 4882 // 4883 // Use "Send" method on the returned Request to send the API call to the service. 4884 // the "output" return value is not valid until after Send returns without error. 4885 // 4886 // See DescribeClusterSnapshots for more information on using the DescribeClusterSnapshots 4887 // API call, and error handling. 4888 // 4889 // This method is useful when you want to inject custom logic or configuration 4890 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 4891 // 4892 // 4893 // // Example sending a request using the DescribeClusterSnapshotsRequest method. 4894 // req, resp := client.DescribeClusterSnapshotsRequest(params) 4895 // 4896 // err := req.Send() 4897 // if err == nil { // resp is now filled 4898 // fmt.Println(resp) 4899 // } 4900 // 4901 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeClusterSnapshots 4902 func (c *Redshift) DescribeClusterSnapshotsRequest(input *DescribeClusterSnapshotsInput) (req *request.Request, output *DescribeClusterSnapshotsOutput) { 4903 op := &request.Operation{ 4904 Name: opDescribeClusterSnapshots, 4905 HTTPMethod: "POST", 4906 HTTPPath: "/", 4907 Paginator: &request.Paginator{ 4908 InputTokens: []string{"Marker"}, 4909 OutputTokens: []string{"Marker"}, 4910 LimitToken: "MaxRecords", 4911 TruncationToken: "", 4912 }, 4913 } 4914 4915 if input == nil { 4916 input = &DescribeClusterSnapshotsInput{} 4917 } 4918 4919 output = &DescribeClusterSnapshotsOutput{} 4920 req = c.newRequest(op, input, output) 4921 return 4922 } 4923 4924 // DescribeClusterSnapshots API operation for Amazon Redshift. 4925 // 4926 // Returns one or more snapshot objects, which contain metadata about your cluster 4927 // snapshots. By default, this operation returns information about all snapshots 4928 // of all clusters that are owned by your Amazon Web Services account. No information 4929 // is returned for snapshots owned by inactive Amazon Web Services accounts. 4930 // 4931 // If you specify both tag keys and tag values in the same request, Amazon Redshift 4932 // returns all snapshots that match any combination of the specified keys and 4933 // values. For example, if you have owner and environment for tag keys, and 4934 // admin and test for tag values, all snapshots that have any combination of 4935 // those values are returned. Only snapshots that you own are returned in the 4936 // response; shared snapshots are not returned with the tag key and tag value 4937 // request parameters. 4938 // 4939 // If both tag keys and values are omitted from the request, snapshots are returned 4940 // regardless of whether they have tag keys or values associated with them. 4941 // 4942 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 4943 // with awserr.Error's Code and Message methods to get detailed information about 4944 // the error. 4945 // 4946 // See the AWS API reference guide for Amazon Redshift's 4947 // API operation DescribeClusterSnapshots for usage and error information. 4948 // 4949 // Returned Error Codes: 4950 // * ErrCodeClusterNotFoundFault "ClusterNotFound" 4951 // The ClusterIdentifier parameter does not refer to an existing cluster. 4952 // 4953 // * ErrCodeClusterSnapshotNotFoundFault "ClusterSnapshotNotFound" 4954 // The snapshot identifier does not refer to an existing cluster snapshot. 4955 // 4956 // * ErrCodeInvalidTagFault "InvalidTagFault" 4957 // The tag is invalid. 4958 // 4959 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeClusterSnapshots 4960 func (c *Redshift) DescribeClusterSnapshots(input *DescribeClusterSnapshotsInput) (*DescribeClusterSnapshotsOutput, error) { 4961 req, out := c.DescribeClusterSnapshotsRequest(input) 4962 return out, req.Send() 4963 } 4964 4965 // DescribeClusterSnapshotsWithContext is the same as DescribeClusterSnapshots with the addition of 4966 // the ability to pass a context and additional request options. 4967 // 4968 // See DescribeClusterSnapshots for details on how to use this API operation. 4969 // 4970 // The context must be non-nil and will be used for request cancellation. If 4971 // the context is nil a panic will occur. In the future the SDK may create 4972 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 4973 // for more information on using Contexts. 4974 func (c *Redshift) DescribeClusterSnapshotsWithContext(ctx aws.Context, input *DescribeClusterSnapshotsInput, opts ...request.Option) (*DescribeClusterSnapshotsOutput, error) { 4975 req, out := c.DescribeClusterSnapshotsRequest(input) 4976 req.SetContext(ctx) 4977 req.ApplyOptions(opts...) 4978 return out, req.Send() 4979 } 4980 4981 // DescribeClusterSnapshotsPages iterates over the pages of a DescribeClusterSnapshots operation, 4982 // calling the "fn" function with the response data for each page. To stop 4983 // iterating, return false from the fn function. 4984 // 4985 // See DescribeClusterSnapshots method for more information on how to use this operation. 4986 // 4987 // Note: This operation can generate multiple requests to a service. 4988 // 4989 // // Example iterating over at most 3 pages of a DescribeClusterSnapshots operation. 4990 // pageNum := 0 4991 // err := client.DescribeClusterSnapshotsPages(params, 4992 // func(page *redshift.DescribeClusterSnapshotsOutput, lastPage bool) bool { 4993 // pageNum++ 4994 // fmt.Println(page) 4995 // return pageNum <= 3 4996 // }) 4997 // 4998 func (c *Redshift) DescribeClusterSnapshotsPages(input *DescribeClusterSnapshotsInput, fn func(*DescribeClusterSnapshotsOutput, bool) bool) error { 4999 return c.DescribeClusterSnapshotsPagesWithContext(aws.BackgroundContext(), input, fn) 5000 } 5001 5002 // DescribeClusterSnapshotsPagesWithContext same as DescribeClusterSnapshotsPages except 5003 // it takes a Context and allows setting request options on the pages. 5004 // 5005 // The context must be non-nil and will be used for request cancellation. If 5006 // the context is nil a panic will occur. In the future the SDK may create 5007 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 5008 // for more information on using Contexts. 5009 func (c *Redshift) DescribeClusterSnapshotsPagesWithContext(ctx aws.Context, input *DescribeClusterSnapshotsInput, fn func(*DescribeClusterSnapshotsOutput, bool) bool, opts ...request.Option) error { 5010 p := request.Pagination{ 5011 NewRequest: func() (*request.Request, error) { 5012 var inCpy *DescribeClusterSnapshotsInput 5013 if input != nil { 5014 tmp := *input 5015 inCpy = &tmp 5016 } 5017 req, _ := c.DescribeClusterSnapshotsRequest(inCpy) 5018 req.SetContext(ctx) 5019 req.ApplyOptions(opts...) 5020 return req, nil 5021 }, 5022 } 5023 5024 for p.Next() { 5025 if !fn(p.Page().(*DescribeClusterSnapshotsOutput), !p.HasNextPage()) { 5026 break 5027 } 5028 } 5029 5030 return p.Err() 5031 } 5032 5033 const opDescribeClusterSubnetGroups = "DescribeClusterSubnetGroups" 5034 5035 // DescribeClusterSubnetGroupsRequest generates a "aws/request.Request" representing the 5036 // client's request for the DescribeClusterSubnetGroups operation. The "output" return 5037 // value will be populated with the request's response once the request completes 5038 // successfully. 5039 // 5040 // Use "Send" method on the returned Request to send the API call to the service. 5041 // the "output" return value is not valid until after Send returns without error. 5042 // 5043 // See DescribeClusterSubnetGroups for more information on using the DescribeClusterSubnetGroups 5044 // API call, and error handling. 5045 // 5046 // This method is useful when you want to inject custom logic or configuration 5047 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 5048 // 5049 // 5050 // // Example sending a request using the DescribeClusterSubnetGroupsRequest method. 5051 // req, resp := client.DescribeClusterSubnetGroupsRequest(params) 5052 // 5053 // err := req.Send() 5054 // if err == nil { // resp is now filled 5055 // fmt.Println(resp) 5056 // } 5057 // 5058 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeClusterSubnetGroups 5059 func (c *Redshift) DescribeClusterSubnetGroupsRequest(input *DescribeClusterSubnetGroupsInput) (req *request.Request, output *DescribeClusterSubnetGroupsOutput) { 5060 op := &request.Operation{ 5061 Name: opDescribeClusterSubnetGroups, 5062 HTTPMethod: "POST", 5063 HTTPPath: "/", 5064 Paginator: &request.Paginator{ 5065 InputTokens: []string{"Marker"}, 5066 OutputTokens: []string{"Marker"}, 5067 LimitToken: "MaxRecords", 5068 TruncationToken: "", 5069 }, 5070 } 5071 5072 if input == nil { 5073 input = &DescribeClusterSubnetGroupsInput{} 5074 } 5075 5076 output = &DescribeClusterSubnetGroupsOutput{} 5077 req = c.newRequest(op, input, output) 5078 return 5079 } 5080 5081 // DescribeClusterSubnetGroups API operation for Amazon Redshift. 5082 // 5083 // Returns one or more cluster subnet group objects, which contain metadata 5084 // about your cluster subnet groups. By default, this operation returns information 5085 // about all cluster subnet groups that are defined in your Amazon Web Services 5086 // account. 5087 // 5088 // If you specify both tag keys and tag values in the same request, Amazon Redshift 5089 // returns all subnet groups that match any combination of the specified keys 5090 // and values. For example, if you have owner and environment for tag keys, 5091 // and admin and test for tag values, all subnet groups that have any combination 5092 // of those values are returned. 5093 // 5094 // If both tag keys and values are omitted from the request, subnet groups are 5095 // returned regardless of whether they have tag keys or values associated with 5096 // them. 5097 // 5098 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 5099 // with awserr.Error's Code and Message methods to get detailed information about 5100 // the error. 5101 // 5102 // See the AWS API reference guide for Amazon Redshift's 5103 // API operation DescribeClusterSubnetGroups for usage and error information. 5104 // 5105 // Returned Error Codes: 5106 // * ErrCodeClusterSubnetGroupNotFoundFault "ClusterSubnetGroupNotFoundFault" 5107 // The cluster subnet group name does not refer to an existing cluster subnet 5108 // group. 5109 // 5110 // * ErrCodeInvalidTagFault "InvalidTagFault" 5111 // The tag is invalid. 5112 // 5113 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeClusterSubnetGroups 5114 func (c *Redshift) DescribeClusterSubnetGroups(input *DescribeClusterSubnetGroupsInput) (*DescribeClusterSubnetGroupsOutput, error) { 5115 req, out := c.DescribeClusterSubnetGroupsRequest(input) 5116 return out, req.Send() 5117 } 5118 5119 // DescribeClusterSubnetGroupsWithContext is the same as DescribeClusterSubnetGroups with the addition of 5120 // the ability to pass a context and additional request options. 5121 // 5122 // See DescribeClusterSubnetGroups for details on how to use this API operation. 5123 // 5124 // The context must be non-nil and will be used for request cancellation. If 5125 // the context is nil a panic will occur. In the future the SDK may create 5126 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 5127 // for more information on using Contexts. 5128 func (c *Redshift) DescribeClusterSubnetGroupsWithContext(ctx aws.Context, input *DescribeClusterSubnetGroupsInput, opts ...request.Option) (*DescribeClusterSubnetGroupsOutput, error) { 5129 req, out := c.DescribeClusterSubnetGroupsRequest(input) 5130 req.SetContext(ctx) 5131 req.ApplyOptions(opts...) 5132 return out, req.Send() 5133 } 5134 5135 // DescribeClusterSubnetGroupsPages iterates over the pages of a DescribeClusterSubnetGroups operation, 5136 // calling the "fn" function with the response data for each page. To stop 5137 // iterating, return false from the fn function. 5138 // 5139 // See DescribeClusterSubnetGroups method for more information on how to use this operation. 5140 // 5141 // Note: This operation can generate multiple requests to a service. 5142 // 5143 // // Example iterating over at most 3 pages of a DescribeClusterSubnetGroups operation. 5144 // pageNum := 0 5145 // err := client.DescribeClusterSubnetGroupsPages(params, 5146 // func(page *redshift.DescribeClusterSubnetGroupsOutput, lastPage bool) bool { 5147 // pageNum++ 5148 // fmt.Println(page) 5149 // return pageNum <= 3 5150 // }) 5151 // 5152 func (c *Redshift) DescribeClusterSubnetGroupsPages(input *DescribeClusterSubnetGroupsInput, fn func(*DescribeClusterSubnetGroupsOutput, bool) bool) error { 5153 return c.DescribeClusterSubnetGroupsPagesWithContext(aws.BackgroundContext(), input, fn) 5154 } 5155 5156 // DescribeClusterSubnetGroupsPagesWithContext same as DescribeClusterSubnetGroupsPages except 5157 // it takes a Context and allows setting request options on the pages. 5158 // 5159 // The context must be non-nil and will be used for request cancellation. If 5160 // the context is nil a panic will occur. In the future the SDK may create 5161 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 5162 // for more information on using Contexts. 5163 func (c *Redshift) DescribeClusterSubnetGroupsPagesWithContext(ctx aws.Context, input *DescribeClusterSubnetGroupsInput, fn func(*DescribeClusterSubnetGroupsOutput, bool) bool, opts ...request.Option) error { 5164 p := request.Pagination{ 5165 NewRequest: func() (*request.Request, error) { 5166 var inCpy *DescribeClusterSubnetGroupsInput 5167 if input != nil { 5168 tmp := *input 5169 inCpy = &tmp 5170 } 5171 req, _ := c.DescribeClusterSubnetGroupsRequest(inCpy) 5172 req.SetContext(ctx) 5173 req.ApplyOptions(opts...) 5174 return req, nil 5175 }, 5176 } 5177 5178 for p.Next() { 5179 if !fn(p.Page().(*DescribeClusterSubnetGroupsOutput), !p.HasNextPage()) { 5180 break 5181 } 5182 } 5183 5184 return p.Err() 5185 } 5186 5187 const opDescribeClusterTracks = "DescribeClusterTracks" 5188 5189 // DescribeClusterTracksRequest generates a "aws/request.Request" representing the 5190 // client's request for the DescribeClusterTracks operation. The "output" return 5191 // value will be populated with the request's response once the request completes 5192 // successfully. 5193 // 5194 // Use "Send" method on the returned Request to send the API call to the service. 5195 // the "output" return value is not valid until after Send returns without error. 5196 // 5197 // See DescribeClusterTracks for more information on using the DescribeClusterTracks 5198 // API call, and error handling. 5199 // 5200 // This method is useful when you want to inject custom logic or configuration 5201 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 5202 // 5203 // 5204 // // Example sending a request using the DescribeClusterTracksRequest method. 5205 // req, resp := client.DescribeClusterTracksRequest(params) 5206 // 5207 // err := req.Send() 5208 // if err == nil { // resp is now filled 5209 // fmt.Println(resp) 5210 // } 5211 // 5212 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeClusterTracks 5213 func (c *Redshift) DescribeClusterTracksRequest(input *DescribeClusterTracksInput) (req *request.Request, output *DescribeClusterTracksOutput) { 5214 op := &request.Operation{ 5215 Name: opDescribeClusterTracks, 5216 HTTPMethod: "POST", 5217 HTTPPath: "/", 5218 Paginator: &request.Paginator{ 5219 InputTokens: []string{"Marker"}, 5220 OutputTokens: []string{"Marker"}, 5221 LimitToken: "MaxRecords", 5222 TruncationToken: "", 5223 }, 5224 } 5225 5226 if input == nil { 5227 input = &DescribeClusterTracksInput{} 5228 } 5229 5230 output = &DescribeClusterTracksOutput{} 5231 req = c.newRequest(op, input, output) 5232 return 5233 } 5234 5235 // DescribeClusterTracks API operation for Amazon Redshift. 5236 // 5237 // Returns a list of all the available maintenance tracks. 5238 // 5239 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 5240 // with awserr.Error's Code and Message methods to get detailed information about 5241 // the error. 5242 // 5243 // See the AWS API reference guide for Amazon Redshift's 5244 // API operation DescribeClusterTracks for usage and error information. 5245 // 5246 // Returned Error Codes: 5247 // * ErrCodeInvalidClusterTrackFault "InvalidClusterTrack" 5248 // The provided cluster track name is not valid. 5249 // 5250 // * ErrCodeUnauthorizedOperation "UnauthorizedOperation" 5251 // Your account is not authorized to perform the requested operation. 5252 // 5253 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeClusterTracks 5254 func (c *Redshift) DescribeClusterTracks(input *DescribeClusterTracksInput) (*DescribeClusterTracksOutput, error) { 5255 req, out := c.DescribeClusterTracksRequest(input) 5256 return out, req.Send() 5257 } 5258 5259 // DescribeClusterTracksWithContext is the same as DescribeClusterTracks with the addition of 5260 // the ability to pass a context and additional request options. 5261 // 5262 // See DescribeClusterTracks for details on how to use this API operation. 5263 // 5264 // The context must be non-nil and will be used for request cancellation. If 5265 // the context is nil a panic will occur. In the future the SDK may create 5266 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 5267 // for more information on using Contexts. 5268 func (c *Redshift) DescribeClusterTracksWithContext(ctx aws.Context, input *DescribeClusterTracksInput, opts ...request.Option) (*DescribeClusterTracksOutput, error) { 5269 req, out := c.DescribeClusterTracksRequest(input) 5270 req.SetContext(ctx) 5271 req.ApplyOptions(opts...) 5272 return out, req.Send() 5273 } 5274 5275 // DescribeClusterTracksPages iterates over the pages of a DescribeClusterTracks operation, 5276 // calling the "fn" function with the response data for each page. To stop 5277 // iterating, return false from the fn function. 5278 // 5279 // See DescribeClusterTracks method for more information on how to use this operation. 5280 // 5281 // Note: This operation can generate multiple requests to a service. 5282 // 5283 // // Example iterating over at most 3 pages of a DescribeClusterTracks operation. 5284 // pageNum := 0 5285 // err := client.DescribeClusterTracksPages(params, 5286 // func(page *redshift.DescribeClusterTracksOutput, lastPage bool) bool { 5287 // pageNum++ 5288 // fmt.Println(page) 5289 // return pageNum <= 3 5290 // }) 5291 // 5292 func (c *Redshift) DescribeClusterTracksPages(input *DescribeClusterTracksInput, fn func(*DescribeClusterTracksOutput, bool) bool) error { 5293 return c.DescribeClusterTracksPagesWithContext(aws.BackgroundContext(), input, fn) 5294 } 5295 5296 // DescribeClusterTracksPagesWithContext same as DescribeClusterTracksPages except 5297 // it takes a Context and allows setting request options on the pages. 5298 // 5299 // The context must be non-nil and will be used for request cancellation. If 5300 // the context is nil a panic will occur. In the future the SDK may create 5301 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 5302 // for more information on using Contexts. 5303 func (c *Redshift) DescribeClusterTracksPagesWithContext(ctx aws.Context, input *DescribeClusterTracksInput, fn func(*DescribeClusterTracksOutput, bool) bool, opts ...request.Option) error { 5304 p := request.Pagination{ 5305 NewRequest: func() (*request.Request, error) { 5306 var inCpy *DescribeClusterTracksInput 5307 if input != nil { 5308 tmp := *input 5309 inCpy = &tmp 5310 } 5311 req, _ := c.DescribeClusterTracksRequest(inCpy) 5312 req.SetContext(ctx) 5313 req.ApplyOptions(opts...) 5314 return req, nil 5315 }, 5316 } 5317 5318 for p.Next() { 5319 if !fn(p.Page().(*DescribeClusterTracksOutput), !p.HasNextPage()) { 5320 break 5321 } 5322 } 5323 5324 return p.Err() 5325 } 5326 5327 const opDescribeClusterVersions = "DescribeClusterVersions" 5328 5329 // DescribeClusterVersionsRequest generates a "aws/request.Request" representing the 5330 // client's request for the DescribeClusterVersions operation. The "output" return 5331 // value will be populated with the request's response once the request completes 5332 // successfully. 5333 // 5334 // Use "Send" method on the returned Request to send the API call to the service. 5335 // the "output" return value is not valid until after Send returns without error. 5336 // 5337 // See DescribeClusterVersions for more information on using the DescribeClusterVersions 5338 // API call, and error handling. 5339 // 5340 // This method is useful when you want to inject custom logic or configuration 5341 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 5342 // 5343 // 5344 // // Example sending a request using the DescribeClusterVersionsRequest method. 5345 // req, resp := client.DescribeClusterVersionsRequest(params) 5346 // 5347 // err := req.Send() 5348 // if err == nil { // resp is now filled 5349 // fmt.Println(resp) 5350 // } 5351 // 5352 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeClusterVersions 5353 func (c *Redshift) DescribeClusterVersionsRequest(input *DescribeClusterVersionsInput) (req *request.Request, output *DescribeClusterVersionsOutput) { 5354 op := &request.Operation{ 5355 Name: opDescribeClusterVersions, 5356 HTTPMethod: "POST", 5357 HTTPPath: "/", 5358 Paginator: &request.Paginator{ 5359 InputTokens: []string{"Marker"}, 5360 OutputTokens: []string{"Marker"}, 5361 LimitToken: "MaxRecords", 5362 TruncationToken: "", 5363 }, 5364 } 5365 5366 if input == nil { 5367 input = &DescribeClusterVersionsInput{} 5368 } 5369 5370 output = &DescribeClusterVersionsOutput{} 5371 req = c.newRequest(op, input, output) 5372 return 5373 } 5374 5375 // DescribeClusterVersions API operation for Amazon Redshift. 5376 // 5377 // Returns descriptions of the available Amazon Redshift cluster versions. You 5378 // can call this operation even before creating any clusters to learn more about 5379 // the Amazon Redshift versions. For more information about managing clusters, 5380 // go to Amazon Redshift Clusters (https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-clusters.html) 5381 // in the Amazon Redshift Cluster Management Guide. 5382 // 5383 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 5384 // with awserr.Error's Code and Message methods to get detailed information about 5385 // the error. 5386 // 5387 // See the AWS API reference guide for Amazon Redshift's 5388 // API operation DescribeClusterVersions for usage and error information. 5389 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeClusterVersions 5390 func (c *Redshift) DescribeClusterVersions(input *DescribeClusterVersionsInput) (*DescribeClusterVersionsOutput, error) { 5391 req, out := c.DescribeClusterVersionsRequest(input) 5392 return out, req.Send() 5393 } 5394 5395 // DescribeClusterVersionsWithContext is the same as DescribeClusterVersions with the addition of 5396 // the ability to pass a context and additional request options. 5397 // 5398 // See DescribeClusterVersions for details on how to use this API operation. 5399 // 5400 // The context must be non-nil and will be used for request cancellation. If 5401 // the context is nil a panic will occur. In the future the SDK may create 5402 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 5403 // for more information on using Contexts. 5404 func (c *Redshift) DescribeClusterVersionsWithContext(ctx aws.Context, input *DescribeClusterVersionsInput, opts ...request.Option) (*DescribeClusterVersionsOutput, error) { 5405 req, out := c.DescribeClusterVersionsRequest(input) 5406 req.SetContext(ctx) 5407 req.ApplyOptions(opts...) 5408 return out, req.Send() 5409 } 5410 5411 // DescribeClusterVersionsPages iterates over the pages of a DescribeClusterVersions operation, 5412 // calling the "fn" function with the response data for each page. To stop 5413 // iterating, return false from the fn function. 5414 // 5415 // See DescribeClusterVersions method for more information on how to use this operation. 5416 // 5417 // Note: This operation can generate multiple requests to a service. 5418 // 5419 // // Example iterating over at most 3 pages of a DescribeClusterVersions operation. 5420 // pageNum := 0 5421 // err := client.DescribeClusterVersionsPages(params, 5422 // func(page *redshift.DescribeClusterVersionsOutput, lastPage bool) bool { 5423 // pageNum++ 5424 // fmt.Println(page) 5425 // return pageNum <= 3 5426 // }) 5427 // 5428 func (c *Redshift) DescribeClusterVersionsPages(input *DescribeClusterVersionsInput, fn func(*DescribeClusterVersionsOutput, bool) bool) error { 5429 return c.DescribeClusterVersionsPagesWithContext(aws.BackgroundContext(), input, fn) 5430 } 5431 5432 // DescribeClusterVersionsPagesWithContext same as DescribeClusterVersionsPages except 5433 // it takes a Context and allows setting request options on the pages. 5434 // 5435 // The context must be non-nil and will be used for request cancellation. If 5436 // the context is nil a panic will occur. In the future the SDK may create 5437 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 5438 // for more information on using Contexts. 5439 func (c *Redshift) DescribeClusterVersionsPagesWithContext(ctx aws.Context, input *DescribeClusterVersionsInput, fn func(*DescribeClusterVersionsOutput, bool) bool, opts ...request.Option) error { 5440 p := request.Pagination{ 5441 NewRequest: func() (*request.Request, error) { 5442 var inCpy *DescribeClusterVersionsInput 5443 if input != nil { 5444 tmp := *input 5445 inCpy = &tmp 5446 } 5447 req, _ := c.DescribeClusterVersionsRequest(inCpy) 5448 req.SetContext(ctx) 5449 req.ApplyOptions(opts...) 5450 return req, nil 5451 }, 5452 } 5453 5454 for p.Next() { 5455 if !fn(p.Page().(*DescribeClusterVersionsOutput), !p.HasNextPage()) { 5456 break 5457 } 5458 } 5459 5460 return p.Err() 5461 } 5462 5463 const opDescribeClusters = "DescribeClusters" 5464 5465 // DescribeClustersRequest generates a "aws/request.Request" representing the 5466 // client's request for the DescribeClusters operation. The "output" return 5467 // value will be populated with the request's response once the request completes 5468 // successfully. 5469 // 5470 // Use "Send" method on the returned Request to send the API call to the service. 5471 // the "output" return value is not valid until after Send returns without error. 5472 // 5473 // See DescribeClusters for more information on using the DescribeClusters 5474 // API call, and error handling. 5475 // 5476 // This method is useful when you want to inject custom logic or configuration 5477 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 5478 // 5479 // 5480 // // Example sending a request using the DescribeClustersRequest method. 5481 // req, resp := client.DescribeClustersRequest(params) 5482 // 5483 // err := req.Send() 5484 // if err == nil { // resp is now filled 5485 // fmt.Println(resp) 5486 // } 5487 // 5488 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeClusters 5489 func (c *Redshift) DescribeClustersRequest(input *DescribeClustersInput) (req *request.Request, output *DescribeClustersOutput) { 5490 op := &request.Operation{ 5491 Name: opDescribeClusters, 5492 HTTPMethod: "POST", 5493 HTTPPath: "/", 5494 Paginator: &request.Paginator{ 5495 InputTokens: []string{"Marker"}, 5496 OutputTokens: []string{"Marker"}, 5497 LimitToken: "MaxRecords", 5498 TruncationToken: "", 5499 }, 5500 } 5501 5502 if input == nil { 5503 input = &DescribeClustersInput{} 5504 } 5505 5506 output = &DescribeClustersOutput{} 5507 req = c.newRequest(op, input, output) 5508 return 5509 } 5510 5511 // DescribeClusters API operation for Amazon Redshift. 5512 // 5513 // Returns properties of provisioned clusters including general cluster properties, 5514 // cluster database properties, maintenance and backup properties, and security 5515 // and access properties. This operation supports pagination. For more information 5516 // about managing clusters, go to Amazon Redshift Clusters (https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-clusters.html) 5517 // in the Amazon Redshift Cluster Management Guide. 5518 // 5519 // If you specify both tag keys and tag values in the same request, Amazon Redshift 5520 // returns all clusters that match any combination of the specified keys and 5521 // values. For example, if you have owner and environment for tag keys, and 5522 // admin and test for tag values, all clusters that have any combination of 5523 // those values are returned. 5524 // 5525 // If both tag keys and values are omitted from the request, clusters are returned 5526 // regardless of whether they have tag keys or values associated with them. 5527 // 5528 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 5529 // with awserr.Error's Code and Message methods to get detailed information about 5530 // the error. 5531 // 5532 // See the AWS API reference guide for Amazon Redshift's 5533 // API operation DescribeClusters for usage and error information. 5534 // 5535 // Returned Error Codes: 5536 // * ErrCodeClusterNotFoundFault "ClusterNotFound" 5537 // The ClusterIdentifier parameter does not refer to an existing cluster. 5538 // 5539 // * ErrCodeInvalidTagFault "InvalidTagFault" 5540 // The tag is invalid. 5541 // 5542 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeClusters 5543 func (c *Redshift) DescribeClusters(input *DescribeClustersInput) (*DescribeClustersOutput, error) { 5544 req, out := c.DescribeClustersRequest(input) 5545 return out, req.Send() 5546 } 5547 5548 // DescribeClustersWithContext is the same as DescribeClusters with the addition of 5549 // the ability to pass a context and additional request options. 5550 // 5551 // See DescribeClusters for details on how to use this API operation. 5552 // 5553 // The context must be non-nil and will be used for request cancellation. If 5554 // the context is nil a panic will occur. In the future the SDK may create 5555 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 5556 // for more information on using Contexts. 5557 func (c *Redshift) DescribeClustersWithContext(ctx aws.Context, input *DescribeClustersInput, opts ...request.Option) (*DescribeClustersOutput, error) { 5558 req, out := c.DescribeClustersRequest(input) 5559 req.SetContext(ctx) 5560 req.ApplyOptions(opts...) 5561 return out, req.Send() 5562 } 5563 5564 // DescribeClustersPages iterates over the pages of a DescribeClusters operation, 5565 // calling the "fn" function with the response data for each page. To stop 5566 // iterating, return false from the fn function. 5567 // 5568 // See DescribeClusters method for more information on how to use this operation. 5569 // 5570 // Note: This operation can generate multiple requests to a service. 5571 // 5572 // // Example iterating over at most 3 pages of a DescribeClusters operation. 5573 // pageNum := 0 5574 // err := client.DescribeClustersPages(params, 5575 // func(page *redshift.DescribeClustersOutput, lastPage bool) bool { 5576 // pageNum++ 5577 // fmt.Println(page) 5578 // return pageNum <= 3 5579 // }) 5580 // 5581 func (c *Redshift) DescribeClustersPages(input *DescribeClustersInput, fn func(*DescribeClustersOutput, bool) bool) error { 5582 return c.DescribeClustersPagesWithContext(aws.BackgroundContext(), input, fn) 5583 } 5584 5585 // DescribeClustersPagesWithContext same as DescribeClustersPages except 5586 // it takes a Context and allows setting request options on the pages. 5587 // 5588 // The context must be non-nil and will be used for request cancellation. If 5589 // the context is nil a panic will occur. In the future the SDK may create 5590 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 5591 // for more information on using Contexts. 5592 func (c *Redshift) DescribeClustersPagesWithContext(ctx aws.Context, input *DescribeClustersInput, fn func(*DescribeClustersOutput, bool) bool, opts ...request.Option) error { 5593 p := request.Pagination{ 5594 NewRequest: func() (*request.Request, error) { 5595 var inCpy *DescribeClustersInput 5596 if input != nil { 5597 tmp := *input 5598 inCpy = &tmp 5599 } 5600 req, _ := c.DescribeClustersRequest(inCpy) 5601 req.SetContext(ctx) 5602 req.ApplyOptions(opts...) 5603 return req, nil 5604 }, 5605 } 5606 5607 for p.Next() { 5608 if !fn(p.Page().(*DescribeClustersOutput), !p.HasNextPage()) { 5609 break 5610 } 5611 } 5612 5613 return p.Err() 5614 } 5615 5616 const opDescribeDataShares = "DescribeDataShares" 5617 5618 // DescribeDataSharesRequest generates a "aws/request.Request" representing the 5619 // client's request for the DescribeDataShares operation. The "output" return 5620 // value will be populated with the request's response once the request completes 5621 // successfully. 5622 // 5623 // Use "Send" method on the returned Request to send the API call to the service. 5624 // the "output" return value is not valid until after Send returns without error. 5625 // 5626 // See DescribeDataShares for more information on using the DescribeDataShares 5627 // API call, and error handling. 5628 // 5629 // This method is useful when you want to inject custom logic or configuration 5630 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 5631 // 5632 // 5633 // // Example sending a request using the DescribeDataSharesRequest method. 5634 // req, resp := client.DescribeDataSharesRequest(params) 5635 // 5636 // err := req.Send() 5637 // if err == nil { // resp is now filled 5638 // fmt.Println(resp) 5639 // } 5640 // 5641 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeDataShares 5642 func (c *Redshift) DescribeDataSharesRequest(input *DescribeDataSharesInput) (req *request.Request, output *DescribeDataSharesOutput) { 5643 op := &request.Operation{ 5644 Name: opDescribeDataShares, 5645 HTTPMethod: "POST", 5646 HTTPPath: "/", 5647 } 5648 5649 if input == nil { 5650 input = &DescribeDataSharesInput{} 5651 } 5652 5653 output = &DescribeDataSharesOutput{} 5654 req = c.newRequest(op, input, output) 5655 return 5656 } 5657 5658 // DescribeDataShares API operation for Amazon Redshift. 5659 // 5660 // Shows the status of any inbound or outbound datashares available in the specified 5661 // account. 5662 // 5663 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 5664 // with awserr.Error's Code and Message methods to get detailed information about 5665 // the error. 5666 // 5667 // See the AWS API reference guide for Amazon Redshift's 5668 // API operation DescribeDataShares for usage and error information. 5669 // 5670 // Returned Error Codes: 5671 // * ErrCodeInvalidDataShareFault "InvalidDataShareFault" 5672 // There is an error with the datashare. 5673 // 5674 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeDataShares 5675 func (c *Redshift) DescribeDataShares(input *DescribeDataSharesInput) (*DescribeDataSharesOutput, error) { 5676 req, out := c.DescribeDataSharesRequest(input) 5677 return out, req.Send() 5678 } 5679 5680 // DescribeDataSharesWithContext is the same as DescribeDataShares with the addition of 5681 // the ability to pass a context and additional request options. 5682 // 5683 // See DescribeDataShares for details on how to use this API operation. 5684 // 5685 // The context must be non-nil and will be used for request cancellation. If 5686 // the context is nil a panic will occur. In the future the SDK may create 5687 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 5688 // for more information on using Contexts. 5689 func (c *Redshift) DescribeDataSharesWithContext(ctx aws.Context, input *DescribeDataSharesInput, opts ...request.Option) (*DescribeDataSharesOutput, error) { 5690 req, out := c.DescribeDataSharesRequest(input) 5691 req.SetContext(ctx) 5692 req.ApplyOptions(opts...) 5693 return out, req.Send() 5694 } 5695 5696 const opDescribeDataSharesForConsumer = "DescribeDataSharesForConsumer" 5697 5698 // DescribeDataSharesForConsumerRequest generates a "aws/request.Request" representing the 5699 // client's request for the DescribeDataSharesForConsumer operation. The "output" return 5700 // value will be populated with the request's response once the request completes 5701 // successfully. 5702 // 5703 // Use "Send" method on the returned Request to send the API call to the service. 5704 // the "output" return value is not valid until after Send returns without error. 5705 // 5706 // See DescribeDataSharesForConsumer for more information on using the DescribeDataSharesForConsumer 5707 // API call, and error handling. 5708 // 5709 // This method is useful when you want to inject custom logic or configuration 5710 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 5711 // 5712 // 5713 // // Example sending a request using the DescribeDataSharesForConsumerRequest method. 5714 // req, resp := client.DescribeDataSharesForConsumerRequest(params) 5715 // 5716 // err := req.Send() 5717 // if err == nil { // resp is now filled 5718 // fmt.Println(resp) 5719 // } 5720 // 5721 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeDataSharesForConsumer 5722 func (c *Redshift) DescribeDataSharesForConsumerRequest(input *DescribeDataSharesForConsumerInput) (req *request.Request, output *DescribeDataSharesForConsumerOutput) { 5723 op := &request.Operation{ 5724 Name: opDescribeDataSharesForConsumer, 5725 HTTPMethod: "POST", 5726 HTTPPath: "/", 5727 } 5728 5729 if input == nil { 5730 input = &DescribeDataSharesForConsumerInput{} 5731 } 5732 5733 output = &DescribeDataSharesForConsumerOutput{} 5734 req = c.newRequest(op, input, output) 5735 return 5736 } 5737 5738 // DescribeDataSharesForConsumer API operation for Amazon Redshift. 5739 // 5740 // Returns a list of datashares where the account identifier being called is 5741 // a consumer account identifier. 5742 // 5743 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 5744 // with awserr.Error's Code and Message methods to get detailed information about 5745 // the error. 5746 // 5747 // See the AWS API reference guide for Amazon Redshift's 5748 // API operation DescribeDataSharesForConsumer for usage and error information. 5749 // 5750 // Returned Error Codes: 5751 // * ErrCodeInvalidNamespaceFault "InvalidNamespaceFault" 5752 // The namespace isn't valid because the namespace doesn't exist. Provide a 5753 // valid namespace. 5754 // 5755 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeDataSharesForConsumer 5756 func (c *Redshift) DescribeDataSharesForConsumer(input *DescribeDataSharesForConsumerInput) (*DescribeDataSharesForConsumerOutput, error) { 5757 req, out := c.DescribeDataSharesForConsumerRequest(input) 5758 return out, req.Send() 5759 } 5760 5761 // DescribeDataSharesForConsumerWithContext is the same as DescribeDataSharesForConsumer with the addition of 5762 // the ability to pass a context and additional request options. 5763 // 5764 // See DescribeDataSharesForConsumer for details on how to use this API operation. 5765 // 5766 // The context must be non-nil and will be used for request cancellation. If 5767 // the context is nil a panic will occur. In the future the SDK may create 5768 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 5769 // for more information on using Contexts. 5770 func (c *Redshift) DescribeDataSharesForConsumerWithContext(ctx aws.Context, input *DescribeDataSharesForConsumerInput, opts ...request.Option) (*DescribeDataSharesForConsumerOutput, error) { 5771 req, out := c.DescribeDataSharesForConsumerRequest(input) 5772 req.SetContext(ctx) 5773 req.ApplyOptions(opts...) 5774 return out, req.Send() 5775 } 5776 5777 const opDescribeDataSharesForProducer = "DescribeDataSharesForProducer" 5778 5779 // DescribeDataSharesForProducerRequest generates a "aws/request.Request" representing the 5780 // client's request for the DescribeDataSharesForProducer operation. The "output" return 5781 // value will be populated with the request's response once the request completes 5782 // successfully. 5783 // 5784 // Use "Send" method on the returned Request to send the API call to the service. 5785 // the "output" return value is not valid until after Send returns without error. 5786 // 5787 // See DescribeDataSharesForProducer for more information on using the DescribeDataSharesForProducer 5788 // API call, and error handling. 5789 // 5790 // This method is useful when you want to inject custom logic or configuration 5791 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 5792 // 5793 // 5794 // // Example sending a request using the DescribeDataSharesForProducerRequest method. 5795 // req, resp := client.DescribeDataSharesForProducerRequest(params) 5796 // 5797 // err := req.Send() 5798 // if err == nil { // resp is now filled 5799 // fmt.Println(resp) 5800 // } 5801 // 5802 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeDataSharesForProducer 5803 func (c *Redshift) DescribeDataSharesForProducerRequest(input *DescribeDataSharesForProducerInput) (req *request.Request, output *DescribeDataSharesForProducerOutput) { 5804 op := &request.Operation{ 5805 Name: opDescribeDataSharesForProducer, 5806 HTTPMethod: "POST", 5807 HTTPPath: "/", 5808 } 5809 5810 if input == nil { 5811 input = &DescribeDataSharesForProducerInput{} 5812 } 5813 5814 output = &DescribeDataSharesForProducerOutput{} 5815 req = c.newRequest(op, input, output) 5816 return 5817 } 5818 5819 // DescribeDataSharesForProducer API operation for Amazon Redshift. 5820 // 5821 // Returns a list of datashares when the account identifier being called is 5822 // a producer account identifier. 5823 // 5824 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 5825 // with awserr.Error's Code and Message methods to get detailed information about 5826 // the error. 5827 // 5828 // See the AWS API reference guide for Amazon Redshift's 5829 // API operation DescribeDataSharesForProducer for usage and error information. 5830 // 5831 // Returned Error Codes: 5832 // * ErrCodeInvalidNamespaceFault "InvalidNamespaceFault" 5833 // The namespace isn't valid because the namespace doesn't exist. Provide a 5834 // valid namespace. 5835 // 5836 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeDataSharesForProducer 5837 func (c *Redshift) DescribeDataSharesForProducer(input *DescribeDataSharesForProducerInput) (*DescribeDataSharesForProducerOutput, error) { 5838 req, out := c.DescribeDataSharesForProducerRequest(input) 5839 return out, req.Send() 5840 } 5841 5842 // DescribeDataSharesForProducerWithContext is the same as DescribeDataSharesForProducer with the addition of 5843 // the ability to pass a context and additional request options. 5844 // 5845 // See DescribeDataSharesForProducer for details on how to use this API operation. 5846 // 5847 // The context must be non-nil and will be used for request cancellation. If 5848 // the context is nil a panic will occur. In the future the SDK may create 5849 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 5850 // for more information on using Contexts. 5851 func (c *Redshift) DescribeDataSharesForProducerWithContext(ctx aws.Context, input *DescribeDataSharesForProducerInput, opts ...request.Option) (*DescribeDataSharesForProducerOutput, error) { 5852 req, out := c.DescribeDataSharesForProducerRequest(input) 5853 req.SetContext(ctx) 5854 req.ApplyOptions(opts...) 5855 return out, req.Send() 5856 } 5857 5858 const opDescribeDefaultClusterParameters = "DescribeDefaultClusterParameters" 5859 5860 // DescribeDefaultClusterParametersRequest generates a "aws/request.Request" representing the 5861 // client's request for the DescribeDefaultClusterParameters operation. The "output" return 5862 // value will be populated with the request's response once the request completes 5863 // successfully. 5864 // 5865 // Use "Send" method on the returned Request to send the API call to the service. 5866 // the "output" return value is not valid until after Send returns without error. 5867 // 5868 // See DescribeDefaultClusterParameters for more information on using the DescribeDefaultClusterParameters 5869 // API call, and error handling. 5870 // 5871 // This method is useful when you want to inject custom logic or configuration 5872 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 5873 // 5874 // 5875 // // Example sending a request using the DescribeDefaultClusterParametersRequest method. 5876 // req, resp := client.DescribeDefaultClusterParametersRequest(params) 5877 // 5878 // err := req.Send() 5879 // if err == nil { // resp is now filled 5880 // fmt.Println(resp) 5881 // } 5882 // 5883 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeDefaultClusterParameters 5884 func (c *Redshift) DescribeDefaultClusterParametersRequest(input *DescribeDefaultClusterParametersInput) (req *request.Request, output *DescribeDefaultClusterParametersOutput) { 5885 op := &request.Operation{ 5886 Name: opDescribeDefaultClusterParameters, 5887 HTTPMethod: "POST", 5888 HTTPPath: "/", 5889 Paginator: &request.Paginator{ 5890 InputTokens: []string{"Marker"}, 5891 OutputTokens: []string{"DefaultClusterParameters.Marker"}, 5892 LimitToken: "MaxRecords", 5893 TruncationToken: "", 5894 }, 5895 } 5896 5897 if input == nil { 5898 input = &DescribeDefaultClusterParametersInput{} 5899 } 5900 5901 output = &DescribeDefaultClusterParametersOutput{} 5902 req = c.newRequest(op, input, output) 5903 return 5904 } 5905 5906 // DescribeDefaultClusterParameters API operation for Amazon Redshift. 5907 // 5908 // Returns a list of parameter settings for the specified parameter group family. 5909 // 5910 // For more information about parameters and parameter groups, go to Amazon 5911 // Redshift Parameter Groups (https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-parameter-groups.html) 5912 // in the Amazon Redshift Cluster Management Guide. 5913 // 5914 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 5915 // with awserr.Error's Code and Message methods to get detailed information about 5916 // the error. 5917 // 5918 // See the AWS API reference guide for Amazon Redshift's 5919 // API operation DescribeDefaultClusterParameters for usage and error information. 5920 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeDefaultClusterParameters 5921 func (c *Redshift) DescribeDefaultClusterParameters(input *DescribeDefaultClusterParametersInput) (*DescribeDefaultClusterParametersOutput, error) { 5922 req, out := c.DescribeDefaultClusterParametersRequest(input) 5923 return out, req.Send() 5924 } 5925 5926 // DescribeDefaultClusterParametersWithContext is the same as DescribeDefaultClusterParameters with the addition of 5927 // the ability to pass a context and additional request options. 5928 // 5929 // See DescribeDefaultClusterParameters for details on how to use this API operation. 5930 // 5931 // The context must be non-nil and will be used for request cancellation. If 5932 // the context is nil a panic will occur. In the future the SDK may create 5933 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 5934 // for more information on using Contexts. 5935 func (c *Redshift) DescribeDefaultClusterParametersWithContext(ctx aws.Context, input *DescribeDefaultClusterParametersInput, opts ...request.Option) (*DescribeDefaultClusterParametersOutput, error) { 5936 req, out := c.DescribeDefaultClusterParametersRequest(input) 5937 req.SetContext(ctx) 5938 req.ApplyOptions(opts...) 5939 return out, req.Send() 5940 } 5941 5942 // DescribeDefaultClusterParametersPages iterates over the pages of a DescribeDefaultClusterParameters operation, 5943 // calling the "fn" function with the response data for each page. To stop 5944 // iterating, return false from the fn function. 5945 // 5946 // See DescribeDefaultClusterParameters method for more information on how to use this operation. 5947 // 5948 // Note: This operation can generate multiple requests to a service. 5949 // 5950 // // Example iterating over at most 3 pages of a DescribeDefaultClusterParameters operation. 5951 // pageNum := 0 5952 // err := client.DescribeDefaultClusterParametersPages(params, 5953 // func(page *redshift.DescribeDefaultClusterParametersOutput, lastPage bool) bool { 5954 // pageNum++ 5955 // fmt.Println(page) 5956 // return pageNum <= 3 5957 // }) 5958 // 5959 func (c *Redshift) DescribeDefaultClusterParametersPages(input *DescribeDefaultClusterParametersInput, fn func(*DescribeDefaultClusterParametersOutput, bool) bool) error { 5960 return c.DescribeDefaultClusterParametersPagesWithContext(aws.BackgroundContext(), input, fn) 5961 } 5962 5963 // DescribeDefaultClusterParametersPagesWithContext same as DescribeDefaultClusterParametersPages except 5964 // it takes a Context and allows setting request options on the pages. 5965 // 5966 // The context must be non-nil and will be used for request cancellation. If 5967 // the context is nil a panic will occur. In the future the SDK may create 5968 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 5969 // for more information on using Contexts. 5970 func (c *Redshift) DescribeDefaultClusterParametersPagesWithContext(ctx aws.Context, input *DescribeDefaultClusterParametersInput, fn func(*DescribeDefaultClusterParametersOutput, bool) bool, opts ...request.Option) error { 5971 p := request.Pagination{ 5972 NewRequest: func() (*request.Request, error) { 5973 var inCpy *DescribeDefaultClusterParametersInput 5974 if input != nil { 5975 tmp := *input 5976 inCpy = &tmp 5977 } 5978 req, _ := c.DescribeDefaultClusterParametersRequest(inCpy) 5979 req.SetContext(ctx) 5980 req.ApplyOptions(opts...) 5981 return req, nil 5982 }, 5983 } 5984 5985 for p.Next() { 5986 if !fn(p.Page().(*DescribeDefaultClusterParametersOutput), !p.HasNextPage()) { 5987 break 5988 } 5989 } 5990 5991 return p.Err() 5992 } 5993 5994 const opDescribeEndpointAccess = "DescribeEndpointAccess" 5995 5996 // DescribeEndpointAccessRequest generates a "aws/request.Request" representing the 5997 // client's request for the DescribeEndpointAccess operation. The "output" return 5998 // value will be populated with the request's response once the request completes 5999 // successfully. 6000 // 6001 // Use "Send" method on the returned Request to send the API call to the service. 6002 // the "output" return value is not valid until after Send returns without error. 6003 // 6004 // See DescribeEndpointAccess for more information on using the DescribeEndpointAccess 6005 // API call, and error handling. 6006 // 6007 // This method is useful when you want to inject custom logic or configuration 6008 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 6009 // 6010 // 6011 // // Example sending a request using the DescribeEndpointAccessRequest method. 6012 // req, resp := client.DescribeEndpointAccessRequest(params) 6013 // 6014 // err := req.Send() 6015 // if err == nil { // resp is now filled 6016 // fmt.Println(resp) 6017 // } 6018 // 6019 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeEndpointAccess 6020 func (c *Redshift) DescribeEndpointAccessRequest(input *DescribeEndpointAccessInput) (req *request.Request, output *DescribeEndpointAccessOutput) { 6021 op := &request.Operation{ 6022 Name: opDescribeEndpointAccess, 6023 HTTPMethod: "POST", 6024 HTTPPath: "/", 6025 Paginator: &request.Paginator{ 6026 InputTokens: []string{"Marker"}, 6027 OutputTokens: []string{"Marker"}, 6028 LimitToken: "MaxRecords", 6029 TruncationToken: "", 6030 }, 6031 } 6032 6033 if input == nil { 6034 input = &DescribeEndpointAccessInput{} 6035 } 6036 6037 output = &DescribeEndpointAccessOutput{} 6038 req = c.newRequest(op, input, output) 6039 return 6040 } 6041 6042 // DescribeEndpointAccess API operation for Amazon Redshift. 6043 // 6044 // Describes a Redshift-managed VPC endpoint. 6045 // 6046 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 6047 // with awserr.Error's Code and Message methods to get detailed information about 6048 // the error. 6049 // 6050 // See the AWS API reference guide for Amazon Redshift's 6051 // API operation DescribeEndpointAccess for usage and error information. 6052 // 6053 // Returned Error Codes: 6054 // * ErrCodeClusterNotFoundFault "ClusterNotFound" 6055 // The ClusterIdentifier parameter does not refer to an existing cluster. 6056 // 6057 // * ErrCodeInvalidClusterStateFault "InvalidClusterState" 6058 // The specified cluster is not in the available state. 6059 // 6060 // * ErrCodeEndpointNotFoundFault "EndpointNotFound" 6061 // The endpoint name doesn't refer to an existing endpoint. 6062 // 6063 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeEndpointAccess 6064 func (c *Redshift) DescribeEndpointAccess(input *DescribeEndpointAccessInput) (*DescribeEndpointAccessOutput, error) { 6065 req, out := c.DescribeEndpointAccessRequest(input) 6066 return out, req.Send() 6067 } 6068 6069 // DescribeEndpointAccessWithContext is the same as DescribeEndpointAccess with the addition of 6070 // the ability to pass a context and additional request options. 6071 // 6072 // See DescribeEndpointAccess for details on how to use this API operation. 6073 // 6074 // The context must be non-nil and will be used for request cancellation. If 6075 // the context is nil a panic will occur. In the future the SDK may create 6076 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 6077 // for more information on using Contexts. 6078 func (c *Redshift) DescribeEndpointAccessWithContext(ctx aws.Context, input *DescribeEndpointAccessInput, opts ...request.Option) (*DescribeEndpointAccessOutput, error) { 6079 req, out := c.DescribeEndpointAccessRequest(input) 6080 req.SetContext(ctx) 6081 req.ApplyOptions(opts...) 6082 return out, req.Send() 6083 } 6084 6085 // DescribeEndpointAccessPages iterates over the pages of a DescribeEndpointAccess operation, 6086 // calling the "fn" function with the response data for each page. To stop 6087 // iterating, return false from the fn function. 6088 // 6089 // See DescribeEndpointAccess method for more information on how to use this operation. 6090 // 6091 // Note: This operation can generate multiple requests to a service. 6092 // 6093 // // Example iterating over at most 3 pages of a DescribeEndpointAccess operation. 6094 // pageNum := 0 6095 // err := client.DescribeEndpointAccessPages(params, 6096 // func(page *redshift.DescribeEndpointAccessOutput, lastPage bool) bool { 6097 // pageNum++ 6098 // fmt.Println(page) 6099 // return pageNum <= 3 6100 // }) 6101 // 6102 func (c *Redshift) DescribeEndpointAccessPages(input *DescribeEndpointAccessInput, fn func(*DescribeEndpointAccessOutput, bool) bool) error { 6103 return c.DescribeEndpointAccessPagesWithContext(aws.BackgroundContext(), input, fn) 6104 } 6105 6106 // DescribeEndpointAccessPagesWithContext same as DescribeEndpointAccessPages except 6107 // it takes a Context and allows setting request options on the pages. 6108 // 6109 // The context must be non-nil and will be used for request cancellation. If 6110 // the context is nil a panic will occur. In the future the SDK may create 6111 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 6112 // for more information on using Contexts. 6113 func (c *Redshift) DescribeEndpointAccessPagesWithContext(ctx aws.Context, input *DescribeEndpointAccessInput, fn func(*DescribeEndpointAccessOutput, bool) bool, opts ...request.Option) error { 6114 p := request.Pagination{ 6115 NewRequest: func() (*request.Request, error) { 6116 var inCpy *DescribeEndpointAccessInput 6117 if input != nil { 6118 tmp := *input 6119 inCpy = &tmp 6120 } 6121 req, _ := c.DescribeEndpointAccessRequest(inCpy) 6122 req.SetContext(ctx) 6123 req.ApplyOptions(opts...) 6124 return req, nil 6125 }, 6126 } 6127 6128 for p.Next() { 6129 if !fn(p.Page().(*DescribeEndpointAccessOutput), !p.HasNextPage()) { 6130 break 6131 } 6132 } 6133 6134 return p.Err() 6135 } 6136 6137 const opDescribeEndpointAuthorization = "DescribeEndpointAuthorization" 6138 6139 // DescribeEndpointAuthorizationRequest generates a "aws/request.Request" representing the 6140 // client's request for the DescribeEndpointAuthorization operation. The "output" return 6141 // value will be populated with the request's response once the request completes 6142 // successfully. 6143 // 6144 // Use "Send" method on the returned Request to send the API call to the service. 6145 // the "output" return value is not valid until after Send returns without error. 6146 // 6147 // See DescribeEndpointAuthorization for more information on using the DescribeEndpointAuthorization 6148 // API call, and error handling. 6149 // 6150 // This method is useful when you want to inject custom logic or configuration 6151 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 6152 // 6153 // 6154 // // Example sending a request using the DescribeEndpointAuthorizationRequest method. 6155 // req, resp := client.DescribeEndpointAuthorizationRequest(params) 6156 // 6157 // err := req.Send() 6158 // if err == nil { // resp is now filled 6159 // fmt.Println(resp) 6160 // } 6161 // 6162 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeEndpointAuthorization 6163 func (c *Redshift) DescribeEndpointAuthorizationRequest(input *DescribeEndpointAuthorizationInput) (req *request.Request, output *DescribeEndpointAuthorizationOutput) { 6164 op := &request.Operation{ 6165 Name: opDescribeEndpointAuthorization, 6166 HTTPMethod: "POST", 6167 HTTPPath: "/", 6168 Paginator: &request.Paginator{ 6169 InputTokens: []string{"Marker"}, 6170 OutputTokens: []string{"Marker"}, 6171 LimitToken: "MaxRecords", 6172 TruncationToken: "", 6173 }, 6174 } 6175 6176 if input == nil { 6177 input = &DescribeEndpointAuthorizationInput{} 6178 } 6179 6180 output = &DescribeEndpointAuthorizationOutput{} 6181 req = c.newRequest(op, input, output) 6182 return 6183 } 6184 6185 // DescribeEndpointAuthorization API operation for Amazon Redshift. 6186 // 6187 // Describes an endpoint authorization. 6188 // 6189 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 6190 // with awserr.Error's Code and Message methods to get detailed information about 6191 // the error. 6192 // 6193 // See the AWS API reference guide for Amazon Redshift's 6194 // API operation DescribeEndpointAuthorization for usage and error information. 6195 // 6196 // Returned Error Codes: 6197 // * ErrCodeClusterNotFoundFault "ClusterNotFound" 6198 // The ClusterIdentifier parameter does not refer to an existing cluster. 6199 // 6200 // * ErrCodeUnsupportedOperationFault "UnsupportedOperation" 6201 // The requested operation isn't supported. 6202 // 6203 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeEndpointAuthorization 6204 func (c *Redshift) DescribeEndpointAuthorization(input *DescribeEndpointAuthorizationInput) (*DescribeEndpointAuthorizationOutput, error) { 6205 req, out := c.DescribeEndpointAuthorizationRequest(input) 6206 return out, req.Send() 6207 } 6208 6209 // DescribeEndpointAuthorizationWithContext is the same as DescribeEndpointAuthorization with the addition of 6210 // the ability to pass a context and additional request options. 6211 // 6212 // See DescribeEndpointAuthorization for details on how to use this API operation. 6213 // 6214 // The context must be non-nil and will be used for request cancellation. If 6215 // the context is nil a panic will occur. In the future the SDK may create 6216 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 6217 // for more information on using Contexts. 6218 func (c *Redshift) DescribeEndpointAuthorizationWithContext(ctx aws.Context, input *DescribeEndpointAuthorizationInput, opts ...request.Option) (*DescribeEndpointAuthorizationOutput, error) { 6219 req, out := c.DescribeEndpointAuthorizationRequest(input) 6220 req.SetContext(ctx) 6221 req.ApplyOptions(opts...) 6222 return out, req.Send() 6223 } 6224 6225 // DescribeEndpointAuthorizationPages iterates over the pages of a DescribeEndpointAuthorization operation, 6226 // calling the "fn" function with the response data for each page. To stop 6227 // iterating, return false from the fn function. 6228 // 6229 // See DescribeEndpointAuthorization method for more information on how to use this operation. 6230 // 6231 // Note: This operation can generate multiple requests to a service. 6232 // 6233 // // Example iterating over at most 3 pages of a DescribeEndpointAuthorization operation. 6234 // pageNum := 0 6235 // err := client.DescribeEndpointAuthorizationPages(params, 6236 // func(page *redshift.DescribeEndpointAuthorizationOutput, lastPage bool) bool { 6237 // pageNum++ 6238 // fmt.Println(page) 6239 // return pageNum <= 3 6240 // }) 6241 // 6242 func (c *Redshift) DescribeEndpointAuthorizationPages(input *DescribeEndpointAuthorizationInput, fn func(*DescribeEndpointAuthorizationOutput, bool) bool) error { 6243 return c.DescribeEndpointAuthorizationPagesWithContext(aws.BackgroundContext(), input, fn) 6244 } 6245 6246 // DescribeEndpointAuthorizationPagesWithContext same as DescribeEndpointAuthorizationPages except 6247 // it takes a Context and allows setting request options on the pages. 6248 // 6249 // The context must be non-nil and will be used for request cancellation. If 6250 // the context is nil a panic will occur. In the future the SDK may create 6251 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 6252 // for more information on using Contexts. 6253 func (c *Redshift) DescribeEndpointAuthorizationPagesWithContext(ctx aws.Context, input *DescribeEndpointAuthorizationInput, fn func(*DescribeEndpointAuthorizationOutput, bool) bool, opts ...request.Option) error { 6254 p := request.Pagination{ 6255 NewRequest: func() (*request.Request, error) { 6256 var inCpy *DescribeEndpointAuthorizationInput 6257 if input != nil { 6258 tmp := *input 6259 inCpy = &tmp 6260 } 6261 req, _ := c.DescribeEndpointAuthorizationRequest(inCpy) 6262 req.SetContext(ctx) 6263 req.ApplyOptions(opts...) 6264 return req, nil 6265 }, 6266 } 6267 6268 for p.Next() { 6269 if !fn(p.Page().(*DescribeEndpointAuthorizationOutput), !p.HasNextPage()) { 6270 break 6271 } 6272 } 6273 6274 return p.Err() 6275 } 6276 6277 const opDescribeEventCategories = "DescribeEventCategories" 6278 6279 // DescribeEventCategoriesRequest generates a "aws/request.Request" representing the 6280 // client's request for the DescribeEventCategories operation. The "output" return 6281 // value will be populated with the request's response once the request completes 6282 // successfully. 6283 // 6284 // Use "Send" method on the returned Request to send the API call to the service. 6285 // the "output" return value is not valid until after Send returns without error. 6286 // 6287 // See DescribeEventCategories for more information on using the DescribeEventCategories 6288 // API call, and error handling. 6289 // 6290 // This method is useful when you want to inject custom logic or configuration 6291 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 6292 // 6293 // 6294 // // Example sending a request using the DescribeEventCategoriesRequest method. 6295 // req, resp := client.DescribeEventCategoriesRequest(params) 6296 // 6297 // err := req.Send() 6298 // if err == nil { // resp is now filled 6299 // fmt.Println(resp) 6300 // } 6301 // 6302 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeEventCategories 6303 func (c *Redshift) DescribeEventCategoriesRequest(input *DescribeEventCategoriesInput) (req *request.Request, output *DescribeEventCategoriesOutput) { 6304 op := &request.Operation{ 6305 Name: opDescribeEventCategories, 6306 HTTPMethod: "POST", 6307 HTTPPath: "/", 6308 } 6309 6310 if input == nil { 6311 input = &DescribeEventCategoriesInput{} 6312 } 6313 6314 output = &DescribeEventCategoriesOutput{} 6315 req = c.newRequest(op, input, output) 6316 return 6317 } 6318 6319 // DescribeEventCategories API operation for Amazon Redshift. 6320 // 6321 // Displays a list of event categories for all event source types, or for a 6322 // specified source type. For a list of the event categories and source types, 6323 // go to Amazon Redshift Event Notifications (https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-event-notifications.html). 6324 // 6325 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 6326 // with awserr.Error's Code and Message methods to get detailed information about 6327 // the error. 6328 // 6329 // See the AWS API reference guide for Amazon Redshift's 6330 // API operation DescribeEventCategories for usage and error information. 6331 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeEventCategories 6332 func (c *Redshift) DescribeEventCategories(input *DescribeEventCategoriesInput) (*DescribeEventCategoriesOutput, error) { 6333 req, out := c.DescribeEventCategoriesRequest(input) 6334 return out, req.Send() 6335 } 6336 6337 // DescribeEventCategoriesWithContext is the same as DescribeEventCategories with the addition of 6338 // the ability to pass a context and additional request options. 6339 // 6340 // See DescribeEventCategories for details on how to use this API operation. 6341 // 6342 // The context must be non-nil and will be used for request cancellation. If 6343 // the context is nil a panic will occur. In the future the SDK may create 6344 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 6345 // for more information on using Contexts. 6346 func (c *Redshift) DescribeEventCategoriesWithContext(ctx aws.Context, input *DescribeEventCategoriesInput, opts ...request.Option) (*DescribeEventCategoriesOutput, error) { 6347 req, out := c.DescribeEventCategoriesRequest(input) 6348 req.SetContext(ctx) 6349 req.ApplyOptions(opts...) 6350 return out, req.Send() 6351 } 6352 6353 const opDescribeEventSubscriptions = "DescribeEventSubscriptions" 6354 6355 // DescribeEventSubscriptionsRequest generates a "aws/request.Request" representing the 6356 // client's request for the DescribeEventSubscriptions operation. The "output" return 6357 // value will be populated with the request's response once the request completes 6358 // successfully. 6359 // 6360 // Use "Send" method on the returned Request to send the API call to the service. 6361 // the "output" return value is not valid until after Send returns without error. 6362 // 6363 // See DescribeEventSubscriptions for more information on using the DescribeEventSubscriptions 6364 // API call, and error handling. 6365 // 6366 // This method is useful when you want to inject custom logic or configuration 6367 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 6368 // 6369 // 6370 // // Example sending a request using the DescribeEventSubscriptionsRequest method. 6371 // req, resp := client.DescribeEventSubscriptionsRequest(params) 6372 // 6373 // err := req.Send() 6374 // if err == nil { // resp is now filled 6375 // fmt.Println(resp) 6376 // } 6377 // 6378 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeEventSubscriptions 6379 func (c *Redshift) DescribeEventSubscriptionsRequest(input *DescribeEventSubscriptionsInput) (req *request.Request, output *DescribeEventSubscriptionsOutput) { 6380 op := &request.Operation{ 6381 Name: opDescribeEventSubscriptions, 6382 HTTPMethod: "POST", 6383 HTTPPath: "/", 6384 Paginator: &request.Paginator{ 6385 InputTokens: []string{"Marker"}, 6386 OutputTokens: []string{"Marker"}, 6387 LimitToken: "MaxRecords", 6388 TruncationToken: "", 6389 }, 6390 } 6391 6392 if input == nil { 6393 input = &DescribeEventSubscriptionsInput{} 6394 } 6395 6396 output = &DescribeEventSubscriptionsOutput{} 6397 req = c.newRequest(op, input, output) 6398 return 6399 } 6400 6401 // DescribeEventSubscriptions API operation for Amazon Redshift. 6402 // 6403 // Lists descriptions of all the Amazon Redshift event notification subscriptions 6404 // for a customer account. If you specify a subscription name, lists the description 6405 // for that subscription. 6406 // 6407 // If you specify both tag keys and tag values in the same request, Amazon Redshift 6408 // returns all event notification subscriptions that match any combination of 6409 // the specified keys and values. For example, if you have owner and environment 6410 // for tag keys, and admin and test for tag values, all subscriptions that have 6411 // any combination of those values are returned. 6412 // 6413 // If both tag keys and values are omitted from the request, subscriptions are 6414 // returned regardless of whether they have tag keys or values associated with 6415 // them. 6416 // 6417 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 6418 // with awserr.Error's Code and Message methods to get detailed information about 6419 // the error. 6420 // 6421 // See the AWS API reference guide for Amazon Redshift's 6422 // API operation DescribeEventSubscriptions for usage and error information. 6423 // 6424 // Returned Error Codes: 6425 // * ErrCodeSubscriptionNotFoundFault "SubscriptionNotFound" 6426 // An Amazon Redshift event notification subscription with the specified name 6427 // does not exist. 6428 // 6429 // * ErrCodeInvalidTagFault "InvalidTagFault" 6430 // The tag is invalid. 6431 // 6432 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeEventSubscriptions 6433 func (c *Redshift) DescribeEventSubscriptions(input *DescribeEventSubscriptionsInput) (*DescribeEventSubscriptionsOutput, error) { 6434 req, out := c.DescribeEventSubscriptionsRequest(input) 6435 return out, req.Send() 6436 } 6437 6438 // DescribeEventSubscriptionsWithContext is the same as DescribeEventSubscriptions with the addition of 6439 // the ability to pass a context and additional request options. 6440 // 6441 // See DescribeEventSubscriptions for details on how to use this API operation. 6442 // 6443 // The context must be non-nil and will be used for request cancellation. If 6444 // the context is nil a panic will occur. In the future the SDK may create 6445 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 6446 // for more information on using Contexts. 6447 func (c *Redshift) DescribeEventSubscriptionsWithContext(ctx aws.Context, input *DescribeEventSubscriptionsInput, opts ...request.Option) (*DescribeEventSubscriptionsOutput, error) { 6448 req, out := c.DescribeEventSubscriptionsRequest(input) 6449 req.SetContext(ctx) 6450 req.ApplyOptions(opts...) 6451 return out, req.Send() 6452 } 6453 6454 // DescribeEventSubscriptionsPages iterates over the pages of a DescribeEventSubscriptions operation, 6455 // calling the "fn" function with the response data for each page. To stop 6456 // iterating, return false from the fn function. 6457 // 6458 // See DescribeEventSubscriptions method for more information on how to use this operation. 6459 // 6460 // Note: This operation can generate multiple requests to a service. 6461 // 6462 // // Example iterating over at most 3 pages of a DescribeEventSubscriptions operation. 6463 // pageNum := 0 6464 // err := client.DescribeEventSubscriptionsPages(params, 6465 // func(page *redshift.DescribeEventSubscriptionsOutput, lastPage bool) bool { 6466 // pageNum++ 6467 // fmt.Println(page) 6468 // return pageNum <= 3 6469 // }) 6470 // 6471 func (c *Redshift) DescribeEventSubscriptionsPages(input *DescribeEventSubscriptionsInput, fn func(*DescribeEventSubscriptionsOutput, bool) bool) error { 6472 return c.DescribeEventSubscriptionsPagesWithContext(aws.BackgroundContext(), input, fn) 6473 } 6474 6475 // DescribeEventSubscriptionsPagesWithContext same as DescribeEventSubscriptionsPages except 6476 // it takes a Context and allows setting request options on the pages. 6477 // 6478 // The context must be non-nil and will be used for request cancellation. If 6479 // the context is nil a panic will occur. In the future the SDK may create 6480 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 6481 // for more information on using Contexts. 6482 func (c *Redshift) DescribeEventSubscriptionsPagesWithContext(ctx aws.Context, input *DescribeEventSubscriptionsInput, fn func(*DescribeEventSubscriptionsOutput, bool) bool, opts ...request.Option) error { 6483 p := request.Pagination{ 6484 NewRequest: func() (*request.Request, error) { 6485 var inCpy *DescribeEventSubscriptionsInput 6486 if input != nil { 6487 tmp := *input 6488 inCpy = &tmp 6489 } 6490 req, _ := c.DescribeEventSubscriptionsRequest(inCpy) 6491 req.SetContext(ctx) 6492 req.ApplyOptions(opts...) 6493 return req, nil 6494 }, 6495 } 6496 6497 for p.Next() { 6498 if !fn(p.Page().(*DescribeEventSubscriptionsOutput), !p.HasNextPage()) { 6499 break 6500 } 6501 } 6502 6503 return p.Err() 6504 } 6505 6506 const opDescribeEvents = "DescribeEvents" 6507 6508 // DescribeEventsRequest generates a "aws/request.Request" representing the 6509 // client's request for the DescribeEvents operation. The "output" return 6510 // value will be populated with the request's response once the request completes 6511 // successfully. 6512 // 6513 // Use "Send" method on the returned Request to send the API call to the service. 6514 // the "output" return value is not valid until after Send returns without error. 6515 // 6516 // See DescribeEvents for more information on using the DescribeEvents 6517 // API call, and error handling. 6518 // 6519 // This method is useful when you want to inject custom logic or configuration 6520 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 6521 // 6522 // 6523 // // Example sending a request using the DescribeEventsRequest method. 6524 // req, resp := client.DescribeEventsRequest(params) 6525 // 6526 // err := req.Send() 6527 // if err == nil { // resp is now filled 6528 // fmt.Println(resp) 6529 // } 6530 // 6531 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeEvents 6532 func (c *Redshift) DescribeEventsRequest(input *DescribeEventsInput) (req *request.Request, output *DescribeEventsOutput) { 6533 op := &request.Operation{ 6534 Name: opDescribeEvents, 6535 HTTPMethod: "POST", 6536 HTTPPath: "/", 6537 Paginator: &request.Paginator{ 6538 InputTokens: []string{"Marker"}, 6539 OutputTokens: []string{"Marker"}, 6540 LimitToken: "MaxRecords", 6541 TruncationToken: "", 6542 }, 6543 } 6544 6545 if input == nil { 6546 input = &DescribeEventsInput{} 6547 } 6548 6549 output = &DescribeEventsOutput{} 6550 req = c.newRequest(op, input, output) 6551 return 6552 } 6553 6554 // DescribeEvents API operation for Amazon Redshift. 6555 // 6556 // Returns events related to clusters, security groups, snapshots, and parameter 6557 // groups for the past 14 days. Events specific to a particular cluster, security 6558 // group, snapshot or parameter group can be obtained by providing the name 6559 // as a parameter. By default, the past hour of events are returned. 6560 // 6561 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 6562 // with awserr.Error's Code and Message methods to get detailed information about 6563 // the error. 6564 // 6565 // See the AWS API reference guide for Amazon Redshift's 6566 // API operation DescribeEvents for usage and error information. 6567 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeEvents 6568 func (c *Redshift) DescribeEvents(input *DescribeEventsInput) (*DescribeEventsOutput, error) { 6569 req, out := c.DescribeEventsRequest(input) 6570 return out, req.Send() 6571 } 6572 6573 // DescribeEventsWithContext is the same as DescribeEvents with the addition of 6574 // the ability to pass a context and additional request options. 6575 // 6576 // See DescribeEvents for details on how to use this API operation. 6577 // 6578 // The context must be non-nil and will be used for request cancellation. If 6579 // the context is nil a panic will occur. In the future the SDK may create 6580 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 6581 // for more information on using Contexts. 6582 func (c *Redshift) DescribeEventsWithContext(ctx aws.Context, input *DescribeEventsInput, opts ...request.Option) (*DescribeEventsOutput, error) { 6583 req, out := c.DescribeEventsRequest(input) 6584 req.SetContext(ctx) 6585 req.ApplyOptions(opts...) 6586 return out, req.Send() 6587 } 6588 6589 // DescribeEventsPages iterates over the pages of a DescribeEvents operation, 6590 // calling the "fn" function with the response data for each page. To stop 6591 // iterating, return false from the fn function. 6592 // 6593 // See DescribeEvents method for more information on how to use this operation. 6594 // 6595 // Note: This operation can generate multiple requests to a service. 6596 // 6597 // // Example iterating over at most 3 pages of a DescribeEvents operation. 6598 // pageNum := 0 6599 // err := client.DescribeEventsPages(params, 6600 // func(page *redshift.DescribeEventsOutput, lastPage bool) bool { 6601 // pageNum++ 6602 // fmt.Println(page) 6603 // return pageNum <= 3 6604 // }) 6605 // 6606 func (c *Redshift) DescribeEventsPages(input *DescribeEventsInput, fn func(*DescribeEventsOutput, bool) bool) error { 6607 return c.DescribeEventsPagesWithContext(aws.BackgroundContext(), input, fn) 6608 } 6609 6610 // DescribeEventsPagesWithContext same as DescribeEventsPages except 6611 // it takes a Context and allows setting request options on the pages. 6612 // 6613 // The context must be non-nil and will be used for request cancellation. If 6614 // the context is nil a panic will occur. In the future the SDK may create 6615 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 6616 // for more information on using Contexts. 6617 func (c *Redshift) DescribeEventsPagesWithContext(ctx aws.Context, input *DescribeEventsInput, fn func(*DescribeEventsOutput, bool) bool, opts ...request.Option) error { 6618 p := request.Pagination{ 6619 NewRequest: func() (*request.Request, error) { 6620 var inCpy *DescribeEventsInput 6621 if input != nil { 6622 tmp := *input 6623 inCpy = &tmp 6624 } 6625 req, _ := c.DescribeEventsRequest(inCpy) 6626 req.SetContext(ctx) 6627 req.ApplyOptions(opts...) 6628 return req, nil 6629 }, 6630 } 6631 6632 for p.Next() { 6633 if !fn(p.Page().(*DescribeEventsOutput), !p.HasNextPage()) { 6634 break 6635 } 6636 } 6637 6638 return p.Err() 6639 } 6640 6641 const opDescribeHsmClientCertificates = "DescribeHsmClientCertificates" 6642 6643 // DescribeHsmClientCertificatesRequest generates a "aws/request.Request" representing the 6644 // client's request for the DescribeHsmClientCertificates operation. The "output" return 6645 // value will be populated with the request's response once the request completes 6646 // successfully. 6647 // 6648 // Use "Send" method on the returned Request to send the API call to the service. 6649 // the "output" return value is not valid until after Send returns without error. 6650 // 6651 // See DescribeHsmClientCertificates for more information on using the DescribeHsmClientCertificates 6652 // API call, and error handling. 6653 // 6654 // This method is useful when you want to inject custom logic or configuration 6655 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 6656 // 6657 // 6658 // // Example sending a request using the DescribeHsmClientCertificatesRequest method. 6659 // req, resp := client.DescribeHsmClientCertificatesRequest(params) 6660 // 6661 // err := req.Send() 6662 // if err == nil { // resp is now filled 6663 // fmt.Println(resp) 6664 // } 6665 // 6666 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeHsmClientCertificates 6667 func (c *Redshift) DescribeHsmClientCertificatesRequest(input *DescribeHsmClientCertificatesInput) (req *request.Request, output *DescribeHsmClientCertificatesOutput) { 6668 op := &request.Operation{ 6669 Name: opDescribeHsmClientCertificates, 6670 HTTPMethod: "POST", 6671 HTTPPath: "/", 6672 Paginator: &request.Paginator{ 6673 InputTokens: []string{"Marker"}, 6674 OutputTokens: []string{"Marker"}, 6675 LimitToken: "MaxRecords", 6676 TruncationToken: "", 6677 }, 6678 } 6679 6680 if input == nil { 6681 input = &DescribeHsmClientCertificatesInput{} 6682 } 6683 6684 output = &DescribeHsmClientCertificatesOutput{} 6685 req = c.newRequest(op, input, output) 6686 return 6687 } 6688 6689 // DescribeHsmClientCertificates API operation for Amazon Redshift. 6690 // 6691 // Returns information about the specified HSM client certificate. If no certificate 6692 // ID is specified, returns information about all the HSM certificates owned 6693 // by your Amazon Web Services account. 6694 // 6695 // If you specify both tag keys and tag values in the same request, Amazon Redshift 6696 // returns all HSM client certificates that match any combination of the specified 6697 // keys and values. For example, if you have owner and environment for tag keys, 6698 // and admin and test for tag values, all HSM client certificates that have 6699 // any combination of those values are returned. 6700 // 6701 // If both tag keys and values are omitted from the request, HSM client certificates 6702 // are returned regardless of whether they have tag keys or values associated 6703 // with them. 6704 // 6705 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 6706 // with awserr.Error's Code and Message methods to get detailed information about 6707 // the error. 6708 // 6709 // See the AWS API reference guide for Amazon Redshift's 6710 // API operation DescribeHsmClientCertificates for usage and error information. 6711 // 6712 // Returned Error Codes: 6713 // * ErrCodeHsmClientCertificateNotFoundFault "HsmClientCertificateNotFoundFault" 6714 // There is no Amazon Redshift HSM client certificate with the specified identifier. 6715 // 6716 // * ErrCodeInvalidTagFault "InvalidTagFault" 6717 // The tag is invalid. 6718 // 6719 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeHsmClientCertificates 6720 func (c *Redshift) DescribeHsmClientCertificates(input *DescribeHsmClientCertificatesInput) (*DescribeHsmClientCertificatesOutput, error) { 6721 req, out := c.DescribeHsmClientCertificatesRequest(input) 6722 return out, req.Send() 6723 } 6724 6725 // DescribeHsmClientCertificatesWithContext is the same as DescribeHsmClientCertificates with the addition of 6726 // the ability to pass a context and additional request options. 6727 // 6728 // See DescribeHsmClientCertificates for details on how to use this API operation. 6729 // 6730 // The context must be non-nil and will be used for request cancellation. If 6731 // the context is nil a panic will occur. In the future the SDK may create 6732 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 6733 // for more information on using Contexts. 6734 func (c *Redshift) DescribeHsmClientCertificatesWithContext(ctx aws.Context, input *DescribeHsmClientCertificatesInput, opts ...request.Option) (*DescribeHsmClientCertificatesOutput, error) { 6735 req, out := c.DescribeHsmClientCertificatesRequest(input) 6736 req.SetContext(ctx) 6737 req.ApplyOptions(opts...) 6738 return out, req.Send() 6739 } 6740 6741 // DescribeHsmClientCertificatesPages iterates over the pages of a DescribeHsmClientCertificates operation, 6742 // calling the "fn" function with the response data for each page. To stop 6743 // iterating, return false from the fn function. 6744 // 6745 // See DescribeHsmClientCertificates method for more information on how to use this operation. 6746 // 6747 // Note: This operation can generate multiple requests to a service. 6748 // 6749 // // Example iterating over at most 3 pages of a DescribeHsmClientCertificates operation. 6750 // pageNum := 0 6751 // err := client.DescribeHsmClientCertificatesPages(params, 6752 // func(page *redshift.DescribeHsmClientCertificatesOutput, lastPage bool) bool { 6753 // pageNum++ 6754 // fmt.Println(page) 6755 // return pageNum <= 3 6756 // }) 6757 // 6758 func (c *Redshift) DescribeHsmClientCertificatesPages(input *DescribeHsmClientCertificatesInput, fn func(*DescribeHsmClientCertificatesOutput, bool) bool) error { 6759 return c.DescribeHsmClientCertificatesPagesWithContext(aws.BackgroundContext(), input, fn) 6760 } 6761 6762 // DescribeHsmClientCertificatesPagesWithContext same as DescribeHsmClientCertificatesPages except 6763 // it takes a Context and allows setting request options on the pages. 6764 // 6765 // The context must be non-nil and will be used for request cancellation. If 6766 // the context is nil a panic will occur. In the future the SDK may create 6767 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 6768 // for more information on using Contexts. 6769 func (c *Redshift) DescribeHsmClientCertificatesPagesWithContext(ctx aws.Context, input *DescribeHsmClientCertificatesInput, fn func(*DescribeHsmClientCertificatesOutput, bool) bool, opts ...request.Option) error { 6770 p := request.Pagination{ 6771 NewRequest: func() (*request.Request, error) { 6772 var inCpy *DescribeHsmClientCertificatesInput 6773 if input != nil { 6774 tmp := *input 6775 inCpy = &tmp 6776 } 6777 req, _ := c.DescribeHsmClientCertificatesRequest(inCpy) 6778 req.SetContext(ctx) 6779 req.ApplyOptions(opts...) 6780 return req, nil 6781 }, 6782 } 6783 6784 for p.Next() { 6785 if !fn(p.Page().(*DescribeHsmClientCertificatesOutput), !p.HasNextPage()) { 6786 break 6787 } 6788 } 6789 6790 return p.Err() 6791 } 6792 6793 const opDescribeHsmConfigurations = "DescribeHsmConfigurations" 6794 6795 // DescribeHsmConfigurationsRequest generates a "aws/request.Request" representing the 6796 // client's request for the DescribeHsmConfigurations operation. The "output" return 6797 // value will be populated with the request's response once the request completes 6798 // successfully. 6799 // 6800 // Use "Send" method on the returned Request to send the API call to the service. 6801 // the "output" return value is not valid until after Send returns without error. 6802 // 6803 // See DescribeHsmConfigurations for more information on using the DescribeHsmConfigurations 6804 // API call, and error handling. 6805 // 6806 // This method is useful when you want to inject custom logic or configuration 6807 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 6808 // 6809 // 6810 // // Example sending a request using the DescribeHsmConfigurationsRequest method. 6811 // req, resp := client.DescribeHsmConfigurationsRequest(params) 6812 // 6813 // err := req.Send() 6814 // if err == nil { // resp is now filled 6815 // fmt.Println(resp) 6816 // } 6817 // 6818 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeHsmConfigurations 6819 func (c *Redshift) DescribeHsmConfigurationsRequest(input *DescribeHsmConfigurationsInput) (req *request.Request, output *DescribeHsmConfigurationsOutput) { 6820 op := &request.Operation{ 6821 Name: opDescribeHsmConfigurations, 6822 HTTPMethod: "POST", 6823 HTTPPath: "/", 6824 Paginator: &request.Paginator{ 6825 InputTokens: []string{"Marker"}, 6826 OutputTokens: []string{"Marker"}, 6827 LimitToken: "MaxRecords", 6828 TruncationToken: "", 6829 }, 6830 } 6831 6832 if input == nil { 6833 input = &DescribeHsmConfigurationsInput{} 6834 } 6835 6836 output = &DescribeHsmConfigurationsOutput{} 6837 req = c.newRequest(op, input, output) 6838 return 6839 } 6840 6841 // DescribeHsmConfigurations API operation for Amazon Redshift. 6842 // 6843 // Returns information about the specified Amazon Redshift HSM configuration. 6844 // If no configuration ID is specified, returns information about all the HSM 6845 // configurations owned by your Amazon Web Services account. 6846 // 6847 // If you specify both tag keys and tag values in the same request, Amazon Redshift 6848 // returns all HSM connections that match any combination of the specified keys 6849 // and values. For example, if you have owner and environment for tag keys, 6850 // and admin and test for tag values, all HSM connections that have any combination 6851 // of those values are returned. 6852 // 6853 // If both tag keys and values are omitted from the request, HSM connections 6854 // are returned regardless of whether they have tag keys or values associated 6855 // with them. 6856 // 6857 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 6858 // with awserr.Error's Code and Message methods to get detailed information about 6859 // the error. 6860 // 6861 // See the AWS API reference guide for Amazon Redshift's 6862 // API operation DescribeHsmConfigurations for usage and error information. 6863 // 6864 // Returned Error Codes: 6865 // * ErrCodeHsmConfigurationNotFoundFault "HsmConfigurationNotFoundFault" 6866 // There is no Amazon Redshift HSM configuration with the specified identifier. 6867 // 6868 // * ErrCodeInvalidTagFault "InvalidTagFault" 6869 // The tag is invalid. 6870 // 6871 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeHsmConfigurations 6872 func (c *Redshift) DescribeHsmConfigurations(input *DescribeHsmConfigurationsInput) (*DescribeHsmConfigurationsOutput, error) { 6873 req, out := c.DescribeHsmConfigurationsRequest(input) 6874 return out, req.Send() 6875 } 6876 6877 // DescribeHsmConfigurationsWithContext is the same as DescribeHsmConfigurations with the addition of 6878 // the ability to pass a context and additional request options. 6879 // 6880 // See DescribeHsmConfigurations for details on how to use this API operation. 6881 // 6882 // The context must be non-nil and will be used for request cancellation. If 6883 // the context is nil a panic will occur. In the future the SDK may create 6884 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 6885 // for more information on using Contexts. 6886 func (c *Redshift) DescribeHsmConfigurationsWithContext(ctx aws.Context, input *DescribeHsmConfigurationsInput, opts ...request.Option) (*DescribeHsmConfigurationsOutput, error) { 6887 req, out := c.DescribeHsmConfigurationsRequest(input) 6888 req.SetContext(ctx) 6889 req.ApplyOptions(opts...) 6890 return out, req.Send() 6891 } 6892 6893 // DescribeHsmConfigurationsPages iterates over the pages of a DescribeHsmConfigurations operation, 6894 // calling the "fn" function with the response data for each page. To stop 6895 // iterating, return false from the fn function. 6896 // 6897 // See DescribeHsmConfigurations method for more information on how to use this operation. 6898 // 6899 // Note: This operation can generate multiple requests to a service. 6900 // 6901 // // Example iterating over at most 3 pages of a DescribeHsmConfigurations operation. 6902 // pageNum := 0 6903 // err := client.DescribeHsmConfigurationsPages(params, 6904 // func(page *redshift.DescribeHsmConfigurationsOutput, lastPage bool) bool { 6905 // pageNum++ 6906 // fmt.Println(page) 6907 // return pageNum <= 3 6908 // }) 6909 // 6910 func (c *Redshift) DescribeHsmConfigurationsPages(input *DescribeHsmConfigurationsInput, fn func(*DescribeHsmConfigurationsOutput, bool) bool) error { 6911 return c.DescribeHsmConfigurationsPagesWithContext(aws.BackgroundContext(), input, fn) 6912 } 6913 6914 // DescribeHsmConfigurationsPagesWithContext same as DescribeHsmConfigurationsPages except 6915 // it takes a Context and allows setting request options on the pages. 6916 // 6917 // The context must be non-nil and will be used for request cancellation. If 6918 // the context is nil a panic will occur. In the future the SDK may create 6919 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 6920 // for more information on using Contexts. 6921 func (c *Redshift) DescribeHsmConfigurationsPagesWithContext(ctx aws.Context, input *DescribeHsmConfigurationsInput, fn func(*DescribeHsmConfigurationsOutput, bool) bool, opts ...request.Option) error { 6922 p := request.Pagination{ 6923 NewRequest: func() (*request.Request, error) { 6924 var inCpy *DescribeHsmConfigurationsInput 6925 if input != nil { 6926 tmp := *input 6927 inCpy = &tmp 6928 } 6929 req, _ := c.DescribeHsmConfigurationsRequest(inCpy) 6930 req.SetContext(ctx) 6931 req.ApplyOptions(opts...) 6932 return req, nil 6933 }, 6934 } 6935 6936 for p.Next() { 6937 if !fn(p.Page().(*DescribeHsmConfigurationsOutput), !p.HasNextPage()) { 6938 break 6939 } 6940 } 6941 6942 return p.Err() 6943 } 6944 6945 const opDescribeLoggingStatus = "DescribeLoggingStatus" 6946 6947 // DescribeLoggingStatusRequest generates a "aws/request.Request" representing the 6948 // client's request for the DescribeLoggingStatus operation. The "output" return 6949 // value will be populated with the request's response once the request completes 6950 // successfully. 6951 // 6952 // Use "Send" method on the returned Request to send the API call to the service. 6953 // the "output" return value is not valid until after Send returns without error. 6954 // 6955 // See DescribeLoggingStatus for more information on using the DescribeLoggingStatus 6956 // API call, and error handling. 6957 // 6958 // This method is useful when you want to inject custom logic or configuration 6959 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 6960 // 6961 // 6962 // // Example sending a request using the DescribeLoggingStatusRequest method. 6963 // req, resp := client.DescribeLoggingStatusRequest(params) 6964 // 6965 // err := req.Send() 6966 // if err == nil { // resp is now filled 6967 // fmt.Println(resp) 6968 // } 6969 // 6970 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeLoggingStatus 6971 func (c *Redshift) DescribeLoggingStatusRequest(input *DescribeLoggingStatusInput) (req *request.Request, output *LoggingStatus) { 6972 op := &request.Operation{ 6973 Name: opDescribeLoggingStatus, 6974 HTTPMethod: "POST", 6975 HTTPPath: "/", 6976 } 6977 6978 if input == nil { 6979 input = &DescribeLoggingStatusInput{} 6980 } 6981 6982 output = &LoggingStatus{} 6983 req = c.newRequest(op, input, output) 6984 return 6985 } 6986 6987 // DescribeLoggingStatus API operation for Amazon Redshift. 6988 // 6989 // Describes whether information, such as queries and connection attempts, is 6990 // being logged for the specified Amazon Redshift cluster. 6991 // 6992 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 6993 // with awserr.Error's Code and Message methods to get detailed information about 6994 // the error. 6995 // 6996 // See the AWS API reference guide for Amazon Redshift's 6997 // API operation DescribeLoggingStatus for usage and error information. 6998 // 6999 // Returned Error Codes: 7000 // * ErrCodeClusterNotFoundFault "ClusterNotFound" 7001 // The ClusterIdentifier parameter does not refer to an existing cluster. 7002 // 7003 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeLoggingStatus 7004 func (c *Redshift) DescribeLoggingStatus(input *DescribeLoggingStatusInput) (*LoggingStatus, error) { 7005 req, out := c.DescribeLoggingStatusRequest(input) 7006 return out, req.Send() 7007 } 7008 7009 // DescribeLoggingStatusWithContext is the same as DescribeLoggingStatus with the addition of 7010 // the ability to pass a context and additional request options. 7011 // 7012 // See DescribeLoggingStatus for details on how to use this API operation. 7013 // 7014 // The context must be non-nil and will be used for request cancellation. If 7015 // the context is nil a panic will occur. In the future the SDK may create 7016 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 7017 // for more information on using Contexts. 7018 func (c *Redshift) DescribeLoggingStatusWithContext(ctx aws.Context, input *DescribeLoggingStatusInput, opts ...request.Option) (*LoggingStatus, error) { 7019 req, out := c.DescribeLoggingStatusRequest(input) 7020 req.SetContext(ctx) 7021 req.ApplyOptions(opts...) 7022 return out, req.Send() 7023 } 7024 7025 const opDescribeNodeConfigurationOptions = "DescribeNodeConfigurationOptions" 7026 7027 // DescribeNodeConfigurationOptionsRequest generates a "aws/request.Request" representing the 7028 // client's request for the DescribeNodeConfigurationOptions operation. The "output" return 7029 // value will be populated with the request's response once the request completes 7030 // successfully. 7031 // 7032 // Use "Send" method on the returned Request to send the API call to the service. 7033 // the "output" return value is not valid until after Send returns without error. 7034 // 7035 // See DescribeNodeConfigurationOptions for more information on using the DescribeNodeConfigurationOptions 7036 // API call, and error handling. 7037 // 7038 // This method is useful when you want to inject custom logic or configuration 7039 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 7040 // 7041 // 7042 // // Example sending a request using the DescribeNodeConfigurationOptionsRequest method. 7043 // req, resp := client.DescribeNodeConfigurationOptionsRequest(params) 7044 // 7045 // err := req.Send() 7046 // if err == nil { // resp is now filled 7047 // fmt.Println(resp) 7048 // } 7049 // 7050 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeNodeConfigurationOptions 7051 func (c *Redshift) DescribeNodeConfigurationOptionsRequest(input *DescribeNodeConfigurationOptionsInput) (req *request.Request, output *DescribeNodeConfigurationOptionsOutput) { 7052 op := &request.Operation{ 7053 Name: opDescribeNodeConfigurationOptions, 7054 HTTPMethod: "POST", 7055 HTTPPath: "/", 7056 Paginator: &request.Paginator{ 7057 InputTokens: []string{"Marker"}, 7058 OutputTokens: []string{"Marker"}, 7059 LimitToken: "MaxRecords", 7060 TruncationToken: "", 7061 }, 7062 } 7063 7064 if input == nil { 7065 input = &DescribeNodeConfigurationOptionsInput{} 7066 } 7067 7068 output = &DescribeNodeConfigurationOptionsOutput{} 7069 req = c.newRequest(op, input, output) 7070 return 7071 } 7072 7073 // DescribeNodeConfigurationOptions API operation for Amazon Redshift. 7074 // 7075 // Returns properties of possible node configurations such as node type, number 7076 // of nodes, and disk usage for the specified action type. 7077 // 7078 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 7079 // with awserr.Error's Code and Message methods to get detailed information about 7080 // the error. 7081 // 7082 // See the AWS API reference guide for Amazon Redshift's 7083 // API operation DescribeNodeConfigurationOptions for usage and error information. 7084 // 7085 // Returned Error Codes: 7086 // * ErrCodeClusterSnapshotNotFoundFault "ClusterSnapshotNotFound" 7087 // The snapshot identifier does not refer to an existing cluster snapshot. 7088 // 7089 // * ErrCodeInvalidClusterSnapshotStateFault "InvalidClusterSnapshotState" 7090 // The specified cluster snapshot is not in the available state, or other accounts 7091 // are authorized to access the snapshot. 7092 // 7093 // * ErrCodeClusterNotFoundFault "ClusterNotFound" 7094 // The ClusterIdentifier parameter does not refer to an existing cluster. 7095 // 7096 // * ErrCodeAccessToSnapshotDeniedFault "AccessToSnapshotDenied" 7097 // The owner of the specified snapshot has not authorized your account to access 7098 // the snapshot. 7099 // 7100 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeNodeConfigurationOptions 7101 func (c *Redshift) DescribeNodeConfigurationOptions(input *DescribeNodeConfigurationOptionsInput) (*DescribeNodeConfigurationOptionsOutput, error) { 7102 req, out := c.DescribeNodeConfigurationOptionsRequest(input) 7103 return out, req.Send() 7104 } 7105 7106 // DescribeNodeConfigurationOptionsWithContext is the same as DescribeNodeConfigurationOptions with the addition of 7107 // the ability to pass a context and additional request options. 7108 // 7109 // See DescribeNodeConfigurationOptions for details on how to use this API operation. 7110 // 7111 // The context must be non-nil and will be used for request cancellation. If 7112 // the context is nil a panic will occur. In the future the SDK may create 7113 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 7114 // for more information on using Contexts. 7115 func (c *Redshift) DescribeNodeConfigurationOptionsWithContext(ctx aws.Context, input *DescribeNodeConfigurationOptionsInput, opts ...request.Option) (*DescribeNodeConfigurationOptionsOutput, error) { 7116 req, out := c.DescribeNodeConfigurationOptionsRequest(input) 7117 req.SetContext(ctx) 7118 req.ApplyOptions(opts...) 7119 return out, req.Send() 7120 } 7121 7122 // DescribeNodeConfigurationOptionsPages iterates over the pages of a DescribeNodeConfigurationOptions operation, 7123 // calling the "fn" function with the response data for each page. To stop 7124 // iterating, return false from the fn function. 7125 // 7126 // See DescribeNodeConfigurationOptions method for more information on how to use this operation. 7127 // 7128 // Note: This operation can generate multiple requests to a service. 7129 // 7130 // // Example iterating over at most 3 pages of a DescribeNodeConfigurationOptions operation. 7131 // pageNum := 0 7132 // err := client.DescribeNodeConfigurationOptionsPages(params, 7133 // func(page *redshift.DescribeNodeConfigurationOptionsOutput, lastPage bool) bool { 7134 // pageNum++ 7135 // fmt.Println(page) 7136 // return pageNum <= 3 7137 // }) 7138 // 7139 func (c *Redshift) DescribeNodeConfigurationOptionsPages(input *DescribeNodeConfigurationOptionsInput, fn func(*DescribeNodeConfigurationOptionsOutput, bool) bool) error { 7140 return c.DescribeNodeConfigurationOptionsPagesWithContext(aws.BackgroundContext(), input, fn) 7141 } 7142 7143 // DescribeNodeConfigurationOptionsPagesWithContext same as DescribeNodeConfigurationOptionsPages except 7144 // it takes a Context and allows setting request options on the pages. 7145 // 7146 // The context must be non-nil and will be used for request cancellation. If 7147 // the context is nil a panic will occur. In the future the SDK may create 7148 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 7149 // for more information on using Contexts. 7150 func (c *Redshift) DescribeNodeConfigurationOptionsPagesWithContext(ctx aws.Context, input *DescribeNodeConfigurationOptionsInput, fn func(*DescribeNodeConfigurationOptionsOutput, bool) bool, opts ...request.Option) error { 7151 p := request.Pagination{ 7152 NewRequest: func() (*request.Request, error) { 7153 var inCpy *DescribeNodeConfigurationOptionsInput 7154 if input != nil { 7155 tmp := *input 7156 inCpy = &tmp 7157 } 7158 req, _ := c.DescribeNodeConfigurationOptionsRequest(inCpy) 7159 req.SetContext(ctx) 7160 req.ApplyOptions(opts...) 7161 return req, nil 7162 }, 7163 } 7164 7165 for p.Next() { 7166 if !fn(p.Page().(*DescribeNodeConfigurationOptionsOutput), !p.HasNextPage()) { 7167 break 7168 } 7169 } 7170 7171 return p.Err() 7172 } 7173 7174 const opDescribeOrderableClusterOptions = "DescribeOrderableClusterOptions" 7175 7176 // DescribeOrderableClusterOptionsRequest generates a "aws/request.Request" representing the 7177 // client's request for the DescribeOrderableClusterOptions operation. The "output" return 7178 // value will be populated with the request's response once the request completes 7179 // successfully. 7180 // 7181 // Use "Send" method on the returned Request to send the API call to the service. 7182 // the "output" return value is not valid until after Send returns without error. 7183 // 7184 // See DescribeOrderableClusterOptions for more information on using the DescribeOrderableClusterOptions 7185 // API call, and error handling. 7186 // 7187 // This method is useful when you want to inject custom logic or configuration 7188 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 7189 // 7190 // 7191 // // Example sending a request using the DescribeOrderableClusterOptionsRequest method. 7192 // req, resp := client.DescribeOrderableClusterOptionsRequest(params) 7193 // 7194 // err := req.Send() 7195 // if err == nil { // resp is now filled 7196 // fmt.Println(resp) 7197 // } 7198 // 7199 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeOrderableClusterOptions 7200 func (c *Redshift) DescribeOrderableClusterOptionsRequest(input *DescribeOrderableClusterOptionsInput) (req *request.Request, output *DescribeOrderableClusterOptionsOutput) { 7201 op := &request.Operation{ 7202 Name: opDescribeOrderableClusterOptions, 7203 HTTPMethod: "POST", 7204 HTTPPath: "/", 7205 Paginator: &request.Paginator{ 7206 InputTokens: []string{"Marker"}, 7207 OutputTokens: []string{"Marker"}, 7208 LimitToken: "MaxRecords", 7209 TruncationToken: "", 7210 }, 7211 } 7212 7213 if input == nil { 7214 input = &DescribeOrderableClusterOptionsInput{} 7215 } 7216 7217 output = &DescribeOrderableClusterOptionsOutput{} 7218 req = c.newRequest(op, input, output) 7219 return 7220 } 7221 7222 // DescribeOrderableClusterOptions API operation for Amazon Redshift. 7223 // 7224 // Returns a list of orderable cluster options. Before you create a new cluster 7225 // you can use this operation to find what options are available, such as the 7226 // EC2 Availability Zones (AZ) in the specific Amazon Web Services Region that 7227 // you can specify, and the node types you can request. The node types differ 7228 // by available storage, memory, CPU and price. With the cost involved you might 7229 // want to obtain a list of cluster options in the specific region and specify 7230 // values when creating a cluster. For more information about managing clusters, 7231 // go to Amazon Redshift Clusters (https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-clusters.html) 7232 // in the Amazon Redshift Cluster Management Guide. 7233 // 7234 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 7235 // with awserr.Error's Code and Message methods to get detailed information about 7236 // the error. 7237 // 7238 // See the AWS API reference guide for Amazon Redshift's 7239 // API operation DescribeOrderableClusterOptions for usage and error information. 7240 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeOrderableClusterOptions 7241 func (c *Redshift) DescribeOrderableClusterOptions(input *DescribeOrderableClusterOptionsInput) (*DescribeOrderableClusterOptionsOutput, error) { 7242 req, out := c.DescribeOrderableClusterOptionsRequest(input) 7243 return out, req.Send() 7244 } 7245 7246 // DescribeOrderableClusterOptionsWithContext is the same as DescribeOrderableClusterOptions with the addition of 7247 // the ability to pass a context and additional request options. 7248 // 7249 // See DescribeOrderableClusterOptions for details on how to use this API operation. 7250 // 7251 // The context must be non-nil and will be used for request cancellation. If 7252 // the context is nil a panic will occur. In the future the SDK may create 7253 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 7254 // for more information on using Contexts. 7255 func (c *Redshift) DescribeOrderableClusterOptionsWithContext(ctx aws.Context, input *DescribeOrderableClusterOptionsInput, opts ...request.Option) (*DescribeOrderableClusterOptionsOutput, error) { 7256 req, out := c.DescribeOrderableClusterOptionsRequest(input) 7257 req.SetContext(ctx) 7258 req.ApplyOptions(opts...) 7259 return out, req.Send() 7260 } 7261 7262 // DescribeOrderableClusterOptionsPages iterates over the pages of a DescribeOrderableClusterOptions operation, 7263 // calling the "fn" function with the response data for each page. To stop 7264 // iterating, return false from the fn function. 7265 // 7266 // See DescribeOrderableClusterOptions method for more information on how to use this operation. 7267 // 7268 // Note: This operation can generate multiple requests to a service. 7269 // 7270 // // Example iterating over at most 3 pages of a DescribeOrderableClusterOptions operation. 7271 // pageNum := 0 7272 // err := client.DescribeOrderableClusterOptionsPages(params, 7273 // func(page *redshift.DescribeOrderableClusterOptionsOutput, lastPage bool) bool { 7274 // pageNum++ 7275 // fmt.Println(page) 7276 // return pageNum <= 3 7277 // }) 7278 // 7279 func (c *Redshift) DescribeOrderableClusterOptionsPages(input *DescribeOrderableClusterOptionsInput, fn func(*DescribeOrderableClusterOptionsOutput, bool) bool) error { 7280 return c.DescribeOrderableClusterOptionsPagesWithContext(aws.BackgroundContext(), input, fn) 7281 } 7282 7283 // DescribeOrderableClusterOptionsPagesWithContext same as DescribeOrderableClusterOptionsPages except 7284 // it takes a Context and allows setting request options on the pages. 7285 // 7286 // The context must be non-nil and will be used for request cancellation. If 7287 // the context is nil a panic will occur. In the future the SDK may create 7288 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 7289 // for more information on using Contexts. 7290 func (c *Redshift) DescribeOrderableClusterOptionsPagesWithContext(ctx aws.Context, input *DescribeOrderableClusterOptionsInput, fn func(*DescribeOrderableClusterOptionsOutput, bool) bool, opts ...request.Option) error { 7291 p := request.Pagination{ 7292 NewRequest: func() (*request.Request, error) { 7293 var inCpy *DescribeOrderableClusterOptionsInput 7294 if input != nil { 7295 tmp := *input 7296 inCpy = &tmp 7297 } 7298 req, _ := c.DescribeOrderableClusterOptionsRequest(inCpy) 7299 req.SetContext(ctx) 7300 req.ApplyOptions(opts...) 7301 return req, nil 7302 }, 7303 } 7304 7305 for p.Next() { 7306 if !fn(p.Page().(*DescribeOrderableClusterOptionsOutput), !p.HasNextPage()) { 7307 break 7308 } 7309 } 7310 7311 return p.Err() 7312 } 7313 7314 const opDescribePartners = "DescribePartners" 7315 7316 // DescribePartnersRequest generates a "aws/request.Request" representing the 7317 // client's request for the DescribePartners operation. The "output" return 7318 // value will be populated with the request's response once the request completes 7319 // successfully. 7320 // 7321 // Use "Send" method on the returned Request to send the API call to the service. 7322 // the "output" return value is not valid until after Send returns without error. 7323 // 7324 // See DescribePartners for more information on using the DescribePartners 7325 // API call, and error handling. 7326 // 7327 // This method is useful when you want to inject custom logic or configuration 7328 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 7329 // 7330 // 7331 // // Example sending a request using the DescribePartnersRequest method. 7332 // req, resp := client.DescribePartnersRequest(params) 7333 // 7334 // err := req.Send() 7335 // if err == nil { // resp is now filled 7336 // fmt.Println(resp) 7337 // } 7338 // 7339 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribePartners 7340 func (c *Redshift) DescribePartnersRequest(input *DescribePartnersInput) (req *request.Request, output *DescribePartnersOutput) { 7341 op := &request.Operation{ 7342 Name: opDescribePartners, 7343 HTTPMethod: "POST", 7344 HTTPPath: "/", 7345 } 7346 7347 if input == nil { 7348 input = &DescribePartnersInput{} 7349 } 7350 7351 output = &DescribePartnersOutput{} 7352 req = c.newRequest(op, input, output) 7353 return 7354 } 7355 7356 // DescribePartners API operation for Amazon Redshift. 7357 // 7358 // Returns information about the partner integrations defined for a cluster. 7359 // 7360 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 7361 // with awserr.Error's Code and Message methods to get detailed information about 7362 // the error. 7363 // 7364 // See the AWS API reference guide for Amazon Redshift's 7365 // API operation DescribePartners for usage and error information. 7366 // 7367 // Returned Error Codes: 7368 // * ErrCodeClusterNotFoundFault "ClusterNotFound" 7369 // The ClusterIdentifier parameter does not refer to an existing cluster. 7370 // 7371 // * ErrCodeUnauthorizedPartnerIntegrationFault "UnauthorizedPartnerIntegration" 7372 // The partner integration is not authorized. 7373 // 7374 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribePartners 7375 func (c *Redshift) DescribePartners(input *DescribePartnersInput) (*DescribePartnersOutput, error) { 7376 req, out := c.DescribePartnersRequest(input) 7377 return out, req.Send() 7378 } 7379 7380 // DescribePartnersWithContext is the same as DescribePartners with the addition of 7381 // the ability to pass a context and additional request options. 7382 // 7383 // See DescribePartners for details on how to use this API operation. 7384 // 7385 // The context must be non-nil and will be used for request cancellation. If 7386 // the context is nil a panic will occur. In the future the SDK may create 7387 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 7388 // for more information on using Contexts. 7389 func (c *Redshift) DescribePartnersWithContext(ctx aws.Context, input *DescribePartnersInput, opts ...request.Option) (*DescribePartnersOutput, error) { 7390 req, out := c.DescribePartnersRequest(input) 7391 req.SetContext(ctx) 7392 req.ApplyOptions(opts...) 7393 return out, req.Send() 7394 } 7395 7396 const opDescribeReservedNodeOfferings = "DescribeReservedNodeOfferings" 7397 7398 // DescribeReservedNodeOfferingsRequest generates a "aws/request.Request" representing the 7399 // client's request for the DescribeReservedNodeOfferings operation. The "output" return 7400 // value will be populated with the request's response once the request completes 7401 // successfully. 7402 // 7403 // Use "Send" method on the returned Request to send the API call to the service. 7404 // the "output" return value is not valid until after Send returns without error. 7405 // 7406 // See DescribeReservedNodeOfferings for more information on using the DescribeReservedNodeOfferings 7407 // API call, and error handling. 7408 // 7409 // This method is useful when you want to inject custom logic or configuration 7410 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 7411 // 7412 // 7413 // // Example sending a request using the DescribeReservedNodeOfferingsRequest method. 7414 // req, resp := client.DescribeReservedNodeOfferingsRequest(params) 7415 // 7416 // err := req.Send() 7417 // if err == nil { // resp is now filled 7418 // fmt.Println(resp) 7419 // } 7420 // 7421 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeReservedNodeOfferings 7422 func (c *Redshift) DescribeReservedNodeOfferingsRequest(input *DescribeReservedNodeOfferingsInput) (req *request.Request, output *DescribeReservedNodeOfferingsOutput) { 7423 op := &request.Operation{ 7424 Name: opDescribeReservedNodeOfferings, 7425 HTTPMethod: "POST", 7426 HTTPPath: "/", 7427 Paginator: &request.Paginator{ 7428 InputTokens: []string{"Marker"}, 7429 OutputTokens: []string{"Marker"}, 7430 LimitToken: "MaxRecords", 7431 TruncationToken: "", 7432 }, 7433 } 7434 7435 if input == nil { 7436 input = &DescribeReservedNodeOfferingsInput{} 7437 } 7438 7439 output = &DescribeReservedNodeOfferingsOutput{} 7440 req = c.newRequest(op, input, output) 7441 return 7442 } 7443 7444 // DescribeReservedNodeOfferings API operation for Amazon Redshift. 7445 // 7446 // Returns a list of the available reserved node offerings by Amazon Redshift 7447 // with their descriptions including the node type, the fixed and recurring 7448 // costs of reserving the node and duration the node will be reserved for you. 7449 // These descriptions help you determine which reserve node offering you want 7450 // to purchase. You then use the unique offering ID in you call to PurchaseReservedNodeOffering 7451 // to reserve one or more nodes for your Amazon Redshift cluster. 7452 // 7453 // For more information about reserved node offerings, go to Purchasing Reserved 7454 // Nodes (https://docs.aws.amazon.com/redshift/latest/mgmt/purchase-reserved-node-instance.html) 7455 // in the Amazon Redshift Cluster Management Guide. 7456 // 7457 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 7458 // with awserr.Error's Code and Message methods to get detailed information about 7459 // the error. 7460 // 7461 // See the AWS API reference guide for Amazon Redshift's 7462 // API operation DescribeReservedNodeOfferings for usage and error information. 7463 // 7464 // Returned Error Codes: 7465 // * ErrCodeReservedNodeOfferingNotFoundFault "ReservedNodeOfferingNotFound" 7466 // Specified offering does not exist. 7467 // 7468 // * ErrCodeUnsupportedOperationFault "UnsupportedOperation" 7469 // The requested operation isn't supported. 7470 // 7471 // * ErrCodeDependentServiceUnavailableFault "DependentServiceUnavailableFault" 7472 // Your request cannot be completed because a dependent internal service is 7473 // temporarily unavailable. Wait 30 to 60 seconds and try again. 7474 // 7475 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeReservedNodeOfferings 7476 func (c *Redshift) DescribeReservedNodeOfferings(input *DescribeReservedNodeOfferingsInput) (*DescribeReservedNodeOfferingsOutput, error) { 7477 req, out := c.DescribeReservedNodeOfferingsRequest(input) 7478 return out, req.Send() 7479 } 7480 7481 // DescribeReservedNodeOfferingsWithContext is the same as DescribeReservedNodeOfferings with the addition of 7482 // the ability to pass a context and additional request options. 7483 // 7484 // See DescribeReservedNodeOfferings for details on how to use this API operation. 7485 // 7486 // The context must be non-nil and will be used for request cancellation. If 7487 // the context is nil a panic will occur. In the future the SDK may create 7488 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 7489 // for more information on using Contexts. 7490 func (c *Redshift) DescribeReservedNodeOfferingsWithContext(ctx aws.Context, input *DescribeReservedNodeOfferingsInput, opts ...request.Option) (*DescribeReservedNodeOfferingsOutput, error) { 7491 req, out := c.DescribeReservedNodeOfferingsRequest(input) 7492 req.SetContext(ctx) 7493 req.ApplyOptions(opts...) 7494 return out, req.Send() 7495 } 7496 7497 // DescribeReservedNodeOfferingsPages iterates over the pages of a DescribeReservedNodeOfferings operation, 7498 // calling the "fn" function with the response data for each page. To stop 7499 // iterating, return false from the fn function. 7500 // 7501 // See DescribeReservedNodeOfferings method for more information on how to use this operation. 7502 // 7503 // Note: This operation can generate multiple requests to a service. 7504 // 7505 // // Example iterating over at most 3 pages of a DescribeReservedNodeOfferings operation. 7506 // pageNum := 0 7507 // err := client.DescribeReservedNodeOfferingsPages(params, 7508 // func(page *redshift.DescribeReservedNodeOfferingsOutput, lastPage bool) bool { 7509 // pageNum++ 7510 // fmt.Println(page) 7511 // return pageNum <= 3 7512 // }) 7513 // 7514 func (c *Redshift) DescribeReservedNodeOfferingsPages(input *DescribeReservedNodeOfferingsInput, fn func(*DescribeReservedNodeOfferingsOutput, bool) bool) error { 7515 return c.DescribeReservedNodeOfferingsPagesWithContext(aws.BackgroundContext(), input, fn) 7516 } 7517 7518 // DescribeReservedNodeOfferingsPagesWithContext same as DescribeReservedNodeOfferingsPages except 7519 // it takes a Context and allows setting request options on the pages. 7520 // 7521 // The context must be non-nil and will be used for request cancellation. If 7522 // the context is nil a panic will occur. In the future the SDK may create 7523 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 7524 // for more information on using Contexts. 7525 func (c *Redshift) DescribeReservedNodeOfferingsPagesWithContext(ctx aws.Context, input *DescribeReservedNodeOfferingsInput, fn func(*DescribeReservedNodeOfferingsOutput, bool) bool, opts ...request.Option) error { 7526 p := request.Pagination{ 7527 NewRequest: func() (*request.Request, error) { 7528 var inCpy *DescribeReservedNodeOfferingsInput 7529 if input != nil { 7530 tmp := *input 7531 inCpy = &tmp 7532 } 7533 req, _ := c.DescribeReservedNodeOfferingsRequest(inCpy) 7534 req.SetContext(ctx) 7535 req.ApplyOptions(opts...) 7536 return req, nil 7537 }, 7538 } 7539 7540 for p.Next() { 7541 if !fn(p.Page().(*DescribeReservedNodeOfferingsOutput), !p.HasNextPage()) { 7542 break 7543 } 7544 } 7545 7546 return p.Err() 7547 } 7548 7549 const opDescribeReservedNodes = "DescribeReservedNodes" 7550 7551 // DescribeReservedNodesRequest generates a "aws/request.Request" representing the 7552 // client's request for the DescribeReservedNodes operation. The "output" return 7553 // value will be populated with the request's response once the request completes 7554 // successfully. 7555 // 7556 // Use "Send" method on the returned Request to send the API call to the service. 7557 // the "output" return value is not valid until after Send returns without error. 7558 // 7559 // See DescribeReservedNodes for more information on using the DescribeReservedNodes 7560 // API call, and error handling. 7561 // 7562 // This method is useful when you want to inject custom logic or configuration 7563 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 7564 // 7565 // 7566 // // Example sending a request using the DescribeReservedNodesRequest method. 7567 // req, resp := client.DescribeReservedNodesRequest(params) 7568 // 7569 // err := req.Send() 7570 // if err == nil { // resp is now filled 7571 // fmt.Println(resp) 7572 // } 7573 // 7574 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeReservedNodes 7575 func (c *Redshift) DescribeReservedNodesRequest(input *DescribeReservedNodesInput) (req *request.Request, output *DescribeReservedNodesOutput) { 7576 op := &request.Operation{ 7577 Name: opDescribeReservedNodes, 7578 HTTPMethod: "POST", 7579 HTTPPath: "/", 7580 Paginator: &request.Paginator{ 7581 InputTokens: []string{"Marker"}, 7582 OutputTokens: []string{"Marker"}, 7583 LimitToken: "MaxRecords", 7584 TruncationToken: "", 7585 }, 7586 } 7587 7588 if input == nil { 7589 input = &DescribeReservedNodesInput{} 7590 } 7591 7592 output = &DescribeReservedNodesOutput{} 7593 req = c.newRequest(op, input, output) 7594 return 7595 } 7596 7597 // DescribeReservedNodes API operation for Amazon Redshift. 7598 // 7599 // Returns the descriptions of the reserved nodes. 7600 // 7601 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 7602 // with awserr.Error's Code and Message methods to get detailed information about 7603 // the error. 7604 // 7605 // See the AWS API reference guide for Amazon Redshift's 7606 // API operation DescribeReservedNodes for usage and error information. 7607 // 7608 // Returned Error Codes: 7609 // * ErrCodeReservedNodeNotFoundFault "ReservedNodeNotFound" 7610 // The specified reserved compute node not found. 7611 // 7612 // * ErrCodeDependentServiceUnavailableFault "DependentServiceUnavailableFault" 7613 // Your request cannot be completed because a dependent internal service is 7614 // temporarily unavailable. Wait 30 to 60 seconds and try again. 7615 // 7616 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeReservedNodes 7617 func (c *Redshift) DescribeReservedNodes(input *DescribeReservedNodesInput) (*DescribeReservedNodesOutput, error) { 7618 req, out := c.DescribeReservedNodesRequest(input) 7619 return out, req.Send() 7620 } 7621 7622 // DescribeReservedNodesWithContext is the same as DescribeReservedNodes with the addition of 7623 // the ability to pass a context and additional request options. 7624 // 7625 // See DescribeReservedNodes for details on how to use this API operation. 7626 // 7627 // The context must be non-nil and will be used for request cancellation. If 7628 // the context is nil a panic will occur. In the future the SDK may create 7629 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 7630 // for more information on using Contexts. 7631 func (c *Redshift) DescribeReservedNodesWithContext(ctx aws.Context, input *DescribeReservedNodesInput, opts ...request.Option) (*DescribeReservedNodesOutput, error) { 7632 req, out := c.DescribeReservedNodesRequest(input) 7633 req.SetContext(ctx) 7634 req.ApplyOptions(opts...) 7635 return out, req.Send() 7636 } 7637 7638 // DescribeReservedNodesPages iterates over the pages of a DescribeReservedNodes operation, 7639 // calling the "fn" function with the response data for each page. To stop 7640 // iterating, return false from the fn function. 7641 // 7642 // See DescribeReservedNodes method for more information on how to use this operation. 7643 // 7644 // Note: This operation can generate multiple requests to a service. 7645 // 7646 // // Example iterating over at most 3 pages of a DescribeReservedNodes operation. 7647 // pageNum := 0 7648 // err := client.DescribeReservedNodesPages(params, 7649 // func(page *redshift.DescribeReservedNodesOutput, lastPage bool) bool { 7650 // pageNum++ 7651 // fmt.Println(page) 7652 // return pageNum <= 3 7653 // }) 7654 // 7655 func (c *Redshift) DescribeReservedNodesPages(input *DescribeReservedNodesInput, fn func(*DescribeReservedNodesOutput, bool) bool) error { 7656 return c.DescribeReservedNodesPagesWithContext(aws.BackgroundContext(), input, fn) 7657 } 7658 7659 // DescribeReservedNodesPagesWithContext same as DescribeReservedNodesPages except 7660 // it takes a Context and allows setting request options on the pages. 7661 // 7662 // The context must be non-nil and will be used for request cancellation. If 7663 // the context is nil a panic will occur. In the future the SDK may create 7664 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 7665 // for more information on using Contexts. 7666 func (c *Redshift) DescribeReservedNodesPagesWithContext(ctx aws.Context, input *DescribeReservedNodesInput, fn func(*DescribeReservedNodesOutput, bool) bool, opts ...request.Option) error { 7667 p := request.Pagination{ 7668 NewRequest: func() (*request.Request, error) { 7669 var inCpy *DescribeReservedNodesInput 7670 if input != nil { 7671 tmp := *input 7672 inCpy = &tmp 7673 } 7674 req, _ := c.DescribeReservedNodesRequest(inCpy) 7675 req.SetContext(ctx) 7676 req.ApplyOptions(opts...) 7677 return req, nil 7678 }, 7679 } 7680 7681 for p.Next() { 7682 if !fn(p.Page().(*DescribeReservedNodesOutput), !p.HasNextPage()) { 7683 break 7684 } 7685 } 7686 7687 return p.Err() 7688 } 7689 7690 const opDescribeResize = "DescribeResize" 7691 7692 // DescribeResizeRequest generates a "aws/request.Request" representing the 7693 // client's request for the DescribeResize operation. The "output" return 7694 // value will be populated with the request's response once the request completes 7695 // successfully. 7696 // 7697 // Use "Send" method on the returned Request to send the API call to the service. 7698 // the "output" return value is not valid until after Send returns without error. 7699 // 7700 // See DescribeResize for more information on using the DescribeResize 7701 // API call, and error handling. 7702 // 7703 // This method is useful when you want to inject custom logic or configuration 7704 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 7705 // 7706 // 7707 // // Example sending a request using the DescribeResizeRequest method. 7708 // req, resp := client.DescribeResizeRequest(params) 7709 // 7710 // err := req.Send() 7711 // if err == nil { // resp is now filled 7712 // fmt.Println(resp) 7713 // } 7714 // 7715 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeResize 7716 func (c *Redshift) DescribeResizeRequest(input *DescribeResizeInput) (req *request.Request, output *DescribeResizeOutput) { 7717 op := &request.Operation{ 7718 Name: opDescribeResize, 7719 HTTPMethod: "POST", 7720 HTTPPath: "/", 7721 } 7722 7723 if input == nil { 7724 input = &DescribeResizeInput{} 7725 } 7726 7727 output = &DescribeResizeOutput{} 7728 req = c.newRequest(op, input, output) 7729 return 7730 } 7731 7732 // DescribeResize API operation for Amazon Redshift. 7733 // 7734 // Returns information about the last resize operation for the specified cluster. 7735 // If no resize operation has ever been initiated for the specified cluster, 7736 // a HTTP 404 error is returned. If a resize operation was initiated and completed, 7737 // the status of the resize remains as SUCCEEDED until the next resize. 7738 // 7739 // A resize operation can be requested using ModifyCluster and specifying a 7740 // different number or type of nodes for the cluster. 7741 // 7742 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 7743 // with awserr.Error's Code and Message methods to get detailed information about 7744 // the error. 7745 // 7746 // See the AWS API reference guide for Amazon Redshift's 7747 // API operation DescribeResize for usage and error information. 7748 // 7749 // Returned Error Codes: 7750 // * ErrCodeClusterNotFoundFault "ClusterNotFound" 7751 // The ClusterIdentifier parameter does not refer to an existing cluster. 7752 // 7753 // * ErrCodeResizeNotFoundFault "ResizeNotFound" 7754 // A resize operation for the specified cluster is not found. 7755 // 7756 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeResize 7757 func (c *Redshift) DescribeResize(input *DescribeResizeInput) (*DescribeResizeOutput, error) { 7758 req, out := c.DescribeResizeRequest(input) 7759 return out, req.Send() 7760 } 7761 7762 // DescribeResizeWithContext is the same as DescribeResize with the addition of 7763 // the ability to pass a context and additional request options. 7764 // 7765 // See DescribeResize for details on how to use this API operation. 7766 // 7767 // The context must be non-nil and will be used for request cancellation. If 7768 // the context is nil a panic will occur. In the future the SDK may create 7769 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 7770 // for more information on using Contexts. 7771 func (c *Redshift) DescribeResizeWithContext(ctx aws.Context, input *DescribeResizeInput, opts ...request.Option) (*DescribeResizeOutput, error) { 7772 req, out := c.DescribeResizeRequest(input) 7773 req.SetContext(ctx) 7774 req.ApplyOptions(opts...) 7775 return out, req.Send() 7776 } 7777 7778 const opDescribeScheduledActions = "DescribeScheduledActions" 7779 7780 // DescribeScheduledActionsRequest generates a "aws/request.Request" representing the 7781 // client's request for the DescribeScheduledActions operation. The "output" return 7782 // value will be populated with the request's response once the request completes 7783 // successfully. 7784 // 7785 // Use "Send" method on the returned Request to send the API call to the service. 7786 // the "output" return value is not valid until after Send returns without error. 7787 // 7788 // See DescribeScheduledActions for more information on using the DescribeScheduledActions 7789 // API call, and error handling. 7790 // 7791 // This method is useful when you want to inject custom logic or configuration 7792 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 7793 // 7794 // 7795 // // Example sending a request using the DescribeScheduledActionsRequest method. 7796 // req, resp := client.DescribeScheduledActionsRequest(params) 7797 // 7798 // err := req.Send() 7799 // if err == nil { // resp is now filled 7800 // fmt.Println(resp) 7801 // } 7802 // 7803 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeScheduledActions 7804 func (c *Redshift) DescribeScheduledActionsRequest(input *DescribeScheduledActionsInput) (req *request.Request, output *DescribeScheduledActionsOutput) { 7805 op := &request.Operation{ 7806 Name: opDescribeScheduledActions, 7807 HTTPMethod: "POST", 7808 HTTPPath: "/", 7809 Paginator: &request.Paginator{ 7810 InputTokens: []string{"Marker"}, 7811 OutputTokens: []string{"Marker"}, 7812 LimitToken: "MaxRecords", 7813 TruncationToken: "", 7814 }, 7815 } 7816 7817 if input == nil { 7818 input = &DescribeScheduledActionsInput{} 7819 } 7820 7821 output = &DescribeScheduledActionsOutput{} 7822 req = c.newRequest(op, input, output) 7823 return 7824 } 7825 7826 // DescribeScheduledActions API operation for Amazon Redshift. 7827 // 7828 // Describes properties of scheduled actions. 7829 // 7830 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 7831 // with awserr.Error's Code and Message methods to get detailed information about 7832 // the error. 7833 // 7834 // See the AWS API reference guide for Amazon Redshift's 7835 // API operation DescribeScheduledActions for usage and error information. 7836 // 7837 // Returned Error Codes: 7838 // * ErrCodeScheduledActionNotFoundFault "ScheduledActionNotFound" 7839 // The scheduled action cannot be found. 7840 // 7841 // * ErrCodeUnauthorizedOperation "UnauthorizedOperation" 7842 // Your account is not authorized to perform the requested operation. 7843 // 7844 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeScheduledActions 7845 func (c *Redshift) DescribeScheduledActions(input *DescribeScheduledActionsInput) (*DescribeScheduledActionsOutput, error) { 7846 req, out := c.DescribeScheduledActionsRequest(input) 7847 return out, req.Send() 7848 } 7849 7850 // DescribeScheduledActionsWithContext is the same as DescribeScheduledActions with the addition of 7851 // the ability to pass a context and additional request options. 7852 // 7853 // See DescribeScheduledActions for details on how to use this API operation. 7854 // 7855 // The context must be non-nil and will be used for request cancellation. If 7856 // the context is nil a panic will occur. In the future the SDK may create 7857 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 7858 // for more information on using Contexts. 7859 func (c *Redshift) DescribeScheduledActionsWithContext(ctx aws.Context, input *DescribeScheduledActionsInput, opts ...request.Option) (*DescribeScheduledActionsOutput, error) { 7860 req, out := c.DescribeScheduledActionsRequest(input) 7861 req.SetContext(ctx) 7862 req.ApplyOptions(opts...) 7863 return out, req.Send() 7864 } 7865 7866 // DescribeScheduledActionsPages iterates over the pages of a DescribeScheduledActions operation, 7867 // calling the "fn" function with the response data for each page. To stop 7868 // iterating, return false from the fn function. 7869 // 7870 // See DescribeScheduledActions method for more information on how to use this operation. 7871 // 7872 // Note: This operation can generate multiple requests to a service. 7873 // 7874 // // Example iterating over at most 3 pages of a DescribeScheduledActions operation. 7875 // pageNum := 0 7876 // err := client.DescribeScheduledActionsPages(params, 7877 // func(page *redshift.DescribeScheduledActionsOutput, lastPage bool) bool { 7878 // pageNum++ 7879 // fmt.Println(page) 7880 // return pageNum <= 3 7881 // }) 7882 // 7883 func (c *Redshift) DescribeScheduledActionsPages(input *DescribeScheduledActionsInput, fn func(*DescribeScheduledActionsOutput, bool) bool) error { 7884 return c.DescribeScheduledActionsPagesWithContext(aws.BackgroundContext(), input, fn) 7885 } 7886 7887 // DescribeScheduledActionsPagesWithContext same as DescribeScheduledActionsPages except 7888 // it takes a Context and allows setting request options on the pages. 7889 // 7890 // The context must be non-nil and will be used for request cancellation. If 7891 // the context is nil a panic will occur. In the future the SDK may create 7892 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 7893 // for more information on using Contexts. 7894 func (c *Redshift) DescribeScheduledActionsPagesWithContext(ctx aws.Context, input *DescribeScheduledActionsInput, fn func(*DescribeScheduledActionsOutput, bool) bool, opts ...request.Option) error { 7895 p := request.Pagination{ 7896 NewRequest: func() (*request.Request, error) { 7897 var inCpy *DescribeScheduledActionsInput 7898 if input != nil { 7899 tmp := *input 7900 inCpy = &tmp 7901 } 7902 req, _ := c.DescribeScheduledActionsRequest(inCpy) 7903 req.SetContext(ctx) 7904 req.ApplyOptions(opts...) 7905 return req, nil 7906 }, 7907 } 7908 7909 for p.Next() { 7910 if !fn(p.Page().(*DescribeScheduledActionsOutput), !p.HasNextPage()) { 7911 break 7912 } 7913 } 7914 7915 return p.Err() 7916 } 7917 7918 const opDescribeSnapshotCopyGrants = "DescribeSnapshotCopyGrants" 7919 7920 // DescribeSnapshotCopyGrantsRequest generates a "aws/request.Request" representing the 7921 // client's request for the DescribeSnapshotCopyGrants operation. The "output" return 7922 // value will be populated with the request's response once the request completes 7923 // successfully. 7924 // 7925 // Use "Send" method on the returned Request to send the API call to the service. 7926 // the "output" return value is not valid until after Send returns without error. 7927 // 7928 // See DescribeSnapshotCopyGrants for more information on using the DescribeSnapshotCopyGrants 7929 // API call, and error handling. 7930 // 7931 // This method is useful when you want to inject custom logic or configuration 7932 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 7933 // 7934 // 7935 // // Example sending a request using the DescribeSnapshotCopyGrantsRequest method. 7936 // req, resp := client.DescribeSnapshotCopyGrantsRequest(params) 7937 // 7938 // err := req.Send() 7939 // if err == nil { // resp is now filled 7940 // fmt.Println(resp) 7941 // } 7942 // 7943 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeSnapshotCopyGrants 7944 func (c *Redshift) DescribeSnapshotCopyGrantsRequest(input *DescribeSnapshotCopyGrantsInput) (req *request.Request, output *DescribeSnapshotCopyGrantsOutput) { 7945 op := &request.Operation{ 7946 Name: opDescribeSnapshotCopyGrants, 7947 HTTPMethod: "POST", 7948 HTTPPath: "/", 7949 Paginator: &request.Paginator{ 7950 InputTokens: []string{"Marker"}, 7951 OutputTokens: []string{"Marker"}, 7952 LimitToken: "MaxRecords", 7953 TruncationToken: "", 7954 }, 7955 } 7956 7957 if input == nil { 7958 input = &DescribeSnapshotCopyGrantsInput{} 7959 } 7960 7961 output = &DescribeSnapshotCopyGrantsOutput{} 7962 req = c.newRequest(op, input, output) 7963 return 7964 } 7965 7966 // DescribeSnapshotCopyGrants API operation for Amazon Redshift. 7967 // 7968 // Returns a list of snapshot copy grants owned by the Amazon Web Services account 7969 // in the destination region. 7970 // 7971 // For more information about managing snapshot copy grants, go to Amazon Redshift 7972 // Database Encryption (https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-db-encryption.html) 7973 // in the Amazon Redshift Cluster Management Guide. 7974 // 7975 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 7976 // with awserr.Error's Code and Message methods to get detailed information about 7977 // the error. 7978 // 7979 // See the AWS API reference guide for Amazon Redshift's 7980 // API operation DescribeSnapshotCopyGrants for usage and error information. 7981 // 7982 // Returned Error Codes: 7983 // * ErrCodeSnapshotCopyGrantNotFoundFault "SnapshotCopyGrantNotFoundFault" 7984 // The specified snapshot copy grant can't be found. Make sure that the name 7985 // is typed correctly and that the grant exists in the destination region. 7986 // 7987 // * ErrCodeInvalidTagFault "InvalidTagFault" 7988 // The tag is invalid. 7989 // 7990 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeSnapshotCopyGrants 7991 func (c *Redshift) DescribeSnapshotCopyGrants(input *DescribeSnapshotCopyGrantsInput) (*DescribeSnapshotCopyGrantsOutput, error) { 7992 req, out := c.DescribeSnapshotCopyGrantsRequest(input) 7993 return out, req.Send() 7994 } 7995 7996 // DescribeSnapshotCopyGrantsWithContext is the same as DescribeSnapshotCopyGrants with the addition of 7997 // the ability to pass a context and additional request options. 7998 // 7999 // See DescribeSnapshotCopyGrants for details on how to use this API operation. 8000 // 8001 // The context must be non-nil and will be used for request cancellation. If 8002 // the context is nil a panic will occur. In the future the SDK may create 8003 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 8004 // for more information on using Contexts. 8005 func (c *Redshift) DescribeSnapshotCopyGrantsWithContext(ctx aws.Context, input *DescribeSnapshotCopyGrantsInput, opts ...request.Option) (*DescribeSnapshotCopyGrantsOutput, error) { 8006 req, out := c.DescribeSnapshotCopyGrantsRequest(input) 8007 req.SetContext(ctx) 8008 req.ApplyOptions(opts...) 8009 return out, req.Send() 8010 } 8011 8012 // DescribeSnapshotCopyGrantsPages iterates over the pages of a DescribeSnapshotCopyGrants operation, 8013 // calling the "fn" function with the response data for each page. To stop 8014 // iterating, return false from the fn function. 8015 // 8016 // See DescribeSnapshotCopyGrants method for more information on how to use this operation. 8017 // 8018 // Note: This operation can generate multiple requests to a service. 8019 // 8020 // // Example iterating over at most 3 pages of a DescribeSnapshotCopyGrants operation. 8021 // pageNum := 0 8022 // err := client.DescribeSnapshotCopyGrantsPages(params, 8023 // func(page *redshift.DescribeSnapshotCopyGrantsOutput, lastPage bool) bool { 8024 // pageNum++ 8025 // fmt.Println(page) 8026 // return pageNum <= 3 8027 // }) 8028 // 8029 func (c *Redshift) DescribeSnapshotCopyGrantsPages(input *DescribeSnapshotCopyGrantsInput, fn func(*DescribeSnapshotCopyGrantsOutput, bool) bool) error { 8030 return c.DescribeSnapshotCopyGrantsPagesWithContext(aws.BackgroundContext(), input, fn) 8031 } 8032 8033 // DescribeSnapshotCopyGrantsPagesWithContext same as DescribeSnapshotCopyGrantsPages except 8034 // it takes a Context and allows setting request options on the pages. 8035 // 8036 // The context must be non-nil and will be used for request cancellation. If 8037 // the context is nil a panic will occur. In the future the SDK may create 8038 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 8039 // for more information on using Contexts. 8040 func (c *Redshift) DescribeSnapshotCopyGrantsPagesWithContext(ctx aws.Context, input *DescribeSnapshotCopyGrantsInput, fn func(*DescribeSnapshotCopyGrantsOutput, bool) bool, opts ...request.Option) error { 8041 p := request.Pagination{ 8042 NewRequest: func() (*request.Request, error) { 8043 var inCpy *DescribeSnapshotCopyGrantsInput 8044 if input != nil { 8045 tmp := *input 8046 inCpy = &tmp 8047 } 8048 req, _ := c.DescribeSnapshotCopyGrantsRequest(inCpy) 8049 req.SetContext(ctx) 8050 req.ApplyOptions(opts...) 8051 return req, nil 8052 }, 8053 } 8054 8055 for p.Next() { 8056 if !fn(p.Page().(*DescribeSnapshotCopyGrantsOutput), !p.HasNextPage()) { 8057 break 8058 } 8059 } 8060 8061 return p.Err() 8062 } 8063 8064 const opDescribeSnapshotSchedules = "DescribeSnapshotSchedules" 8065 8066 // DescribeSnapshotSchedulesRequest generates a "aws/request.Request" representing the 8067 // client's request for the DescribeSnapshotSchedules operation. The "output" return 8068 // value will be populated with the request's response once the request completes 8069 // successfully. 8070 // 8071 // Use "Send" method on the returned Request to send the API call to the service. 8072 // the "output" return value is not valid until after Send returns without error. 8073 // 8074 // See DescribeSnapshotSchedules for more information on using the DescribeSnapshotSchedules 8075 // API call, and error handling. 8076 // 8077 // This method is useful when you want to inject custom logic or configuration 8078 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 8079 // 8080 // 8081 // // Example sending a request using the DescribeSnapshotSchedulesRequest method. 8082 // req, resp := client.DescribeSnapshotSchedulesRequest(params) 8083 // 8084 // err := req.Send() 8085 // if err == nil { // resp is now filled 8086 // fmt.Println(resp) 8087 // } 8088 // 8089 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeSnapshotSchedules 8090 func (c *Redshift) DescribeSnapshotSchedulesRequest(input *DescribeSnapshotSchedulesInput) (req *request.Request, output *DescribeSnapshotSchedulesOutput) { 8091 op := &request.Operation{ 8092 Name: opDescribeSnapshotSchedules, 8093 HTTPMethod: "POST", 8094 HTTPPath: "/", 8095 Paginator: &request.Paginator{ 8096 InputTokens: []string{"Marker"}, 8097 OutputTokens: []string{"Marker"}, 8098 LimitToken: "MaxRecords", 8099 TruncationToken: "", 8100 }, 8101 } 8102 8103 if input == nil { 8104 input = &DescribeSnapshotSchedulesInput{} 8105 } 8106 8107 output = &DescribeSnapshotSchedulesOutput{} 8108 req = c.newRequest(op, input, output) 8109 return 8110 } 8111 8112 // DescribeSnapshotSchedules API operation for Amazon Redshift. 8113 // 8114 // Returns a list of snapshot schedules. 8115 // 8116 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 8117 // with awserr.Error's Code and Message methods to get detailed information about 8118 // the error. 8119 // 8120 // See the AWS API reference guide for Amazon Redshift's 8121 // API operation DescribeSnapshotSchedules for usage and error information. 8122 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeSnapshotSchedules 8123 func (c *Redshift) DescribeSnapshotSchedules(input *DescribeSnapshotSchedulesInput) (*DescribeSnapshotSchedulesOutput, error) { 8124 req, out := c.DescribeSnapshotSchedulesRequest(input) 8125 return out, req.Send() 8126 } 8127 8128 // DescribeSnapshotSchedulesWithContext is the same as DescribeSnapshotSchedules with the addition of 8129 // the ability to pass a context and additional request options. 8130 // 8131 // See DescribeSnapshotSchedules for details on how to use this API operation. 8132 // 8133 // The context must be non-nil and will be used for request cancellation. If 8134 // the context is nil a panic will occur. In the future the SDK may create 8135 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 8136 // for more information on using Contexts. 8137 func (c *Redshift) DescribeSnapshotSchedulesWithContext(ctx aws.Context, input *DescribeSnapshotSchedulesInput, opts ...request.Option) (*DescribeSnapshotSchedulesOutput, error) { 8138 req, out := c.DescribeSnapshotSchedulesRequest(input) 8139 req.SetContext(ctx) 8140 req.ApplyOptions(opts...) 8141 return out, req.Send() 8142 } 8143 8144 // DescribeSnapshotSchedulesPages iterates over the pages of a DescribeSnapshotSchedules operation, 8145 // calling the "fn" function with the response data for each page. To stop 8146 // iterating, return false from the fn function. 8147 // 8148 // See DescribeSnapshotSchedules method for more information on how to use this operation. 8149 // 8150 // Note: This operation can generate multiple requests to a service. 8151 // 8152 // // Example iterating over at most 3 pages of a DescribeSnapshotSchedules operation. 8153 // pageNum := 0 8154 // err := client.DescribeSnapshotSchedulesPages(params, 8155 // func(page *redshift.DescribeSnapshotSchedulesOutput, lastPage bool) bool { 8156 // pageNum++ 8157 // fmt.Println(page) 8158 // return pageNum <= 3 8159 // }) 8160 // 8161 func (c *Redshift) DescribeSnapshotSchedulesPages(input *DescribeSnapshotSchedulesInput, fn func(*DescribeSnapshotSchedulesOutput, bool) bool) error { 8162 return c.DescribeSnapshotSchedulesPagesWithContext(aws.BackgroundContext(), input, fn) 8163 } 8164 8165 // DescribeSnapshotSchedulesPagesWithContext same as DescribeSnapshotSchedulesPages except 8166 // it takes a Context and allows setting request options on the pages. 8167 // 8168 // The context must be non-nil and will be used for request cancellation. If 8169 // the context is nil a panic will occur. In the future the SDK may create 8170 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 8171 // for more information on using Contexts. 8172 func (c *Redshift) DescribeSnapshotSchedulesPagesWithContext(ctx aws.Context, input *DescribeSnapshotSchedulesInput, fn func(*DescribeSnapshotSchedulesOutput, bool) bool, opts ...request.Option) error { 8173 p := request.Pagination{ 8174 NewRequest: func() (*request.Request, error) { 8175 var inCpy *DescribeSnapshotSchedulesInput 8176 if input != nil { 8177 tmp := *input 8178 inCpy = &tmp 8179 } 8180 req, _ := c.DescribeSnapshotSchedulesRequest(inCpy) 8181 req.SetContext(ctx) 8182 req.ApplyOptions(opts...) 8183 return req, nil 8184 }, 8185 } 8186 8187 for p.Next() { 8188 if !fn(p.Page().(*DescribeSnapshotSchedulesOutput), !p.HasNextPage()) { 8189 break 8190 } 8191 } 8192 8193 return p.Err() 8194 } 8195 8196 const opDescribeStorage = "DescribeStorage" 8197 8198 // DescribeStorageRequest generates a "aws/request.Request" representing the 8199 // client's request for the DescribeStorage operation. The "output" return 8200 // value will be populated with the request's response once the request completes 8201 // successfully. 8202 // 8203 // Use "Send" method on the returned Request to send the API call to the service. 8204 // the "output" return value is not valid until after Send returns without error. 8205 // 8206 // See DescribeStorage for more information on using the DescribeStorage 8207 // API call, and error handling. 8208 // 8209 // This method is useful when you want to inject custom logic or configuration 8210 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 8211 // 8212 // 8213 // // Example sending a request using the DescribeStorageRequest method. 8214 // req, resp := client.DescribeStorageRequest(params) 8215 // 8216 // err := req.Send() 8217 // if err == nil { // resp is now filled 8218 // fmt.Println(resp) 8219 // } 8220 // 8221 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeStorage 8222 func (c *Redshift) DescribeStorageRequest(input *DescribeStorageInput) (req *request.Request, output *DescribeStorageOutput) { 8223 op := &request.Operation{ 8224 Name: opDescribeStorage, 8225 HTTPMethod: "POST", 8226 HTTPPath: "/", 8227 } 8228 8229 if input == nil { 8230 input = &DescribeStorageInput{} 8231 } 8232 8233 output = &DescribeStorageOutput{} 8234 req = c.newRequest(op, input, output) 8235 return 8236 } 8237 8238 // DescribeStorage API operation for Amazon Redshift. 8239 // 8240 // Returns account level backups storage size and provisional storage. 8241 // 8242 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 8243 // with awserr.Error's Code and Message methods to get detailed information about 8244 // the error. 8245 // 8246 // See the AWS API reference guide for Amazon Redshift's 8247 // API operation DescribeStorage for usage and error information. 8248 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeStorage 8249 func (c *Redshift) DescribeStorage(input *DescribeStorageInput) (*DescribeStorageOutput, error) { 8250 req, out := c.DescribeStorageRequest(input) 8251 return out, req.Send() 8252 } 8253 8254 // DescribeStorageWithContext is the same as DescribeStorage with the addition of 8255 // the ability to pass a context and additional request options. 8256 // 8257 // See DescribeStorage for details on how to use this API operation. 8258 // 8259 // The context must be non-nil and will be used for request cancellation. If 8260 // the context is nil a panic will occur. In the future the SDK may create 8261 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 8262 // for more information on using Contexts. 8263 func (c *Redshift) DescribeStorageWithContext(ctx aws.Context, input *DescribeStorageInput, opts ...request.Option) (*DescribeStorageOutput, error) { 8264 req, out := c.DescribeStorageRequest(input) 8265 req.SetContext(ctx) 8266 req.ApplyOptions(opts...) 8267 return out, req.Send() 8268 } 8269 8270 const opDescribeTableRestoreStatus = "DescribeTableRestoreStatus" 8271 8272 // DescribeTableRestoreStatusRequest generates a "aws/request.Request" representing the 8273 // client's request for the DescribeTableRestoreStatus operation. The "output" return 8274 // value will be populated with the request's response once the request completes 8275 // successfully. 8276 // 8277 // Use "Send" method on the returned Request to send the API call to the service. 8278 // the "output" return value is not valid until after Send returns without error. 8279 // 8280 // See DescribeTableRestoreStatus for more information on using the DescribeTableRestoreStatus 8281 // API call, and error handling. 8282 // 8283 // This method is useful when you want to inject custom logic or configuration 8284 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 8285 // 8286 // 8287 // // Example sending a request using the DescribeTableRestoreStatusRequest method. 8288 // req, resp := client.DescribeTableRestoreStatusRequest(params) 8289 // 8290 // err := req.Send() 8291 // if err == nil { // resp is now filled 8292 // fmt.Println(resp) 8293 // } 8294 // 8295 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeTableRestoreStatus 8296 func (c *Redshift) DescribeTableRestoreStatusRequest(input *DescribeTableRestoreStatusInput) (req *request.Request, output *DescribeTableRestoreStatusOutput) { 8297 op := &request.Operation{ 8298 Name: opDescribeTableRestoreStatus, 8299 HTTPMethod: "POST", 8300 HTTPPath: "/", 8301 Paginator: &request.Paginator{ 8302 InputTokens: []string{"Marker"}, 8303 OutputTokens: []string{"Marker"}, 8304 LimitToken: "MaxRecords", 8305 TruncationToken: "", 8306 }, 8307 } 8308 8309 if input == nil { 8310 input = &DescribeTableRestoreStatusInput{} 8311 } 8312 8313 output = &DescribeTableRestoreStatusOutput{} 8314 req = c.newRequest(op, input, output) 8315 return 8316 } 8317 8318 // DescribeTableRestoreStatus API operation for Amazon Redshift. 8319 // 8320 // Lists the status of one or more table restore requests made using the RestoreTableFromClusterSnapshot 8321 // API action. If you don't specify a value for the TableRestoreRequestId parameter, 8322 // then DescribeTableRestoreStatus returns the status of all table restore requests 8323 // ordered by the date and time of the request in ascending order. Otherwise 8324 // DescribeTableRestoreStatus returns the status of the table specified by TableRestoreRequestId. 8325 // 8326 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 8327 // with awserr.Error's Code and Message methods to get detailed information about 8328 // the error. 8329 // 8330 // See the AWS API reference guide for Amazon Redshift's 8331 // API operation DescribeTableRestoreStatus for usage and error information. 8332 // 8333 // Returned Error Codes: 8334 // * ErrCodeTableRestoreNotFoundFault "TableRestoreNotFoundFault" 8335 // The specified TableRestoreRequestId value was not found. 8336 // 8337 // * ErrCodeClusterNotFoundFault "ClusterNotFound" 8338 // The ClusterIdentifier parameter does not refer to an existing cluster. 8339 // 8340 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeTableRestoreStatus 8341 func (c *Redshift) DescribeTableRestoreStatus(input *DescribeTableRestoreStatusInput) (*DescribeTableRestoreStatusOutput, error) { 8342 req, out := c.DescribeTableRestoreStatusRequest(input) 8343 return out, req.Send() 8344 } 8345 8346 // DescribeTableRestoreStatusWithContext is the same as DescribeTableRestoreStatus with the addition of 8347 // the ability to pass a context and additional request options. 8348 // 8349 // See DescribeTableRestoreStatus for details on how to use this API operation. 8350 // 8351 // The context must be non-nil and will be used for request cancellation. If 8352 // the context is nil a panic will occur. In the future the SDK may create 8353 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 8354 // for more information on using Contexts. 8355 func (c *Redshift) DescribeTableRestoreStatusWithContext(ctx aws.Context, input *DescribeTableRestoreStatusInput, opts ...request.Option) (*DescribeTableRestoreStatusOutput, error) { 8356 req, out := c.DescribeTableRestoreStatusRequest(input) 8357 req.SetContext(ctx) 8358 req.ApplyOptions(opts...) 8359 return out, req.Send() 8360 } 8361 8362 // DescribeTableRestoreStatusPages iterates over the pages of a DescribeTableRestoreStatus operation, 8363 // calling the "fn" function with the response data for each page. To stop 8364 // iterating, return false from the fn function. 8365 // 8366 // See DescribeTableRestoreStatus method for more information on how to use this operation. 8367 // 8368 // Note: This operation can generate multiple requests to a service. 8369 // 8370 // // Example iterating over at most 3 pages of a DescribeTableRestoreStatus operation. 8371 // pageNum := 0 8372 // err := client.DescribeTableRestoreStatusPages(params, 8373 // func(page *redshift.DescribeTableRestoreStatusOutput, lastPage bool) bool { 8374 // pageNum++ 8375 // fmt.Println(page) 8376 // return pageNum <= 3 8377 // }) 8378 // 8379 func (c *Redshift) DescribeTableRestoreStatusPages(input *DescribeTableRestoreStatusInput, fn func(*DescribeTableRestoreStatusOutput, bool) bool) error { 8380 return c.DescribeTableRestoreStatusPagesWithContext(aws.BackgroundContext(), input, fn) 8381 } 8382 8383 // DescribeTableRestoreStatusPagesWithContext same as DescribeTableRestoreStatusPages except 8384 // it takes a Context and allows setting request options on the pages. 8385 // 8386 // The context must be non-nil and will be used for request cancellation. If 8387 // the context is nil a panic will occur. In the future the SDK may create 8388 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 8389 // for more information on using Contexts. 8390 func (c *Redshift) DescribeTableRestoreStatusPagesWithContext(ctx aws.Context, input *DescribeTableRestoreStatusInput, fn func(*DescribeTableRestoreStatusOutput, bool) bool, opts ...request.Option) error { 8391 p := request.Pagination{ 8392 NewRequest: func() (*request.Request, error) { 8393 var inCpy *DescribeTableRestoreStatusInput 8394 if input != nil { 8395 tmp := *input 8396 inCpy = &tmp 8397 } 8398 req, _ := c.DescribeTableRestoreStatusRequest(inCpy) 8399 req.SetContext(ctx) 8400 req.ApplyOptions(opts...) 8401 return req, nil 8402 }, 8403 } 8404 8405 for p.Next() { 8406 if !fn(p.Page().(*DescribeTableRestoreStatusOutput), !p.HasNextPage()) { 8407 break 8408 } 8409 } 8410 8411 return p.Err() 8412 } 8413 8414 const opDescribeTags = "DescribeTags" 8415 8416 // DescribeTagsRequest generates a "aws/request.Request" representing the 8417 // client's request for the DescribeTags operation. The "output" return 8418 // value will be populated with the request's response once the request completes 8419 // successfully. 8420 // 8421 // Use "Send" method on the returned Request to send the API call to the service. 8422 // the "output" return value is not valid until after Send returns without error. 8423 // 8424 // See DescribeTags for more information on using the DescribeTags 8425 // API call, and error handling. 8426 // 8427 // This method is useful when you want to inject custom logic or configuration 8428 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 8429 // 8430 // 8431 // // Example sending a request using the DescribeTagsRequest method. 8432 // req, resp := client.DescribeTagsRequest(params) 8433 // 8434 // err := req.Send() 8435 // if err == nil { // resp is now filled 8436 // fmt.Println(resp) 8437 // } 8438 // 8439 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeTags 8440 func (c *Redshift) DescribeTagsRequest(input *DescribeTagsInput) (req *request.Request, output *DescribeTagsOutput) { 8441 op := &request.Operation{ 8442 Name: opDescribeTags, 8443 HTTPMethod: "POST", 8444 HTTPPath: "/", 8445 Paginator: &request.Paginator{ 8446 InputTokens: []string{"Marker"}, 8447 OutputTokens: []string{"Marker"}, 8448 LimitToken: "MaxRecords", 8449 TruncationToken: "", 8450 }, 8451 } 8452 8453 if input == nil { 8454 input = &DescribeTagsInput{} 8455 } 8456 8457 output = &DescribeTagsOutput{} 8458 req = c.newRequest(op, input, output) 8459 return 8460 } 8461 8462 // DescribeTags API operation for Amazon Redshift. 8463 // 8464 // Returns a list of tags. You can return tags from a specific resource by specifying 8465 // an ARN, or you can return all tags for a given type of resource, such as 8466 // clusters, snapshots, and so on. 8467 // 8468 // The following are limitations for DescribeTags: 8469 // 8470 // * You cannot specify an ARN and a resource-type value together in the 8471 // same request. 8472 // 8473 // * You cannot use the MaxRecords and Marker parameters together with the 8474 // ARN parameter. 8475 // 8476 // * The MaxRecords parameter can be a range from 10 to 50 results to return 8477 // in a request. 8478 // 8479 // If you specify both tag keys and tag values in the same request, Amazon Redshift 8480 // returns all resources that match any combination of the specified keys and 8481 // values. For example, if you have owner and environment for tag keys, and 8482 // admin and test for tag values, all resources that have any combination of 8483 // those values are returned. 8484 // 8485 // If both tag keys and values are omitted from the request, resources are returned 8486 // regardless of whether they have tag keys or values associated with them. 8487 // 8488 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 8489 // with awserr.Error's Code and Message methods to get detailed information about 8490 // the error. 8491 // 8492 // See the AWS API reference guide for Amazon Redshift's 8493 // API operation DescribeTags for usage and error information. 8494 // 8495 // Returned Error Codes: 8496 // * ErrCodeResourceNotFoundFault "ResourceNotFoundFault" 8497 // The resource could not be found. 8498 // 8499 // * ErrCodeInvalidTagFault "InvalidTagFault" 8500 // The tag is invalid. 8501 // 8502 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeTags 8503 func (c *Redshift) DescribeTags(input *DescribeTagsInput) (*DescribeTagsOutput, error) { 8504 req, out := c.DescribeTagsRequest(input) 8505 return out, req.Send() 8506 } 8507 8508 // DescribeTagsWithContext is the same as DescribeTags with the addition of 8509 // the ability to pass a context and additional request options. 8510 // 8511 // See DescribeTags for details on how to use this API operation. 8512 // 8513 // The context must be non-nil and will be used for request cancellation. If 8514 // the context is nil a panic will occur. In the future the SDK may create 8515 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 8516 // for more information on using Contexts. 8517 func (c *Redshift) DescribeTagsWithContext(ctx aws.Context, input *DescribeTagsInput, opts ...request.Option) (*DescribeTagsOutput, error) { 8518 req, out := c.DescribeTagsRequest(input) 8519 req.SetContext(ctx) 8520 req.ApplyOptions(opts...) 8521 return out, req.Send() 8522 } 8523 8524 // DescribeTagsPages iterates over the pages of a DescribeTags operation, 8525 // calling the "fn" function with the response data for each page. To stop 8526 // iterating, return false from the fn function. 8527 // 8528 // See DescribeTags method for more information on how to use this operation. 8529 // 8530 // Note: This operation can generate multiple requests to a service. 8531 // 8532 // // Example iterating over at most 3 pages of a DescribeTags operation. 8533 // pageNum := 0 8534 // err := client.DescribeTagsPages(params, 8535 // func(page *redshift.DescribeTagsOutput, lastPage bool) bool { 8536 // pageNum++ 8537 // fmt.Println(page) 8538 // return pageNum <= 3 8539 // }) 8540 // 8541 func (c *Redshift) DescribeTagsPages(input *DescribeTagsInput, fn func(*DescribeTagsOutput, bool) bool) error { 8542 return c.DescribeTagsPagesWithContext(aws.BackgroundContext(), input, fn) 8543 } 8544 8545 // DescribeTagsPagesWithContext same as DescribeTagsPages except 8546 // it takes a Context and allows setting request options on the pages. 8547 // 8548 // The context must be non-nil and will be used for request cancellation. If 8549 // the context is nil a panic will occur. In the future the SDK may create 8550 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 8551 // for more information on using Contexts. 8552 func (c *Redshift) DescribeTagsPagesWithContext(ctx aws.Context, input *DescribeTagsInput, fn func(*DescribeTagsOutput, bool) bool, opts ...request.Option) error { 8553 p := request.Pagination{ 8554 NewRequest: func() (*request.Request, error) { 8555 var inCpy *DescribeTagsInput 8556 if input != nil { 8557 tmp := *input 8558 inCpy = &tmp 8559 } 8560 req, _ := c.DescribeTagsRequest(inCpy) 8561 req.SetContext(ctx) 8562 req.ApplyOptions(opts...) 8563 return req, nil 8564 }, 8565 } 8566 8567 for p.Next() { 8568 if !fn(p.Page().(*DescribeTagsOutput), !p.HasNextPage()) { 8569 break 8570 } 8571 } 8572 8573 return p.Err() 8574 } 8575 8576 const opDescribeUsageLimits = "DescribeUsageLimits" 8577 8578 // DescribeUsageLimitsRequest generates a "aws/request.Request" representing the 8579 // client's request for the DescribeUsageLimits operation. The "output" return 8580 // value will be populated with the request's response once the request completes 8581 // successfully. 8582 // 8583 // Use "Send" method on the returned Request to send the API call to the service. 8584 // the "output" return value is not valid until after Send returns without error. 8585 // 8586 // See DescribeUsageLimits for more information on using the DescribeUsageLimits 8587 // API call, and error handling. 8588 // 8589 // This method is useful when you want to inject custom logic or configuration 8590 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 8591 // 8592 // 8593 // // Example sending a request using the DescribeUsageLimitsRequest method. 8594 // req, resp := client.DescribeUsageLimitsRequest(params) 8595 // 8596 // err := req.Send() 8597 // if err == nil { // resp is now filled 8598 // fmt.Println(resp) 8599 // } 8600 // 8601 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeUsageLimits 8602 func (c *Redshift) DescribeUsageLimitsRequest(input *DescribeUsageLimitsInput) (req *request.Request, output *DescribeUsageLimitsOutput) { 8603 op := &request.Operation{ 8604 Name: opDescribeUsageLimits, 8605 HTTPMethod: "POST", 8606 HTTPPath: "/", 8607 Paginator: &request.Paginator{ 8608 InputTokens: []string{"Marker"}, 8609 OutputTokens: []string{"Marker"}, 8610 LimitToken: "MaxRecords", 8611 TruncationToken: "", 8612 }, 8613 } 8614 8615 if input == nil { 8616 input = &DescribeUsageLimitsInput{} 8617 } 8618 8619 output = &DescribeUsageLimitsOutput{} 8620 req = c.newRequest(op, input, output) 8621 return 8622 } 8623 8624 // DescribeUsageLimits API operation for Amazon Redshift. 8625 // 8626 // Shows usage limits on a cluster. Results are filtered based on the combination 8627 // of input usage limit identifier, cluster identifier, and feature type parameters: 8628 // 8629 // * If usage limit identifier, cluster identifier, and feature type are 8630 // not provided, then all usage limit objects for the current account in 8631 // the current region are returned. 8632 // 8633 // * If usage limit identifier is provided, then the corresponding usage 8634 // limit object is returned. 8635 // 8636 // * If cluster identifier is provided, then all usage limit objects for 8637 // the specified cluster are returned. 8638 // 8639 // * If cluster identifier and feature type are provided, then all usage 8640 // limit objects for the combination of cluster and feature are returned. 8641 // 8642 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 8643 // with awserr.Error's Code and Message methods to get detailed information about 8644 // the error. 8645 // 8646 // See the AWS API reference guide for Amazon Redshift's 8647 // API operation DescribeUsageLimits for usage and error information. 8648 // 8649 // Returned Error Codes: 8650 // * ErrCodeClusterNotFoundFault "ClusterNotFound" 8651 // The ClusterIdentifier parameter does not refer to an existing cluster. 8652 // 8653 // * ErrCodeUnsupportedOperationFault "UnsupportedOperation" 8654 // The requested operation isn't supported. 8655 // 8656 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeUsageLimits 8657 func (c *Redshift) DescribeUsageLimits(input *DescribeUsageLimitsInput) (*DescribeUsageLimitsOutput, error) { 8658 req, out := c.DescribeUsageLimitsRequest(input) 8659 return out, req.Send() 8660 } 8661 8662 // DescribeUsageLimitsWithContext is the same as DescribeUsageLimits with the addition of 8663 // the ability to pass a context and additional request options. 8664 // 8665 // See DescribeUsageLimits for details on how to use this API operation. 8666 // 8667 // The context must be non-nil and will be used for request cancellation. If 8668 // the context is nil a panic will occur. In the future the SDK may create 8669 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 8670 // for more information on using Contexts. 8671 func (c *Redshift) DescribeUsageLimitsWithContext(ctx aws.Context, input *DescribeUsageLimitsInput, opts ...request.Option) (*DescribeUsageLimitsOutput, error) { 8672 req, out := c.DescribeUsageLimitsRequest(input) 8673 req.SetContext(ctx) 8674 req.ApplyOptions(opts...) 8675 return out, req.Send() 8676 } 8677 8678 // DescribeUsageLimitsPages iterates over the pages of a DescribeUsageLimits operation, 8679 // calling the "fn" function with the response data for each page. To stop 8680 // iterating, return false from the fn function. 8681 // 8682 // See DescribeUsageLimits method for more information on how to use this operation. 8683 // 8684 // Note: This operation can generate multiple requests to a service. 8685 // 8686 // // Example iterating over at most 3 pages of a DescribeUsageLimits operation. 8687 // pageNum := 0 8688 // err := client.DescribeUsageLimitsPages(params, 8689 // func(page *redshift.DescribeUsageLimitsOutput, lastPage bool) bool { 8690 // pageNum++ 8691 // fmt.Println(page) 8692 // return pageNum <= 3 8693 // }) 8694 // 8695 func (c *Redshift) DescribeUsageLimitsPages(input *DescribeUsageLimitsInput, fn func(*DescribeUsageLimitsOutput, bool) bool) error { 8696 return c.DescribeUsageLimitsPagesWithContext(aws.BackgroundContext(), input, fn) 8697 } 8698 8699 // DescribeUsageLimitsPagesWithContext same as DescribeUsageLimitsPages except 8700 // it takes a Context and allows setting request options on the pages. 8701 // 8702 // The context must be non-nil and will be used for request cancellation. If 8703 // the context is nil a panic will occur. In the future the SDK may create 8704 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 8705 // for more information on using Contexts. 8706 func (c *Redshift) DescribeUsageLimitsPagesWithContext(ctx aws.Context, input *DescribeUsageLimitsInput, fn func(*DescribeUsageLimitsOutput, bool) bool, opts ...request.Option) error { 8707 p := request.Pagination{ 8708 NewRequest: func() (*request.Request, error) { 8709 var inCpy *DescribeUsageLimitsInput 8710 if input != nil { 8711 tmp := *input 8712 inCpy = &tmp 8713 } 8714 req, _ := c.DescribeUsageLimitsRequest(inCpy) 8715 req.SetContext(ctx) 8716 req.ApplyOptions(opts...) 8717 return req, nil 8718 }, 8719 } 8720 8721 for p.Next() { 8722 if !fn(p.Page().(*DescribeUsageLimitsOutput), !p.HasNextPage()) { 8723 break 8724 } 8725 } 8726 8727 return p.Err() 8728 } 8729 8730 const opDisableLogging = "DisableLogging" 8731 8732 // DisableLoggingRequest generates a "aws/request.Request" representing the 8733 // client's request for the DisableLogging operation. The "output" return 8734 // value will be populated with the request's response once the request completes 8735 // successfully. 8736 // 8737 // Use "Send" method on the returned Request to send the API call to the service. 8738 // the "output" return value is not valid until after Send returns without error. 8739 // 8740 // See DisableLogging for more information on using the DisableLogging 8741 // API call, and error handling. 8742 // 8743 // This method is useful when you want to inject custom logic or configuration 8744 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 8745 // 8746 // 8747 // // Example sending a request using the DisableLoggingRequest method. 8748 // req, resp := client.DisableLoggingRequest(params) 8749 // 8750 // err := req.Send() 8751 // if err == nil { // resp is now filled 8752 // fmt.Println(resp) 8753 // } 8754 // 8755 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DisableLogging 8756 func (c *Redshift) DisableLoggingRequest(input *DisableLoggingInput) (req *request.Request, output *LoggingStatus) { 8757 op := &request.Operation{ 8758 Name: opDisableLogging, 8759 HTTPMethod: "POST", 8760 HTTPPath: "/", 8761 } 8762 8763 if input == nil { 8764 input = &DisableLoggingInput{} 8765 } 8766 8767 output = &LoggingStatus{} 8768 req = c.newRequest(op, input, output) 8769 return 8770 } 8771 8772 // DisableLogging API operation for Amazon Redshift. 8773 // 8774 // Stops logging information, such as queries and connection attempts, for the 8775 // specified Amazon Redshift cluster. 8776 // 8777 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 8778 // with awserr.Error's Code and Message methods to get detailed information about 8779 // the error. 8780 // 8781 // See the AWS API reference guide for Amazon Redshift's 8782 // API operation DisableLogging for usage and error information. 8783 // 8784 // Returned Error Codes: 8785 // * ErrCodeClusterNotFoundFault "ClusterNotFound" 8786 // The ClusterIdentifier parameter does not refer to an existing cluster. 8787 // 8788 // * ErrCodeInvalidClusterStateFault "InvalidClusterState" 8789 // The specified cluster is not in the available state. 8790 // 8791 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DisableLogging 8792 func (c *Redshift) DisableLogging(input *DisableLoggingInput) (*LoggingStatus, error) { 8793 req, out := c.DisableLoggingRequest(input) 8794 return out, req.Send() 8795 } 8796 8797 // DisableLoggingWithContext is the same as DisableLogging with the addition of 8798 // the ability to pass a context and additional request options. 8799 // 8800 // See DisableLogging for details on how to use this API operation. 8801 // 8802 // The context must be non-nil and will be used for request cancellation. If 8803 // the context is nil a panic will occur. In the future the SDK may create 8804 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 8805 // for more information on using Contexts. 8806 func (c *Redshift) DisableLoggingWithContext(ctx aws.Context, input *DisableLoggingInput, opts ...request.Option) (*LoggingStatus, error) { 8807 req, out := c.DisableLoggingRequest(input) 8808 req.SetContext(ctx) 8809 req.ApplyOptions(opts...) 8810 return out, req.Send() 8811 } 8812 8813 const opDisableSnapshotCopy = "DisableSnapshotCopy" 8814 8815 // DisableSnapshotCopyRequest generates a "aws/request.Request" representing the 8816 // client's request for the DisableSnapshotCopy operation. The "output" return 8817 // value will be populated with the request's response once the request completes 8818 // successfully. 8819 // 8820 // Use "Send" method on the returned Request to send the API call to the service. 8821 // the "output" return value is not valid until after Send returns without error. 8822 // 8823 // See DisableSnapshotCopy for more information on using the DisableSnapshotCopy 8824 // API call, and error handling. 8825 // 8826 // This method is useful when you want to inject custom logic or configuration 8827 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 8828 // 8829 // 8830 // // Example sending a request using the DisableSnapshotCopyRequest method. 8831 // req, resp := client.DisableSnapshotCopyRequest(params) 8832 // 8833 // err := req.Send() 8834 // if err == nil { // resp is now filled 8835 // fmt.Println(resp) 8836 // } 8837 // 8838 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DisableSnapshotCopy 8839 func (c *Redshift) DisableSnapshotCopyRequest(input *DisableSnapshotCopyInput) (req *request.Request, output *DisableSnapshotCopyOutput) { 8840 op := &request.Operation{ 8841 Name: opDisableSnapshotCopy, 8842 HTTPMethod: "POST", 8843 HTTPPath: "/", 8844 } 8845 8846 if input == nil { 8847 input = &DisableSnapshotCopyInput{} 8848 } 8849 8850 output = &DisableSnapshotCopyOutput{} 8851 req = c.newRequest(op, input, output) 8852 return 8853 } 8854 8855 // DisableSnapshotCopy API operation for Amazon Redshift. 8856 // 8857 // Disables the automatic copying of snapshots from one region to another region 8858 // for a specified cluster. 8859 // 8860 // If your cluster and its snapshots are encrypted using a customer master key 8861 // (CMK) from Key Management Service, use DeleteSnapshotCopyGrant to delete 8862 // the grant that grants Amazon Redshift permission to the CMK in the destination 8863 // region. 8864 // 8865 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 8866 // with awserr.Error's Code and Message methods to get detailed information about 8867 // the error. 8868 // 8869 // See the AWS API reference guide for Amazon Redshift's 8870 // API operation DisableSnapshotCopy for usage and error information. 8871 // 8872 // Returned Error Codes: 8873 // * ErrCodeClusterNotFoundFault "ClusterNotFound" 8874 // The ClusterIdentifier parameter does not refer to an existing cluster. 8875 // 8876 // * ErrCodeSnapshotCopyAlreadyDisabledFault "SnapshotCopyAlreadyDisabledFault" 8877 // The cluster already has cross-region snapshot copy disabled. 8878 // 8879 // * ErrCodeInvalidClusterStateFault "InvalidClusterState" 8880 // The specified cluster is not in the available state. 8881 // 8882 // * ErrCodeUnauthorizedOperation "UnauthorizedOperation" 8883 // Your account is not authorized to perform the requested operation. 8884 // 8885 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DisableSnapshotCopy 8886 func (c *Redshift) DisableSnapshotCopy(input *DisableSnapshotCopyInput) (*DisableSnapshotCopyOutput, error) { 8887 req, out := c.DisableSnapshotCopyRequest(input) 8888 return out, req.Send() 8889 } 8890 8891 // DisableSnapshotCopyWithContext is the same as DisableSnapshotCopy with the addition of 8892 // the ability to pass a context and additional request options. 8893 // 8894 // See DisableSnapshotCopy for details on how to use this API operation. 8895 // 8896 // The context must be non-nil and will be used for request cancellation. If 8897 // the context is nil a panic will occur. In the future the SDK may create 8898 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 8899 // for more information on using Contexts. 8900 func (c *Redshift) DisableSnapshotCopyWithContext(ctx aws.Context, input *DisableSnapshotCopyInput, opts ...request.Option) (*DisableSnapshotCopyOutput, error) { 8901 req, out := c.DisableSnapshotCopyRequest(input) 8902 req.SetContext(ctx) 8903 req.ApplyOptions(opts...) 8904 return out, req.Send() 8905 } 8906 8907 const opDisassociateDataShareConsumer = "DisassociateDataShareConsumer" 8908 8909 // DisassociateDataShareConsumerRequest generates a "aws/request.Request" representing the 8910 // client's request for the DisassociateDataShareConsumer operation. The "output" return 8911 // value will be populated with the request's response once the request completes 8912 // successfully. 8913 // 8914 // Use "Send" method on the returned Request to send the API call to the service. 8915 // the "output" return value is not valid until after Send returns without error. 8916 // 8917 // See DisassociateDataShareConsumer for more information on using the DisassociateDataShareConsumer 8918 // API call, and error handling. 8919 // 8920 // This method is useful when you want to inject custom logic or configuration 8921 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 8922 // 8923 // 8924 // // Example sending a request using the DisassociateDataShareConsumerRequest method. 8925 // req, resp := client.DisassociateDataShareConsumerRequest(params) 8926 // 8927 // err := req.Send() 8928 // if err == nil { // resp is now filled 8929 // fmt.Println(resp) 8930 // } 8931 // 8932 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DisassociateDataShareConsumer 8933 func (c *Redshift) DisassociateDataShareConsumerRequest(input *DisassociateDataShareConsumerInput) (req *request.Request, output *DisassociateDataShareConsumerOutput) { 8934 op := &request.Operation{ 8935 Name: opDisassociateDataShareConsumer, 8936 HTTPMethod: "POST", 8937 HTTPPath: "/", 8938 } 8939 8940 if input == nil { 8941 input = &DisassociateDataShareConsumerInput{} 8942 } 8943 8944 output = &DisassociateDataShareConsumerOutput{} 8945 req = c.newRequest(op, input, output) 8946 return 8947 } 8948 8949 // DisassociateDataShareConsumer API operation for Amazon Redshift. 8950 // 8951 // From a consumer account, remove association for the specified datashare. 8952 // 8953 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 8954 // with awserr.Error's Code and Message methods to get detailed information about 8955 // the error. 8956 // 8957 // See the AWS API reference guide for Amazon Redshift's 8958 // API operation DisassociateDataShareConsumer for usage and error information. 8959 // 8960 // Returned Error Codes: 8961 // * ErrCodeInvalidDataShareFault "InvalidDataShareFault" 8962 // There is an error with the datashare. 8963 // 8964 // * ErrCodeInvalidNamespaceFault "InvalidNamespaceFault" 8965 // The namespace isn't valid because the namespace doesn't exist. Provide a 8966 // valid namespace. 8967 // 8968 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DisassociateDataShareConsumer 8969 func (c *Redshift) DisassociateDataShareConsumer(input *DisassociateDataShareConsumerInput) (*DisassociateDataShareConsumerOutput, error) { 8970 req, out := c.DisassociateDataShareConsumerRequest(input) 8971 return out, req.Send() 8972 } 8973 8974 // DisassociateDataShareConsumerWithContext is the same as DisassociateDataShareConsumer with the addition of 8975 // the ability to pass a context and additional request options. 8976 // 8977 // See DisassociateDataShareConsumer for details on how to use this API operation. 8978 // 8979 // The context must be non-nil and will be used for request cancellation. If 8980 // the context is nil a panic will occur. In the future the SDK may create 8981 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 8982 // for more information on using Contexts. 8983 func (c *Redshift) DisassociateDataShareConsumerWithContext(ctx aws.Context, input *DisassociateDataShareConsumerInput, opts ...request.Option) (*DisassociateDataShareConsumerOutput, error) { 8984 req, out := c.DisassociateDataShareConsumerRequest(input) 8985 req.SetContext(ctx) 8986 req.ApplyOptions(opts...) 8987 return out, req.Send() 8988 } 8989 8990 const opEnableLogging = "EnableLogging" 8991 8992 // EnableLoggingRequest generates a "aws/request.Request" representing the 8993 // client's request for the EnableLogging operation. The "output" return 8994 // value will be populated with the request's response once the request completes 8995 // successfully. 8996 // 8997 // Use "Send" method on the returned Request to send the API call to the service. 8998 // the "output" return value is not valid until after Send returns without error. 8999 // 9000 // See EnableLogging for more information on using the EnableLogging 9001 // API call, and error handling. 9002 // 9003 // This method is useful when you want to inject custom logic or configuration 9004 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 9005 // 9006 // 9007 // // Example sending a request using the EnableLoggingRequest method. 9008 // req, resp := client.EnableLoggingRequest(params) 9009 // 9010 // err := req.Send() 9011 // if err == nil { // resp is now filled 9012 // fmt.Println(resp) 9013 // } 9014 // 9015 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/EnableLogging 9016 func (c *Redshift) EnableLoggingRequest(input *EnableLoggingInput) (req *request.Request, output *LoggingStatus) { 9017 op := &request.Operation{ 9018 Name: opEnableLogging, 9019 HTTPMethod: "POST", 9020 HTTPPath: "/", 9021 } 9022 9023 if input == nil { 9024 input = &EnableLoggingInput{} 9025 } 9026 9027 output = &LoggingStatus{} 9028 req = c.newRequest(op, input, output) 9029 return 9030 } 9031 9032 // EnableLogging API operation for Amazon Redshift. 9033 // 9034 // Starts logging information, such as queries and connection attempts, for 9035 // the specified Amazon Redshift cluster. 9036 // 9037 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 9038 // with awserr.Error's Code and Message methods to get detailed information about 9039 // the error. 9040 // 9041 // See the AWS API reference guide for Amazon Redshift's 9042 // API operation EnableLogging for usage and error information. 9043 // 9044 // Returned Error Codes: 9045 // * ErrCodeClusterNotFoundFault "ClusterNotFound" 9046 // The ClusterIdentifier parameter does not refer to an existing cluster. 9047 // 9048 // * ErrCodeBucketNotFoundFault "BucketNotFoundFault" 9049 // Could not find the specified S3 bucket. 9050 // 9051 // * ErrCodeInsufficientS3BucketPolicyFault "InsufficientS3BucketPolicyFault" 9052 // The cluster does not have read bucket or put object permissions on the S3 9053 // bucket specified when enabling logging. 9054 // 9055 // * ErrCodeInvalidS3KeyPrefixFault "InvalidS3KeyPrefixFault" 9056 // The string specified for the logging S3 key prefix does not comply with the 9057 // documented constraints. 9058 // 9059 // * ErrCodeInvalidS3BucketNameFault "InvalidS3BucketNameFault" 9060 // The S3 bucket name is invalid. For more information about naming rules, go 9061 // to Bucket Restrictions and Limitations (https://docs.aws.amazon.com/AmazonS3/latest/dev/BucketRestrictions.html) 9062 // in the Amazon Simple Storage Service (S3) Developer Guide. 9063 // 9064 // * ErrCodeInvalidClusterStateFault "InvalidClusterState" 9065 // The specified cluster is not in the available state. 9066 // 9067 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/EnableLogging 9068 func (c *Redshift) EnableLogging(input *EnableLoggingInput) (*LoggingStatus, error) { 9069 req, out := c.EnableLoggingRequest(input) 9070 return out, req.Send() 9071 } 9072 9073 // EnableLoggingWithContext is the same as EnableLogging with the addition of 9074 // the ability to pass a context and additional request options. 9075 // 9076 // See EnableLogging for details on how to use this API operation. 9077 // 9078 // The context must be non-nil and will be used for request cancellation. If 9079 // the context is nil a panic will occur. In the future the SDK may create 9080 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 9081 // for more information on using Contexts. 9082 func (c *Redshift) EnableLoggingWithContext(ctx aws.Context, input *EnableLoggingInput, opts ...request.Option) (*LoggingStatus, error) { 9083 req, out := c.EnableLoggingRequest(input) 9084 req.SetContext(ctx) 9085 req.ApplyOptions(opts...) 9086 return out, req.Send() 9087 } 9088 9089 const opEnableSnapshotCopy = "EnableSnapshotCopy" 9090 9091 // EnableSnapshotCopyRequest generates a "aws/request.Request" representing the 9092 // client's request for the EnableSnapshotCopy operation. The "output" return 9093 // value will be populated with the request's response once the request completes 9094 // successfully. 9095 // 9096 // Use "Send" method on the returned Request to send the API call to the service. 9097 // the "output" return value is not valid until after Send returns without error. 9098 // 9099 // See EnableSnapshotCopy for more information on using the EnableSnapshotCopy 9100 // API call, and error handling. 9101 // 9102 // This method is useful when you want to inject custom logic or configuration 9103 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 9104 // 9105 // 9106 // // Example sending a request using the EnableSnapshotCopyRequest method. 9107 // req, resp := client.EnableSnapshotCopyRequest(params) 9108 // 9109 // err := req.Send() 9110 // if err == nil { // resp is now filled 9111 // fmt.Println(resp) 9112 // } 9113 // 9114 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/EnableSnapshotCopy 9115 func (c *Redshift) EnableSnapshotCopyRequest(input *EnableSnapshotCopyInput) (req *request.Request, output *EnableSnapshotCopyOutput) { 9116 op := &request.Operation{ 9117 Name: opEnableSnapshotCopy, 9118 HTTPMethod: "POST", 9119 HTTPPath: "/", 9120 } 9121 9122 if input == nil { 9123 input = &EnableSnapshotCopyInput{} 9124 } 9125 9126 output = &EnableSnapshotCopyOutput{} 9127 req = c.newRequest(op, input, output) 9128 return 9129 } 9130 9131 // EnableSnapshotCopy API operation for Amazon Redshift. 9132 // 9133 // Enables the automatic copy of snapshots from one region to another region 9134 // for a specified cluster. 9135 // 9136 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 9137 // with awserr.Error's Code and Message methods to get detailed information about 9138 // the error. 9139 // 9140 // See the AWS API reference guide for Amazon Redshift's 9141 // API operation EnableSnapshotCopy for usage and error information. 9142 // 9143 // Returned Error Codes: 9144 // * ErrCodeIncompatibleOrderableOptions "IncompatibleOrderableOptions" 9145 // The specified options are incompatible. 9146 // 9147 // * ErrCodeInvalidClusterStateFault "InvalidClusterState" 9148 // The specified cluster is not in the available state. 9149 // 9150 // * ErrCodeClusterNotFoundFault "ClusterNotFound" 9151 // The ClusterIdentifier parameter does not refer to an existing cluster. 9152 // 9153 // * ErrCodeCopyToRegionDisabledFault "CopyToRegionDisabledFault" 9154 // Cross-region snapshot copy was temporarily disabled. Try your request again. 9155 // 9156 // * ErrCodeSnapshotCopyAlreadyEnabledFault "SnapshotCopyAlreadyEnabledFault" 9157 // The cluster already has cross-region snapshot copy enabled. 9158 // 9159 // * ErrCodeUnknownSnapshotCopyRegionFault "UnknownSnapshotCopyRegionFault" 9160 // The specified region is incorrect or does not exist. 9161 // 9162 // * ErrCodeUnauthorizedOperation "UnauthorizedOperation" 9163 // Your account is not authorized to perform the requested operation. 9164 // 9165 // * ErrCodeSnapshotCopyGrantNotFoundFault "SnapshotCopyGrantNotFoundFault" 9166 // The specified snapshot copy grant can't be found. Make sure that the name 9167 // is typed correctly and that the grant exists in the destination region. 9168 // 9169 // * ErrCodeLimitExceededFault "LimitExceededFault" 9170 // The encryption key has exceeded its grant limit in Amazon Web Services KMS. 9171 // 9172 // * ErrCodeDependentServiceRequestThrottlingFault "DependentServiceRequestThrottlingFault" 9173 // The request cannot be completed because a dependent service is throttling 9174 // requests made by Amazon Redshift on your behalf. Wait and retry the request. 9175 // 9176 // * ErrCodeInvalidRetentionPeriodFault "InvalidRetentionPeriodFault" 9177 // The retention period specified is either in the past or is not a valid value. 9178 // 9179 // The value must be either -1 or an integer between 1 and 3,653. 9180 // 9181 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/EnableSnapshotCopy 9182 func (c *Redshift) EnableSnapshotCopy(input *EnableSnapshotCopyInput) (*EnableSnapshotCopyOutput, error) { 9183 req, out := c.EnableSnapshotCopyRequest(input) 9184 return out, req.Send() 9185 } 9186 9187 // EnableSnapshotCopyWithContext is the same as EnableSnapshotCopy with the addition of 9188 // the ability to pass a context and additional request options. 9189 // 9190 // See EnableSnapshotCopy for details on how to use this API operation. 9191 // 9192 // The context must be non-nil and will be used for request cancellation. If 9193 // the context is nil a panic will occur. In the future the SDK may create 9194 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 9195 // for more information on using Contexts. 9196 func (c *Redshift) EnableSnapshotCopyWithContext(ctx aws.Context, input *EnableSnapshotCopyInput, opts ...request.Option) (*EnableSnapshotCopyOutput, error) { 9197 req, out := c.EnableSnapshotCopyRequest(input) 9198 req.SetContext(ctx) 9199 req.ApplyOptions(opts...) 9200 return out, req.Send() 9201 } 9202 9203 const opGetClusterCredentials = "GetClusterCredentials" 9204 9205 // GetClusterCredentialsRequest generates a "aws/request.Request" representing the 9206 // client's request for the GetClusterCredentials operation. The "output" return 9207 // value will be populated with the request's response once the request completes 9208 // successfully. 9209 // 9210 // Use "Send" method on the returned Request to send the API call to the service. 9211 // the "output" return value is not valid until after Send returns without error. 9212 // 9213 // See GetClusterCredentials for more information on using the GetClusterCredentials 9214 // API call, and error handling. 9215 // 9216 // This method is useful when you want to inject custom logic or configuration 9217 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 9218 // 9219 // 9220 // // Example sending a request using the GetClusterCredentialsRequest method. 9221 // req, resp := client.GetClusterCredentialsRequest(params) 9222 // 9223 // err := req.Send() 9224 // if err == nil { // resp is now filled 9225 // fmt.Println(resp) 9226 // } 9227 // 9228 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/GetClusterCredentials 9229 func (c *Redshift) GetClusterCredentialsRequest(input *GetClusterCredentialsInput) (req *request.Request, output *GetClusterCredentialsOutput) { 9230 op := &request.Operation{ 9231 Name: opGetClusterCredentials, 9232 HTTPMethod: "POST", 9233 HTTPPath: "/", 9234 } 9235 9236 if input == nil { 9237 input = &GetClusterCredentialsInput{} 9238 } 9239 9240 output = &GetClusterCredentialsOutput{} 9241 req = c.newRequest(op, input, output) 9242 return 9243 } 9244 9245 // GetClusterCredentials API operation for Amazon Redshift. 9246 // 9247 // Returns a database user name and temporary password with temporary authorization 9248 // to log on to an Amazon Redshift database. The action returns the database 9249 // user name prefixed with IAM: if AutoCreate is False or IAMA: if AutoCreate 9250 // is True. You can optionally specify one or more database user groups that 9251 // the user will join at log on. By default, the temporary credentials expire 9252 // in 900 seconds. You can optionally specify a duration between 900 seconds 9253 // (15 minutes) and 3600 seconds (60 minutes). For more information, see Using 9254 // IAM Authentication to Generate Database User Credentials (https://docs.aws.amazon.com/redshift/latest/mgmt/generating-user-credentials.html) 9255 // in the Amazon Redshift Cluster Management Guide. 9256 // 9257 // The Identity and Access Management (IAM) user or role that runs GetClusterCredentials 9258 // must have an IAM policy attached that allows access to all necessary actions 9259 // and resources. For more information about permissions, see Resource Policies 9260 // for GetClusterCredentials (https://docs.aws.amazon.com/redshift/latest/mgmt/redshift-iam-access-control-identity-based.html#redshift-policy-resources.getclustercredentials-resources) 9261 // in the Amazon Redshift Cluster Management Guide. 9262 // 9263 // If the DbGroups parameter is specified, the IAM policy must allow the redshift:JoinGroup 9264 // action with access to the listed dbgroups. 9265 // 9266 // In addition, if the AutoCreate parameter is set to True, then the policy 9267 // must include the redshift:CreateClusterUser privilege. 9268 // 9269 // If the DbName parameter is specified, the IAM policy must allow access to 9270 // the resource dbname for the specified database name. 9271 // 9272 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 9273 // with awserr.Error's Code and Message methods to get detailed information about 9274 // the error. 9275 // 9276 // See the AWS API reference guide for Amazon Redshift's 9277 // API operation GetClusterCredentials for usage and error information. 9278 // 9279 // Returned Error Codes: 9280 // * ErrCodeClusterNotFoundFault "ClusterNotFound" 9281 // The ClusterIdentifier parameter does not refer to an existing cluster. 9282 // 9283 // * ErrCodeUnsupportedOperationFault "UnsupportedOperation" 9284 // The requested operation isn't supported. 9285 // 9286 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/GetClusterCredentials 9287 func (c *Redshift) GetClusterCredentials(input *GetClusterCredentialsInput) (*GetClusterCredentialsOutput, error) { 9288 req, out := c.GetClusterCredentialsRequest(input) 9289 return out, req.Send() 9290 } 9291 9292 // GetClusterCredentialsWithContext is the same as GetClusterCredentials with the addition of 9293 // the ability to pass a context and additional request options. 9294 // 9295 // See GetClusterCredentials for details on how to use this API operation. 9296 // 9297 // The context must be non-nil and will be used for request cancellation. If 9298 // the context is nil a panic will occur. In the future the SDK may create 9299 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 9300 // for more information on using Contexts. 9301 func (c *Redshift) GetClusterCredentialsWithContext(ctx aws.Context, input *GetClusterCredentialsInput, opts ...request.Option) (*GetClusterCredentialsOutput, error) { 9302 req, out := c.GetClusterCredentialsRequest(input) 9303 req.SetContext(ctx) 9304 req.ApplyOptions(opts...) 9305 return out, req.Send() 9306 } 9307 9308 const opGetReservedNodeExchangeOfferings = "GetReservedNodeExchangeOfferings" 9309 9310 // GetReservedNodeExchangeOfferingsRequest generates a "aws/request.Request" representing the 9311 // client's request for the GetReservedNodeExchangeOfferings operation. The "output" return 9312 // value will be populated with the request's response once the request completes 9313 // successfully. 9314 // 9315 // Use "Send" method on the returned Request to send the API call to the service. 9316 // the "output" return value is not valid until after Send returns without error. 9317 // 9318 // See GetReservedNodeExchangeOfferings for more information on using the GetReservedNodeExchangeOfferings 9319 // API call, and error handling. 9320 // 9321 // This method is useful when you want to inject custom logic or configuration 9322 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 9323 // 9324 // 9325 // // Example sending a request using the GetReservedNodeExchangeOfferingsRequest method. 9326 // req, resp := client.GetReservedNodeExchangeOfferingsRequest(params) 9327 // 9328 // err := req.Send() 9329 // if err == nil { // resp is now filled 9330 // fmt.Println(resp) 9331 // } 9332 // 9333 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/GetReservedNodeExchangeOfferings 9334 func (c *Redshift) GetReservedNodeExchangeOfferingsRequest(input *GetReservedNodeExchangeOfferingsInput) (req *request.Request, output *GetReservedNodeExchangeOfferingsOutput) { 9335 op := &request.Operation{ 9336 Name: opGetReservedNodeExchangeOfferings, 9337 HTTPMethod: "POST", 9338 HTTPPath: "/", 9339 Paginator: &request.Paginator{ 9340 InputTokens: []string{"Marker"}, 9341 OutputTokens: []string{"Marker"}, 9342 LimitToken: "MaxRecords", 9343 TruncationToken: "", 9344 }, 9345 } 9346 9347 if input == nil { 9348 input = &GetReservedNodeExchangeOfferingsInput{} 9349 } 9350 9351 output = &GetReservedNodeExchangeOfferingsOutput{} 9352 req = c.newRequest(op, input, output) 9353 return 9354 } 9355 9356 // GetReservedNodeExchangeOfferings API operation for Amazon Redshift. 9357 // 9358 // Returns an array of DC2 ReservedNodeOfferings that matches the payment type, 9359 // term, and usage price of the given DC1 reserved node. 9360 // 9361 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 9362 // with awserr.Error's Code and Message methods to get detailed information about 9363 // the error. 9364 // 9365 // See the AWS API reference guide for Amazon Redshift's 9366 // API operation GetReservedNodeExchangeOfferings for usage and error information. 9367 // 9368 // Returned Error Codes: 9369 // * ErrCodeReservedNodeNotFoundFault "ReservedNodeNotFound" 9370 // The specified reserved compute node not found. 9371 // 9372 // * ErrCodeInvalidReservedNodeStateFault "InvalidReservedNodeState" 9373 // Indicates that the Reserved Node being exchanged is not in an active state. 9374 // 9375 // * ErrCodeReservedNodeAlreadyMigratedFault "ReservedNodeAlreadyMigrated" 9376 // Indicates that the reserved node has already been exchanged. 9377 // 9378 // * ErrCodeReservedNodeOfferingNotFoundFault "ReservedNodeOfferingNotFound" 9379 // Specified offering does not exist. 9380 // 9381 // * ErrCodeUnsupportedOperationFault "UnsupportedOperation" 9382 // The requested operation isn't supported. 9383 // 9384 // * ErrCodeDependentServiceUnavailableFault "DependentServiceUnavailableFault" 9385 // Your request cannot be completed because a dependent internal service is 9386 // temporarily unavailable. Wait 30 to 60 seconds and try again. 9387 // 9388 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/GetReservedNodeExchangeOfferings 9389 func (c *Redshift) GetReservedNodeExchangeOfferings(input *GetReservedNodeExchangeOfferingsInput) (*GetReservedNodeExchangeOfferingsOutput, error) { 9390 req, out := c.GetReservedNodeExchangeOfferingsRequest(input) 9391 return out, req.Send() 9392 } 9393 9394 // GetReservedNodeExchangeOfferingsWithContext is the same as GetReservedNodeExchangeOfferings with the addition of 9395 // the ability to pass a context and additional request options. 9396 // 9397 // See GetReservedNodeExchangeOfferings for details on how to use this API operation. 9398 // 9399 // The context must be non-nil and will be used for request cancellation. If 9400 // the context is nil a panic will occur. In the future the SDK may create 9401 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 9402 // for more information on using Contexts. 9403 func (c *Redshift) GetReservedNodeExchangeOfferingsWithContext(ctx aws.Context, input *GetReservedNodeExchangeOfferingsInput, opts ...request.Option) (*GetReservedNodeExchangeOfferingsOutput, error) { 9404 req, out := c.GetReservedNodeExchangeOfferingsRequest(input) 9405 req.SetContext(ctx) 9406 req.ApplyOptions(opts...) 9407 return out, req.Send() 9408 } 9409 9410 // GetReservedNodeExchangeOfferingsPages iterates over the pages of a GetReservedNodeExchangeOfferings operation, 9411 // calling the "fn" function with the response data for each page. To stop 9412 // iterating, return false from the fn function. 9413 // 9414 // See GetReservedNodeExchangeOfferings method for more information on how to use this operation. 9415 // 9416 // Note: This operation can generate multiple requests to a service. 9417 // 9418 // // Example iterating over at most 3 pages of a GetReservedNodeExchangeOfferings operation. 9419 // pageNum := 0 9420 // err := client.GetReservedNodeExchangeOfferingsPages(params, 9421 // func(page *redshift.GetReservedNodeExchangeOfferingsOutput, lastPage bool) bool { 9422 // pageNum++ 9423 // fmt.Println(page) 9424 // return pageNum <= 3 9425 // }) 9426 // 9427 func (c *Redshift) GetReservedNodeExchangeOfferingsPages(input *GetReservedNodeExchangeOfferingsInput, fn func(*GetReservedNodeExchangeOfferingsOutput, bool) bool) error { 9428 return c.GetReservedNodeExchangeOfferingsPagesWithContext(aws.BackgroundContext(), input, fn) 9429 } 9430 9431 // GetReservedNodeExchangeOfferingsPagesWithContext same as GetReservedNodeExchangeOfferingsPages except 9432 // it takes a Context and allows setting request options on the pages. 9433 // 9434 // The context must be non-nil and will be used for request cancellation. If 9435 // the context is nil a panic will occur. In the future the SDK may create 9436 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 9437 // for more information on using Contexts. 9438 func (c *Redshift) GetReservedNodeExchangeOfferingsPagesWithContext(ctx aws.Context, input *GetReservedNodeExchangeOfferingsInput, fn func(*GetReservedNodeExchangeOfferingsOutput, bool) bool, opts ...request.Option) error { 9439 p := request.Pagination{ 9440 NewRequest: func() (*request.Request, error) { 9441 var inCpy *GetReservedNodeExchangeOfferingsInput 9442 if input != nil { 9443 tmp := *input 9444 inCpy = &tmp 9445 } 9446 req, _ := c.GetReservedNodeExchangeOfferingsRequest(inCpy) 9447 req.SetContext(ctx) 9448 req.ApplyOptions(opts...) 9449 return req, nil 9450 }, 9451 } 9452 9453 for p.Next() { 9454 if !fn(p.Page().(*GetReservedNodeExchangeOfferingsOutput), !p.HasNextPage()) { 9455 break 9456 } 9457 } 9458 9459 return p.Err() 9460 } 9461 9462 const opModifyAquaConfiguration = "ModifyAquaConfiguration" 9463 9464 // ModifyAquaConfigurationRequest generates a "aws/request.Request" representing the 9465 // client's request for the ModifyAquaConfiguration operation. The "output" return 9466 // value will be populated with the request's response once the request completes 9467 // successfully. 9468 // 9469 // Use "Send" method on the returned Request to send the API call to the service. 9470 // the "output" return value is not valid until after Send returns without error. 9471 // 9472 // See ModifyAquaConfiguration for more information on using the ModifyAquaConfiguration 9473 // API call, and error handling. 9474 // 9475 // This method is useful when you want to inject custom logic or configuration 9476 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 9477 // 9478 // 9479 // // Example sending a request using the ModifyAquaConfigurationRequest method. 9480 // req, resp := client.ModifyAquaConfigurationRequest(params) 9481 // 9482 // err := req.Send() 9483 // if err == nil { // resp is now filled 9484 // fmt.Println(resp) 9485 // } 9486 // 9487 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/ModifyAquaConfiguration 9488 func (c *Redshift) ModifyAquaConfigurationRequest(input *ModifyAquaConfigurationInput) (req *request.Request, output *ModifyAquaConfigurationOutput) { 9489 op := &request.Operation{ 9490 Name: opModifyAquaConfiguration, 9491 HTTPMethod: "POST", 9492 HTTPPath: "/", 9493 } 9494 9495 if input == nil { 9496 input = &ModifyAquaConfigurationInput{} 9497 } 9498 9499 output = &ModifyAquaConfigurationOutput{} 9500 req = c.newRequest(op, input, output) 9501 return 9502 } 9503 9504 // ModifyAquaConfiguration API operation for Amazon Redshift. 9505 // 9506 // Modifies whether a cluster can use AQUA (Advanced Query Accelerator). 9507 // 9508 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 9509 // with awserr.Error's Code and Message methods to get detailed information about 9510 // the error. 9511 // 9512 // See the AWS API reference guide for Amazon Redshift's 9513 // API operation ModifyAquaConfiguration for usage and error information. 9514 // 9515 // Returned Error Codes: 9516 // * ErrCodeClusterNotFoundFault "ClusterNotFound" 9517 // The ClusterIdentifier parameter does not refer to an existing cluster. 9518 // 9519 // * ErrCodeInvalidClusterStateFault "InvalidClusterState" 9520 // The specified cluster is not in the available state. 9521 // 9522 // * ErrCodeUnsupportedOperationFault "UnsupportedOperation" 9523 // The requested operation isn't supported. 9524 // 9525 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/ModifyAquaConfiguration 9526 func (c *Redshift) ModifyAquaConfiguration(input *ModifyAquaConfigurationInput) (*ModifyAquaConfigurationOutput, error) { 9527 req, out := c.ModifyAquaConfigurationRequest(input) 9528 return out, req.Send() 9529 } 9530 9531 // ModifyAquaConfigurationWithContext is the same as ModifyAquaConfiguration with the addition of 9532 // the ability to pass a context and additional request options. 9533 // 9534 // See ModifyAquaConfiguration for details on how to use this API operation. 9535 // 9536 // The context must be non-nil and will be used for request cancellation. If 9537 // the context is nil a panic will occur. In the future the SDK may create 9538 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 9539 // for more information on using Contexts. 9540 func (c *Redshift) ModifyAquaConfigurationWithContext(ctx aws.Context, input *ModifyAquaConfigurationInput, opts ...request.Option) (*ModifyAquaConfigurationOutput, error) { 9541 req, out := c.ModifyAquaConfigurationRequest(input) 9542 req.SetContext(ctx) 9543 req.ApplyOptions(opts...) 9544 return out, req.Send() 9545 } 9546 9547 const opModifyAuthenticationProfile = "ModifyAuthenticationProfile" 9548 9549 // ModifyAuthenticationProfileRequest generates a "aws/request.Request" representing the 9550 // client's request for the ModifyAuthenticationProfile operation. The "output" return 9551 // value will be populated with the request's response once the request completes 9552 // successfully. 9553 // 9554 // Use "Send" method on the returned Request to send the API call to the service. 9555 // the "output" return value is not valid until after Send returns without error. 9556 // 9557 // See ModifyAuthenticationProfile for more information on using the ModifyAuthenticationProfile 9558 // API call, and error handling. 9559 // 9560 // This method is useful when you want to inject custom logic or configuration 9561 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 9562 // 9563 // 9564 // // Example sending a request using the ModifyAuthenticationProfileRequest method. 9565 // req, resp := client.ModifyAuthenticationProfileRequest(params) 9566 // 9567 // err := req.Send() 9568 // if err == nil { // resp is now filled 9569 // fmt.Println(resp) 9570 // } 9571 // 9572 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/ModifyAuthenticationProfile 9573 func (c *Redshift) ModifyAuthenticationProfileRequest(input *ModifyAuthenticationProfileInput) (req *request.Request, output *ModifyAuthenticationProfileOutput) { 9574 op := &request.Operation{ 9575 Name: opModifyAuthenticationProfile, 9576 HTTPMethod: "POST", 9577 HTTPPath: "/", 9578 } 9579 9580 if input == nil { 9581 input = &ModifyAuthenticationProfileInput{} 9582 } 9583 9584 output = &ModifyAuthenticationProfileOutput{} 9585 req = c.newRequest(op, input, output) 9586 return 9587 } 9588 9589 // ModifyAuthenticationProfile API operation for Amazon Redshift. 9590 // 9591 // Modifies an authentication profile. 9592 // 9593 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 9594 // with awserr.Error's Code and Message methods to get detailed information about 9595 // the error. 9596 // 9597 // See the AWS API reference guide for Amazon Redshift's 9598 // API operation ModifyAuthenticationProfile for usage and error information. 9599 // 9600 // Returned Error Codes: 9601 // * ErrCodeAuthenticationProfileNotFoundFault "AuthenticationProfileNotFoundFault" 9602 // The authentication profile can't be found. 9603 // 9604 // * ErrCodeAuthenticationProfileQuotaExceededFault "AuthenticationProfileQuotaExceededFault" 9605 // The size or number of authentication profiles has exceeded the quota. The 9606 // maximum length of the JSON string and maximum number of authentication profiles 9607 // is determined by a quota for your account. 9608 // 9609 // * ErrCodeInvalidAuthenticationProfileRequestFault "InvalidAuthenticationProfileRequestFault" 9610 // The authentication profile request is not valid. The profile name can't be 9611 // null or empty. The authentication profile API operation must be available 9612 // in the Amazon Web Services Region. 9613 // 9614 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/ModifyAuthenticationProfile 9615 func (c *Redshift) ModifyAuthenticationProfile(input *ModifyAuthenticationProfileInput) (*ModifyAuthenticationProfileOutput, error) { 9616 req, out := c.ModifyAuthenticationProfileRequest(input) 9617 return out, req.Send() 9618 } 9619 9620 // ModifyAuthenticationProfileWithContext is the same as ModifyAuthenticationProfile with the addition of 9621 // the ability to pass a context and additional request options. 9622 // 9623 // See ModifyAuthenticationProfile for details on how to use this API operation. 9624 // 9625 // The context must be non-nil and will be used for request cancellation. If 9626 // the context is nil a panic will occur. In the future the SDK may create 9627 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 9628 // for more information on using Contexts. 9629 func (c *Redshift) ModifyAuthenticationProfileWithContext(ctx aws.Context, input *ModifyAuthenticationProfileInput, opts ...request.Option) (*ModifyAuthenticationProfileOutput, error) { 9630 req, out := c.ModifyAuthenticationProfileRequest(input) 9631 req.SetContext(ctx) 9632 req.ApplyOptions(opts...) 9633 return out, req.Send() 9634 } 9635 9636 const opModifyCluster = "ModifyCluster" 9637 9638 // ModifyClusterRequest generates a "aws/request.Request" representing the 9639 // client's request for the ModifyCluster operation. The "output" return 9640 // value will be populated with the request's response once the request completes 9641 // successfully. 9642 // 9643 // Use "Send" method on the returned Request to send the API call to the service. 9644 // the "output" return value is not valid until after Send returns without error. 9645 // 9646 // See ModifyCluster for more information on using the ModifyCluster 9647 // API call, and error handling. 9648 // 9649 // This method is useful when you want to inject custom logic or configuration 9650 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 9651 // 9652 // 9653 // // Example sending a request using the ModifyClusterRequest method. 9654 // req, resp := client.ModifyClusterRequest(params) 9655 // 9656 // err := req.Send() 9657 // if err == nil { // resp is now filled 9658 // fmt.Println(resp) 9659 // } 9660 // 9661 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/ModifyCluster 9662 func (c *Redshift) ModifyClusterRequest(input *ModifyClusterInput) (req *request.Request, output *ModifyClusterOutput) { 9663 op := &request.Operation{ 9664 Name: opModifyCluster, 9665 HTTPMethod: "POST", 9666 HTTPPath: "/", 9667 } 9668 9669 if input == nil { 9670 input = &ModifyClusterInput{} 9671 } 9672 9673 output = &ModifyClusterOutput{} 9674 req = c.newRequest(op, input, output) 9675 return 9676 } 9677 9678 // ModifyCluster API operation for Amazon Redshift. 9679 // 9680 // Modifies the settings for a cluster. 9681 // 9682 // You can also change node type and the number of nodes to scale up or down 9683 // the cluster. When resizing a cluster, you must specify both the number of 9684 // nodes and the node type even if one of the parameters does not change. 9685 // 9686 // You can add another security or parameter group, or change the admin user 9687 // password. Resetting a cluster password or modifying the security groups associated 9688 // with a cluster do not need a reboot. However, modifying a parameter group 9689 // requires a reboot for parameters to take effect. For more information about 9690 // managing clusters, go to Amazon Redshift Clusters (https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-clusters.html) 9691 // in the Amazon Redshift Cluster Management Guide. 9692 // 9693 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 9694 // with awserr.Error's Code and Message methods to get detailed information about 9695 // the error. 9696 // 9697 // See the AWS API reference guide for Amazon Redshift's 9698 // API operation ModifyCluster for usage and error information. 9699 // 9700 // Returned Error Codes: 9701 // * ErrCodeInvalidClusterStateFault "InvalidClusterState" 9702 // The specified cluster is not in the available state. 9703 // 9704 // * ErrCodeInvalidClusterSecurityGroupStateFault "InvalidClusterSecurityGroupState" 9705 // The state of the cluster security group is not available. 9706 // 9707 // * ErrCodeClusterNotFoundFault "ClusterNotFound" 9708 // The ClusterIdentifier parameter does not refer to an existing cluster. 9709 // 9710 // * ErrCodeNumberOfNodesQuotaExceededFault "NumberOfNodesQuotaExceeded" 9711 // The operation would exceed the number of nodes allotted to the account. For 9712 // information about increasing your quota, go to Limits in Amazon Redshift 9713 // (https://docs.aws.amazon.com/redshift/latest/mgmt/amazon-redshift-limits.html) 9714 // in the Amazon Redshift Cluster Management Guide. 9715 // 9716 // * ErrCodeNumberOfNodesPerClusterLimitExceededFault "NumberOfNodesPerClusterLimitExceeded" 9717 // The operation would exceed the number of nodes allowed for a cluster. 9718 // 9719 // * ErrCodeClusterSecurityGroupNotFoundFault "ClusterSecurityGroupNotFound" 9720 // The cluster security group name does not refer to an existing cluster security 9721 // group. 9722 // 9723 // * ErrCodeClusterParameterGroupNotFoundFault "ClusterParameterGroupNotFound" 9724 // The parameter group name does not refer to an existing parameter group. 9725 // 9726 // * ErrCodeInsufficientClusterCapacityFault "InsufficientClusterCapacity" 9727 // The number of nodes specified exceeds the allotted capacity of the cluster. 9728 // 9729 // * ErrCodeUnsupportedOptionFault "UnsupportedOptionFault" 9730 // A request option was specified that is not supported. 9731 // 9732 // * ErrCodeUnauthorizedOperation "UnauthorizedOperation" 9733 // Your account is not authorized to perform the requested operation. 9734 // 9735 // * ErrCodeHsmClientCertificateNotFoundFault "HsmClientCertificateNotFoundFault" 9736 // There is no Amazon Redshift HSM client certificate with the specified identifier. 9737 // 9738 // * ErrCodeHsmConfigurationNotFoundFault "HsmConfigurationNotFoundFault" 9739 // There is no Amazon Redshift HSM configuration with the specified identifier. 9740 // 9741 // * ErrCodeClusterAlreadyExistsFault "ClusterAlreadyExists" 9742 // The account already has a cluster with the given identifier. 9743 // 9744 // * ErrCodeLimitExceededFault "LimitExceededFault" 9745 // The encryption key has exceeded its grant limit in Amazon Web Services KMS. 9746 // 9747 // * ErrCodeDependentServiceRequestThrottlingFault "DependentServiceRequestThrottlingFault" 9748 // The request cannot be completed because a dependent service is throttling 9749 // requests made by Amazon Redshift on your behalf. Wait and retry the request. 9750 // 9751 // * ErrCodeInvalidElasticIpFault "InvalidElasticIpFault" 9752 // The Elastic IP (EIP) is invalid or cannot be found. 9753 // 9754 // * ErrCodeTableLimitExceededFault "TableLimitExceeded" 9755 // The number of tables in the cluster exceeds the limit for the requested new 9756 // cluster node type. 9757 // 9758 // * ErrCodeInvalidClusterTrackFault "InvalidClusterTrack" 9759 // The provided cluster track name is not valid. 9760 // 9761 // * ErrCodeInvalidRetentionPeriodFault "InvalidRetentionPeriodFault" 9762 // The retention period specified is either in the past or is not a valid value. 9763 // 9764 // The value must be either -1 or an integer between 1 and 3,653. 9765 // 9766 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/ModifyCluster 9767 func (c *Redshift) ModifyCluster(input *ModifyClusterInput) (*ModifyClusterOutput, error) { 9768 req, out := c.ModifyClusterRequest(input) 9769 return out, req.Send() 9770 } 9771 9772 // ModifyClusterWithContext is the same as ModifyCluster with the addition of 9773 // the ability to pass a context and additional request options. 9774 // 9775 // See ModifyCluster for details on how to use this API operation. 9776 // 9777 // The context must be non-nil and will be used for request cancellation. If 9778 // the context is nil a panic will occur. In the future the SDK may create 9779 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 9780 // for more information on using Contexts. 9781 func (c *Redshift) ModifyClusterWithContext(ctx aws.Context, input *ModifyClusterInput, opts ...request.Option) (*ModifyClusterOutput, error) { 9782 req, out := c.ModifyClusterRequest(input) 9783 req.SetContext(ctx) 9784 req.ApplyOptions(opts...) 9785 return out, req.Send() 9786 } 9787 9788 const opModifyClusterDbRevision = "ModifyClusterDbRevision" 9789 9790 // ModifyClusterDbRevisionRequest generates a "aws/request.Request" representing the 9791 // client's request for the ModifyClusterDbRevision operation. The "output" return 9792 // value will be populated with the request's response once the request completes 9793 // successfully. 9794 // 9795 // Use "Send" method on the returned Request to send the API call to the service. 9796 // the "output" return value is not valid until after Send returns without error. 9797 // 9798 // See ModifyClusterDbRevision for more information on using the ModifyClusterDbRevision 9799 // API call, and error handling. 9800 // 9801 // This method is useful when you want to inject custom logic or configuration 9802 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 9803 // 9804 // 9805 // // Example sending a request using the ModifyClusterDbRevisionRequest method. 9806 // req, resp := client.ModifyClusterDbRevisionRequest(params) 9807 // 9808 // err := req.Send() 9809 // if err == nil { // resp is now filled 9810 // fmt.Println(resp) 9811 // } 9812 // 9813 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/ModifyClusterDbRevision 9814 func (c *Redshift) ModifyClusterDbRevisionRequest(input *ModifyClusterDbRevisionInput) (req *request.Request, output *ModifyClusterDbRevisionOutput) { 9815 op := &request.Operation{ 9816 Name: opModifyClusterDbRevision, 9817 HTTPMethod: "POST", 9818 HTTPPath: "/", 9819 } 9820 9821 if input == nil { 9822 input = &ModifyClusterDbRevisionInput{} 9823 } 9824 9825 output = &ModifyClusterDbRevisionOutput{} 9826 req = c.newRequest(op, input, output) 9827 return 9828 } 9829 9830 // ModifyClusterDbRevision API operation for Amazon Redshift. 9831 // 9832 // Modifies the database revision of a cluster. The database revision is a unique 9833 // revision of the database running in a cluster. 9834 // 9835 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 9836 // with awserr.Error's Code and Message methods to get detailed information about 9837 // the error. 9838 // 9839 // See the AWS API reference guide for Amazon Redshift's 9840 // API operation ModifyClusterDbRevision for usage and error information. 9841 // 9842 // Returned Error Codes: 9843 // * ErrCodeClusterNotFoundFault "ClusterNotFound" 9844 // The ClusterIdentifier parameter does not refer to an existing cluster. 9845 // 9846 // * ErrCodeClusterOnLatestRevisionFault "ClusterOnLatestRevision" 9847 // Cluster is already on the latest database revision. 9848 // 9849 // * ErrCodeInvalidClusterStateFault "InvalidClusterState" 9850 // The specified cluster is not in the available state. 9851 // 9852 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/ModifyClusterDbRevision 9853 func (c *Redshift) ModifyClusterDbRevision(input *ModifyClusterDbRevisionInput) (*ModifyClusterDbRevisionOutput, error) { 9854 req, out := c.ModifyClusterDbRevisionRequest(input) 9855 return out, req.Send() 9856 } 9857 9858 // ModifyClusterDbRevisionWithContext is the same as ModifyClusterDbRevision with the addition of 9859 // the ability to pass a context and additional request options. 9860 // 9861 // See ModifyClusterDbRevision for details on how to use this API operation. 9862 // 9863 // The context must be non-nil and will be used for request cancellation. If 9864 // the context is nil a panic will occur. In the future the SDK may create 9865 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 9866 // for more information on using Contexts. 9867 func (c *Redshift) ModifyClusterDbRevisionWithContext(ctx aws.Context, input *ModifyClusterDbRevisionInput, opts ...request.Option) (*ModifyClusterDbRevisionOutput, error) { 9868 req, out := c.ModifyClusterDbRevisionRequest(input) 9869 req.SetContext(ctx) 9870 req.ApplyOptions(opts...) 9871 return out, req.Send() 9872 } 9873 9874 const opModifyClusterIamRoles = "ModifyClusterIamRoles" 9875 9876 // ModifyClusterIamRolesRequest generates a "aws/request.Request" representing the 9877 // client's request for the ModifyClusterIamRoles operation. The "output" return 9878 // value will be populated with the request's response once the request completes 9879 // successfully. 9880 // 9881 // Use "Send" method on the returned Request to send the API call to the service. 9882 // the "output" return value is not valid until after Send returns without error. 9883 // 9884 // See ModifyClusterIamRoles for more information on using the ModifyClusterIamRoles 9885 // API call, and error handling. 9886 // 9887 // This method is useful when you want to inject custom logic or configuration 9888 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 9889 // 9890 // 9891 // // Example sending a request using the ModifyClusterIamRolesRequest method. 9892 // req, resp := client.ModifyClusterIamRolesRequest(params) 9893 // 9894 // err := req.Send() 9895 // if err == nil { // resp is now filled 9896 // fmt.Println(resp) 9897 // } 9898 // 9899 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/ModifyClusterIamRoles 9900 func (c *Redshift) ModifyClusterIamRolesRequest(input *ModifyClusterIamRolesInput) (req *request.Request, output *ModifyClusterIamRolesOutput) { 9901 op := &request.Operation{ 9902 Name: opModifyClusterIamRoles, 9903 HTTPMethod: "POST", 9904 HTTPPath: "/", 9905 } 9906 9907 if input == nil { 9908 input = &ModifyClusterIamRolesInput{} 9909 } 9910 9911 output = &ModifyClusterIamRolesOutput{} 9912 req = c.newRequest(op, input, output) 9913 return 9914 } 9915 9916 // ModifyClusterIamRoles API operation for Amazon Redshift. 9917 // 9918 // Modifies the list of Identity and Access Management (IAM) roles that can 9919 // be used by the cluster to access other Amazon Web Services services. 9920 // 9921 // A cluster can have up to 10 IAM roles associated at any time. 9922 // 9923 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 9924 // with awserr.Error's Code and Message methods to get detailed information about 9925 // the error. 9926 // 9927 // See the AWS API reference guide for Amazon Redshift's 9928 // API operation ModifyClusterIamRoles for usage and error information. 9929 // 9930 // Returned Error Codes: 9931 // * ErrCodeInvalidClusterStateFault "InvalidClusterState" 9932 // The specified cluster is not in the available state. 9933 // 9934 // * ErrCodeClusterNotFoundFault "ClusterNotFound" 9935 // The ClusterIdentifier parameter does not refer to an existing cluster. 9936 // 9937 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/ModifyClusterIamRoles 9938 func (c *Redshift) ModifyClusterIamRoles(input *ModifyClusterIamRolesInput) (*ModifyClusterIamRolesOutput, error) { 9939 req, out := c.ModifyClusterIamRolesRequest(input) 9940 return out, req.Send() 9941 } 9942 9943 // ModifyClusterIamRolesWithContext is the same as ModifyClusterIamRoles with the addition of 9944 // the ability to pass a context and additional request options. 9945 // 9946 // See ModifyClusterIamRoles for details on how to use this API operation. 9947 // 9948 // The context must be non-nil and will be used for request cancellation. If 9949 // the context is nil a panic will occur. In the future the SDK may create 9950 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 9951 // for more information on using Contexts. 9952 func (c *Redshift) ModifyClusterIamRolesWithContext(ctx aws.Context, input *ModifyClusterIamRolesInput, opts ...request.Option) (*ModifyClusterIamRolesOutput, error) { 9953 req, out := c.ModifyClusterIamRolesRequest(input) 9954 req.SetContext(ctx) 9955 req.ApplyOptions(opts...) 9956 return out, req.Send() 9957 } 9958 9959 const opModifyClusterMaintenance = "ModifyClusterMaintenance" 9960 9961 // ModifyClusterMaintenanceRequest generates a "aws/request.Request" representing the 9962 // client's request for the ModifyClusterMaintenance operation. The "output" return 9963 // value will be populated with the request's response once the request completes 9964 // successfully. 9965 // 9966 // Use "Send" method on the returned Request to send the API call to the service. 9967 // the "output" return value is not valid until after Send returns without error. 9968 // 9969 // See ModifyClusterMaintenance for more information on using the ModifyClusterMaintenance 9970 // API call, and error handling. 9971 // 9972 // This method is useful when you want to inject custom logic or configuration 9973 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 9974 // 9975 // 9976 // // Example sending a request using the ModifyClusterMaintenanceRequest method. 9977 // req, resp := client.ModifyClusterMaintenanceRequest(params) 9978 // 9979 // err := req.Send() 9980 // if err == nil { // resp is now filled 9981 // fmt.Println(resp) 9982 // } 9983 // 9984 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/ModifyClusterMaintenance 9985 func (c *Redshift) ModifyClusterMaintenanceRequest(input *ModifyClusterMaintenanceInput) (req *request.Request, output *ModifyClusterMaintenanceOutput) { 9986 op := &request.Operation{ 9987 Name: opModifyClusterMaintenance, 9988 HTTPMethod: "POST", 9989 HTTPPath: "/", 9990 } 9991 9992 if input == nil { 9993 input = &ModifyClusterMaintenanceInput{} 9994 } 9995 9996 output = &ModifyClusterMaintenanceOutput{} 9997 req = c.newRequest(op, input, output) 9998 return 9999 } 10000 10001 // ModifyClusterMaintenance API operation for Amazon Redshift. 10002 // 10003 // Modifies the maintenance settings of a cluster. 10004 // 10005 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 10006 // with awserr.Error's Code and Message methods to get detailed information about 10007 // the error. 10008 // 10009 // See the AWS API reference guide for Amazon Redshift's 10010 // API operation ModifyClusterMaintenance for usage and error information. 10011 // 10012 // Returned Error Codes: 10013 // * ErrCodeClusterNotFoundFault "ClusterNotFound" 10014 // The ClusterIdentifier parameter does not refer to an existing cluster. 10015 // 10016 // * ErrCodeInvalidClusterStateFault "InvalidClusterState" 10017 // The specified cluster is not in the available state. 10018 // 10019 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/ModifyClusterMaintenance 10020 func (c *Redshift) ModifyClusterMaintenance(input *ModifyClusterMaintenanceInput) (*ModifyClusterMaintenanceOutput, error) { 10021 req, out := c.ModifyClusterMaintenanceRequest(input) 10022 return out, req.Send() 10023 } 10024 10025 // ModifyClusterMaintenanceWithContext is the same as ModifyClusterMaintenance with the addition of 10026 // the ability to pass a context and additional request options. 10027 // 10028 // See ModifyClusterMaintenance for details on how to use this API operation. 10029 // 10030 // The context must be non-nil and will be used for request cancellation. If 10031 // the context is nil a panic will occur. In the future the SDK may create 10032 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 10033 // for more information on using Contexts. 10034 func (c *Redshift) ModifyClusterMaintenanceWithContext(ctx aws.Context, input *ModifyClusterMaintenanceInput, opts ...request.Option) (*ModifyClusterMaintenanceOutput, error) { 10035 req, out := c.ModifyClusterMaintenanceRequest(input) 10036 req.SetContext(ctx) 10037 req.ApplyOptions(opts...) 10038 return out, req.Send() 10039 } 10040 10041 const opModifyClusterParameterGroup = "ModifyClusterParameterGroup" 10042 10043 // ModifyClusterParameterGroupRequest generates a "aws/request.Request" representing the 10044 // client's request for the ModifyClusterParameterGroup operation. The "output" return 10045 // value will be populated with the request's response once the request completes 10046 // successfully. 10047 // 10048 // Use "Send" method on the returned Request to send the API call to the service. 10049 // the "output" return value is not valid until after Send returns without error. 10050 // 10051 // See ModifyClusterParameterGroup for more information on using the ModifyClusterParameterGroup 10052 // API call, and error handling. 10053 // 10054 // This method is useful when you want to inject custom logic or configuration 10055 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 10056 // 10057 // 10058 // // Example sending a request using the ModifyClusterParameterGroupRequest method. 10059 // req, resp := client.ModifyClusterParameterGroupRequest(params) 10060 // 10061 // err := req.Send() 10062 // if err == nil { // resp is now filled 10063 // fmt.Println(resp) 10064 // } 10065 // 10066 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/ModifyClusterParameterGroup 10067 func (c *Redshift) ModifyClusterParameterGroupRequest(input *ModifyClusterParameterGroupInput) (req *request.Request, output *ClusterParameterGroupNameMessage) { 10068 op := &request.Operation{ 10069 Name: opModifyClusterParameterGroup, 10070 HTTPMethod: "POST", 10071 HTTPPath: "/", 10072 } 10073 10074 if input == nil { 10075 input = &ModifyClusterParameterGroupInput{} 10076 } 10077 10078 output = &ClusterParameterGroupNameMessage{} 10079 req = c.newRequest(op, input, output) 10080 return 10081 } 10082 10083 // ModifyClusterParameterGroup API operation for Amazon Redshift. 10084 // 10085 // Modifies the parameters of a parameter group. For the parameters parameter, 10086 // it can't contain ASCII characters. 10087 // 10088 // For more information about parameters and parameter groups, go to Amazon 10089 // Redshift Parameter Groups (https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-parameter-groups.html) 10090 // in the Amazon Redshift Cluster Management Guide. 10091 // 10092 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 10093 // with awserr.Error's Code and Message methods to get detailed information about 10094 // the error. 10095 // 10096 // See the AWS API reference guide for Amazon Redshift's 10097 // API operation ModifyClusterParameterGroup for usage and error information. 10098 // 10099 // Returned Error Codes: 10100 // * ErrCodeClusterParameterGroupNotFoundFault "ClusterParameterGroupNotFound" 10101 // The parameter group name does not refer to an existing parameter group. 10102 // 10103 // * ErrCodeInvalidClusterParameterGroupStateFault "InvalidClusterParameterGroupState" 10104 // The cluster parameter group action can not be completed because another task 10105 // is in progress that involves the parameter group. Wait a few moments and 10106 // try the operation again. 10107 // 10108 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/ModifyClusterParameterGroup 10109 func (c *Redshift) ModifyClusterParameterGroup(input *ModifyClusterParameterGroupInput) (*ClusterParameterGroupNameMessage, error) { 10110 req, out := c.ModifyClusterParameterGroupRequest(input) 10111 return out, req.Send() 10112 } 10113 10114 // ModifyClusterParameterGroupWithContext is the same as ModifyClusterParameterGroup with the addition of 10115 // the ability to pass a context and additional request options. 10116 // 10117 // See ModifyClusterParameterGroup for details on how to use this API operation. 10118 // 10119 // The context must be non-nil and will be used for request cancellation. If 10120 // the context is nil a panic will occur. In the future the SDK may create 10121 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 10122 // for more information on using Contexts. 10123 func (c *Redshift) ModifyClusterParameterGroupWithContext(ctx aws.Context, input *ModifyClusterParameterGroupInput, opts ...request.Option) (*ClusterParameterGroupNameMessage, error) { 10124 req, out := c.ModifyClusterParameterGroupRequest(input) 10125 req.SetContext(ctx) 10126 req.ApplyOptions(opts...) 10127 return out, req.Send() 10128 } 10129 10130 const opModifyClusterSnapshot = "ModifyClusterSnapshot" 10131 10132 // ModifyClusterSnapshotRequest generates a "aws/request.Request" representing the 10133 // client's request for the ModifyClusterSnapshot operation. The "output" return 10134 // value will be populated with the request's response once the request completes 10135 // successfully. 10136 // 10137 // Use "Send" method on the returned Request to send the API call to the service. 10138 // the "output" return value is not valid until after Send returns without error. 10139 // 10140 // See ModifyClusterSnapshot for more information on using the ModifyClusterSnapshot 10141 // API call, and error handling. 10142 // 10143 // This method is useful when you want to inject custom logic or configuration 10144 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 10145 // 10146 // 10147 // // Example sending a request using the ModifyClusterSnapshotRequest method. 10148 // req, resp := client.ModifyClusterSnapshotRequest(params) 10149 // 10150 // err := req.Send() 10151 // if err == nil { // resp is now filled 10152 // fmt.Println(resp) 10153 // } 10154 // 10155 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/ModifyClusterSnapshot 10156 func (c *Redshift) ModifyClusterSnapshotRequest(input *ModifyClusterSnapshotInput) (req *request.Request, output *ModifyClusterSnapshotOutput) { 10157 op := &request.Operation{ 10158 Name: opModifyClusterSnapshot, 10159 HTTPMethod: "POST", 10160 HTTPPath: "/", 10161 } 10162 10163 if input == nil { 10164 input = &ModifyClusterSnapshotInput{} 10165 } 10166 10167 output = &ModifyClusterSnapshotOutput{} 10168 req = c.newRequest(op, input, output) 10169 return 10170 } 10171 10172 // ModifyClusterSnapshot API operation for Amazon Redshift. 10173 // 10174 // Modifies the settings for a snapshot. 10175 // 10176 // This exanmple modifies the manual retention period setting for a cluster 10177 // snapshot. 10178 // 10179 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 10180 // with awserr.Error's Code and Message methods to get detailed information about 10181 // the error. 10182 // 10183 // See the AWS API reference guide for Amazon Redshift's 10184 // API operation ModifyClusterSnapshot for usage and error information. 10185 // 10186 // Returned Error Codes: 10187 // * ErrCodeInvalidClusterSnapshotStateFault "InvalidClusterSnapshotState" 10188 // The specified cluster snapshot is not in the available state, or other accounts 10189 // are authorized to access the snapshot. 10190 // 10191 // * ErrCodeClusterSnapshotNotFoundFault "ClusterSnapshotNotFound" 10192 // The snapshot identifier does not refer to an existing cluster snapshot. 10193 // 10194 // * ErrCodeInvalidRetentionPeriodFault "InvalidRetentionPeriodFault" 10195 // The retention period specified is either in the past or is not a valid value. 10196 // 10197 // The value must be either -1 or an integer between 1 and 3,653. 10198 // 10199 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/ModifyClusterSnapshot 10200 func (c *Redshift) ModifyClusterSnapshot(input *ModifyClusterSnapshotInput) (*ModifyClusterSnapshotOutput, error) { 10201 req, out := c.ModifyClusterSnapshotRequest(input) 10202 return out, req.Send() 10203 } 10204 10205 // ModifyClusterSnapshotWithContext is the same as ModifyClusterSnapshot with the addition of 10206 // the ability to pass a context and additional request options. 10207 // 10208 // See ModifyClusterSnapshot for details on how to use this API operation. 10209 // 10210 // The context must be non-nil and will be used for request cancellation. If 10211 // the context is nil a panic will occur. In the future the SDK may create 10212 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 10213 // for more information on using Contexts. 10214 func (c *Redshift) ModifyClusterSnapshotWithContext(ctx aws.Context, input *ModifyClusterSnapshotInput, opts ...request.Option) (*ModifyClusterSnapshotOutput, error) { 10215 req, out := c.ModifyClusterSnapshotRequest(input) 10216 req.SetContext(ctx) 10217 req.ApplyOptions(opts...) 10218 return out, req.Send() 10219 } 10220 10221 const opModifyClusterSnapshotSchedule = "ModifyClusterSnapshotSchedule" 10222 10223 // ModifyClusterSnapshotScheduleRequest generates a "aws/request.Request" representing the 10224 // client's request for the ModifyClusterSnapshotSchedule operation. The "output" return 10225 // value will be populated with the request's response once the request completes 10226 // successfully. 10227 // 10228 // Use "Send" method on the returned Request to send the API call to the service. 10229 // the "output" return value is not valid until after Send returns without error. 10230 // 10231 // See ModifyClusterSnapshotSchedule for more information on using the ModifyClusterSnapshotSchedule 10232 // API call, and error handling. 10233 // 10234 // This method is useful when you want to inject custom logic or configuration 10235 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 10236 // 10237 // 10238 // // Example sending a request using the ModifyClusterSnapshotScheduleRequest method. 10239 // req, resp := client.ModifyClusterSnapshotScheduleRequest(params) 10240 // 10241 // err := req.Send() 10242 // if err == nil { // resp is now filled 10243 // fmt.Println(resp) 10244 // } 10245 // 10246 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/ModifyClusterSnapshotSchedule 10247 func (c *Redshift) ModifyClusterSnapshotScheduleRequest(input *ModifyClusterSnapshotScheduleInput) (req *request.Request, output *ModifyClusterSnapshotScheduleOutput) { 10248 op := &request.Operation{ 10249 Name: opModifyClusterSnapshotSchedule, 10250 HTTPMethod: "POST", 10251 HTTPPath: "/", 10252 } 10253 10254 if input == nil { 10255 input = &ModifyClusterSnapshotScheduleInput{} 10256 } 10257 10258 output = &ModifyClusterSnapshotScheduleOutput{} 10259 req = c.newRequest(op, input, output) 10260 req.Handlers.Unmarshal.Swap(query.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 10261 return 10262 } 10263 10264 // ModifyClusterSnapshotSchedule API operation for Amazon Redshift. 10265 // 10266 // Modifies a snapshot schedule for a cluster. 10267 // 10268 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 10269 // with awserr.Error's Code and Message methods to get detailed information about 10270 // the error. 10271 // 10272 // See the AWS API reference guide for Amazon Redshift's 10273 // API operation ModifyClusterSnapshotSchedule for usage and error information. 10274 // 10275 // Returned Error Codes: 10276 // * ErrCodeClusterNotFoundFault "ClusterNotFound" 10277 // The ClusterIdentifier parameter does not refer to an existing cluster. 10278 // 10279 // * ErrCodeSnapshotScheduleNotFoundFault "SnapshotScheduleNotFound" 10280 // We could not find the specified snapshot schedule. 10281 // 10282 // * ErrCodeInvalidClusterSnapshotScheduleStateFault "InvalidClusterSnapshotScheduleState" 10283 // The cluster snapshot schedule state is not valid. 10284 // 10285 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/ModifyClusterSnapshotSchedule 10286 func (c *Redshift) ModifyClusterSnapshotSchedule(input *ModifyClusterSnapshotScheduleInput) (*ModifyClusterSnapshotScheduleOutput, error) { 10287 req, out := c.ModifyClusterSnapshotScheduleRequest(input) 10288 return out, req.Send() 10289 } 10290 10291 // ModifyClusterSnapshotScheduleWithContext is the same as ModifyClusterSnapshotSchedule with the addition of 10292 // the ability to pass a context and additional request options. 10293 // 10294 // See ModifyClusterSnapshotSchedule for details on how to use this API operation. 10295 // 10296 // The context must be non-nil and will be used for request cancellation. If 10297 // the context is nil a panic will occur. In the future the SDK may create 10298 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 10299 // for more information on using Contexts. 10300 func (c *Redshift) ModifyClusterSnapshotScheduleWithContext(ctx aws.Context, input *ModifyClusterSnapshotScheduleInput, opts ...request.Option) (*ModifyClusterSnapshotScheduleOutput, error) { 10301 req, out := c.ModifyClusterSnapshotScheduleRequest(input) 10302 req.SetContext(ctx) 10303 req.ApplyOptions(opts...) 10304 return out, req.Send() 10305 } 10306 10307 const opModifyClusterSubnetGroup = "ModifyClusterSubnetGroup" 10308 10309 // ModifyClusterSubnetGroupRequest generates a "aws/request.Request" representing the 10310 // client's request for the ModifyClusterSubnetGroup operation. The "output" return 10311 // value will be populated with the request's response once the request completes 10312 // successfully. 10313 // 10314 // Use "Send" method on the returned Request to send the API call to the service. 10315 // the "output" return value is not valid until after Send returns without error. 10316 // 10317 // See ModifyClusterSubnetGroup for more information on using the ModifyClusterSubnetGroup 10318 // API call, and error handling. 10319 // 10320 // This method is useful when you want to inject custom logic or configuration 10321 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 10322 // 10323 // 10324 // // Example sending a request using the ModifyClusterSubnetGroupRequest method. 10325 // req, resp := client.ModifyClusterSubnetGroupRequest(params) 10326 // 10327 // err := req.Send() 10328 // if err == nil { // resp is now filled 10329 // fmt.Println(resp) 10330 // } 10331 // 10332 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/ModifyClusterSubnetGroup 10333 func (c *Redshift) ModifyClusterSubnetGroupRequest(input *ModifyClusterSubnetGroupInput) (req *request.Request, output *ModifyClusterSubnetGroupOutput) { 10334 op := &request.Operation{ 10335 Name: opModifyClusterSubnetGroup, 10336 HTTPMethod: "POST", 10337 HTTPPath: "/", 10338 } 10339 10340 if input == nil { 10341 input = &ModifyClusterSubnetGroupInput{} 10342 } 10343 10344 output = &ModifyClusterSubnetGroupOutput{} 10345 req = c.newRequest(op, input, output) 10346 return 10347 } 10348 10349 // ModifyClusterSubnetGroup API operation for Amazon Redshift. 10350 // 10351 // Modifies a cluster subnet group to include the specified list of VPC subnets. 10352 // The operation replaces the existing list of subnets with the new list of 10353 // subnets. 10354 // 10355 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 10356 // with awserr.Error's Code and Message methods to get detailed information about 10357 // the error. 10358 // 10359 // See the AWS API reference guide for Amazon Redshift's 10360 // API operation ModifyClusterSubnetGroup for usage and error information. 10361 // 10362 // Returned Error Codes: 10363 // * ErrCodeClusterSubnetGroupNotFoundFault "ClusterSubnetGroupNotFoundFault" 10364 // The cluster subnet group name does not refer to an existing cluster subnet 10365 // group. 10366 // 10367 // * ErrCodeClusterSubnetQuotaExceededFault "ClusterSubnetQuotaExceededFault" 10368 // The request would result in user exceeding the allowed number of subnets 10369 // in a cluster subnet groups. For information about increasing your quota, 10370 // go to Limits in Amazon Redshift (https://docs.aws.amazon.com/redshift/latest/mgmt/amazon-redshift-limits.html) 10371 // in the Amazon Redshift Cluster Management Guide. 10372 // 10373 // * ErrCodeSubnetAlreadyInUse "SubnetAlreadyInUse" 10374 // A specified subnet is already in use by another cluster. 10375 // 10376 // * ErrCodeInvalidSubnet "InvalidSubnet" 10377 // The requested subnet is not valid, or not all of the subnets are in the same 10378 // VPC. 10379 // 10380 // * ErrCodeUnauthorizedOperation "UnauthorizedOperation" 10381 // Your account is not authorized to perform the requested operation. 10382 // 10383 // * ErrCodeDependentServiceRequestThrottlingFault "DependentServiceRequestThrottlingFault" 10384 // The request cannot be completed because a dependent service is throttling 10385 // requests made by Amazon Redshift on your behalf. Wait and retry the request. 10386 // 10387 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/ModifyClusterSubnetGroup 10388 func (c *Redshift) ModifyClusterSubnetGroup(input *ModifyClusterSubnetGroupInput) (*ModifyClusterSubnetGroupOutput, error) { 10389 req, out := c.ModifyClusterSubnetGroupRequest(input) 10390 return out, req.Send() 10391 } 10392 10393 // ModifyClusterSubnetGroupWithContext is the same as ModifyClusterSubnetGroup with the addition of 10394 // the ability to pass a context and additional request options. 10395 // 10396 // See ModifyClusterSubnetGroup for details on how to use this API operation. 10397 // 10398 // The context must be non-nil and will be used for request cancellation. If 10399 // the context is nil a panic will occur. In the future the SDK may create 10400 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 10401 // for more information on using Contexts. 10402 func (c *Redshift) ModifyClusterSubnetGroupWithContext(ctx aws.Context, input *ModifyClusterSubnetGroupInput, opts ...request.Option) (*ModifyClusterSubnetGroupOutput, error) { 10403 req, out := c.ModifyClusterSubnetGroupRequest(input) 10404 req.SetContext(ctx) 10405 req.ApplyOptions(opts...) 10406 return out, req.Send() 10407 } 10408 10409 const opModifyEndpointAccess = "ModifyEndpointAccess" 10410 10411 // ModifyEndpointAccessRequest generates a "aws/request.Request" representing the 10412 // client's request for the ModifyEndpointAccess operation. The "output" return 10413 // value will be populated with the request's response once the request completes 10414 // successfully. 10415 // 10416 // Use "Send" method on the returned Request to send the API call to the service. 10417 // the "output" return value is not valid until after Send returns without error. 10418 // 10419 // See ModifyEndpointAccess for more information on using the ModifyEndpointAccess 10420 // API call, and error handling. 10421 // 10422 // This method is useful when you want to inject custom logic or configuration 10423 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 10424 // 10425 // 10426 // // Example sending a request using the ModifyEndpointAccessRequest method. 10427 // req, resp := client.ModifyEndpointAccessRequest(params) 10428 // 10429 // err := req.Send() 10430 // if err == nil { // resp is now filled 10431 // fmt.Println(resp) 10432 // } 10433 // 10434 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/ModifyEndpointAccess 10435 func (c *Redshift) ModifyEndpointAccessRequest(input *ModifyEndpointAccessInput) (req *request.Request, output *ModifyEndpointAccessOutput) { 10436 op := &request.Operation{ 10437 Name: opModifyEndpointAccess, 10438 HTTPMethod: "POST", 10439 HTTPPath: "/", 10440 } 10441 10442 if input == nil { 10443 input = &ModifyEndpointAccessInput{} 10444 } 10445 10446 output = &ModifyEndpointAccessOutput{} 10447 req = c.newRequest(op, input, output) 10448 return 10449 } 10450 10451 // ModifyEndpointAccess API operation for Amazon Redshift. 10452 // 10453 // Modifies a Redshift-managed VPC endpoint. 10454 // 10455 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 10456 // with awserr.Error's Code and Message methods to get detailed information about 10457 // the error. 10458 // 10459 // See the AWS API reference guide for Amazon Redshift's 10460 // API operation ModifyEndpointAccess for usage and error information. 10461 // 10462 // Returned Error Codes: 10463 // * ErrCodeInvalidClusterSecurityGroupStateFault "InvalidClusterSecurityGroupState" 10464 // The state of the cluster security group is not available. 10465 // 10466 // * ErrCodeClusterNotFoundFault "ClusterNotFound" 10467 // The ClusterIdentifier parameter does not refer to an existing cluster. 10468 // 10469 // * ErrCodeInvalidEndpointStateFault "InvalidEndpointState" 10470 // The status of the endpoint is not valid. 10471 // 10472 // * ErrCodeEndpointNotFoundFault "EndpointNotFound" 10473 // The endpoint name doesn't refer to an existing endpoint. 10474 // 10475 // * ErrCodeInvalidClusterStateFault "InvalidClusterState" 10476 // The specified cluster is not in the available state. 10477 // 10478 // * ErrCodeUnauthorizedOperation "UnauthorizedOperation" 10479 // Your account is not authorized to perform the requested operation. 10480 // 10481 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/ModifyEndpointAccess 10482 func (c *Redshift) ModifyEndpointAccess(input *ModifyEndpointAccessInput) (*ModifyEndpointAccessOutput, error) { 10483 req, out := c.ModifyEndpointAccessRequest(input) 10484 return out, req.Send() 10485 } 10486 10487 // ModifyEndpointAccessWithContext is the same as ModifyEndpointAccess with the addition of 10488 // the ability to pass a context and additional request options. 10489 // 10490 // See ModifyEndpointAccess for details on how to use this API operation. 10491 // 10492 // The context must be non-nil and will be used for request cancellation. If 10493 // the context is nil a panic will occur. In the future the SDK may create 10494 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 10495 // for more information on using Contexts. 10496 func (c *Redshift) ModifyEndpointAccessWithContext(ctx aws.Context, input *ModifyEndpointAccessInput, opts ...request.Option) (*ModifyEndpointAccessOutput, error) { 10497 req, out := c.ModifyEndpointAccessRequest(input) 10498 req.SetContext(ctx) 10499 req.ApplyOptions(opts...) 10500 return out, req.Send() 10501 } 10502 10503 const opModifyEventSubscription = "ModifyEventSubscription" 10504 10505 // ModifyEventSubscriptionRequest generates a "aws/request.Request" representing the 10506 // client's request for the ModifyEventSubscription operation. The "output" return 10507 // value will be populated with the request's response once the request completes 10508 // successfully. 10509 // 10510 // Use "Send" method on the returned Request to send the API call to the service. 10511 // the "output" return value is not valid until after Send returns without error. 10512 // 10513 // See ModifyEventSubscription for more information on using the ModifyEventSubscription 10514 // API call, and error handling. 10515 // 10516 // This method is useful when you want to inject custom logic or configuration 10517 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 10518 // 10519 // 10520 // // Example sending a request using the ModifyEventSubscriptionRequest method. 10521 // req, resp := client.ModifyEventSubscriptionRequest(params) 10522 // 10523 // err := req.Send() 10524 // if err == nil { // resp is now filled 10525 // fmt.Println(resp) 10526 // } 10527 // 10528 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/ModifyEventSubscription 10529 func (c *Redshift) ModifyEventSubscriptionRequest(input *ModifyEventSubscriptionInput) (req *request.Request, output *ModifyEventSubscriptionOutput) { 10530 op := &request.Operation{ 10531 Name: opModifyEventSubscription, 10532 HTTPMethod: "POST", 10533 HTTPPath: "/", 10534 } 10535 10536 if input == nil { 10537 input = &ModifyEventSubscriptionInput{} 10538 } 10539 10540 output = &ModifyEventSubscriptionOutput{} 10541 req = c.newRequest(op, input, output) 10542 return 10543 } 10544 10545 // ModifyEventSubscription API operation for Amazon Redshift. 10546 // 10547 // Modifies an existing Amazon Redshift event notification subscription. 10548 // 10549 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 10550 // with awserr.Error's Code and Message methods to get detailed information about 10551 // the error. 10552 // 10553 // See the AWS API reference guide for Amazon Redshift's 10554 // API operation ModifyEventSubscription for usage and error information. 10555 // 10556 // Returned Error Codes: 10557 // * ErrCodeSubscriptionNotFoundFault "SubscriptionNotFound" 10558 // An Amazon Redshift event notification subscription with the specified name 10559 // does not exist. 10560 // 10561 // * ErrCodeSNSInvalidTopicFault "SNSInvalidTopic" 10562 // Amazon SNS has responded that there is a problem with the specified Amazon 10563 // SNS topic. 10564 // 10565 // * ErrCodeSNSNoAuthorizationFault "SNSNoAuthorization" 10566 // You do not have permission to publish to the specified Amazon SNS topic. 10567 // 10568 // * ErrCodeSNSTopicArnNotFoundFault "SNSTopicArnNotFound" 10569 // An Amazon SNS topic with the specified Amazon Resource Name (ARN) does not 10570 // exist. 10571 // 10572 // * ErrCodeSubscriptionEventIdNotFoundFault "SubscriptionEventIdNotFound" 10573 // An Amazon Redshift event with the specified event ID does not exist. 10574 // 10575 // * ErrCodeSubscriptionCategoryNotFoundFault "SubscriptionCategoryNotFound" 10576 // The value specified for the event category was not one of the allowed values, 10577 // or it specified a category that does not apply to the specified source type. 10578 // The allowed values are Configuration, Management, Monitoring, and Security. 10579 // 10580 // * ErrCodeSubscriptionSeverityNotFoundFault "SubscriptionSeverityNotFound" 10581 // The value specified for the event severity was not one of the allowed values, 10582 // or it specified a severity that does not apply to the specified source type. 10583 // The allowed values are ERROR and INFO. 10584 // 10585 // * ErrCodeSourceNotFoundFault "SourceNotFound" 10586 // The specified Amazon Redshift event source could not be found. 10587 // 10588 // * ErrCodeInvalidSubscriptionStateFault "InvalidSubscriptionStateFault" 10589 // The subscription request is invalid because it is a duplicate request. This 10590 // subscription request is already in progress. 10591 // 10592 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/ModifyEventSubscription 10593 func (c *Redshift) ModifyEventSubscription(input *ModifyEventSubscriptionInput) (*ModifyEventSubscriptionOutput, error) { 10594 req, out := c.ModifyEventSubscriptionRequest(input) 10595 return out, req.Send() 10596 } 10597 10598 // ModifyEventSubscriptionWithContext is the same as ModifyEventSubscription with the addition of 10599 // the ability to pass a context and additional request options. 10600 // 10601 // See ModifyEventSubscription for details on how to use this API operation. 10602 // 10603 // The context must be non-nil and will be used for request cancellation. If 10604 // the context is nil a panic will occur. In the future the SDK may create 10605 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 10606 // for more information on using Contexts. 10607 func (c *Redshift) ModifyEventSubscriptionWithContext(ctx aws.Context, input *ModifyEventSubscriptionInput, opts ...request.Option) (*ModifyEventSubscriptionOutput, error) { 10608 req, out := c.ModifyEventSubscriptionRequest(input) 10609 req.SetContext(ctx) 10610 req.ApplyOptions(opts...) 10611 return out, req.Send() 10612 } 10613 10614 const opModifyScheduledAction = "ModifyScheduledAction" 10615 10616 // ModifyScheduledActionRequest generates a "aws/request.Request" representing the 10617 // client's request for the ModifyScheduledAction operation. The "output" return 10618 // value will be populated with the request's response once the request completes 10619 // successfully. 10620 // 10621 // Use "Send" method on the returned Request to send the API call to the service. 10622 // the "output" return value is not valid until after Send returns without error. 10623 // 10624 // See ModifyScheduledAction for more information on using the ModifyScheduledAction 10625 // API call, and error handling. 10626 // 10627 // This method is useful when you want to inject custom logic or configuration 10628 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 10629 // 10630 // 10631 // // Example sending a request using the ModifyScheduledActionRequest method. 10632 // req, resp := client.ModifyScheduledActionRequest(params) 10633 // 10634 // err := req.Send() 10635 // if err == nil { // resp is now filled 10636 // fmt.Println(resp) 10637 // } 10638 // 10639 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/ModifyScheduledAction 10640 func (c *Redshift) ModifyScheduledActionRequest(input *ModifyScheduledActionInput) (req *request.Request, output *ModifyScheduledActionOutput) { 10641 op := &request.Operation{ 10642 Name: opModifyScheduledAction, 10643 HTTPMethod: "POST", 10644 HTTPPath: "/", 10645 } 10646 10647 if input == nil { 10648 input = &ModifyScheduledActionInput{} 10649 } 10650 10651 output = &ModifyScheduledActionOutput{} 10652 req = c.newRequest(op, input, output) 10653 return 10654 } 10655 10656 // ModifyScheduledAction API operation for Amazon Redshift. 10657 // 10658 // Modifies a scheduled action. 10659 // 10660 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 10661 // with awserr.Error's Code and Message methods to get detailed information about 10662 // the error. 10663 // 10664 // See the AWS API reference guide for Amazon Redshift's 10665 // API operation ModifyScheduledAction for usage and error information. 10666 // 10667 // Returned Error Codes: 10668 // * ErrCodeScheduledActionNotFoundFault "ScheduledActionNotFound" 10669 // The scheduled action cannot be found. 10670 // 10671 // * ErrCodeScheduledActionTypeUnsupportedFault "ScheduledActionTypeUnsupported" 10672 // The action type specified for a scheduled action is not supported. 10673 // 10674 // * ErrCodeInvalidScheduleFault "InvalidSchedule" 10675 // The schedule you submitted isn't valid. 10676 // 10677 // * ErrCodeInvalidScheduledActionFault "InvalidScheduledAction" 10678 // The scheduled action is not valid. 10679 // 10680 // * ErrCodeUnauthorizedOperation "UnauthorizedOperation" 10681 // Your account is not authorized to perform the requested operation. 10682 // 10683 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/ModifyScheduledAction 10684 func (c *Redshift) ModifyScheduledAction(input *ModifyScheduledActionInput) (*ModifyScheduledActionOutput, error) { 10685 req, out := c.ModifyScheduledActionRequest(input) 10686 return out, req.Send() 10687 } 10688 10689 // ModifyScheduledActionWithContext is the same as ModifyScheduledAction with the addition of 10690 // the ability to pass a context and additional request options. 10691 // 10692 // See ModifyScheduledAction for details on how to use this API operation. 10693 // 10694 // The context must be non-nil and will be used for request cancellation. If 10695 // the context is nil a panic will occur. In the future the SDK may create 10696 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 10697 // for more information on using Contexts. 10698 func (c *Redshift) ModifyScheduledActionWithContext(ctx aws.Context, input *ModifyScheduledActionInput, opts ...request.Option) (*ModifyScheduledActionOutput, error) { 10699 req, out := c.ModifyScheduledActionRequest(input) 10700 req.SetContext(ctx) 10701 req.ApplyOptions(opts...) 10702 return out, req.Send() 10703 } 10704 10705 const opModifySnapshotCopyRetentionPeriod = "ModifySnapshotCopyRetentionPeriod" 10706 10707 // ModifySnapshotCopyRetentionPeriodRequest generates a "aws/request.Request" representing the 10708 // client's request for the ModifySnapshotCopyRetentionPeriod operation. The "output" return 10709 // value will be populated with the request's response once the request completes 10710 // successfully. 10711 // 10712 // Use "Send" method on the returned Request to send the API call to the service. 10713 // the "output" return value is not valid until after Send returns without error. 10714 // 10715 // See ModifySnapshotCopyRetentionPeriod for more information on using the ModifySnapshotCopyRetentionPeriod 10716 // API call, and error handling. 10717 // 10718 // This method is useful when you want to inject custom logic or configuration 10719 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 10720 // 10721 // 10722 // // Example sending a request using the ModifySnapshotCopyRetentionPeriodRequest method. 10723 // req, resp := client.ModifySnapshotCopyRetentionPeriodRequest(params) 10724 // 10725 // err := req.Send() 10726 // if err == nil { // resp is now filled 10727 // fmt.Println(resp) 10728 // } 10729 // 10730 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/ModifySnapshotCopyRetentionPeriod 10731 func (c *Redshift) ModifySnapshotCopyRetentionPeriodRequest(input *ModifySnapshotCopyRetentionPeriodInput) (req *request.Request, output *ModifySnapshotCopyRetentionPeriodOutput) { 10732 op := &request.Operation{ 10733 Name: opModifySnapshotCopyRetentionPeriod, 10734 HTTPMethod: "POST", 10735 HTTPPath: "/", 10736 } 10737 10738 if input == nil { 10739 input = &ModifySnapshotCopyRetentionPeriodInput{} 10740 } 10741 10742 output = &ModifySnapshotCopyRetentionPeriodOutput{} 10743 req = c.newRequest(op, input, output) 10744 return 10745 } 10746 10747 // ModifySnapshotCopyRetentionPeriod API operation for Amazon Redshift. 10748 // 10749 // Modifies the number of days to retain snapshots in the destination Amazon 10750 // Web Services Region after they are copied from the source Amazon Web Services 10751 // Region. By default, this operation only changes the retention period of copied 10752 // automated snapshots. The retention periods for both new and existing copied 10753 // automated snapshots are updated with the new retention period. You can set 10754 // the manual option to change only the retention periods of copied manual snapshots. 10755 // If you set this option, only newly copied manual snapshots have the new retention 10756 // period. 10757 // 10758 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 10759 // with awserr.Error's Code and Message methods to get detailed information about 10760 // the error. 10761 // 10762 // See the AWS API reference guide for Amazon Redshift's 10763 // API operation ModifySnapshotCopyRetentionPeriod for usage and error information. 10764 // 10765 // Returned Error Codes: 10766 // * ErrCodeClusterNotFoundFault "ClusterNotFound" 10767 // The ClusterIdentifier parameter does not refer to an existing cluster. 10768 // 10769 // * ErrCodeSnapshotCopyDisabledFault "SnapshotCopyDisabledFault" 10770 // Cross-region snapshot copy was temporarily disabled. Try your request again. 10771 // 10772 // * ErrCodeUnauthorizedOperation "UnauthorizedOperation" 10773 // Your account is not authorized to perform the requested operation. 10774 // 10775 // * ErrCodeInvalidClusterStateFault "InvalidClusterState" 10776 // The specified cluster is not in the available state. 10777 // 10778 // * ErrCodeInvalidRetentionPeriodFault "InvalidRetentionPeriodFault" 10779 // The retention period specified is either in the past or is not a valid value. 10780 // 10781 // The value must be either -1 or an integer between 1 and 3,653. 10782 // 10783 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/ModifySnapshotCopyRetentionPeriod 10784 func (c *Redshift) ModifySnapshotCopyRetentionPeriod(input *ModifySnapshotCopyRetentionPeriodInput) (*ModifySnapshotCopyRetentionPeriodOutput, error) { 10785 req, out := c.ModifySnapshotCopyRetentionPeriodRequest(input) 10786 return out, req.Send() 10787 } 10788 10789 // ModifySnapshotCopyRetentionPeriodWithContext is the same as ModifySnapshotCopyRetentionPeriod with the addition of 10790 // the ability to pass a context and additional request options. 10791 // 10792 // See ModifySnapshotCopyRetentionPeriod for details on how to use this API operation. 10793 // 10794 // The context must be non-nil and will be used for request cancellation. If 10795 // the context is nil a panic will occur. In the future the SDK may create 10796 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 10797 // for more information on using Contexts. 10798 func (c *Redshift) ModifySnapshotCopyRetentionPeriodWithContext(ctx aws.Context, input *ModifySnapshotCopyRetentionPeriodInput, opts ...request.Option) (*ModifySnapshotCopyRetentionPeriodOutput, error) { 10799 req, out := c.ModifySnapshotCopyRetentionPeriodRequest(input) 10800 req.SetContext(ctx) 10801 req.ApplyOptions(opts...) 10802 return out, req.Send() 10803 } 10804 10805 const opModifySnapshotSchedule = "ModifySnapshotSchedule" 10806 10807 // ModifySnapshotScheduleRequest generates a "aws/request.Request" representing the 10808 // client's request for the ModifySnapshotSchedule operation. The "output" return 10809 // value will be populated with the request's response once the request completes 10810 // successfully. 10811 // 10812 // Use "Send" method on the returned Request to send the API call to the service. 10813 // the "output" return value is not valid until after Send returns without error. 10814 // 10815 // See ModifySnapshotSchedule for more information on using the ModifySnapshotSchedule 10816 // API call, and error handling. 10817 // 10818 // This method is useful when you want to inject custom logic or configuration 10819 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 10820 // 10821 // 10822 // // Example sending a request using the ModifySnapshotScheduleRequest method. 10823 // req, resp := client.ModifySnapshotScheduleRequest(params) 10824 // 10825 // err := req.Send() 10826 // if err == nil { // resp is now filled 10827 // fmt.Println(resp) 10828 // } 10829 // 10830 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/ModifySnapshotSchedule 10831 func (c *Redshift) ModifySnapshotScheduleRequest(input *ModifySnapshotScheduleInput) (req *request.Request, output *ModifySnapshotScheduleOutput) { 10832 op := &request.Operation{ 10833 Name: opModifySnapshotSchedule, 10834 HTTPMethod: "POST", 10835 HTTPPath: "/", 10836 } 10837 10838 if input == nil { 10839 input = &ModifySnapshotScheduleInput{} 10840 } 10841 10842 output = &ModifySnapshotScheduleOutput{} 10843 req = c.newRequest(op, input, output) 10844 return 10845 } 10846 10847 // ModifySnapshotSchedule API operation for Amazon Redshift. 10848 // 10849 // Modifies a snapshot schedule. Any schedule associated with a cluster is modified 10850 // asynchronously. 10851 // 10852 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 10853 // with awserr.Error's Code and Message methods to get detailed information about 10854 // the error. 10855 // 10856 // See the AWS API reference guide for Amazon Redshift's 10857 // API operation ModifySnapshotSchedule for usage and error information. 10858 // 10859 // Returned Error Codes: 10860 // * ErrCodeInvalidScheduleFault "InvalidSchedule" 10861 // The schedule you submitted isn't valid. 10862 // 10863 // * ErrCodeSnapshotScheduleNotFoundFault "SnapshotScheduleNotFound" 10864 // We could not find the specified snapshot schedule. 10865 // 10866 // * ErrCodeSnapshotScheduleUpdateInProgressFault "SnapshotScheduleUpdateInProgress" 10867 // The specified snapshot schedule is already being updated. 10868 // 10869 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/ModifySnapshotSchedule 10870 func (c *Redshift) ModifySnapshotSchedule(input *ModifySnapshotScheduleInput) (*ModifySnapshotScheduleOutput, error) { 10871 req, out := c.ModifySnapshotScheduleRequest(input) 10872 return out, req.Send() 10873 } 10874 10875 // ModifySnapshotScheduleWithContext is the same as ModifySnapshotSchedule with the addition of 10876 // the ability to pass a context and additional request options. 10877 // 10878 // See ModifySnapshotSchedule for details on how to use this API operation. 10879 // 10880 // The context must be non-nil and will be used for request cancellation. If 10881 // the context is nil a panic will occur. In the future the SDK may create 10882 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 10883 // for more information on using Contexts. 10884 func (c *Redshift) ModifySnapshotScheduleWithContext(ctx aws.Context, input *ModifySnapshotScheduleInput, opts ...request.Option) (*ModifySnapshotScheduleOutput, error) { 10885 req, out := c.ModifySnapshotScheduleRequest(input) 10886 req.SetContext(ctx) 10887 req.ApplyOptions(opts...) 10888 return out, req.Send() 10889 } 10890 10891 const opModifyUsageLimit = "ModifyUsageLimit" 10892 10893 // ModifyUsageLimitRequest generates a "aws/request.Request" representing the 10894 // client's request for the ModifyUsageLimit operation. The "output" return 10895 // value will be populated with the request's response once the request completes 10896 // successfully. 10897 // 10898 // Use "Send" method on the returned Request to send the API call to the service. 10899 // the "output" return value is not valid until after Send returns without error. 10900 // 10901 // See ModifyUsageLimit for more information on using the ModifyUsageLimit 10902 // API call, and error handling. 10903 // 10904 // This method is useful when you want to inject custom logic or configuration 10905 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 10906 // 10907 // 10908 // // Example sending a request using the ModifyUsageLimitRequest method. 10909 // req, resp := client.ModifyUsageLimitRequest(params) 10910 // 10911 // err := req.Send() 10912 // if err == nil { // resp is now filled 10913 // fmt.Println(resp) 10914 // } 10915 // 10916 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/ModifyUsageLimit 10917 func (c *Redshift) ModifyUsageLimitRequest(input *ModifyUsageLimitInput) (req *request.Request, output *ModifyUsageLimitOutput) { 10918 op := &request.Operation{ 10919 Name: opModifyUsageLimit, 10920 HTTPMethod: "POST", 10921 HTTPPath: "/", 10922 } 10923 10924 if input == nil { 10925 input = &ModifyUsageLimitInput{} 10926 } 10927 10928 output = &ModifyUsageLimitOutput{} 10929 req = c.newRequest(op, input, output) 10930 return 10931 } 10932 10933 // ModifyUsageLimit API operation for Amazon Redshift. 10934 // 10935 // Modifies a usage limit in a cluster. You can't modify the feature type or 10936 // period of a usage limit. 10937 // 10938 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 10939 // with awserr.Error's Code and Message methods to get detailed information about 10940 // the error. 10941 // 10942 // See the AWS API reference guide for Amazon Redshift's 10943 // API operation ModifyUsageLimit for usage and error information. 10944 // 10945 // Returned Error Codes: 10946 // * ErrCodeInvalidUsageLimitFault "InvalidUsageLimit" 10947 // The usage limit is not valid. 10948 // 10949 // * ErrCodeUsageLimitNotFoundFault "UsageLimitNotFound" 10950 // The usage limit identifier can't be found. 10951 // 10952 // * ErrCodeUnsupportedOperationFault "UnsupportedOperation" 10953 // The requested operation isn't supported. 10954 // 10955 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/ModifyUsageLimit 10956 func (c *Redshift) ModifyUsageLimit(input *ModifyUsageLimitInput) (*ModifyUsageLimitOutput, error) { 10957 req, out := c.ModifyUsageLimitRequest(input) 10958 return out, req.Send() 10959 } 10960 10961 // ModifyUsageLimitWithContext is the same as ModifyUsageLimit with the addition of 10962 // the ability to pass a context and additional request options. 10963 // 10964 // See ModifyUsageLimit for details on how to use this API operation. 10965 // 10966 // The context must be non-nil and will be used for request cancellation. If 10967 // the context is nil a panic will occur. In the future the SDK may create 10968 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 10969 // for more information on using Contexts. 10970 func (c *Redshift) ModifyUsageLimitWithContext(ctx aws.Context, input *ModifyUsageLimitInput, opts ...request.Option) (*ModifyUsageLimitOutput, error) { 10971 req, out := c.ModifyUsageLimitRequest(input) 10972 req.SetContext(ctx) 10973 req.ApplyOptions(opts...) 10974 return out, req.Send() 10975 } 10976 10977 const opPauseCluster = "PauseCluster" 10978 10979 // PauseClusterRequest generates a "aws/request.Request" representing the 10980 // client's request for the PauseCluster operation. The "output" return 10981 // value will be populated with the request's response once the request completes 10982 // successfully. 10983 // 10984 // Use "Send" method on the returned Request to send the API call to the service. 10985 // the "output" return value is not valid until after Send returns without error. 10986 // 10987 // See PauseCluster for more information on using the PauseCluster 10988 // API call, and error handling. 10989 // 10990 // This method is useful when you want to inject custom logic or configuration 10991 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 10992 // 10993 // 10994 // // Example sending a request using the PauseClusterRequest method. 10995 // req, resp := client.PauseClusterRequest(params) 10996 // 10997 // err := req.Send() 10998 // if err == nil { // resp is now filled 10999 // fmt.Println(resp) 11000 // } 11001 // 11002 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/PauseCluster 11003 func (c *Redshift) PauseClusterRequest(input *PauseClusterInput) (req *request.Request, output *PauseClusterOutput) { 11004 op := &request.Operation{ 11005 Name: opPauseCluster, 11006 HTTPMethod: "POST", 11007 HTTPPath: "/", 11008 } 11009 11010 if input == nil { 11011 input = &PauseClusterInput{} 11012 } 11013 11014 output = &PauseClusterOutput{} 11015 req = c.newRequest(op, input, output) 11016 return 11017 } 11018 11019 // PauseCluster API operation for Amazon Redshift. 11020 // 11021 // Pauses a cluster. 11022 // 11023 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 11024 // with awserr.Error's Code and Message methods to get detailed information about 11025 // the error. 11026 // 11027 // See the AWS API reference guide for Amazon Redshift's 11028 // API operation PauseCluster for usage and error information. 11029 // 11030 // Returned Error Codes: 11031 // * ErrCodeClusterNotFoundFault "ClusterNotFound" 11032 // The ClusterIdentifier parameter does not refer to an existing cluster. 11033 // 11034 // * ErrCodeInvalidClusterStateFault "InvalidClusterState" 11035 // The specified cluster is not in the available state. 11036 // 11037 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/PauseCluster 11038 func (c *Redshift) PauseCluster(input *PauseClusterInput) (*PauseClusterOutput, error) { 11039 req, out := c.PauseClusterRequest(input) 11040 return out, req.Send() 11041 } 11042 11043 // PauseClusterWithContext is the same as PauseCluster with the addition of 11044 // the ability to pass a context and additional request options. 11045 // 11046 // See PauseCluster for details on how to use this API operation. 11047 // 11048 // The context must be non-nil and will be used for request cancellation. If 11049 // the context is nil a panic will occur. In the future the SDK may create 11050 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 11051 // for more information on using Contexts. 11052 func (c *Redshift) PauseClusterWithContext(ctx aws.Context, input *PauseClusterInput, opts ...request.Option) (*PauseClusterOutput, error) { 11053 req, out := c.PauseClusterRequest(input) 11054 req.SetContext(ctx) 11055 req.ApplyOptions(opts...) 11056 return out, req.Send() 11057 } 11058 11059 const opPurchaseReservedNodeOffering = "PurchaseReservedNodeOffering" 11060 11061 // PurchaseReservedNodeOfferingRequest generates a "aws/request.Request" representing the 11062 // client's request for the PurchaseReservedNodeOffering operation. The "output" return 11063 // value will be populated with the request's response once the request completes 11064 // successfully. 11065 // 11066 // Use "Send" method on the returned Request to send the API call to the service. 11067 // the "output" return value is not valid until after Send returns without error. 11068 // 11069 // See PurchaseReservedNodeOffering for more information on using the PurchaseReservedNodeOffering 11070 // API call, and error handling. 11071 // 11072 // This method is useful when you want to inject custom logic or configuration 11073 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 11074 // 11075 // 11076 // // Example sending a request using the PurchaseReservedNodeOfferingRequest method. 11077 // req, resp := client.PurchaseReservedNodeOfferingRequest(params) 11078 // 11079 // err := req.Send() 11080 // if err == nil { // resp is now filled 11081 // fmt.Println(resp) 11082 // } 11083 // 11084 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/PurchaseReservedNodeOffering 11085 func (c *Redshift) PurchaseReservedNodeOfferingRequest(input *PurchaseReservedNodeOfferingInput) (req *request.Request, output *PurchaseReservedNodeOfferingOutput) { 11086 op := &request.Operation{ 11087 Name: opPurchaseReservedNodeOffering, 11088 HTTPMethod: "POST", 11089 HTTPPath: "/", 11090 } 11091 11092 if input == nil { 11093 input = &PurchaseReservedNodeOfferingInput{} 11094 } 11095 11096 output = &PurchaseReservedNodeOfferingOutput{} 11097 req = c.newRequest(op, input, output) 11098 return 11099 } 11100 11101 // PurchaseReservedNodeOffering API operation for Amazon Redshift. 11102 // 11103 // Allows you to purchase reserved nodes. Amazon Redshift offers a predefined 11104 // set of reserved node offerings. You can purchase one or more of the offerings. 11105 // You can call the DescribeReservedNodeOfferings API to obtain the available 11106 // reserved node offerings. You can call this API by providing a specific reserved 11107 // node offering and the number of nodes you want to reserve. 11108 // 11109 // For more information about reserved node offerings, go to Purchasing Reserved 11110 // Nodes (https://docs.aws.amazon.com/redshift/latest/mgmt/purchase-reserved-node-instance.html) 11111 // in the Amazon Redshift Cluster Management Guide. 11112 // 11113 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 11114 // with awserr.Error's Code and Message methods to get detailed information about 11115 // the error. 11116 // 11117 // See the AWS API reference guide for Amazon Redshift's 11118 // API operation PurchaseReservedNodeOffering for usage and error information. 11119 // 11120 // Returned Error Codes: 11121 // * ErrCodeReservedNodeOfferingNotFoundFault "ReservedNodeOfferingNotFound" 11122 // Specified offering does not exist. 11123 // 11124 // * ErrCodeReservedNodeAlreadyExistsFault "ReservedNodeAlreadyExists" 11125 // User already has a reservation with the given identifier. 11126 // 11127 // * ErrCodeReservedNodeQuotaExceededFault "ReservedNodeQuotaExceeded" 11128 // Request would exceed the user's compute node quota. For information about 11129 // increasing your quota, go to Limits in Amazon Redshift (https://docs.aws.amazon.com/redshift/latest/mgmt/amazon-redshift-limits.html) 11130 // in the Amazon Redshift Cluster Management Guide. 11131 // 11132 // * ErrCodeUnsupportedOperationFault "UnsupportedOperation" 11133 // The requested operation isn't supported. 11134 // 11135 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/PurchaseReservedNodeOffering 11136 func (c *Redshift) PurchaseReservedNodeOffering(input *PurchaseReservedNodeOfferingInput) (*PurchaseReservedNodeOfferingOutput, error) { 11137 req, out := c.PurchaseReservedNodeOfferingRequest(input) 11138 return out, req.Send() 11139 } 11140 11141 // PurchaseReservedNodeOfferingWithContext is the same as PurchaseReservedNodeOffering with the addition of 11142 // the ability to pass a context and additional request options. 11143 // 11144 // See PurchaseReservedNodeOffering for details on how to use this API operation. 11145 // 11146 // The context must be non-nil and will be used for request cancellation. If 11147 // the context is nil a panic will occur. In the future the SDK may create 11148 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 11149 // for more information on using Contexts. 11150 func (c *Redshift) PurchaseReservedNodeOfferingWithContext(ctx aws.Context, input *PurchaseReservedNodeOfferingInput, opts ...request.Option) (*PurchaseReservedNodeOfferingOutput, error) { 11151 req, out := c.PurchaseReservedNodeOfferingRequest(input) 11152 req.SetContext(ctx) 11153 req.ApplyOptions(opts...) 11154 return out, req.Send() 11155 } 11156 11157 const opRebootCluster = "RebootCluster" 11158 11159 // RebootClusterRequest generates a "aws/request.Request" representing the 11160 // client's request for the RebootCluster operation. The "output" return 11161 // value will be populated with the request's response once the request completes 11162 // successfully. 11163 // 11164 // Use "Send" method on the returned Request to send the API call to the service. 11165 // the "output" return value is not valid until after Send returns without error. 11166 // 11167 // See RebootCluster for more information on using the RebootCluster 11168 // API call, and error handling. 11169 // 11170 // This method is useful when you want to inject custom logic or configuration 11171 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 11172 // 11173 // 11174 // // Example sending a request using the RebootClusterRequest method. 11175 // req, resp := client.RebootClusterRequest(params) 11176 // 11177 // err := req.Send() 11178 // if err == nil { // resp is now filled 11179 // fmt.Println(resp) 11180 // } 11181 // 11182 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/RebootCluster 11183 func (c *Redshift) RebootClusterRequest(input *RebootClusterInput) (req *request.Request, output *RebootClusterOutput) { 11184 op := &request.Operation{ 11185 Name: opRebootCluster, 11186 HTTPMethod: "POST", 11187 HTTPPath: "/", 11188 } 11189 11190 if input == nil { 11191 input = &RebootClusterInput{} 11192 } 11193 11194 output = &RebootClusterOutput{} 11195 req = c.newRequest(op, input, output) 11196 return 11197 } 11198 11199 // RebootCluster API operation for Amazon Redshift. 11200 // 11201 // Reboots a cluster. This action is taken as soon as possible. It results in 11202 // a momentary outage to the cluster, during which the cluster status is set 11203 // to rebooting. A cluster event is created when the reboot is completed. Any 11204 // pending cluster modifications (see ModifyCluster) are applied at this reboot. 11205 // For more information about managing clusters, go to Amazon Redshift Clusters 11206 // (https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-clusters.html) 11207 // in the Amazon Redshift Cluster Management Guide. 11208 // 11209 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 11210 // with awserr.Error's Code and Message methods to get detailed information about 11211 // the error. 11212 // 11213 // See the AWS API reference guide for Amazon Redshift's 11214 // API operation RebootCluster for usage and error information. 11215 // 11216 // Returned Error Codes: 11217 // * ErrCodeInvalidClusterStateFault "InvalidClusterState" 11218 // The specified cluster is not in the available state. 11219 // 11220 // * ErrCodeClusterNotFoundFault "ClusterNotFound" 11221 // The ClusterIdentifier parameter does not refer to an existing cluster. 11222 // 11223 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/RebootCluster 11224 func (c *Redshift) RebootCluster(input *RebootClusterInput) (*RebootClusterOutput, error) { 11225 req, out := c.RebootClusterRequest(input) 11226 return out, req.Send() 11227 } 11228 11229 // RebootClusterWithContext is the same as RebootCluster with the addition of 11230 // the ability to pass a context and additional request options. 11231 // 11232 // See RebootCluster for details on how to use this API operation. 11233 // 11234 // The context must be non-nil and will be used for request cancellation. If 11235 // the context is nil a panic will occur. In the future the SDK may create 11236 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 11237 // for more information on using Contexts. 11238 func (c *Redshift) RebootClusterWithContext(ctx aws.Context, input *RebootClusterInput, opts ...request.Option) (*RebootClusterOutput, error) { 11239 req, out := c.RebootClusterRequest(input) 11240 req.SetContext(ctx) 11241 req.ApplyOptions(opts...) 11242 return out, req.Send() 11243 } 11244 11245 const opRejectDataShare = "RejectDataShare" 11246 11247 // RejectDataShareRequest generates a "aws/request.Request" representing the 11248 // client's request for the RejectDataShare operation. The "output" return 11249 // value will be populated with the request's response once the request completes 11250 // successfully. 11251 // 11252 // Use "Send" method on the returned Request to send the API call to the service. 11253 // the "output" return value is not valid until after Send returns without error. 11254 // 11255 // See RejectDataShare for more information on using the RejectDataShare 11256 // API call, and error handling. 11257 // 11258 // This method is useful when you want to inject custom logic or configuration 11259 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 11260 // 11261 // 11262 // // Example sending a request using the RejectDataShareRequest method. 11263 // req, resp := client.RejectDataShareRequest(params) 11264 // 11265 // err := req.Send() 11266 // if err == nil { // resp is now filled 11267 // fmt.Println(resp) 11268 // } 11269 // 11270 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/RejectDataShare 11271 func (c *Redshift) RejectDataShareRequest(input *RejectDataShareInput) (req *request.Request, output *RejectDataShareOutput) { 11272 op := &request.Operation{ 11273 Name: opRejectDataShare, 11274 HTTPMethod: "POST", 11275 HTTPPath: "/", 11276 } 11277 11278 if input == nil { 11279 input = &RejectDataShareInput{} 11280 } 11281 11282 output = &RejectDataShareOutput{} 11283 req = c.newRequest(op, input, output) 11284 return 11285 } 11286 11287 // RejectDataShare API operation for Amazon Redshift. 11288 // 11289 // From the consumer account, rejects the specified datashare. 11290 // 11291 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 11292 // with awserr.Error's Code and Message methods to get detailed information about 11293 // the error. 11294 // 11295 // See the AWS API reference guide for Amazon Redshift's 11296 // API operation RejectDataShare for usage and error information. 11297 // 11298 // Returned Error Codes: 11299 // * ErrCodeInvalidDataShareFault "InvalidDataShareFault" 11300 // There is an error with the datashare. 11301 // 11302 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/RejectDataShare 11303 func (c *Redshift) RejectDataShare(input *RejectDataShareInput) (*RejectDataShareOutput, error) { 11304 req, out := c.RejectDataShareRequest(input) 11305 return out, req.Send() 11306 } 11307 11308 // RejectDataShareWithContext is the same as RejectDataShare with the addition of 11309 // the ability to pass a context and additional request options. 11310 // 11311 // See RejectDataShare for details on how to use this API operation. 11312 // 11313 // The context must be non-nil and will be used for request cancellation. If 11314 // the context is nil a panic will occur. In the future the SDK may create 11315 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 11316 // for more information on using Contexts. 11317 func (c *Redshift) RejectDataShareWithContext(ctx aws.Context, input *RejectDataShareInput, opts ...request.Option) (*RejectDataShareOutput, error) { 11318 req, out := c.RejectDataShareRequest(input) 11319 req.SetContext(ctx) 11320 req.ApplyOptions(opts...) 11321 return out, req.Send() 11322 } 11323 11324 const opResetClusterParameterGroup = "ResetClusterParameterGroup" 11325 11326 // ResetClusterParameterGroupRequest generates a "aws/request.Request" representing the 11327 // client's request for the ResetClusterParameterGroup operation. The "output" return 11328 // value will be populated with the request's response once the request completes 11329 // successfully. 11330 // 11331 // Use "Send" method on the returned Request to send the API call to the service. 11332 // the "output" return value is not valid until after Send returns without error. 11333 // 11334 // See ResetClusterParameterGroup for more information on using the ResetClusterParameterGroup 11335 // API call, and error handling. 11336 // 11337 // This method is useful when you want to inject custom logic or configuration 11338 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 11339 // 11340 // 11341 // // Example sending a request using the ResetClusterParameterGroupRequest method. 11342 // req, resp := client.ResetClusterParameterGroupRequest(params) 11343 // 11344 // err := req.Send() 11345 // if err == nil { // resp is now filled 11346 // fmt.Println(resp) 11347 // } 11348 // 11349 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/ResetClusterParameterGroup 11350 func (c *Redshift) ResetClusterParameterGroupRequest(input *ResetClusterParameterGroupInput) (req *request.Request, output *ClusterParameterGroupNameMessage) { 11351 op := &request.Operation{ 11352 Name: opResetClusterParameterGroup, 11353 HTTPMethod: "POST", 11354 HTTPPath: "/", 11355 } 11356 11357 if input == nil { 11358 input = &ResetClusterParameterGroupInput{} 11359 } 11360 11361 output = &ClusterParameterGroupNameMessage{} 11362 req = c.newRequest(op, input, output) 11363 return 11364 } 11365 11366 // ResetClusterParameterGroup API operation for Amazon Redshift. 11367 // 11368 // Sets one or more parameters of the specified parameter group to their default 11369 // values and sets the source values of the parameters to "engine-default". 11370 // To reset the entire parameter group specify the ResetAllParameters parameter. 11371 // For parameter changes to take effect you must reboot any associated clusters. 11372 // 11373 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 11374 // with awserr.Error's Code and Message methods to get detailed information about 11375 // the error. 11376 // 11377 // See the AWS API reference guide for Amazon Redshift's 11378 // API operation ResetClusterParameterGroup for usage and error information. 11379 // 11380 // Returned Error Codes: 11381 // * ErrCodeInvalidClusterParameterGroupStateFault "InvalidClusterParameterGroupState" 11382 // The cluster parameter group action can not be completed because another task 11383 // is in progress that involves the parameter group. Wait a few moments and 11384 // try the operation again. 11385 // 11386 // * ErrCodeClusterParameterGroupNotFoundFault "ClusterParameterGroupNotFound" 11387 // The parameter group name does not refer to an existing parameter group. 11388 // 11389 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/ResetClusterParameterGroup 11390 func (c *Redshift) ResetClusterParameterGroup(input *ResetClusterParameterGroupInput) (*ClusterParameterGroupNameMessage, error) { 11391 req, out := c.ResetClusterParameterGroupRequest(input) 11392 return out, req.Send() 11393 } 11394 11395 // ResetClusterParameterGroupWithContext is the same as ResetClusterParameterGroup with the addition of 11396 // the ability to pass a context and additional request options. 11397 // 11398 // See ResetClusterParameterGroup for details on how to use this API operation. 11399 // 11400 // The context must be non-nil and will be used for request cancellation. If 11401 // the context is nil a panic will occur. In the future the SDK may create 11402 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 11403 // for more information on using Contexts. 11404 func (c *Redshift) ResetClusterParameterGroupWithContext(ctx aws.Context, input *ResetClusterParameterGroupInput, opts ...request.Option) (*ClusterParameterGroupNameMessage, error) { 11405 req, out := c.ResetClusterParameterGroupRequest(input) 11406 req.SetContext(ctx) 11407 req.ApplyOptions(opts...) 11408 return out, req.Send() 11409 } 11410 11411 const opResizeCluster = "ResizeCluster" 11412 11413 // ResizeClusterRequest generates a "aws/request.Request" representing the 11414 // client's request for the ResizeCluster operation. The "output" return 11415 // value will be populated with the request's response once the request completes 11416 // successfully. 11417 // 11418 // Use "Send" method on the returned Request to send the API call to the service. 11419 // the "output" return value is not valid until after Send returns without error. 11420 // 11421 // See ResizeCluster for more information on using the ResizeCluster 11422 // API call, and error handling. 11423 // 11424 // This method is useful when you want to inject custom logic or configuration 11425 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 11426 // 11427 // 11428 // // Example sending a request using the ResizeClusterRequest method. 11429 // req, resp := client.ResizeClusterRequest(params) 11430 // 11431 // err := req.Send() 11432 // if err == nil { // resp is now filled 11433 // fmt.Println(resp) 11434 // } 11435 // 11436 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/ResizeCluster 11437 func (c *Redshift) ResizeClusterRequest(input *ResizeClusterInput) (req *request.Request, output *ResizeClusterOutput) { 11438 op := &request.Operation{ 11439 Name: opResizeCluster, 11440 HTTPMethod: "POST", 11441 HTTPPath: "/", 11442 } 11443 11444 if input == nil { 11445 input = &ResizeClusterInput{} 11446 } 11447 11448 output = &ResizeClusterOutput{} 11449 req = c.newRequest(op, input, output) 11450 return 11451 } 11452 11453 // ResizeCluster API operation for Amazon Redshift. 11454 // 11455 // Changes the size of the cluster. You can change the cluster's type, or change 11456 // the number or type of nodes. The default behavior is to use the elastic resize 11457 // method. With an elastic resize, your cluster is available for read and write 11458 // operations more quickly than with the classic resize method. 11459 // 11460 // Elastic resize operations have the following restrictions: 11461 // 11462 // * You can only resize clusters of the following types: dc1.large (if your 11463 // cluster is in a VPC) dc1.8xlarge (if your cluster is in a VPC) dc2.large 11464 // dc2.8xlarge ds2.xlarge ds2.8xlarge ra3.xlplus ra3.4xlarge ra3.16xlarge 11465 // 11466 // * The type of nodes that you add must match the node type for the cluster. 11467 // 11468 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 11469 // with awserr.Error's Code and Message methods to get detailed information about 11470 // the error. 11471 // 11472 // See the AWS API reference guide for Amazon Redshift's 11473 // API operation ResizeCluster for usage and error information. 11474 // 11475 // Returned Error Codes: 11476 // * ErrCodeInvalidClusterStateFault "InvalidClusterState" 11477 // The specified cluster is not in the available state. 11478 // 11479 // * ErrCodeClusterNotFoundFault "ClusterNotFound" 11480 // The ClusterIdentifier parameter does not refer to an existing cluster. 11481 // 11482 // * ErrCodeNumberOfNodesQuotaExceededFault "NumberOfNodesQuotaExceeded" 11483 // The operation would exceed the number of nodes allotted to the account. For 11484 // information about increasing your quota, go to Limits in Amazon Redshift 11485 // (https://docs.aws.amazon.com/redshift/latest/mgmt/amazon-redshift-limits.html) 11486 // in the Amazon Redshift Cluster Management Guide. 11487 // 11488 // * ErrCodeNumberOfNodesPerClusterLimitExceededFault "NumberOfNodesPerClusterLimitExceeded" 11489 // The operation would exceed the number of nodes allowed for a cluster. 11490 // 11491 // * ErrCodeInsufficientClusterCapacityFault "InsufficientClusterCapacity" 11492 // The number of nodes specified exceeds the allotted capacity of the cluster. 11493 // 11494 // * ErrCodeUnsupportedOptionFault "UnsupportedOptionFault" 11495 // A request option was specified that is not supported. 11496 // 11497 // * ErrCodeUnsupportedOperationFault "UnsupportedOperation" 11498 // The requested operation isn't supported. 11499 // 11500 // * ErrCodeUnauthorizedOperation "UnauthorizedOperation" 11501 // Your account is not authorized to perform the requested operation. 11502 // 11503 // * ErrCodeLimitExceededFault "LimitExceededFault" 11504 // The encryption key has exceeded its grant limit in Amazon Web Services KMS. 11505 // 11506 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/ResizeCluster 11507 func (c *Redshift) ResizeCluster(input *ResizeClusterInput) (*ResizeClusterOutput, error) { 11508 req, out := c.ResizeClusterRequest(input) 11509 return out, req.Send() 11510 } 11511 11512 // ResizeClusterWithContext is the same as ResizeCluster with the addition of 11513 // the ability to pass a context and additional request options. 11514 // 11515 // See ResizeCluster for details on how to use this API operation. 11516 // 11517 // The context must be non-nil and will be used for request cancellation. If 11518 // the context is nil a panic will occur. In the future the SDK may create 11519 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 11520 // for more information on using Contexts. 11521 func (c *Redshift) ResizeClusterWithContext(ctx aws.Context, input *ResizeClusterInput, opts ...request.Option) (*ResizeClusterOutput, error) { 11522 req, out := c.ResizeClusterRequest(input) 11523 req.SetContext(ctx) 11524 req.ApplyOptions(opts...) 11525 return out, req.Send() 11526 } 11527 11528 const opRestoreFromClusterSnapshot = "RestoreFromClusterSnapshot" 11529 11530 // RestoreFromClusterSnapshotRequest generates a "aws/request.Request" representing the 11531 // client's request for the RestoreFromClusterSnapshot operation. The "output" return 11532 // value will be populated with the request's response once the request completes 11533 // successfully. 11534 // 11535 // Use "Send" method on the returned Request to send the API call to the service. 11536 // the "output" return value is not valid until after Send returns without error. 11537 // 11538 // See RestoreFromClusterSnapshot for more information on using the RestoreFromClusterSnapshot 11539 // API call, and error handling. 11540 // 11541 // This method is useful when you want to inject custom logic or configuration 11542 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 11543 // 11544 // 11545 // // Example sending a request using the RestoreFromClusterSnapshotRequest method. 11546 // req, resp := client.RestoreFromClusterSnapshotRequest(params) 11547 // 11548 // err := req.Send() 11549 // if err == nil { // resp is now filled 11550 // fmt.Println(resp) 11551 // } 11552 // 11553 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/RestoreFromClusterSnapshot 11554 func (c *Redshift) RestoreFromClusterSnapshotRequest(input *RestoreFromClusterSnapshotInput) (req *request.Request, output *RestoreFromClusterSnapshotOutput) { 11555 op := &request.Operation{ 11556 Name: opRestoreFromClusterSnapshot, 11557 HTTPMethod: "POST", 11558 HTTPPath: "/", 11559 } 11560 11561 if input == nil { 11562 input = &RestoreFromClusterSnapshotInput{} 11563 } 11564 11565 output = &RestoreFromClusterSnapshotOutput{} 11566 req = c.newRequest(op, input, output) 11567 return 11568 } 11569 11570 // RestoreFromClusterSnapshot API operation for Amazon Redshift. 11571 // 11572 // Creates a new cluster from a snapshot. By default, Amazon Redshift creates 11573 // the resulting cluster with the same configuration as the original cluster 11574 // from which the snapshot was created, except that the new cluster is created 11575 // with the default cluster security and parameter groups. After Amazon Redshift 11576 // creates the cluster, you can use the ModifyCluster API to associate a different 11577 // security group and different parameter group with the restored cluster. If 11578 // you are using a DS node type, you can also choose to change to another DS 11579 // node type of the same size during restore. 11580 // 11581 // If you restore a cluster into a VPC, you must provide a cluster subnet group 11582 // where you want the cluster restored. 11583 // 11584 // For more information about working with snapshots, go to Amazon Redshift 11585 // Snapshots (https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-snapshots.html) 11586 // in the Amazon Redshift Cluster Management Guide. 11587 // 11588 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 11589 // with awserr.Error's Code and Message methods to get detailed information about 11590 // the error. 11591 // 11592 // See the AWS API reference guide for Amazon Redshift's 11593 // API operation RestoreFromClusterSnapshot for usage and error information. 11594 // 11595 // Returned Error Codes: 11596 // * ErrCodeAccessToSnapshotDeniedFault "AccessToSnapshotDenied" 11597 // The owner of the specified snapshot has not authorized your account to access 11598 // the snapshot. 11599 // 11600 // * ErrCodeClusterAlreadyExistsFault "ClusterAlreadyExists" 11601 // The account already has a cluster with the given identifier. 11602 // 11603 // * ErrCodeClusterSnapshotNotFoundFault "ClusterSnapshotNotFound" 11604 // The snapshot identifier does not refer to an existing cluster snapshot. 11605 // 11606 // * ErrCodeClusterQuotaExceededFault "ClusterQuotaExceeded" 11607 // The request would exceed the allowed number of cluster instances for this 11608 // account. For information about increasing your quota, go to Limits in Amazon 11609 // Redshift (https://docs.aws.amazon.com/redshift/latest/mgmt/amazon-redshift-limits.html) 11610 // in the Amazon Redshift Cluster Management Guide. 11611 // 11612 // * ErrCodeInsufficientClusterCapacityFault "InsufficientClusterCapacity" 11613 // The number of nodes specified exceeds the allotted capacity of the cluster. 11614 // 11615 // * ErrCodeInvalidClusterSnapshotStateFault "InvalidClusterSnapshotState" 11616 // The specified cluster snapshot is not in the available state, or other accounts 11617 // are authorized to access the snapshot. 11618 // 11619 // * ErrCodeInvalidRestoreFault "InvalidRestore" 11620 // The restore is invalid. 11621 // 11622 // * ErrCodeNumberOfNodesQuotaExceededFault "NumberOfNodesQuotaExceeded" 11623 // The operation would exceed the number of nodes allotted to the account. For 11624 // information about increasing your quota, go to Limits in Amazon Redshift 11625 // (https://docs.aws.amazon.com/redshift/latest/mgmt/amazon-redshift-limits.html) 11626 // in the Amazon Redshift Cluster Management Guide. 11627 // 11628 // * ErrCodeNumberOfNodesPerClusterLimitExceededFault "NumberOfNodesPerClusterLimitExceeded" 11629 // The operation would exceed the number of nodes allowed for a cluster. 11630 // 11631 // * ErrCodeInvalidVPCNetworkStateFault "InvalidVPCNetworkStateFault" 11632 // The cluster subnet group does not cover all Availability Zones. 11633 // 11634 // * ErrCodeInvalidClusterSubnetGroupStateFault "InvalidClusterSubnetGroupStateFault" 11635 // The cluster subnet group cannot be deleted because it is in use. 11636 // 11637 // * ErrCodeInvalidSubnet "InvalidSubnet" 11638 // The requested subnet is not valid, or not all of the subnets are in the same 11639 // VPC. 11640 // 11641 // * ErrCodeClusterSubnetGroupNotFoundFault "ClusterSubnetGroupNotFoundFault" 11642 // The cluster subnet group name does not refer to an existing cluster subnet 11643 // group. 11644 // 11645 // * ErrCodeUnauthorizedOperation "UnauthorizedOperation" 11646 // Your account is not authorized to perform the requested operation. 11647 // 11648 // * ErrCodeHsmClientCertificateNotFoundFault "HsmClientCertificateNotFoundFault" 11649 // There is no Amazon Redshift HSM client certificate with the specified identifier. 11650 // 11651 // * ErrCodeHsmConfigurationNotFoundFault "HsmConfigurationNotFoundFault" 11652 // There is no Amazon Redshift HSM configuration with the specified identifier. 11653 // 11654 // * ErrCodeInvalidElasticIpFault "InvalidElasticIpFault" 11655 // The Elastic IP (EIP) is invalid or cannot be found. 11656 // 11657 // * ErrCodeClusterParameterGroupNotFoundFault "ClusterParameterGroupNotFound" 11658 // The parameter group name does not refer to an existing parameter group. 11659 // 11660 // * ErrCodeClusterSecurityGroupNotFoundFault "ClusterSecurityGroupNotFound" 11661 // The cluster security group name does not refer to an existing cluster security 11662 // group. 11663 // 11664 // * ErrCodeLimitExceededFault "LimitExceededFault" 11665 // The encryption key has exceeded its grant limit in Amazon Web Services KMS. 11666 // 11667 // * ErrCodeDependentServiceRequestThrottlingFault "DependentServiceRequestThrottlingFault" 11668 // The request cannot be completed because a dependent service is throttling 11669 // requests made by Amazon Redshift on your behalf. Wait and retry the request. 11670 // 11671 // * ErrCodeInvalidClusterTrackFault "InvalidClusterTrack" 11672 // The provided cluster track name is not valid. 11673 // 11674 // * ErrCodeSnapshotScheduleNotFoundFault "SnapshotScheduleNotFound" 11675 // We could not find the specified snapshot schedule. 11676 // 11677 // * ErrCodeTagLimitExceededFault "TagLimitExceededFault" 11678 // You have exceeded the number of tags allowed. 11679 // 11680 // * ErrCodeInvalidTagFault "InvalidTagFault" 11681 // The tag is invalid. 11682 // 11683 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/RestoreFromClusterSnapshot 11684 func (c *Redshift) RestoreFromClusterSnapshot(input *RestoreFromClusterSnapshotInput) (*RestoreFromClusterSnapshotOutput, error) { 11685 req, out := c.RestoreFromClusterSnapshotRequest(input) 11686 return out, req.Send() 11687 } 11688 11689 // RestoreFromClusterSnapshotWithContext is the same as RestoreFromClusterSnapshot with the addition of 11690 // the ability to pass a context and additional request options. 11691 // 11692 // See RestoreFromClusterSnapshot for details on how to use this API operation. 11693 // 11694 // The context must be non-nil and will be used for request cancellation. If 11695 // the context is nil a panic will occur. In the future the SDK may create 11696 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 11697 // for more information on using Contexts. 11698 func (c *Redshift) RestoreFromClusterSnapshotWithContext(ctx aws.Context, input *RestoreFromClusterSnapshotInput, opts ...request.Option) (*RestoreFromClusterSnapshotOutput, error) { 11699 req, out := c.RestoreFromClusterSnapshotRequest(input) 11700 req.SetContext(ctx) 11701 req.ApplyOptions(opts...) 11702 return out, req.Send() 11703 } 11704 11705 const opRestoreTableFromClusterSnapshot = "RestoreTableFromClusterSnapshot" 11706 11707 // RestoreTableFromClusterSnapshotRequest generates a "aws/request.Request" representing the 11708 // client's request for the RestoreTableFromClusterSnapshot operation. The "output" return 11709 // value will be populated with the request's response once the request completes 11710 // successfully. 11711 // 11712 // Use "Send" method on the returned Request to send the API call to the service. 11713 // the "output" return value is not valid until after Send returns without error. 11714 // 11715 // See RestoreTableFromClusterSnapshot for more information on using the RestoreTableFromClusterSnapshot 11716 // API call, and error handling. 11717 // 11718 // This method is useful when you want to inject custom logic or configuration 11719 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 11720 // 11721 // 11722 // // Example sending a request using the RestoreTableFromClusterSnapshotRequest method. 11723 // req, resp := client.RestoreTableFromClusterSnapshotRequest(params) 11724 // 11725 // err := req.Send() 11726 // if err == nil { // resp is now filled 11727 // fmt.Println(resp) 11728 // } 11729 // 11730 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/RestoreTableFromClusterSnapshot 11731 func (c *Redshift) RestoreTableFromClusterSnapshotRequest(input *RestoreTableFromClusterSnapshotInput) (req *request.Request, output *RestoreTableFromClusterSnapshotOutput) { 11732 op := &request.Operation{ 11733 Name: opRestoreTableFromClusterSnapshot, 11734 HTTPMethod: "POST", 11735 HTTPPath: "/", 11736 } 11737 11738 if input == nil { 11739 input = &RestoreTableFromClusterSnapshotInput{} 11740 } 11741 11742 output = &RestoreTableFromClusterSnapshotOutput{} 11743 req = c.newRequest(op, input, output) 11744 return 11745 } 11746 11747 // RestoreTableFromClusterSnapshot API operation for Amazon Redshift. 11748 // 11749 // Creates a new table from a table in an Amazon Redshift cluster snapshot. 11750 // You must create the new table within the Amazon Redshift cluster that the 11751 // snapshot was taken from. 11752 // 11753 // You cannot use RestoreTableFromClusterSnapshot to restore a table with the 11754 // same name as an existing table in an Amazon Redshift cluster. That is, you 11755 // cannot overwrite an existing table in a cluster with a restored table. If 11756 // you want to replace your original table with a new, restored table, then 11757 // rename or drop your original table before you call RestoreTableFromClusterSnapshot. 11758 // When you have renamed your original table, then you can pass the original 11759 // name of the table as the NewTableName parameter value in the call to RestoreTableFromClusterSnapshot. 11760 // This way, you can replace the original table with the table created from 11761 // the snapshot. 11762 // 11763 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 11764 // with awserr.Error's Code and Message methods to get detailed information about 11765 // the error. 11766 // 11767 // See the AWS API reference guide for Amazon Redshift's 11768 // API operation RestoreTableFromClusterSnapshot for usage and error information. 11769 // 11770 // Returned Error Codes: 11771 // * ErrCodeClusterSnapshotNotFoundFault "ClusterSnapshotNotFound" 11772 // The snapshot identifier does not refer to an existing cluster snapshot. 11773 // 11774 // * ErrCodeInProgressTableRestoreQuotaExceededFault "InProgressTableRestoreQuotaExceededFault" 11775 // You have exceeded the allowed number of table restore requests. Wait for 11776 // your current table restore requests to complete before making a new request. 11777 // 11778 // * ErrCodeInvalidClusterSnapshotStateFault "InvalidClusterSnapshotState" 11779 // The specified cluster snapshot is not in the available state, or other accounts 11780 // are authorized to access the snapshot. 11781 // 11782 // * ErrCodeInvalidTableRestoreArgumentFault "InvalidTableRestoreArgument" 11783 // The value specified for the sourceDatabaseName, sourceSchemaName, or sourceTableName 11784 // parameter, or a combination of these, doesn't exist in the snapshot. 11785 // 11786 // * ErrCodeClusterNotFoundFault "ClusterNotFound" 11787 // The ClusterIdentifier parameter does not refer to an existing cluster. 11788 // 11789 // * ErrCodeInvalidClusterStateFault "InvalidClusterState" 11790 // The specified cluster is not in the available state. 11791 // 11792 // * ErrCodeUnsupportedOperationFault "UnsupportedOperation" 11793 // The requested operation isn't supported. 11794 // 11795 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/RestoreTableFromClusterSnapshot 11796 func (c *Redshift) RestoreTableFromClusterSnapshot(input *RestoreTableFromClusterSnapshotInput) (*RestoreTableFromClusterSnapshotOutput, error) { 11797 req, out := c.RestoreTableFromClusterSnapshotRequest(input) 11798 return out, req.Send() 11799 } 11800 11801 // RestoreTableFromClusterSnapshotWithContext is the same as RestoreTableFromClusterSnapshot with the addition of 11802 // the ability to pass a context and additional request options. 11803 // 11804 // See RestoreTableFromClusterSnapshot for details on how to use this API operation. 11805 // 11806 // The context must be non-nil and will be used for request cancellation. If 11807 // the context is nil a panic will occur. In the future the SDK may create 11808 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 11809 // for more information on using Contexts. 11810 func (c *Redshift) RestoreTableFromClusterSnapshotWithContext(ctx aws.Context, input *RestoreTableFromClusterSnapshotInput, opts ...request.Option) (*RestoreTableFromClusterSnapshotOutput, error) { 11811 req, out := c.RestoreTableFromClusterSnapshotRequest(input) 11812 req.SetContext(ctx) 11813 req.ApplyOptions(opts...) 11814 return out, req.Send() 11815 } 11816 11817 const opResumeCluster = "ResumeCluster" 11818 11819 // ResumeClusterRequest generates a "aws/request.Request" representing the 11820 // client's request for the ResumeCluster operation. The "output" return 11821 // value will be populated with the request's response once the request completes 11822 // successfully. 11823 // 11824 // Use "Send" method on the returned Request to send the API call to the service. 11825 // the "output" return value is not valid until after Send returns without error. 11826 // 11827 // See ResumeCluster for more information on using the ResumeCluster 11828 // API call, and error handling. 11829 // 11830 // This method is useful when you want to inject custom logic or configuration 11831 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 11832 // 11833 // 11834 // // Example sending a request using the ResumeClusterRequest method. 11835 // req, resp := client.ResumeClusterRequest(params) 11836 // 11837 // err := req.Send() 11838 // if err == nil { // resp is now filled 11839 // fmt.Println(resp) 11840 // } 11841 // 11842 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/ResumeCluster 11843 func (c *Redshift) ResumeClusterRequest(input *ResumeClusterInput) (req *request.Request, output *ResumeClusterOutput) { 11844 op := &request.Operation{ 11845 Name: opResumeCluster, 11846 HTTPMethod: "POST", 11847 HTTPPath: "/", 11848 } 11849 11850 if input == nil { 11851 input = &ResumeClusterInput{} 11852 } 11853 11854 output = &ResumeClusterOutput{} 11855 req = c.newRequest(op, input, output) 11856 return 11857 } 11858 11859 // ResumeCluster API operation for Amazon Redshift. 11860 // 11861 // Resumes a paused cluster. 11862 // 11863 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 11864 // with awserr.Error's Code and Message methods to get detailed information about 11865 // the error. 11866 // 11867 // See the AWS API reference guide for Amazon Redshift's 11868 // API operation ResumeCluster for usage and error information. 11869 // 11870 // Returned Error Codes: 11871 // * ErrCodeClusterNotFoundFault "ClusterNotFound" 11872 // The ClusterIdentifier parameter does not refer to an existing cluster. 11873 // 11874 // * ErrCodeInvalidClusterStateFault "InvalidClusterState" 11875 // The specified cluster is not in the available state. 11876 // 11877 // * ErrCodeInsufficientClusterCapacityFault "InsufficientClusterCapacity" 11878 // The number of nodes specified exceeds the allotted capacity of the cluster. 11879 // 11880 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/ResumeCluster 11881 func (c *Redshift) ResumeCluster(input *ResumeClusterInput) (*ResumeClusterOutput, error) { 11882 req, out := c.ResumeClusterRequest(input) 11883 return out, req.Send() 11884 } 11885 11886 // ResumeClusterWithContext is the same as ResumeCluster with the addition of 11887 // the ability to pass a context and additional request options. 11888 // 11889 // See ResumeCluster for details on how to use this API operation. 11890 // 11891 // The context must be non-nil and will be used for request cancellation. If 11892 // the context is nil a panic will occur. In the future the SDK may create 11893 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 11894 // for more information on using Contexts. 11895 func (c *Redshift) ResumeClusterWithContext(ctx aws.Context, input *ResumeClusterInput, opts ...request.Option) (*ResumeClusterOutput, error) { 11896 req, out := c.ResumeClusterRequest(input) 11897 req.SetContext(ctx) 11898 req.ApplyOptions(opts...) 11899 return out, req.Send() 11900 } 11901 11902 const opRevokeClusterSecurityGroupIngress = "RevokeClusterSecurityGroupIngress" 11903 11904 // RevokeClusterSecurityGroupIngressRequest generates a "aws/request.Request" representing the 11905 // client's request for the RevokeClusterSecurityGroupIngress operation. The "output" return 11906 // value will be populated with the request's response once the request completes 11907 // successfully. 11908 // 11909 // Use "Send" method on the returned Request to send the API call to the service. 11910 // the "output" return value is not valid until after Send returns without error. 11911 // 11912 // See RevokeClusterSecurityGroupIngress for more information on using the RevokeClusterSecurityGroupIngress 11913 // API call, and error handling. 11914 // 11915 // This method is useful when you want to inject custom logic or configuration 11916 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 11917 // 11918 // 11919 // // Example sending a request using the RevokeClusterSecurityGroupIngressRequest method. 11920 // req, resp := client.RevokeClusterSecurityGroupIngressRequest(params) 11921 // 11922 // err := req.Send() 11923 // if err == nil { // resp is now filled 11924 // fmt.Println(resp) 11925 // } 11926 // 11927 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/RevokeClusterSecurityGroupIngress 11928 func (c *Redshift) RevokeClusterSecurityGroupIngressRequest(input *RevokeClusterSecurityGroupIngressInput) (req *request.Request, output *RevokeClusterSecurityGroupIngressOutput) { 11929 op := &request.Operation{ 11930 Name: opRevokeClusterSecurityGroupIngress, 11931 HTTPMethod: "POST", 11932 HTTPPath: "/", 11933 } 11934 11935 if input == nil { 11936 input = &RevokeClusterSecurityGroupIngressInput{} 11937 } 11938 11939 output = &RevokeClusterSecurityGroupIngressOutput{} 11940 req = c.newRequest(op, input, output) 11941 return 11942 } 11943 11944 // RevokeClusterSecurityGroupIngress API operation for Amazon Redshift. 11945 // 11946 // Revokes an ingress rule in an Amazon Redshift security group for a previously 11947 // authorized IP range or Amazon EC2 security group. To add an ingress rule, 11948 // see AuthorizeClusterSecurityGroupIngress. For information about managing 11949 // security groups, go to Amazon Redshift Cluster Security Groups (https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-security-groups.html) 11950 // in the Amazon Redshift Cluster Management Guide. 11951 // 11952 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 11953 // with awserr.Error's Code and Message methods to get detailed information about 11954 // the error. 11955 // 11956 // See the AWS API reference guide for Amazon Redshift's 11957 // API operation RevokeClusterSecurityGroupIngress for usage and error information. 11958 // 11959 // Returned Error Codes: 11960 // * ErrCodeClusterSecurityGroupNotFoundFault "ClusterSecurityGroupNotFound" 11961 // The cluster security group name does not refer to an existing cluster security 11962 // group. 11963 // 11964 // * ErrCodeAuthorizationNotFoundFault "AuthorizationNotFound" 11965 // The specified CIDR IP range or EC2 security group is not authorized for the 11966 // specified cluster security group. 11967 // 11968 // * ErrCodeInvalidClusterSecurityGroupStateFault "InvalidClusterSecurityGroupState" 11969 // The state of the cluster security group is not available. 11970 // 11971 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/RevokeClusterSecurityGroupIngress 11972 func (c *Redshift) RevokeClusterSecurityGroupIngress(input *RevokeClusterSecurityGroupIngressInput) (*RevokeClusterSecurityGroupIngressOutput, error) { 11973 req, out := c.RevokeClusterSecurityGroupIngressRequest(input) 11974 return out, req.Send() 11975 } 11976 11977 // RevokeClusterSecurityGroupIngressWithContext is the same as RevokeClusterSecurityGroupIngress with the addition of 11978 // the ability to pass a context and additional request options. 11979 // 11980 // See RevokeClusterSecurityGroupIngress for details on how to use this API operation. 11981 // 11982 // The context must be non-nil and will be used for request cancellation. If 11983 // the context is nil a panic will occur. In the future the SDK may create 11984 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 11985 // for more information on using Contexts. 11986 func (c *Redshift) RevokeClusterSecurityGroupIngressWithContext(ctx aws.Context, input *RevokeClusterSecurityGroupIngressInput, opts ...request.Option) (*RevokeClusterSecurityGroupIngressOutput, error) { 11987 req, out := c.RevokeClusterSecurityGroupIngressRequest(input) 11988 req.SetContext(ctx) 11989 req.ApplyOptions(opts...) 11990 return out, req.Send() 11991 } 11992 11993 const opRevokeEndpointAccess = "RevokeEndpointAccess" 11994 11995 // RevokeEndpointAccessRequest generates a "aws/request.Request" representing the 11996 // client's request for the RevokeEndpointAccess operation. The "output" return 11997 // value will be populated with the request's response once the request completes 11998 // successfully. 11999 // 12000 // Use "Send" method on the returned Request to send the API call to the service. 12001 // the "output" return value is not valid until after Send returns without error. 12002 // 12003 // See RevokeEndpointAccess for more information on using the RevokeEndpointAccess 12004 // API call, and error handling. 12005 // 12006 // This method is useful when you want to inject custom logic or configuration 12007 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 12008 // 12009 // 12010 // // Example sending a request using the RevokeEndpointAccessRequest method. 12011 // req, resp := client.RevokeEndpointAccessRequest(params) 12012 // 12013 // err := req.Send() 12014 // if err == nil { // resp is now filled 12015 // fmt.Println(resp) 12016 // } 12017 // 12018 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/RevokeEndpointAccess 12019 func (c *Redshift) RevokeEndpointAccessRequest(input *RevokeEndpointAccessInput) (req *request.Request, output *RevokeEndpointAccessOutput) { 12020 op := &request.Operation{ 12021 Name: opRevokeEndpointAccess, 12022 HTTPMethod: "POST", 12023 HTTPPath: "/", 12024 } 12025 12026 if input == nil { 12027 input = &RevokeEndpointAccessInput{} 12028 } 12029 12030 output = &RevokeEndpointAccessOutput{} 12031 req = c.newRequest(op, input, output) 12032 return 12033 } 12034 12035 // RevokeEndpointAccess API operation for Amazon Redshift. 12036 // 12037 // Revokes access to a cluster. 12038 // 12039 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 12040 // with awserr.Error's Code and Message methods to get detailed information about 12041 // the error. 12042 // 12043 // See the AWS API reference guide for Amazon Redshift's 12044 // API operation RevokeEndpointAccess for usage and error information. 12045 // 12046 // Returned Error Codes: 12047 // * ErrCodeClusterNotFoundFault "ClusterNotFound" 12048 // The ClusterIdentifier parameter does not refer to an existing cluster. 12049 // 12050 // * ErrCodeInvalidEndpointStateFault "InvalidEndpointState" 12051 // The status of the endpoint is not valid. 12052 // 12053 // * ErrCodeInvalidClusterSecurityGroupStateFault "InvalidClusterSecurityGroupState" 12054 // The state of the cluster security group is not available. 12055 // 12056 // * ErrCodeEndpointNotFoundFault "EndpointNotFound" 12057 // The endpoint name doesn't refer to an existing endpoint. 12058 // 12059 // * ErrCodeEndpointAuthorizationNotFoundFault "EndpointAuthorizationNotFound" 12060 // The authorization for this endpoint can't be found. 12061 // 12062 // * ErrCodeInvalidAuthorizationStateFault "InvalidAuthorizationState" 12063 // The status of the authorization is not valid. 12064 // 12065 // * ErrCodeInvalidClusterStateFault "InvalidClusterState" 12066 // The specified cluster is not in the available state. 12067 // 12068 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/RevokeEndpointAccess 12069 func (c *Redshift) RevokeEndpointAccess(input *RevokeEndpointAccessInput) (*RevokeEndpointAccessOutput, error) { 12070 req, out := c.RevokeEndpointAccessRequest(input) 12071 return out, req.Send() 12072 } 12073 12074 // RevokeEndpointAccessWithContext is the same as RevokeEndpointAccess with the addition of 12075 // the ability to pass a context and additional request options. 12076 // 12077 // See RevokeEndpointAccess for details on how to use this API operation. 12078 // 12079 // The context must be non-nil and will be used for request cancellation. If 12080 // the context is nil a panic will occur. In the future the SDK may create 12081 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 12082 // for more information on using Contexts. 12083 func (c *Redshift) RevokeEndpointAccessWithContext(ctx aws.Context, input *RevokeEndpointAccessInput, opts ...request.Option) (*RevokeEndpointAccessOutput, error) { 12084 req, out := c.RevokeEndpointAccessRequest(input) 12085 req.SetContext(ctx) 12086 req.ApplyOptions(opts...) 12087 return out, req.Send() 12088 } 12089 12090 const opRevokeSnapshotAccess = "RevokeSnapshotAccess" 12091 12092 // RevokeSnapshotAccessRequest generates a "aws/request.Request" representing the 12093 // client's request for the RevokeSnapshotAccess operation. The "output" return 12094 // value will be populated with the request's response once the request completes 12095 // successfully. 12096 // 12097 // Use "Send" method on the returned Request to send the API call to the service. 12098 // the "output" return value is not valid until after Send returns without error. 12099 // 12100 // See RevokeSnapshotAccess for more information on using the RevokeSnapshotAccess 12101 // API call, and error handling. 12102 // 12103 // This method is useful when you want to inject custom logic or configuration 12104 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 12105 // 12106 // 12107 // // Example sending a request using the RevokeSnapshotAccessRequest method. 12108 // req, resp := client.RevokeSnapshotAccessRequest(params) 12109 // 12110 // err := req.Send() 12111 // if err == nil { // resp is now filled 12112 // fmt.Println(resp) 12113 // } 12114 // 12115 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/RevokeSnapshotAccess 12116 func (c *Redshift) RevokeSnapshotAccessRequest(input *RevokeSnapshotAccessInput) (req *request.Request, output *RevokeSnapshotAccessOutput) { 12117 op := &request.Operation{ 12118 Name: opRevokeSnapshotAccess, 12119 HTTPMethod: "POST", 12120 HTTPPath: "/", 12121 } 12122 12123 if input == nil { 12124 input = &RevokeSnapshotAccessInput{} 12125 } 12126 12127 output = &RevokeSnapshotAccessOutput{} 12128 req = c.newRequest(op, input, output) 12129 return 12130 } 12131 12132 // RevokeSnapshotAccess API operation for Amazon Redshift. 12133 // 12134 // Removes the ability of the specified Amazon Web Services account to restore 12135 // the specified snapshot. If the account is currently restoring the snapshot, 12136 // the restore will run to completion. 12137 // 12138 // For more information about working with snapshots, go to Amazon Redshift 12139 // Snapshots (https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-snapshots.html) 12140 // in the Amazon Redshift Cluster Management Guide. 12141 // 12142 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 12143 // with awserr.Error's Code and Message methods to get detailed information about 12144 // the error. 12145 // 12146 // See the AWS API reference guide for Amazon Redshift's 12147 // API operation RevokeSnapshotAccess for usage and error information. 12148 // 12149 // Returned Error Codes: 12150 // * ErrCodeAccessToSnapshotDeniedFault "AccessToSnapshotDenied" 12151 // The owner of the specified snapshot has not authorized your account to access 12152 // the snapshot. 12153 // 12154 // * ErrCodeAuthorizationNotFoundFault "AuthorizationNotFound" 12155 // The specified CIDR IP range or EC2 security group is not authorized for the 12156 // specified cluster security group. 12157 // 12158 // * ErrCodeClusterSnapshotNotFoundFault "ClusterSnapshotNotFound" 12159 // The snapshot identifier does not refer to an existing cluster snapshot. 12160 // 12161 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/RevokeSnapshotAccess 12162 func (c *Redshift) RevokeSnapshotAccess(input *RevokeSnapshotAccessInput) (*RevokeSnapshotAccessOutput, error) { 12163 req, out := c.RevokeSnapshotAccessRequest(input) 12164 return out, req.Send() 12165 } 12166 12167 // RevokeSnapshotAccessWithContext is the same as RevokeSnapshotAccess with the addition of 12168 // the ability to pass a context and additional request options. 12169 // 12170 // See RevokeSnapshotAccess for details on how to use this API operation. 12171 // 12172 // The context must be non-nil and will be used for request cancellation. If 12173 // the context is nil a panic will occur. In the future the SDK may create 12174 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 12175 // for more information on using Contexts. 12176 func (c *Redshift) RevokeSnapshotAccessWithContext(ctx aws.Context, input *RevokeSnapshotAccessInput, opts ...request.Option) (*RevokeSnapshotAccessOutput, error) { 12177 req, out := c.RevokeSnapshotAccessRequest(input) 12178 req.SetContext(ctx) 12179 req.ApplyOptions(opts...) 12180 return out, req.Send() 12181 } 12182 12183 const opRotateEncryptionKey = "RotateEncryptionKey" 12184 12185 // RotateEncryptionKeyRequest generates a "aws/request.Request" representing the 12186 // client's request for the RotateEncryptionKey operation. The "output" return 12187 // value will be populated with the request's response once the request completes 12188 // successfully. 12189 // 12190 // Use "Send" method on the returned Request to send the API call to the service. 12191 // the "output" return value is not valid until after Send returns without error. 12192 // 12193 // See RotateEncryptionKey for more information on using the RotateEncryptionKey 12194 // API call, and error handling. 12195 // 12196 // This method is useful when you want to inject custom logic or configuration 12197 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 12198 // 12199 // 12200 // // Example sending a request using the RotateEncryptionKeyRequest method. 12201 // req, resp := client.RotateEncryptionKeyRequest(params) 12202 // 12203 // err := req.Send() 12204 // if err == nil { // resp is now filled 12205 // fmt.Println(resp) 12206 // } 12207 // 12208 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/RotateEncryptionKey 12209 func (c *Redshift) RotateEncryptionKeyRequest(input *RotateEncryptionKeyInput) (req *request.Request, output *RotateEncryptionKeyOutput) { 12210 op := &request.Operation{ 12211 Name: opRotateEncryptionKey, 12212 HTTPMethod: "POST", 12213 HTTPPath: "/", 12214 } 12215 12216 if input == nil { 12217 input = &RotateEncryptionKeyInput{} 12218 } 12219 12220 output = &RotateEncryptionKeyOutput{} 12221 req = c.newRequest(op, input, output) 12222 return 12223 } 12224 12225 // RotateEncryptionKey API operation for Amazon Redshift. 12226 // 12227 // Rotates the encryption keys for a cluster. 12228 // 12229 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 12230 // with awserr.Error's Code and Message methods to get detailed information about 12231 // the error. 12232 // 12233 // See the AWS API reference guide for Amazon Redshift's 12234 // API operation RotateEncryptionKey for usage and error information. 12235 // 12236 // Returned Error Codes: 12237 // * ErrCodeClusterNotFoundFault "ClusterNotFound" 12238 // The ClusterIdentifier parameter does not refer to an existing cluster. 12239 // 12240 // * ErrCodeInvalidClusterStateFault "InvalidClusterState" 12241 // The specified cluster is not in the available state. 12242 // 12243 // * ErrCodeDependentServiceRequestThrottlingFault "DependentServiceRequestThrottlingFault" 12244 // The request cannot be completed because a dependent service is throttling 12245 // requests made by Amazon Redshift on your behalf. Wait and retry the request. 12246 // 12247 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/RotateEncryptionKey 12248 func (c *Redshift) RotateEncryptionKey(input *RotateEncryptionKeyInput) (*RotateEncryptionKeyOutput, error) { 12249 req, out := c.RotateEncryptionKeyRequest(input) 12250 return out, req.Send() 12251 } 12252 12253 // RotateEncryptionKeyWithContext is the same as RotateEncryptionKey with the addition of 12254 // the ability to pass a context and additional request options. 12255 // 12256 // See RotateEncryptionKey for details on how to use this API operation. 12257 // 12258 // The context must be non-nil and will be used for request cancellation. If 12259 // the context is nil a panic will occur. In the future the SDK may create 12260 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 12261 // for more information on using Contexts. 12262 func (c *Redshift) RotateEncryptionKeyWithContext(ctx aws.Context, input *RotateEncryptionKeyInput, opts ...request.Option) (*RotateEncryptionKeyOutput, error) { 12263 req, out := c.RotateEncryptionKeyRequest(input) 12264 req.SetContext(ctx) 12265 req.ApplyOptions(opts...) 12266 return out, req.Send() 12267 } 12268 12269 const opUpdatePartnerStatus = "UpdatePartnerStatus" 12270 12271 // UpdatePartnerStatusRequest generates a "aws/request.Request" representing the 12272 // client's request for the UpdatePartnerStatus operation. The "output" return 12273 // value will be populated with the request's response once the request completes 12274 // successfully. 12275 // 12276 // Use "Send" method on the returned Request to send the API call to the service. 12277 // the "output" return value is not valid until after Send returns without error. 12278 // 12279 // See UpdatePartnerStatus for more information on using the UpdatePartnerStatus 12280 // API call, and error handling. 12281 // 12282 // This method is useful when you want to inject custom logic or configuration 12283 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 12284 // 12285 // 12286 // // Example sending a request using the UpdatePartnerStatusRequest method. 12287 // req, resp := client.UpdatePartnerStatusRequest(params) 12288 // 12289 // err := req.Send() 12290 // if err == nil { // resp is now filled 12291 // fmt.Println(resp) 12292 // } 12293 // 12294 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/UpdatePartnerStatus 12295 func (c *Redshift) UpdatePartnerStatusRequest(input *UpdatePartnerStatusInput) (req *request.Request, output *UpdatePartnerStatusOutput) { 12296 op := &request.Operation{ 12297 Name: opUpdatePartnerStatus, 12298 HTTPMethod: "POST", 12299 HTTPPath: "/", 12300 } 12301 12302 if input == nil { 12303 input = &UpdatePartnerStatusInput{} 12304 } 12305 12306 output = &UpdatePartnerStatusOutput{} 12307 req = c.newRequest(op, input, output) 12308 return 12309 } 12310 12311 // UpdatePartnerStatus API operation for Amazon Redshift. 12312 // 12313 // Updates the status of a partner integration. 12314 // 12315 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 12316 // with awserr.Error's Code and Message methods to get detailed information about 12317 // the error. 12318 // 12319 // See the AWS API reference guide for Amazon Redshift's 12320 // API operation UpdatePartnerStatus for usage and error information. 12321 // 12322 // Returned Error Codes: 12323 // * ErrCodePartnerNotFoundFault "PartnerNotFound" 12324 // The name of the partner was not found. 12325 // 12326 // * ErrCodeClusterNotFoundFault "ClusterNotFound" 12327 // The ClusterIdentifier parameter does not refer to an existing cluster. 12328 // 12329 // * ErrCodeUnauthorizedPartnerIntegrationFault "UnauthorizedPartnerIntegration" 12330 // The partner integration is not authorized. 12331 // 12332 // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/UpdatePartnerStatus 12333 func (c *Redshift) UpdatePartnerStatus(input *UpdatePartnerStatusInput) (*UpdatePartnerStatusOutput, error) { 12334 req, out := c.UpdatePartnerStatusRequest(input) 12335 return out, req.Send() 12336 } 12337 12338 // UpdatePartnerStatusWithContext is the same as UpdatePartnerStatus with the addition of 12339 // the ability to pass a context and additional request options. 12340 // 12341 // See UpdatePartnerStatus for details on how to use this API operation. 12342 // 12343 // The context must be non-nil and will be used for request cancellation. If 12344 // the context is nil a panic will occur. In the future the SDK may create 12345 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 12346 // for more information on using Contexts. 12347 func (c *Redshift) UpdatePartnerStatusWithContext(ctx aws.Context, input *UpdatePartnerStatusInput, opts ...request.Option) (*UpdatePartnerStatusOutput, error) { 12348 req, out := c.UpdatePartnerStatusRequest(input) 12349 req.SetContext(ctx) 12350 req.ApplyOptions(opts...) 12351 return out, req.Send() 12352 } 12353 12354 type AcceptReservedNodeExchangeInput struct { 12355 _ struct{} `type:"structure"` 12356 12357 // A string representing the node identifier of the DC1 Reserved Node to be 12358 // exchanged. 12359 // 12360 // ReservedNodeId is a required field 12361 ReservedNodeId *string `type:"string" required:"true"` 12362 12363 // The unique identifier of the DC2 Reserved Node offering to be used for the 12364 // exchange. You can obtain the value for the parameter by calling GetReservedNodeExchangeOfferings 12365 // 12366 // TargetReservedNodeOfferingId is a required field 12367 TargetReservedNodeOfferingId *string `type:"string" required:"true"` 12368 } 12369 12370 // String returns the string representation. 12371 // 12372 // API parameter values that are decorated as "sensitive" in the API will not 12373 // be included in the string output. The member name will be present, but the 12374 // value will be replaced with "sensitive". 12375 func (s AcceptReservedNodeExchangeInput) String() string { 12376 return awsutil.Prettify(s) 12377 } 12378 12379 // GoString returns the string representation. 12380 // 12381 // API parameter values that are decorated as "sensitive" in the API will not 12382 // be included in the string output. The member name will be present, but the 12383 // value will be replaced with "sensitive". 12384 func (s AcceptReservedNodeExchangeInput) GoString() string { 12385 return s.String() 12386 } 12387 12388 // Validate inspects the fields of the type to determine if they are valid. 12389 func (s *AcceptReservedNodeExchangeInput) Validate() error { 12390 invalidParams := request.ErrInvalidParams{Context: "AcceptReservedNodeExchangeInput"} 12391 if s.ReservedNodeId == nil { 12392 invalidParams.Add(request.NewErrParamRequired("ReservedNodeId")) 12393 } 12394 if s.TargetReservedNodeOfferingId == nil { 12395 invalidParams.Add(request.NewErrParamRequired("TargetReservedNodeOfferingId")) 12396 } 12397 12398 if invalidParams.Len() > 0 { 12399 return invalidParams 12400 } 12401 return nil 12402 } 12403 12404 // SetReservedNodeId sets the ReservedNodeId field's value. 12405 func (s *AcceptReservedNodeExchangeInput) SetReservedNodeId(v string) *AcceptReservedNodeExchangeInput { 12406 s.ReservedNodeId = &v 12407 return s 12408 } 12409 12410 // SetTargetReservedNodeOfferingId sets the TargetReservedNodeOfferingId field's value. 12411 func (s *AcceptReservedNodeExchangeInput) SetTargetReservedNodeOfferingId(v string) *AcceptReservedNodeExchangeInput { 12412 s.TargetReservedNodeOfferingId = &v 12413 return s 12414 } 12415 12416 type AcceptReservedNodeExchangeOutput struct { 12417 _ struct{} `type:"structure"` 12418 12419 // Describes a reserved node. You can call the DescribeReservedNodeOfferings 12420 // API to obtain the available reserved node offerings. 12421 ExchangedReservedNode *ReservedNode `type:"structure"` 12422 } 12423 12424 // String returns the string representation. 12425 // 12426 // API parameter values that are decorated as "sensitive" in the API will not 12427 // be included in the string output. The member name will be present, but the 12428 // value will be replaced with "sensitive". 12429 func (s AcceptReservedNodeExchangeOutput) String() string { 12430 return awsutil.Prettify(s) 12431 } 12432 12433 // GoString returns the string representation. 12434 // 12435 // API parameter values that are decorated as "sensitive" in the API will not 12436 // be included in the string output. The member name will be present, but the 12437 // value will be replaced with "sensitive". 12438 func (s AcceptReservedNodeExchangeOutput) GoString() string { 12439 return s.String() 12440 } 12441 12442 // SetExchangedReservedNode sets the ExchangedReservedNode field's value. 12443 func (s *AcceptReservedNodeExchangeOutput) SetExchangedReservedNode(v *ReservedNode) *AcceptReservedNodeExchangeOutput { 12444 s.ExchangedReservedNode = v 12445 return s 12446 } 12447 12448 // A name value pair that describes an aspect of an account. 12449 type AccountAttribute struct { 12450 _ struct{} `type:"structure"` 12451 12452 // The name of the attribute. 12453 AttributeName *string `type:"string"` 12454 12455 // A list of attribute values. 12456 AttributeValues []*AttributeValueTarget `locationNameList:"AttributeValueTarget" type:"list"` 12457 } 12458 12459 // String returns the string representation. 12460 // 12461 // API parameter values that are decorated as "sensitive" in the API will not 12462 // be included in the string output. The member name will be present, but the 12463 // value will be replaced with "sensitive". 12464 func (s AccountAttribute) String() string { 12465 return awsutil.Prettify(s) 12466 } 12467 12468 // GoString returns the string representation. 12469 // 12470 // API parameter values that are decorated as "sensitive" in the API will not 12471 // be included in the string output. The member name will be present, but the 12472 // value will be replaced with "sensitive". 12473 func (s AccountAttribute) GoString() string { 12474 return s.String() 12475 } 12476 12477 // SetAttributeName sets the AttributeName field's value. 12478 func (s *AccountAttribute) SetAttributeName(v string) *AccountAttribute { 12479 s.AttributeName = &v 12480 return s 12481 } 12482 12483 // SetAttributeValues sets the AttributeValues field's value. 12484 func (s *AccountAttribute) SetAttributeValues(v []*AttributeValueTarget) *AccountAttribute { 12485 s.AttributeValues = v 12486 return s 12487 } 12488 12489 // Describes an Amazon Web Services account authorized to restore a snapshot. 12490 type AccountWithRestoreAccess struct { 12491 _ struct{} `type:"structure"` 12492 12493 // The identifier of an Amazon Web Services support account authorized to restore 12494 // a snapshot. For Amazon Web Services Support, the identifier is amazon-redshift-support. 12495 AccountAlias *string `type:"string"` 12496 12497 // The identifier of an Amazon Web Services account authorized to restore a 12498 // snapshot. 12499 AccountId *string `type:"string"` 12500 } 12501 12502 // String returns the string representation. 12503 // 12504 // API parameter values that are decorated as "sensitive" in the API will not 12505 // be included in the string output. The member name will be present, but the 12506 // value will be replaced with "sensitive". 12507 func (s AccountWithRestoreAccess) String() string { 12508 return awsutil.Prettify(s) 12509 } 12510 12511 // GoString returns the string representation. 12512 // 12513 // API parameter values that are decorated as "sensitive" in the API will not 12514 // be included in the string output. The member name will be present, but the 12515 // value will be replaced with "sensitive". 12516 func (s AccountWithRestoreAccess) GoString() string { 12517 return s.String() 12518 } 12519 12520 // SetAccountAlias sets the AccountAlias field's value. 12521 func (s *AccountWithRestoreAccess) SetAccountAlias(v string) *AccountWithRestoreAccess { 12522 s.AccountAlias = &v 12523 return s 12524 } 12525 12526 // SetAccountId sets the AccountId field's value. 12527 func (s *AccountWithRestoreAccess) SetAccountId(v string) *AccountWithRestoreAccess { 12528 s.AccountId = &v 12529 return s 12530 } 12531 12532 type AddPartnerInput struct { 12533 _ struct{} `type:"structure"` 12534 12535 // The Amazon Web Services account ID that owns the cluster. 12536 // 12537 // AccountId is a required field 12538 AccountId *string `min:"12" type:"string" required:"true"` 12539 12540 // The cluster identifier of the cluster that receives data from the partner. 12541 // 12542 // ClusterIdentifier is a required field 12543 ClusterIdentifier *string `type:"string" required:"true"` 12544 12545 // The name of the database that receives data from the partner. 12546 // 12547 // DatabaseName is a required field 12548 DatabaseName *string `type:"string" required:"true"` 12549 12550 // The name of the partner that is authorized to send data. 12551 // 12552 // PartnerName is a required field 12553 PartnerName *string `type:"string" required:"true"` 12554 } 12555 12556 // String returns the string representation. 12557 // 12558 // API parameter values that are decorated as "sensitive" in the API will not 12559 // be included in the string output. The member name will be present, but the 12560 // value will be replaced with "sensitive". 12561 func (s AddPartnerInput) String() string { 12562 return awsutil.Prettify(s) 12563 } 12564 12565 // GoString returns the string representation. 12566 // 12567 // API parameter values that are decorated as "sensitive" in the API will not 12568 // be included in the string output. The member name will be present, but the 12569 // value will be replaced with "sensitive". 12570 func (s AddPartnerInput) GoString() string { 12571 return s.String() 12572 } 12573 12574 // Validate inspects the fields of the type to determine if they are valid. 12575 func (s *AddPartnerInput) Validate() error { 12576 invalidParams := request.ErrInvalidParams{Context: "AddPartnerInput"} 12577 if s.AccountId == nil { 12578 invalidParams.Add(request.NewErrParamRequired("AccountId")) 12579 } 12580 if s.AccountId != nil && len(*s.AccountId) < 12 { 12581 invalidParams.Add(request.NewErrParamMinLen("AccountId", 12)) 12582 } 12583 if s.ClusterIdentifier == nil { 12584 invalidParams.Add(request.NewErrParamRequired("ClusterIdentifier")) 12585 } 12586 if s.DatabaseName == nil { 12587 invalidParams.Add(request.NewErrParamRequired("DatabaseName")) 12588 } 12589 if s.PartnerName == nil { 12590 invalidParams.Add(request.NewErrParamRequired("PartnerName")) 12591 } 12592 12593 if invalidParams.Len() > 0 { 12594 return invalidParams 12595 } 12596 return nil 12597 } 12598 12599 // SetAccountId sets the AccountId field's value. 12600 func (s *AddPartnerInput) SetAccountId(v string) *AddPartnerInput { 12601 s.AccountId = &v 12602 return s 12603 } 12604 12605 // SetClusterIdentifier sets the ClusterIdentifier field's value. 12606 func (s *AddPartnerInput) SetClusterIdentifier(v string) *AddPartnerInput { 12607 s.ClusterIdentifier = &v 12608 return s 12609 } 12610 12611 // SetDatabaseName sets the DatabaseName field's value. 12612 func (s *AddPartnerInput) SetDatabaseName(v string) *AddPartnerInput { 12613 s.DatabaseName = &v 12614 return s 12615 } 12616 12617 // SetPartnerName sets the PartnerName field's value. 12618 func (s *AddPartnerInput) SetPartnerName(v string) *AddPartnerInput { 12619 s.PartnerName = &v 12620 return s 12621 } 12622 12623 type AddPartnerOutput struct { 12624 _ struct{} `type:"structure"` 12625 12626 // The name of the database that receives data from the partner. 12627 DatabaseName *string `type:"string"` 12628 12629 // The name of the partner that is authorized to send data. 12630 PartnerName *string `type:"string"` 12631 } 12632 12633 // String returns the string representation. 12634 // 12635 // API parameter values that are decorated as "sensitive" in the API will not 12636 // be included in the string output. The member name will be present, but the 12637 // value will be replaced with "sensitive". 12638 func (s AddPartnerOutput) String() string { 12639 return awsutil.Prettify(s) 12640 } 12641 12642 // GoString returns the string representation. 12643 // 12644 // API parameter values that are decorated as "sensitive" in the API will not 12645 // be included in the string output. The member name will be present, but the 12646 // value will be replaced with "sensitive". 12647 func (s AddPartnerOutput) GoString() string { 12648 return s.String() 12649 } 12650 12651 // SetDatabaseName sets the DatabaseName field's value. 12652 func (s *AddPartnerOutput) SetDatabaseName(v string) *AddPartnerOutput { 12653 s.DatabaseName = &v 12654 return s 12655 } 12656 12657 // SetPartnerName sets the PartnerName field's value. 12658 func (s *AddPartnerOutput) SetPartnerName(v string) *AddPartnerOutput { 12659 s.PartnerName = &v 12660 return s 12661 } 12662 12663 // The AQUA (Advanced Query Accelerator) configuration of the cluster. 12664 type AquaConfiguration struct { 12665 _ struct{} `type:"structure"` 12666 12667 // The value represents how the cluster is configured to use AQUA. Possible 12668 // values include the following. 12669 // 12670 // * enabled - Use AQUA if it is available for the current Amazon Web Services 12671 // Region and Amazon Redshift node type. 12672 // 12673 // * disabled - Don't use AQUA. 12674 // 12675 // * auto - Amazon Redshift determines whether to use AQUA. 12676 AquaConfigurationStatus *string `type:"string" enum:"AquaConfigurationStatus"` 12677 12678 // The value indicates the status of AQUA on the cluster. Possible values include 12679 // the following. 12680 // 12681 // * enabled - AQUA is enabled. 12682 // 12683 // * disabled - AQUA is not enabled. 12684 // 12685 // * applying - AQUA status is being applied. 12686 AquaStatus *string `type:"string" enum:"AquaStatus"` 12687 } 12688 12689 // String returns the string representation. 12690 // 12691 // API parameter values that are decorated as "sensitive" in the API will not 12692 // be included in the string output. The member name will be present, but the 12693 // value will be replaced with "sensitive". 12694 func (s AquaConfiguration) String() string { 12695 return awsutil.Prettify(s) 12696 } 12697 12698 // GoString returns the string representation. 12699 // 12700 // API parameter values that are decorated as "sensitive" in the API will not 12701 // be included in the string output. The member name will be present, but the 12702 // value will be replaced with "sensitive". 12703 func (s AquaConfiguration) GoString() string { 12704 return s.String() 12705 } 12706 12707 // SetAquaConfigurationStatus sets the AquaConfigurationStatus field's value. 12708 func (s *AquaConfiguration) SetAquaConfigurationStatus(v string) *AquaConfiguration { 12709 s.AquaConfigurationStatus = &v 12710 return s 12711 } 12712 12713 // SetAquaStatus sets the AquaStatus field's value. 12714 func (s *AquaConfiguration) SetAquaStatus(v string) *AquaConfiguration { 12715 s.AquaStatus = &v 12716 return s 12717 } 12718 12719 type AssociateDataShareConsumerInput struct { 12720 _ struct{} `type:"structure"` 12721 12722 // A value that specifies whether the datashare is associated with the entire 12723 // account. 12724 AssociateEntireAccount *bool `type:"boolean"` 12725 12726 // The Amazon Resource Name (ARN) of the consumer that is associated with the 12727 // datashare. 12728 ConsumerArn *string `type:"string"` 12729 12730 // The Amazon Resource Name (ARN) of the datashare that the consumer is to use 12731 // with the account or the namespace. 12732 // 12733 // DataShareArn is a required field 12734 DataShareArn *string `type:"string" required:"true"` 12735 } 12736 12737 // String returns the string representation. 12738 // 12739 // API parameter values that are decorated as "sensitive" in the API will not 12740 // be included in the string output. The member name will be present, but the 12741 // value will be replaced with "sensitive". 12742 func (s AssociateDataShareConsumerInput) String() string { 12743 return awsutil.Prettify(s) 12744 } 12745 12746 // GoString returns the string representation. 12747 // 12748 // API parameter values that are decorated as "sensitive" in the API will not 12749 // be included in the string output. The member name will be present, but the 12750 // value will be replaced with "sensitive". 12751 func (s AssociateDataShareConsumerInput) GoString() string { 12752 return s.String() 12753 } 12754 12755 // Validate inspects the fields of the type to determine if they are valid. 12756 func (s *AssociateDataShareConsumerInput) Validate() error { 12757 invalidParams := request.ErrInvalidParams{Context: "AssociateDataShareConsumerInput"} 12758 if s.DataShareArn == nil { 12759 invalidParams.Add(request.NewErrParamRequired("DataShareArn")) 12760 } 12761 12762 if invalidParams.Len() > 0 { 12763 return invalidParams 12764 } 12765 return nil 12766 } 12767 12768 // SetAssociateEntireAccount sets the AssociateEntireAccount field's value. 12769 func (s *AssociateDataShareConsumerInput) SetAssociateEntireAccount(v bool) *AssociateDataShareConsumerInput { 12770 s.AssociateEntireAccount = &v 12771 return s 12772 } 12773 12774 // SetConsumerArn sets the ConsumerArn field's value. 12775 func (s *AssociateDataShareConsumerInput) SetConsumerArn(v string) *AssociateDataShareConsumerInput { 12776 s.ConsumerArn = &v 12777 return s 12778 } 12779 12780 // SetDataShareArn sets the DataShareArn field's value. 12781 func (s *AssociateDataShareConsumerInput) SetDataShareArn(v string) *AssociateDataShareConsumerInput { 12782 s.DataShareArn = &v 12783 return s 12784 } 12785 12786 type AssociateDataShareConsumerOutput struct { 12787 _ struct{} `type:"structure"` 12788 12789 // A value that specifies whether the datashare can be shared to a publicly 12790 // accessible cluster. 12791 AllowPubliclyAccessibleConsumers *bool `type:"boolean"` 12792 12793 // An Amazon Resource Name (ARN) that references the datashare that is owned 12794 // by a specific namespace of the producer cluster. A datashare ARN is in the 12795 // arn:aws:redshift:{region}:{account-id}:{datashare}:{namespace-guid}/{datashare-name} 12796 // format. 12797 DataShareArn *string `type:"string"` 12798 12799 // A value that specifies when the datashare has an association between a producer 12800 // and data consumers. 12801 DataShareAssociations []*DataShareAssociation `type:"list"` 12802 12803 // The Amazon Resource Name (ARN) of the producer. 12804 ProducerArn *string `type:"string"` 12805 } 12806 12807 // String returns the string representation. 12808 // 12809 // API parameter values that are decorated as "sensitive" in the API will not 12810 // be included in the string output. The member name will be present, but the 12811 // value will be replaced with "sensitive". 12812 func (s AssociateDataShareConsumerOutput) String() string { 12813 return awsutil.Prettify(s) 12814 } 12815 12816 // GoString returns the string representation. 12817 // 12818 // API parameter values that are decorated as "sensitive" in the API will not 12819 // be included in the string output. The member name will be present, but the 12820 // value will be replaced with "sensitive". 12821 func (s AssociateDataShareConsumerOutput) GoString() string { 12822 return s.String() 12823 } 12824 12825 // SetAllowPubliclyAccessibleConsumers sets the AllowPubliclyAccessibleConsumers field's value. 12826 func (s *AssociateDataShareConsumerOutput) SetAllowPubliclyAccessibleConsumers(v bool) *AssociateDataShareConsumerOutput { 12827 s.AllowPubliclyAccessibleConsumers = &v 12828 return s 12829 } 12830 12831 // SetDataShareArn sets the DataShareArn field's value. 12832 func (s *AssociateDataShareConsumerOutput) SetDataShareArn(v string) *AssociateDataShareConsumerOutput { 12833 s.DataShareArn = &v 12834 return s 12835 } 12836 12837 // SetDataShareAssociations sets the DataShareAssociations field's value. 12838 func (s *AssociateDataShareConsumerOutput) SetDataShareAssociations(v []*DataShareAssociation) *AssociateDataShareConsumerOutput { 12839 s.DataShareAssociations = v 12840 return s 12841 } 12842 12843 // SetProducerArn sets the ProducerArn field's value. 12844 func (s *AssociateDataShareConsumerOutput) SetProducerArn(v string) *AssociateDataShareConsumerOutput { 12845 s.ProducerArn = &v 12846 return s 12847 } 12848 12849 // Describes an attribute value. 12850 type AttributeValueTarget struct { 12851 _ struct{} `type:"structure"` 12852 12853 // The value of the attribute. 12854 AttributeValue *string `type:"string"` 12855 } 12856 12857 // String returns the string representation. 12858 // 12859 // API parameter values that are decorated as "sensitive" in the API will not 12860 // be included in the string output. The member name will be present, but the 12861 // value will be replaced with "sensitive". 12862 func (s AttributeValueTarget) String() string { 12863 return awsutil.Prettify(s) 12864 } 12865 12866 // GoString returns the string representation. 12867 // 12868 // API parameter values that are decorated as "sensitive" in the API will not 12869 // be included in the string output. The member name will be present, but the 12870 // value will be replaced with "sensitive". 12871 func (s AttributeValueTarget) GoString() string { 12872 return s.String() 12873 } 12874 12875 // SetAttributeValue sets the AttributeValue field's value. 12876 func (s *AttributeValueTarget) SetAttributeValue(v string) *AttributeValueTarget { 12877 s.AttributeValue = &v 12878 return s 12879 } 12880 12881 // Describes an authentication profile. 12882 type AuthenticationProfile struct { 12883 _ struct{} `type:"structure"` 12884 12885 // The content of the authentication profile in JSON format. The maximum length 12886 // of the JSON string is determined by a quota for your account. 12887 AuthenticationProfileContent *string `type:"string"` 12888 12889 // The name of the authentication profile. 12890 AuthenticationProfileName *string `type:"string"` 12891 } 12892 12893 // String returns the string representation. 12894 // 12895 // API parameter values that are decorated as "sensitive" in the API will not 12896 // be included in the string output. The member name will be present, but the 12897 // value will be replaced with "sensitive". 12898 func (s AuthenticationProfile) String() string { 12899 return awsutil.Prettify(s) 12900 } 12901 12902 // GoString returns the string representation. 12903 // 12904 // API parameter values that are decorated as "sensitive" in the API will not 12905 // be included in the string output. The member name will be present, but the 12906 // value will be replaced with "sensitive". 12907 func (s AuthenticationProfile) GoString() string { 12908 return s.String() 12909 } 12910 12911 // SetAuthenticationProfileContent sets the AuthenticationProfileContent field's value. 12912 func (s *AuthenticationProfile) SetAuthenticationProfileContent(v string) *AuthenticationProfile { 12913 s.AuthenticationProfileContent = &v 12914 return s 12915 } 12916 12917 // SetAuthenticationProfileName sets the AuthenticationProfileName field's value. 12918 func (s *AuthenticationProfile) SetAuthenticationProfileName(v string) *AuthenticationProfile { 12919 s.AuthenticationProfileName = &v 12920 return s 12921 } 12922 12923 type AuthorizeClusterSecurityGroupIngressInput struct { 12924 _ struct{} `type:"structure"` 12925 12926 // The IP range to be added the Amazon Redshift security group. 12927 CIDRIP *string `type:"string"` 12928 12929 // The name of the security group to which the ingress rule is added. 12930 // 12931 // ClusterSecurityGroupName is a required field 12932 ClusterSecurityGroupName *string `type:"string" required:"true"` 12933 12934 // The EC2 security group to be added the Amazon Redshift security group. 12935 EC2SecurityGroupName *string `type:"string"` 12936 12937 // The Amazon Web Services account number of the owner of the security group 12938 // specified by the EC2SecurityGroupName parameter. The Amazon Web Services 12939 // Access Key ID is not an acceptable value. 12940 // 12941 // Example: 111122223333 12942 EC2SecurityGroupOwnerId *string `type:"string"` 12943 } 12944 12945 // String returns the string representation. 12946 // 12947 // API parameter values that are decorated as "sensitive" in the API will not 12948 // be included in the string output. The member name will be present, but the 12949 // value will be replaced with "sensitive". 12950 func (s AuthorizeClusterSecurityGroupIngressInput) String() string { 12951 return awsutil.Prettify(s) 12952 } 12953 12954 // GoString returns the string representation. 12955 // 12956 // API parameter values that are decorated as "sensitive" in the API will not 12957 // be included in the string output. The member name will be present, but the 12958 // value will be replaced with "sensitive". 12959 func (s AuthorizeClusterSecurityGroupIngressInput) GoString() string { 12960 return s.String() 12961 } 12962 12963 // Validate inspects the fields of the type to determine if they are valid. 12964 func (s *AuthorizeClusterSecurityGroupIngressInput) Validate() error { 12965 invalidParams := request.ErrInvalidParams{Context: "AuthorizeClusterSecurityGroupIngressInput"} 12966 if s.ClusterSecurityGroupName == nil { 12967 invalidParams.Add(request.NewErrParamRequired("ClusterSecurityGroupName")) 12968 } 12969 12970 if invalidParams.Len() > 0 { 12971 return invalidParams 12972 } 12973 return nil 12974 } 12975 12976 // SetCIDRIP sets the CIDRIP field's value. 12977 func (s *AuthorizeClusterSecurityGroupIngressInput) SetCIDRIP(v string) *AuthorizeClusterSecurityGroupIngressInput { 12978 s.CIDRIP = &v 12979 return s 12980 } 12981 12982 // SetClusterSecurityGroupName sets the ClusterSecurityGroupName field's value. 12983 func (s *AuthorizeClusterSecurityGroupIngressInput) SetClusterSecurityGroupName(v string) *AuthorizeClusterSecurityGroupIngressInput { 12984 s.ClusterSecurityGroupName = &v 12985 return s 12986 } 12987 12988 // SetEC2SecurityGroupName sets the EC2SecurityGroupName field's value. 12989 func (s *AuthorizeClusterSecurityGroupIngressInput) SetEC2SecurityGroupName(v string) *AuthorizeClusterSecurityGroupIngressInput { 12990 s.EC2SecurityGroupName = &v 12991 return s 12992 } 12993 12994 // SetEC2SecurityGroupOwnerId sets the EC2SecurityGroupOwnerId field's value. 12995 func (s *AuthorizeClusterSecurityGroupIngressInput) SetEC2SecurityGroupOwnerId(v string) *AuthorizeClusterSecurityGroupIngressInput { 12996 s.EC2SecurityGroupOwnerId = &v 12997 return s 12998 } 12999 13000 type AuthorizeClusterSecurityGroupIngressOutput struct { 13001 _ struct{} `type:"structure"` 13002 13003 // Describes a security group. 13004 ClusterSecurityGroup *ClusterSecurityGroup `type:"structure"` 13005 } 13006 13007 // String returns the string representation. 13008 // 13009 // API parameter values that are decorated as "sensitive" in the API will not 13010 // be included in the string output. The member name will be present, but the 13011 // value will be replaced with "sensitive". 13012 func (s AuthorizeClusterSecurityGroupIngressOutput) String() string { 13013 return awsutil.Prettify(s) 13014 } 13015 13016 // GoString returns the string representation. 13017 // 13018 // API parameter values that are decorated as "sensitive" in the API will not 13019 // be included in the string output. The member name will be present, but the 13020 // value will be replaced with "sensitive". 13021 func (s AuthorizeClusterSecurityGroupIngressOutput) GoString() string { 13022 return s.String() 13023 } 13024 13025 // SetClusterSecurityGroup sets the ClusterSecurityGroup field's value. 13026 func (s *AuthorizeClusterSecurityGroupIngressOutput) SetClusterSecurityGroup(v *ClusterSecurityGroup) *AuthorizeClusterSecurityGroupIngressOutput { 13027 s.ClusterSecurityGroup = v 13028 return s 13029 } 13030 13031 type AuthorizeDataShareInput struct { 13032 _ struct{} `type:"structure"` 13033 13034 // The identifier of the data consumer that is authorized to access the datashare. 13035 // This identifier is an AWS account ID. 13036 // 13037 // ConsumerIdentifier is a required field 13038 ConsumerIdentifier *string `type:"string" required:"true"` 13039 13040 // The Amazon Resource Name (ARN) of the datashare that producers are to authorize 13041 // sharing for. 13042 // 13043 // DataShareArn is a required field 13044 DataShareArn *string `type:"string" required:"true"` 13045 } 13046 13047 // String returns the string representation. 13048 // 13049 // API parameter values that are decorated as "sensitive" in the API will not 13050 // be included in the string output. The member name will be present, but the 13051 // value will be replaced with "sensitive". 13052 func (s AuthorizeDataShareInput) String() string { 13053 return awsutil.Prettify(s) 13054 } 13055 13056 // GoString returns the string representation. 13057 // 13058 // API parameter values that are decorated as "sensitive" in the API will not 13059 // be included in the string output. The member name will be present, but the 13060 // value will be replaced with "sensitive". 13061 func (s AuthorizeDataShareInput) GoString() string { 13062 return s.String() 13063 } 13064 13065 // Validate inspects the fields of the type to determine if they are valid. 13066 func (s *AuthorizeDataShareInput) Validate() error { 13067 invalidParams := request.ErrInvalidParams{Context: "AuthorizeDataShareInput"} 13068 if s.ConsumerIdentifier == nil { 13069 invalidParams.Add(request.NewErrParamRequired("ConsumerIdentifier")) 13070 } 13071 if s.DataShareArn == nil { 13072 invalidParams.Add(request.NewErrParamRequired("DataShareArn")) 13073 } 13074 13075 if invalidParams.Len() > 0 { 13076 return invalidParams 13077 } 13078 return nil 13079 } 13080 13081 // SetConsumerIdentifier sets the ConsumerIdentifier field's value. 13082 func (s *AuthorizeDataShareInput) SetConsumerIdentifier(v string) *AuthorizeDataShareInput { 13083 s.ConsumerIdentifier = &v 13084 return s 13085 } 13086 13087 // SetDataShareArn sets the DataShareArn field's value. 13088 func (s *AuthorizeDataShareInput) SetDataShareArn(v string) *AuthorizeDataShareInput { 13089 s.DataShareArn = &v 13090 return s 13091 } 13092 13093 type AuthorizeDataShareOutput struct { 13094 _ struct{} `type:"structure"` 13095 13096 // A value that specifies whether the datashare can be shared to a publicly 13097 // accessible cluster. 13098 AllowPubliclyAccessibleConsumers *bool `type:"boolean"` 13099 13100 // An Amazon Resource Name (ARN) that references the datashare that is owned 13101 // by a specific namespace of the producer cluster. A datashare ARN is in the 13102 // arn:aws:redshift:{region}:{account-id}:{datashare}:{namespace-guid}/{datashare-name} 13103 // format. 13104 DataShareArn *string `type:"string"` 13105 13106 // A value that specifies when the datashare has an association between a producer 13107 // and data consumers. 13108 DataShareAssociations []*DataShareAssociation `type:"list"` 13109 13110 // The Amazon Resource Name (ARN) of the producer. 13111 ProducerArn *string `type:"string"` 13112 } 13113 13114 // String returns the string representation. 13115 // 13116 // API parameter values that are decorated as "sensitive" in the API will not 13117 // be included in the string output. The member name will be present, but the 13118 // value will be replaced with "sensitive". 13119 func (s AuthorizeDataShareOutput) String() string { 13120 return awsutil.Prettify(s) 13121 } 13122 13123 // GoString returns the string representation. 13124 // 13125 // API parameter values that are decorated as "sensitive" in the API will not 13126 // be included in the string output. The member name will be present, but the 13127 // value will be replaced with "sensitive". 13128 func (s AuthorizeDataShareOutput) GoString() string { 13129 return s.String() 13130 } 13131 13132 // SetAllowPubliclyAccessibleConsumers sets the AllowPubliclyAccessibleConsumers field's value. 13133 func (s *AuthorizeDataShareOutput) SetAllowPubliclyAccessibleConsumers(v bool) *AuthorizeDataShareOutput { 13134 s.AllowPubliclyAccessibleConsumers = &v 13135 return s 13136 } 13137 13138 // SetDataShareArn sets the DataShareArn field's value. 13139 func (s *AuthorizeDataShareOutput) SetDataShareArn(v string) *AuthorizeDataShareOutput { 13140 s.DataShareArn = &v 13141 return s 13142 } 13143 13144 // SetDataShareAssociations sets the DataShareAssociations field's value. 13145 func (s *AuthorizeDataShareOutput) SetDataShareAssociations(v []*DataShareAssociation) *AuthorizeDataShareOutput { 13146 s.DataShareAssociations = v 13147 return s 13148 } 13149 13150 // SetProducerArn sets the ProducerArn field's value. 13151 func (s *AuthorizeDataShareOutput) SetProducerArn(v string) *AuthorizeDataShareOutput { 13152 s.ProducerArn = &v 13153 return s 13154 } 13155 13156 type AuthorizeEndpointAccessInput struct { 13157 _ struct{} `type:"structure"` 13158 13159 // The Amazon Web Services account ID to grant access to. 13160 // 13161 // Account is a required field 13162 Account *string `type:"string" required:"true"` 13163 13164 // The cluster identifier of the cluster to grant access to. 13165 ClusterIdentifier *string `type:"string"` 13166 13167 // The virtual private cloud (VPC) identifiers to grant access to. 13168 VpcIds []*string `locationNameList:"VpcIdentifier" type:"list"` 13169 } 13170 13171 // String returns the string representation. 13172 // 13173 // API parameter values that are decorated as "sensitive" in the API will not 13174 // be included in the string output. The member name will be present, but the 13175 // value will be replaced with "sensitive". 13176 func (s AuthorizeEndpointAccessInput) String() string { 13177 return awsutil.Prettify(s) 13178 } 13179 13180 // GoString returns the string representation. 13181 // 13182 // API parameter values that are decorated as "sensitive" in the API will not 13183 // be included in the string output. The member name will be present, but the 13184 // value will be replaced with "sensitive". 13185 func (s AuthorizeEndpointAccessInput) GoString() string { 13186 return s.String() 13187 } 13188 13189 // Validate inspects the fields of the type to determine if they are valid. 13190 func (s *AuthorizeEndpointAccessInput) Validate() error { 13191 invalidParams := request.ErrInvalidParams{Context: "AuthorizeEndpointAccessInput"} 13192 if s.Account == nil { 13193 invalidParams.Add(request.NewErrParamRequired("Account")) 13194 } 13195 13196 if invalidParams.Len() > 0 { 13197 return invalidParams 13198 } 13199 return nil 13200 } 13201 13202 // SetAccount sets the Account field's value. 13203 func (s *AuthorizeEndpointAccessInput) SetAccount(v string) *AuthorizeEndpointAccessInput { 13204 s.Account = &v 13205 return s 13206 } 13207 13208 // SetClusterIdentifier sets the ClusterIdentifier field's value. 13209 func (s *AuthorizeEndpointAccessInput) SetClusterIdentifier(v string) *AuthorizeEndpointAccessInput { 13210 s.ClusterIdentifier = &v 13211 return s 13212 } 13213 13214 // SetVpcIds sets the VpcIds field's value. 13215 func (s *AuthorizeEndpointAccessInput) SetVpcIds(v []*string) *AuthorizeEndpointAccessInput { 13216 s.VpcIds = v 13217 return s 13218 } 13219 13220 // Describes an endpoint authorization for authorizing Redshift-managed VPC 13221 // endpoint access to a cluster across Amazon Web Services accounts. 13222 type AuthorizeEndpointAccessOutput struct { 13223 _ struct{} `type:"structure"` 13224 13225 // Indicates whether all VPCs in the grantee account are allowed access to the 13226 // cluster. 13227 AllowedAllVPCs *bool `type:"boolean"` 13228 13229 // The VPCs allowed access to the cluster. 13230 AllowedVPCs []*string `locationNameList:"VpcIdentifier" type:"list"` 13231 13232 // The time (UTC) when the authorization was created. 13233 AuthorizeTime *time.Time `type:"timestamp"` 13234 13235 // The cluster identifier. 13236 ClusterIdentifier *string `type:"string"` 13237 13238 // The status of the cluster. 13239 ClusterStatus *string `type:"string"` 13240 13241 // The number of Redshift-managed VPC endpoints created for the authorization. 13242 EndpointCount *int64 `type:"integer"` 13243 13244 // The Amazon Web Services account ID of the grantee of the cluster. 13245 Grantee *string `type:"string"` 13246 13247 // The Amazon Web Services account ID of the cluster owner. 13248 Grantor *string `type:"string"` 13249 13250 // The status of the authorization action. 13251 Status *string `type:"string" enum:"AuthorizationStatus"` 13252 } 13253 13254 // String returns the string representation. 13255 // 13256 // API parameter values that are decorated as "sensitive" in the API will not 13257 // be included in the string output. The member name will be present, but the 13258 // value will be replaced with "sensitive". 13259 func (s AuthorizeEndpointAccessOutput) String() string { 13260 return awsutil.Prettify(s) 13261 } 13262 13263 // GoString returns the string representation. 13264 // 13265 // API parameter values that are decorated as "sensitive" in the API will not 13266 // be included in the string output. The member name will be present, but the 13267 // value will be replaced with "sensitive". 13268 func (s AuthorizeEndpointAccessOutput) GoString() string { 13269 return s.String() 13270 } 13271 13272 // SetAllowedAllVPCs sets the AllowedAllVPCs field's value. 13273 func (s *AuthorizeEndpointAccessOutput) SetAllowedAllVPCs(v bool) *AuthorizeEndpointAccessOutput { 13274 s.AllowedAllVPCs = &v 13275 return s 13276 } 13277 13278 // SetAllowedVPCs sets the AllowedVPCs field's value. 13279 func (s *AuthorizeEndpointAccessOutput) SetAllowedVPCs(v []*string) *AuthorizeEndpointAccessOutput { 13280 s.AllowedVPCs = v 13281 return s 13282 } 13283 13284 // SetAuthorizeTime sets the AuthorizeTime field's value. 13285 func (s *AuthorizeEndpointAccessOutput) SetAuthorizeTime(v time.Time) *AuthorizeEndpointAccessOutput { 13286 s.AuthorizeTime = &v 13287 return s 13288 } 13289 13290 // SetClusterIdentifier sets the ClusterIdentifier field's value. 13291 func (s *AuthorizeEndpointAccessOutput) SetClusterIdentifier(v string) *AuthorizeEndpointAccessOutput { 13292 s.ClusterIdentifier = &v 13293 return s 13294 } 13295 13296 // SetClusterStatus sets the ClusterStatus field's value. 13297 func (s *AuthorizeEndpointAccessOutput) SetClusterStatus(v string) *AuthorizeEndpointAccessOutput { 13298 s.ClusterStatus = &v 13299 return s 13300 } 13301 13302 // SetEndpointCount sets the EndpointCount field's value. 13303 func (s *AuthorizeEndpointAccessOutput) SetEndpointCount(v int64) *AuthorizeEndpointAccessOutput { 13304 s.EndpointCount = &v 13305 return s 13306 } 13307 13308 // SetGrantee sets the Grantee field's value. 13309 func (s *AuthorizeEndpointAccessOutput) SetGrantee(v string) *AuthorizeEndpointAccessOutput { 13310 s.Grantee = &v 13311 return s 13312 } 13313 13314 // SetGrantor sets the Grantor field's value. 13315 func (s *AuthorizeEndpointAccessOutput) SetGrantor(v string) *AuthorizeEndpointAccessOutput { 13316 s.Grantor = &v 13317 return s 13318 } 13319 13320 // SetStatus sets the Status field's value. 13321 func (s *AuthorizeEndpointAccessOutput) SetStatus(v string) *AuthorizeEndpointAccessOutput { 13322 s.Status = &v 13323 return s 13324 } 13325 13326 type AuthorizeSnapshotAccessInput struct { 13327 _ struct{} `type:"structure"` 13328 13329 // The identifier of the Amazon Web Services account authorized to restore the 13330 // specified snapshot. 13331 // 13332 // To share a snapshot with Amazon Web Services Support, specify amazon-redshift-support. 13333 // 13334 // AccountWithRestoreAccess is a required field 13335 AccountWithRestoreAccess *string `type:"string" required:"true"` 13336 13337 // The identifier of the cluster the snapshot was created from. This parameter 13338 // is required if your IAM user has a policy containing a snapshot resource 13339 // element that specifies anything other than * for the cluster name. 13340 SnapshotClusterIdentifier *string `type:"string"` 13341 13342 // The identifier of the snapshot the account is authorized to restore. 13343 // 13344 // SnapshotIdentifier is a required field 13345 SnapshotIdentifier *string `type:"string" required:"true"` 13346 } 13347 13348 // String returns the string representation. 13349 // 13350 // API parameter values that are decorated as "sensitive" in the API will not 13351 // be included in the string output. The member name will be present, but the 13352 // value will be replaced with "sensitive". 13353 func (s AuthorizeSnapshotAccessInput) String() string { 13354 return awsutil.Prettify(s) 13355 } 13356 13357 // GoString returns the string representation. 13358 // 13359 // API parameter values that are decorated as "sensitive" in the API will not 13360 // be included in the string output. The member name will be present, but the 13361 // value will be replaced with "sensitive". 13362 func (s AuthorizeSnapshotAccessInput) GoString() string { 13363 return s.String() 13364 } 13365 13366 // Validate inspects the fields of the type to determine if they are valid. 13367 func (s *AuthorizeSnapshotAccessInput) Validate() error { 13368 invalidParams := request.ErrInvalidParams{Context: "AuthorizeSnapshotAccessInput"} 13369 if s.AccountWithRestoreAccess == nil { 13370 invalidParams.Add(request.NewErrParamRequired("AccountWithRestoreAccess")) 13371 } 13372 if s.SnapshotIdentifier == nil { 13373 invalidParams.Add(request.NewErrParamRequired("SnapshotIdentifier")) 13374 } 13375 13376 if invalidParams.Len() > 0 { 13377 return invalidParams 13378 } 13379 return nil 13380 } 13381 13382 // SetAccountWithRestoreAccess sets the AccountWithRestoreAccess field's value. 13383 func (s *AuthorizeSnapshotAccessInput) SetAccountWithRestoreAccess(v string) *AuthorizeSnapshotAccessInput { 13384 s.AccountWithRestoreAccess = &v 13385 return s 13386 } 13387 13388 // SetSnapshotClusterIdentifier sets the SnapshotClusterIdentifier field's value. 13389 func (s *AuthorizeSnapshotAccessInput) SetSnapshotClusterIdentifier(v string) *AuthorizeSnapshotAccessInput { 13390 s.SnapshotClusterIdentifier = &v 13391 return s 13392 } 13393 13394 // SetSnapshotIdentifier sets the SnapshotIdentifier field's value. 13395 func (s *AuthorizeSnapshotAccessInput) SetSnapshotIdentifier(v string) *AuthorizeSnapshotAccessInput { 13396 s.SnapshotIdentifier = &v 13397 return s 13398 } 13399 13400 type AuthorizeSnapshotAccessOutput struct { 13401 _ struct{} `type:"structure"` 13402 13403 // Describes a snapshot. 13404 Snapshot *Snapshot `type:"structure"` 13405 } 13406 13407 // String returns the string representation. 13408 // 13409 // API parameter values that are decorated as "sensitive" in the API will not 13410 // be included in the string output. The member name will be present, but the 13411 // value will be replaced with "sensitive". 13412 func (s AuthorizeSnapshotAccessOutput) String() string { 13413 return awsutil.Prettify(s) 13414 } 13415 13416 // GoString returns the string representation. 13417 // 13418 // API parameter values that are decorated as "sensitive" in the API will not 13419 // be included in the string output. The member name will be present, but the 13420 // value will be replaced with "sensitive". 13421 func (s AuthorizeSnapshotAccessOutput) GoString() string { 13422 return s.String() 13423 } 13424 13425 // SetSnapshot sets the Snapshot field's value. 13426 func (s *AuthorizeSnapshotAccessOutput) SetSnapshot(v *Snapshot) *AuthorizeSnapshotAccessOutput { 13427 s.Snapshot = v 13428 return s 13429 } 13430 13431 // Describes an availability zone. 13432 type AvailabilityZone struct { 13433 _ struct{} `type:"structure"` 13434 13435 // The name of the availability zone. 13436 Name *string `type:"string"` 13437 13438 SupportedPlatforms []*SupportedPlatform `locationNameList:"SupportedPlatform" type:"list"` 13439 } 13440 13441 // String returns the string representation. 13442 // 13443 // API parameter values that are decorated as "sensitive" in the API will not 13444 // be included in the string output. The member name will be present, but the 13445 // value will be replaced with "sensitive". 13446 func (s AvailabilityZone) String() string { 13447 return awsutil.Prettify(s) 13448 } 13449 13450 // GoString returns the string representation. 13451 // 13452 // API parameter values that are decorated as "sensitive" in the API will not 13453 // be included in the string output. The member name will be present, but the 13454 // value will be replaced with "sensitive". 13455 func (s AvailabilityZone) GoString() string { 13456 return s.String() 13457 } 13458 13459 // SetName sets the Name field's value. 13460 func (s *AvailabilityZone) SetName(v string) *AvailabilityZone { 13461 s.Name = &v 13462 return s 13463 } 13464 13465 // SetSupportedPlatforms sets the SupportedPlatforms field's value. 13466 func (s *AvailabilityZone) SetSupportedPlatforms(v []*SupportedPlatform) *AvailabilityZone { 13467 s.SupportedPlatforms = v 13468 return s 13469 } 13470 13471 type BatchDeleteClusterSnapshotsInput struct { 13472 _ struct{} `type:"structure"` 13473 13474 // A list of identifiers for the snapshots that you want to delete. 13475 // 13476 // Identifiers is a required field 13477 Identifiers []*DeleteClusterSnapshotMessage `locationNameList:"DeleteClusterSnapshotMessage" type:"list" required:"true"` 13478 } 13479 13480 // String returns the string representation. 13481 // 13482 // API parameter values that are decorated as "sensitive" in the API will not 13483 // be included in the string output. The member name will be present, but the 13484 // value will be replaced with "sensitive". 13485 func (s BatchDeleteClusterSnapshotsInput) String() string { 13486 return awsutil.Prettify(s) 13487 } 13488 13489 // GoString returns the string representation. 13490 // 13491 // API parameter values that are decorated as "sensitive" in the API will not 13492 // be included in the string output. The member name will be present, but the 13493 // value will be replaced with "sensitive". 13494 func (s BatchDeleteClusterSnapshotsInput) GoString() string { 13495 return s.String() 13496 } 13497 13498 // Validate inspects the fields of the type to determine if they are valid. 13499 func (s *BatchDeleteClusterSnapshotsInput) Validate() error { 13500 invalidParams := request.ErrInvalidParams{Context: "BatchDeleteClusterSnapshotsInput"} 13501 if s.Identifiers == nil { 13502 invalidParams.Add(request.NewErrParamRequired("Identifiers")) 13503 } 13504 if s.Identifiers != nil { 13505 for i, v := range s.Identifiers { 13506 if v == nil { 13507 continue 13508 } 13509 if err := v.Validate(); err != nil { 13510 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Identifiers", i), err.(request.ErrInvalidParams)) 13511 } 13512 } 13513 } 13514 13515 if invalidParams.Len() > 0 { 13516 return invalidParams 13517 } 13518 return nil 13519 } 13520 13521 // SetIdentifiers sets the Identifiers field's value. 13522 func (s *BatchDeleteClusterSnapshotsInput) SetIdentifiers(v []*DeleteClusterSnapshotMessage) *BatchDeleteClusterSnapshotsInput { 13523 s.Identifiers = v 13524 return s 13525 } 13526 13527 type BatchDeleteClusterSnapshotsOutput struct { 13528 _ struct{} `type:"structure"` 13529 13530 // A list of any errors returned. 13531 Errors []*SnapshotErrorMessage `locationNameList:"SnapshotErrorMessage" type:"list"` 13532 13533 // A list of the snapshot identifiers that were deleted. 13534 Resources []*string `locationNameList:"String" type:"list"` 13535 } 13536 13537 // String returns the string representation. 13538 // 13539 // API parameter values that are decorated as "sensitive" in the API will not 13540 // be included in the string output. The member name will be present, but the 13541 // value will be replaced with "sensitive". 13542 func (s BatchDeleteClusterSnapshotsOutput) String() string { 13543 return awsutil.Prettify(s) 13544 } 13545 13546 // GoString returns the string representation. 13547 // 13548 // API parameter values that are decorated as "sensitive" in the API will not 13549 // be included in the string output. The member name will be present, but the 13550 // value will be replaced with "sensitive". 13551 func (s BatchDeleteClusterSnapshotsOutput) GoString() string { 13552 return s.String() 13553 } 13554 13555 // SetErrors sets the Errors field's value. 13556 func (s *BatchDeleteClusterSnapshotsOutput) SetErrors(v []*SnapshotErrorMessage) *BatchDeleteClusterSnapshotsOutput { 13557 s.Errors = v 13558 return s 13559 } 13560 13561 // SetResources sets the Resources field's value. 13562 func (s *BatchDeleteClusterSnapshotsOutput) SetResources(v []*string) *BatchDeleteClusterSnapshotsOutput { 13563 s.Resources = v 13564 return s 13565 } 13566 13567 type BatchModifyClusterSnapshotsInput struct { 13568 _ struct{} `type:"structure"` 13569 13570 // A boolean value indicating whether to override an exception if the retention 13571 // period has passed. 13572 Force *bool `type:"boolean"` 13573 13574 // The number of days that a manual snapshot is retained. If you specify the 13575 // value -1, the manual snapshot is retained indefinitely. 13576 // 13577 // The number must be either -1 or an integer between 1 and 3,653. 13578 // 13579 // If you decrease the manual snapshot retention period from its current value, 13580 // existing manual snapshots that fall outside of the new retention period will 13581 // return an error. If you want to suppress the errors and delete the snapshots, 13582 // use the force option. 13583 ManualSnapshotRetentionPeriod *int64 `type:"integer"` 13584 13585 // A list of snapshot identifiers you want to modify. 13586 // 13587 // SnapshotIdentifierList is a required field 13588 SnapshotIdentifierList []*string `locationNameList:"String" type:"list" required:"true"` 13589 } 13590 13591 // String returns the string representation. 13592 // 13593 // API parameter values that are decorated as "sensitive" in the API will not 13594 // be included in the string output. The member name will be present, but the 13595 // value will be replaced with "sensitive". 13596 func (s BatchModifyClusterSnapshotsInput) String() string { 13597 return awsutil.Prettify(s) 13598 } 13599 13600 // GoString returns the string representation. 13601 // 13602 // API parameter values that are decorated as "sensitive" in the API will not 13603 // be included in the string output. The member name will be present, but the 13604 // value will be replaced with "sensitive". 13605 func (s BatchModifyClusterSnapshotsInput) GoString() string { 13606 return s.String() 13607 } 13608 13609 // Validate inspects the fields of the type to determine if they are valid. 13610 func (s *BatchModifyClusterSnapshotsInput) Validate() error { 13611 invalidParams := request.ErrInvalidParams{Context: "BatchModifyClusterSnapshotsInput"} 13612 if s.SnapshotIdentifierList == nil { 13613 invalidParams.Add(request.NewErrParamRequired("SnapshotIdentifierList")) 13614 } 13615 13616 if invalidParams.Len() > 0 { 13617 return invalidParams 13618 } 13619 return nil 13620 } 13621 13622 // SetForce sets the Force field's value. 13623 func (s *BatchModifyClusterSnapshotsInput) SetForce(v bool) *BatchModifyClusterSnapshotsInput { 13624 s.Force = &v 13625 return s 13626 } 13627 13628 // SetManualSnapshotRetentionPeriod sets the ManualSnapshotRetentionPeriod field's value. 13629 func (s *BatchModifyClusterSnapshotsInput) SetManualSnapshotRetentionPeriod(v int64) *BatchModifyClusterSnapshotsInput { 13630 s.ManualSnapshotRetentionPeriod = &v 13631 return s 13632 } 13633 13634 // SetSnapshotIdentifierList sets the SnapshotIdentifierList field's value. 13635 func (s *BatchModifyClusterSnapshotsInput) SetSnapshotIdentifierList(v []*string) *BatchModifyClusterSnapshotsInput { 13636 s.SnapshotIdentifierList = v 13637 return s 13638 } 13639 13640 type BatchModifyClusterSnapshotsOutput struct { 13641 _ struct{} `type:"structure"` 13642 13643 // A list of any errors returned. 13644 Errors []*SnapshotErrorMessage `locationNameList:"SnapshotErrorMessage" type:"list"` 13645 13646 // A list of the snapshots that were modified. 13647 Resources []*string `locationNameList:"String" type:"list"` 13648 } 13649 13650 // String returns the string representation. 13651 // 13652 // API parameter values that are decorated as "sensitive" in the API will not 13653 // be included in the string output. The member name will be present, but the 13654 // value will be replaced with "sensitive". 13655 func (s BatchModifyClusterSnapshotsOutput) String() string { 13656 return awsutil.Prettify(s) 13657 } 13658 13659 // GoString returns the string representation. 13660 // 13661 // API parameter values that are decorated as "sensitive" in the API will not 13662 // be included in the string output. The member name will be present, but the 13663 // value will be replaced with "sensitive". 13664 func (s BatchModifyClusterSnapshotsOutput) GoString() string { 13665 return s.String() 13666 } 13667 13668 // SetErrors sets the Errors field's value. 13669 func (s *BatchModifyClusterSnapshotsOutput) SetErrors(v []*SnapshotErrorMessage) *BatchModifyClusterSnapshotsOutput { 13670 s.Errors = v 13671 return s 13672 } 13673 13674 // SetResources sets the Resources field's value. 13675 func (s *BatchModifyClusterSnapshotsOutput) SetResources(v []*string) *BatchModifyClusterSnapshotsOutput { 13676 s.Resources = v 13677 return s 13678 } 13679 13680 type CancelResizeInput struct { 13681 _ struct{} `type:"structure"` 13682 13683 // The unique identifier for the cluster that you want to cancel a resize operation 13684 // for. 13685 // 13686 // ClusterIdentifier is a required field 13687 ClusterIdentifier *string `type:"string" required:"true"` 13688 } 13689 13690 // String returns the string representation. 13691 // 13692 // API parameter values that are decorated as "sensitive" in the API will not 13693 // be included in the string output. The member name will be present, but the 13694 // value will be replaced with "sensitive". 13695 func (s CancelResizeInput) String() string { 13696 return awsutil.Prettify(s) 13697 } 13698 13699 // GoString returns the string representation. 13700 // 13701 // API parameter values that are decorated as "sensitive" in the API will not 13702 // be included in the string output. The member name will be present, but the 13703 // value will be replaced with "sensitive". 13704 func (s CancelResizeInput) GoString() string { 13705 return s.String() 13706 } 13707 13708 // Validate inspects the fields of the type to determine if they are valid. 13709 func (s *CancelResizeInput) Validate() error { 13710 invalidParams := request.ErrInvalidParams{Context: "CancelResizeInput"} 13711 if s.ClusterIdentifier == nil { 13712 invalidParams.Add(request.NewErrParamRequired("ClusterIdentifier")) 13713 } 13714 13715 if invalidParams.Len() > 0 { 13716 return invalidParams 13717 } 13718 return nil 13719 } 13720 13721 // SetClusterIdentifier sets the ClusterIdentifier field's value. 13722 func (s *CancelResizeInput) SetClusterIdentifier(v string) *CancelResizeInput { 13723 s.ClusterIdentifier = &v 13724 return s 13725 } 13726 13727 // Describes the result of a cluster resize operation. 13728 type CancelResizeOutput struct { 13729 _ struct{} `type:"structure"` 13730 13731 // The average rate of the resize operation over the last few minutes, measured 13732 // in megabytes per second. After the resize operation completes, this value 13733 // shows the average rate of the entire resize operation. 13734 AvgResizeRateInMegaBytesPerSecond *float64 `type:"double"` 13735 13736 // The percent of data transferred from source cluster to target cluster. 13737 DataTransferProgressPercent *float64 `type:"double"` 13738 13739 // The amount of seconds that have elapsed since the resize operation began. 13740 // After the resize operation completes, this value shows the total actual time, 13741 // in seconds, for the resize operation. 13742 ElapsedTimeInSeconds *int64 `type:"long"` 13743 13744 // The estimated time remaining, in seconds, until the resize operation is complete. 13745 // This value is calculated based on the average resize rate and the estimated 13746 // amount of data remaining to be processed. Once the resize operation is complete, 13747 // this value will be 0. 13748 EstimatedTimeToCompletionInSeconds *int64 `type:"long"` 13749 13750 // The names of tables that have been completely imported . 13751 // 13752 // Valid Values: List of table names. 13753 ImportTablesCompleted []*string `type:"list"` 13754 13755 // The names of tables that are being currently imported. 13756 // 13757 // Valid Values: List of table names. 13758 ImportTablesInProgress []*string `type:"list"` 13759 13760 // The names of tables that have not been yet imported. 13761 // 13762 // Valid Values: List of table names 13763 ImportTablesNotStarted []*string `type:"list"` 13764 13765 // An optional string to provide additional details about the resize action. 13766 Message *string `type:"string"` 13767 13768 // While the resize operation is in progress, this value shows the current amount 13769 // of data, in megabytes, that has been processed so far. When the resize operation 13770 // is complete, this value shows the total amount of data, in megabytes, on 13771 // the cluster, which may be more or less than TotalResizeDataInMegaBytes (the 13772 // estimated total amount of data before resize). 13773 ProgressInMegaBytes *int64 `type:"long"` 13774 13775 // An enum with possible values of ClassicResize and ElasticResize. These values 13776 // describe the type of resize operation being performed. 13777 ResizeType *string `type:"string"` 13778 13779 // The status of the resize operation. 13780 // 13781 // Valid Values: NONE | IN_PROGRESS | FAILED | SUCCEEDED | CANCELLING 13782 Status *string `type:"string"` 13783 13784 // The cluster type after the resize operation is complete. 13785 // 13786 // Valid Values: multi-node | single-node 13787 TargetClusterType *string `type:"string"` 13788 13789 // The type of encryption for the cluster after the resize is complete. 13790 // 13791 // Possible values are KMS and None. 13792 TargetEncryptionType *string `type:"string"` 13793 13794 // The node type that the cluster will have after the resize operation is complete. 13795 TargetNodeType *string `type:"string"` 13796 13797 // The number of nodes that the cluster will have after the resize operation 13798 // is complete. 13799 TargetNumberOfNodes *int64 `type:"integer"` 13800 13801 // The estimated total amount of data, in megabytes, on the cluster before the 13802 // resize operation began. 13803 TotalResizeDataInMegaBytes *int64 `type:"long"` 13804 } 13805 13806 // String returns the string representation. 13807 // 13808 // API parameter values that are decorated as "sensitive" in the API will not 13809 // be included in the string output. The member name will be present, but the 13810 // value will be replaced with "sensitive". 13811 func (s CancelResizeOutput) String() string { 13812 return awsutil.Prettify(s) 13813 } 13814 13815 // GoString returns the string representation. 13816 // 13817 // API parameter values that are decorated as "sensitive" in the API will not 13818 // be included in the string output. The member name will be present, but the 13819 // value will be replaced with "sensitive". 13820 func (s CancelResizeOutput) GoString() string { 13821 return s.String() 13822 } 13823 13824 // SetAvgResizeRateInMegaBytesPerSecond sets the AvgResizeRateInMegaBytesPerSecond field's value. 13825 func (s *CancelResizeOutput) SetAvgResizeRateInMegaBytesPerSecond(v float64) *CancelResizeOutput { 13826 s.AvgResizeRateInMegaBytesPerSecond = &v 13827 return s 13828 } 13829 13830 // SetDataTransferProgressPercent sets the DataTransferProgressPercent field's value. 13831 func (s *CancelResizeOutput) SetDataTransferProgressPercent(v float64) *CancelResizeOutput { 13832 s.DataTransferProgressPercent = &v 13833 return s 13834 } 13835 13836 // SetElapsedTimeInSeconds sets the ElapsedTimeInSeconds field's value. 13837 func (s *CancelResizeOutput) SetElapsedTimeInSeconds(v int64) *CancelResizeOutput { 13838 s.ElapsedTimeInSeconds = &v 13839 return s 13840 } 13841 13842 // SetEstimatedTimeToCompletionInSeconds sets the EstimatedTimeToCompletionInSeconds field's value. 13843 func (s *CancelResizeOutput) SetEstimatedTimeToCompletionInSeconds(v int64) *CancelResizeOutput { 13844 s.EstimatedTimeToCompletionInSeconds = &v 13845 return s 13846 } 13847 13848 // SetImportTablesCompleted sets the ImportTablesCompleted field's value. 13849 func (s *CancelResizeOutput) SetImportTablesCompleted(v []*string) *CancelResizeOutput { 13850 s.ImportTablesCompleted = v 13851 return s 13852 } 13853 13854 // SetImportTablesInProgress sets the ImportTablesInProgress field's value. 13855 func (s *CancelResizeOutput) SetImportTablesInProgress(v []*string) *CancelResizeOutput { 13856 s.ImportTablesInProgress = v 13857 return s 13858 } 13859 13860 // SetImportTablesNotStarted sets the ImportTablesNotStarted field's value. 13861 func (s *CancelResizeOutput) SetImportTablesNotStarted(v []*string) *CancelResizeOutput { 13862 s.ImportTablesNotStarted = v 13863 return s 13864 } 13865 13866 // SetMessage sets the Message field's value. 13867 func (s *CancelResizeOutput) SetMessage(v string) *CancelResizeOutput { 13868 s.Message = &v 13869 return s 13870 } 13871 13872 // SetProgressInMegaBytes sets the ProgressInMegaBytes field's value. 13873 func (s *CancelResizeOutput) SetProgressInMegaBytes(v int64) *CancelResizeOutput { 13874 s.ProgressInMegaBytes = &v 13875 return s 13876 } 13877 13878 // SetResizeType sets the ResizeType field's value. 13879 func (s *CancelResizeOutput) SetResizeType(v string) *CancelResizeOutput { 13880 s.ResizeType = &v 13881 return s 13882 } 13883 13884 // SetStatus sets the Status field's value. 13885 func (s *CancelResizeOutput) SetStatus(v string) *CancelResizeOutput { 13886 s.Status = &v 13887 return s 13888 } 13889 13890 // SetTargetClusterType sets the TargetClusterType field's value. 13891 func (s *CancelResizeOutput) SetTargetClusterType(v string) *CancelResizeOutput { 13892 s.TargetClusterType = &v 13893 return s 13894 } 13895 13896 // SetTargetEncryptionType sets the TargetEncryptionType field's value. 13897 func (s *CancelResizeOutput) SetTargetEncryptionType(v string) *CancelResizeOutput { 13898 s.TargetEncryptionType = &v 13899 return s 13900 } 13901 13902 // SetTargetNodeType sets the TargetNodeType field's value. 13903 func (s *CancelResizeOutput) SetTargetNodeType(v string) *CancelResizeOutput { 13904 s.TargetNodeType = &v 13905 return s 13906 } 13907 13908 // SetTargetNumberOfNodes sets the TargetNumberOfNodes field's value. 13909 func (s *CancelResizeOutput) SetTargetNumberOfNodes(v int64) *CancelResizeOutput { 13910 s.TargetNumberOfNodes = &v 13911 return s 13912 } 13913 13914 // SetTotalResizeDataInMegaBytes sets the TotalResizeDataInMegaBytes field's value. 13915 func (s *CancelResizeOutput) SetTotalResizeDataInMegaBytes(v int64) *CancelResizeOutput { 13916 s.TotalResizeDataInMegaBytes = &v 13917 return s 13918 } 13919 13920 // Describes a cluster. 13921 type Cluster struct { 13922 _ struct{} `type:"structure"` 13923 13924 // A boolean value that, if true, indicates that major version upgrades will 13925 // be applied automatically to the cluster during the maintenance window. 13926 AllowVersionUpgrade *bool `type:"boolean"` 13927 13928 // The AQUA (Advanced Query Accelerator) configuration of the cluster. 13929 AquaConfiguration *AquaConfiguration `type:"structure"` 13930 13931 // The number of days that automatic cluster snapshots are retained. 13932 AutomatedSnapshotRetentionPeriod *int64 `type:"integer"` 13933 13934 // The name of the Availability Zone in which the cluster is located. 13935 AvailabilityZone *string `type:"string"` 13936 13937 // Describes the status of the Availability Zone relocation operation. 13938 AvailabilityZoneRelocationStatus *string `type:"string"` 13939 13940 // The availability status of the cluster for queries. Possible values are the 13941 // following: 13942 // 13943 // * Available - The cluster is available for queries. 13944 // 13945 // * Unavailable - The cluster is not available for queries. 13946 // 13947 // * Maintenance - The cluster is intermittently available for queries due 13948 // to maintenance activities. 13949 // 13950 // * Modifying - The cluster is intermittently available for queries due 13951 // to changes that modify the cluster. 13952 // 13953 // * Failed - The cluster failed and is not available for queries. 13954 ClusterAvailabilityStatus *string `type:"string"` 13955 13956 // The date and time that the cluster was created. 13957 ClusterCreateTime *time.Time `type:"timestamp"` 13958 13959 // The unique identifier of the cluster. 13960 ClusterIdentifier *string `type:"string"` 13961 13962 // The namespace Amazon Resource Name (ARN) of the cluster. 13963 ClusterNamespaceArn *string `type:"string"` 13964 13965 // The nodes in the cluster. 13966 ClusterNodes []*ClusterNode `type:"list"` 13967 13968 // The list of cluster parameter groups that are associated with this cluster. 13969 // Each parameter group in the list is returned with its status. 13970 ClusterParameterGroups []*ClusterParameterGroupStatus `locationNameList:"ClusterParameterGroup" type:"list"` 13971 13972 // The public key for the cluster. 13973 ClusterPublicKey *string `type:"string"` 13974 13975 // The specific revision number of the database in the cluster. 13976 ClusterRevisionNumber *string `type:"string"` 13977 13978 // A list of cluster security group that are associated with the cluster. Each 13979 // security group is represented by an element that contains ClusterSecurityGroup.Name 13980 // and ClusterSecurityGroup.Status subelements. 13981 // 13982 // Cluster security groups are used when the cluster is not created in an Amazon 13983 // Virtual Private Cloud (VPC). Clusters that are created in a VPC use VPC security 13984 // groups, which are listed by the VpcSecurityGroups parameter. 13985 ClusterSecurityGroups []*ClusterSecurityGroupMembership `locationNameList:"ClusterSecurityGroup" type:"list"` 13986 13987 // A value that returns the destination region and retention period that are 13988 // configured for cross-region snapshot copy. 13989 ClusterSnapshotCopyStatus *ClusterSnapshotCopyStatus `type:"structure"` 13990 13991 // The current state of the cluster. Possible values are the following: 13992 // 13993 // * available 13994 // 13995 // * available, prep-for-resize 13996 // 13997 // * available, resize-cleanup 13998 // 13999 // * cancelling-resize 14000 // 14001 // * creating 14002 // 14003 // * deleting 14004 // 14005 // * final-snapshot 14006 // 14007 // * hardware-failure 14008 // 14009 // * incompatible-hsm 14010 // 14011 // * incompatible-network 14012 // 14013 // * incompatible-parameters 14014 // 14015 // * incompatible-restore 14016 // 14017 // * modifying 14018 // 14019 // * paused 14020 // 14021 // * rebooting 14022 // 14023 // * renaming 14024 // 14025 // * resizing 14026 // 14027 // * rotating-keys 14028 // 14029 // * storage-full 14030 // 14031 // * updating-hsm 14032 ClusterStatus *string `type:"string"` 14033 14034 // The name of the subnet group that is associated with the cluster. This parameter 14035 // is valid only when the cluster is in a VPC. 14036 ClusterSubnetGroupName *string `type:"string"` 14037 14038 // The version ID of the Amazon Redshift engine that is running on the cluster. 14039 ClusterVersion *string `type:"string"` 14040 14041 // The name of the initial database that was created when the cluster was created. 14042 // This same name is returned for the life of the cluster. If an initial database 14043 // was not specified, a database named devdev was created by default. 14044 DBName *string `type:"string"` 14045 14046 // Describes the status of a cluster while it is in the process of resizing 14047 // with an incremental resize. 14048 DataTransferProgress *DataTransferProgress `type:"structure"` 14049 14050 // Describes a group of DeferredMaintenanceWindow objects. 14051 DeferredMaintenanceWindows []*DeferredMaintenanceWindow `locationNameList:"DeferredMaintenanceWindow" type:"list"` 14052 14053 // The status of the elastic IP (EIP) address. 14054 ElasticIpStatus *ElasticIpStatus `type:"structure"` 14055 14056 // The number of nodes that you can resize the cluster to with the elastic resize 14057 // method. 14058 ElasticResizeNumberOfNodeOptions *string `type:"string"` 14059 14060 // A boolean value that, if true, indicates that data in the cluster is encrypted 14061 // at rest. 14062 Encrypted *bool `type:"boolean"` 14063 14064 // The connection endpoint. 14065 Endpoint *Endpoint `type:"structure"` 14066 14067 // An option that specifies whether to create the cluster with enhanced VPC 14068 // routing enabled. To create a cluster that uses enhanced VPC routing, the 14069 // cluster must be in a VPC. For more information, see Enhanced VPC Routing 14070 // (https://docs.aws.amazon.com/redshift/latest/mgmt/enhanced-vpc-routing.html) 14071 // in the Amazon Redshift Cluster Management Guide. 14072 // 14073 // If this option is true, enhanced VPC routing is enabled. 14074 // 14075 // Default: false 14076 EnhancedVpcRouting *bool `type:"boolean"` 14077 14078 // The date and time when the next snapshot is expected to be taken for clusters 14079 // with a valid snapshot schedule and backups enabled. 14080 ExpectedNextSnapshotScheduleTime *time.Time `type:"timestamp"` 14081 14082 // The status of next expected snapshot for clusters having a valid snapshot 14083 // schedule and backups enabled. Possible values are the following: 14084 // 14085 // * OnTrack - The next snapshot is expected to be taken on time. 14086 // 14087 // * Pending - The next snapshot is pending to be taken. 14088 ExpectedNextSnapshotScheduleTimeStatus *string `type:"string"` 14089 14090 // A value that reports whether the Amazon Redshift cluster has finished applying 14091 // any hardware security module (HSM) settings changes specified in a modify 14092 // cluster command. 14093 // 14094 // Values: active, applying 14095 HsmStatus *HsmStatus `type:"structure"` 14096 14097 // A list of Identity and Access Management (IAM) roles that can be used by 14098 // the cluster to access other Amazon Web Services services. 14099 IamRoles []*ClusterIamRole `locationNameList:"ClusterIamRole" type:"list"` 14100 14101 // The Key Management Service (KMS) key ID of the encryption key used to encrypt 14102 // data in the cluster. 14103 KmsKeyId *string `type:"string"` 14104 14105 // The name of the maintenance track for the cluster. 14106 MaintenanceTrackName *string `type:"string"` 14107 14108 // The default number of days to retain a manual snapshot. If the value is -1, 14109 // the snapshot is retained indefinitely. This setting doesn't change the retention 14110 // period of existing snapshots. 14111 // 14112 // The value must be either -1 or an integer between 1 and 3,653. 14113 ManualSnapshotRetentionPeriod *int64 `type:"integer"` 14114 14115 // The admin user name for the cluster. This name is used to connect to the 14116 // database that is specified in the DBName parameter. 14117 MasterUsername *string `type:"string"` 14118 14119 // The status of a modify operation, if any, initiated for the cluster. 14120 ModifyStatus *string `type:"string"` 14121 14122 // The date and time in UTC when system maintenance can begin. 14123 NextMaintenanceWindowStartTime *time.Time `type:"timestamp"` 14124 14125 // The node type for the nodes in the cluster. 14126 NodeType *string `type:"string"` 14127 14128 // The number of compute nodes in the cluster. 14129 NumberOfNodes *int64 `type:"integer"` 14130 14131 // Cluster operations that are waiting to be started. 14132 PendingActions []*string `type:"list"` 14133 14134 // A value that, if present, indicates that changes to the cluster are pending. 14135 // Specific pending changes are identified by subelements. 14136 PendingModifiedValues *PendingModifiedValues `type:"structure"` 14137 14138 // The weekly time range, in Universal Coordinated Time (UTC), during which 14139 // system maintenance can occur. 14140 PreferredMaintenanceWindow *string `type:"string"` 14141 14142 // A boolean value that, if true, indicates that the cluster can be accessed 14143 // from a public network. 14144 PubliclyAccessible *bool `type:"boolean"` 14145 14146 // Returns the following: 14147 // 14148 // * AllowCancelResize: a boolean value indicating if the resize operation 14149 // can be cancelled. 14150 // 14151 // * ResizeType: Returns ClassicResize 14152 ResizeInfo *ResizeInfo `type:"structure"` 14153 14154 // A value that describes the status of a cluster restore action. This parameter 14155 // returns null if the cluster was not created by restoring a snapshot. 14156 RestoreStatus *RestoreStatus `type:"structure"` 14157 14158 // A unique identifier for the cluster snapshot schedule. 14159 SnapshotScheduleIdentifier *string `type:"string"` 14160 14161 // The current state of the cluster snapshot schedule. 14162 SnapshotScheduleState *string `type:"string" enum:"ScheduleState"` 14163 14164 // The list of tags for the cluster. 14165 Tags []*Tag `locationNameList:"Tag" type:"list"` 14166 14167 // The total storage capacity of the cluster in megabytes. 14168 TotalStorageCapacityInMegaBytes *int64 `type:"long"` 14169 14170 // The identifier of the VPC the cluster is in, if the cluster is in a VPC. 14171 VpcId *string `type:"string"` 14172 14173 // A list of Amazon Virtual Private Cloud (Amazon VPC) security groups that 14174 // are associated with the cluster. This parameter is returned only if the cluster 14175 // is in a VPC. 14176 VpcSecurityGroups []*VpcSecurityGroupMembership `locationNameList:"VpcSecurityGroup" type:"list"` 14177 } 14178 14179 // String returns the string representation. 14180 // 14181 // API parameter values that are decorated as "sensitive" in the API will not 14182 // be included in the string output. The member name will be present, but the 14183 // value will be replaced with "sensitive". 14184 func (s Cluster) String() string { 14185 return awsutil.Prettify(s) 14186 } 14187 14188 // GoString returns the string representation. 14189 // 14190 // API parameter values that are decorated as "sensitive" in the API will not 14191 // be included in the string output. The member name will be present, but the 14192 // value will be replaced with "sensitive". 14193 func (s Cluster) GoString() string { 14194 return s.String() 14195 } 14196 14197 // SetAllowVersionUpgrade sets the AllowVersionUpgrade field's value. 14198 func (s *Cluster) SetAllowVersionUpgrade(v bool) *Cluster { 14199 s.AllowVersionUpgrade = &v 14200 return s 14201 } 14202 14203 // SetAquaConfiguration sets the AquaConfiguration field's value. 14204 func (s *Cluster) SetAquaConfiguration(v *AquaConfiguration) *Cluster { 14205 s.AquaConfiguration = v 14206 return s 14207 } 14208 14209 // SetAutomatedSnapshotRetentionPeriod sets the AutomatedSnapshotRetentionPeriod field's value. 14210 func (s *Cluster) SetAutomatedSnapshotRetentionPeriod(v int64) *Cluster { 14211 s.AutomatedSnapshotRetentionPeriod = &v 14212 return s 14213 } 14214 14215 // SetAvailabilityZone sets the AvailabilityZone field's value. 14216 func (s *Cluster) SetAvailabilityZone(v string) *Cluster { 14217 s.AvailabilityZone = &v 14218 return s 14219 } 14220 14221 // SetAvailabilityZoneRelocationStatus sets the AvailabilityZoneRelocationStatus field's value. 14222 func (s *Cluster) SetAvailabilityZoneRelocationStatus(v string) *Cluster { 14223 s.AvailabilityZoneRelocationStatus = &v 14224 return s 14225 } 14226 14227 // SetClusterAvailabilityStatus sets the ClusterAvailabilityStatus field's value. 14228 func (s *Cluster) SetClusterAvailabilityStatus(v string) *Cluster { 14229 s.ClusterAvailabilityStatus = &v 14230 return s 14231 } 14232 14233 // SetClusterCreateTime sets the ClusterCreateTime field's value. 14234 func (s *Cluster) SetClusterCreateTime(v time.Time) *Cluster { 14235 s.ClusterCreateTime = &v 14236 return s 14237 } 14238 14239 // SetClusterIdentifier sets the ClusterIdentifier field's value. 14240 func (s *Cluster) SetClusterIdentifier(v string) *Cluster { 14241 s.ClusterIdentifier = &v 14242 return s 14243 } 14244 14245 // SetClusterNamespaceArn sets the ClusterNamespaceArn field's value. 14246 func (s *Cluster) SetClusterNamespaceArn(v string) *Cluster { 14247 s.ClusterNamespaceArn = &v 14248 return s 14249 } 14250 14251 // SetClusterNodes sets the ClusterNodes field's value. 14252 func (s *Cluster) SetClusterNodes(v []*ClusterNode) *Cluster { 14253 s.ClusterNodes = v 14254 return s 14255 } 14256 14257 // SetClusterParameterGroups sets the ClusterParameterGroups field's value. 14258 func (s *Cluster) SetClusterParameterGroups(v []*ClusterParameterGroupStatus) *Cluster { 14259 s.ClusterParameterGroups = v 14260 return s 14261 } 14262 14263 // SetClusterPublicKey sets the ClusterPublicKey field's value. 14264 func (s *Cluster) SetClusterPublicKey(v string) *Cluster { 14265 s.ClusterPublicKey = &v 14266 return s 14267 } 14268 14269 // SetClusterRevisionNumber sets the ClusterRevisionNumber field's value. 14270 func (s *Cluster) SetClusterRevisionNumber(v string) *Cluster { 14271 s.ClusterRevisionNumber = &v 14272 return s 14273 } 14274 14275 // SetClusterSecurityGroups sets the ClusterSecurityGroups field's value. 14276 func (s *Cluster) SetClusterSecurityGroups(v []*ClusterSecurityGroupMembership) *Cluster { 14277 s.ClusterSecurityGroups = v 14278 return s 14279 } 14280 14281 // SetClusterSnapshotCopyStatus sets the ClusterSnapshotCopyStatus field's value. 14282 func (s *Cluster) SetClusterSnapshotCopyStatus(v *ClusterSnapshotCopyStatus) *Cluster { 14283 s.ClusterSnapshotCopyStatus = v 14284 return s 14285 } 14286 14287 // SetClusterStatus sets the ClusterStatus field's value. 14288 func (s *Cluster) SetClusterStatus(v string) *Cluster { 14289 s.ClusterStatus = &v 14290 return s 14291 } 14292 14293 // SetClusterSubnetGroupName sets the ClusterSubnetGroupName field's value. 14294 func (s *Cluster) SetClusterSubnetGroupName(v string) *Cluster { 14295 s.ClusterSubnetGroupName = &v 14296 return s 14297 } 14298 14299 // SetClusterVersion sets the ClusterVersion field's value. 14300 func (s *Cluster) SetClusterVersion(v string) *Cluster { 14301 s.ClusterVersion = &v 14302 return s 14303 } 14304 14305 // SetDBName sets the DBName field's value. 14306 func (s *Cluster) SetDBName(v string) *Cluster { 14307 s.DBName = &v 14308 return s 14309 } 14310 14311 // SetDataTransferProgress sets the DataTransferProgress field's value. 14312 func (s *Cluster) SetDataTransferProgress(v *DataTransferProgress) *Cluster { 14313 s.DataTransferProgress = v 14314 return s 14315 } 14316 14317 // SetDeferredMaintenanceWindows sets the DeferredMaintenanceWindows field's value. 14318 func (s *Cluster) SetDeferredMaintenanceWindows(v []*DeferredMaintenanceWindow) *Cluster { 14319 s.DeferredMaintenanceWindows = v 14320 return s 14321 } 14322 14323 // SetElasticIpStatus sets the ElasticIpStatus field's value. 14324 func (s *Cluster) SetElasticIpStatus(v *ElasticIpStatus) *Cluster { 14325 s.ElasticIpStatus = v 14326 return s 14327 } 14328 14329 // SetElasticResizeNumberOfNodeOptions sets the ElasticResizeNumberOfNodeOptions field's value. 14330 func (s *Cluster) SetElasticResizeNumberOfNodeOptions(v string) *Cluster { 14331 s.ElasticResizeNumberOfNodeOptions = &v 14332 return s 14333 } 14334 14335 // SetEncrypted sets the Encrypted field's value. 14336 func (s *Cluster) SetEncrypted(v bool) *Cluster { 14337 s.Encrypted = &v 14338 return s 14339 } 14340 14341 // SetEndpoint sets the Endpoint field's value. 14342 func (s *Cluster) SetEndpoint(v *Endpoint) *Cluster { 14343 s.Endpoint = v 14344 return s 14345 } 14346 14347 // SetEnhancedVpcRouting sets the EnhancedVpcRouting field's value. 14348 func (s *Cluster) SetEnhancedVpcRouting(v bool) *Cluster { 14349 s.EnhancedVpcRouting = &v 14350 return s 14351 } 14352 14353 // SetExpectedNextSnapshotScheduleTime sets the ExpectedNextSnapshotScheduleTime field's value. 14354 func (s *Cluster) SetExpectedNextSnapshotScheduleTime(v time.Time) *Cluster { 14355 s.ExpectedNextSnapshotScheduleTime = &v 14356 return s 14357 } 14358 14359 // SetExpectedNextSnapshotScheduleTimeStatus sets the ExpectedNextSnapshotScheduleTimeStatus field's value. 14360 func (s *Cluster) SetExpectedNextSnapshotScheduleTimeStatus(v string) *Cluster { 14361 s.ExpectedNextSnapshotScheduleTimeStatus = &v 14362 return s 14363 } 14364 14365 // SetHsmStatus sets the HsmStatus field's value. 14366 func (s *Cluster) SetHsmStatus(v *HsmStatus) *Cluster { 14367 s.HsmStatus = v 14368 return s 14369 } 14370 14371 // SetIamRoles sets the IamRoles field's value. 14372 func (s *Cluster) SetIamRoles(v []*ClusterIamRole) *Cluster { 14373 s.IamRoles = v 14374 return s 14375 } 14376 14377 // SetKmsKeyId sets the KmsKeyId field's value. 14378 func (s *Cluster) SetKmsKeyId(v string) *Cluster { 14379 s.KmsKeyId = &v 14380 return s 14381 } 14382 14383 // SetMaintenanceTrackName sets the MaintenanceTrackName field's value. 14384 func (s *Cluster) SetMaintenanceTrackName(v string) *Cluster { 14385 s.MaintenanceTrackName = &v 14386 return s 14387 } 14388 14389 // SetManualSnapshotRetentionPeriod sets the ManualSnapshotRetentionPeriod field's value. 14390 func (s *Cluster) SetManualSnapshotRetentionPeriod(v int64) *Cluster { 14391 s.ManualSnapshotRetentionPeriod = &v 14392 return s 14393 } 14394 14395 // SetMasterUsername sets the MasterUsername field's value. 14396 func (s *Cluster) SetMasterUsername(v string) *Cluster { 14397 s.MasterUsername = &v 14398 return s 14399 } 14400 14401 // SetModifyStatus sets the ModifyStatus field's value. 14402 func (s *Cluster) SetModifyStatus(v string) *Cluster { 14403 s.ModifyStatus = &v 14404 return s 14405 } 14406 14407 // SetNextMaintenanceWindowStartTime sets the NextMaintenanceWindowStartTime field's value. 14408 func (s *Cluster) SetNextMaintenanceWindowStartTime(v time.Time) *Cluster { 14409 s.NextMaintenanceWindowStartTime = &v 14410 return s 14411 } 14412 14413 // SetNodeType sets the NodeType field's value. 14414 func (s *Cluster) SetNodeType(v string) *Cluster { 14415 s.NodeType = &v 14416 return s 14417 } 14418 14419 // SetNumberOfNodes sets the NumberOfNodes field's value. 14420 func (s *Cluster) SetNumberOfNodes(v int64) *Cluster { 14421 s.NumberOfNodes = &v 14422 return s 14423 } 14424 14425 // SetPendingActions sets the PendingActions field's value. 14426 func (s *Cluster) SetPendingActions(v []*string) *Cluster { 14427 s.PendingActions = v 14428 return s 14429 } 14430 14431 // SetPendingModifiedValues sets the PendingModifiedValues field's value. 14432 func (s *Cluster) SetPendingModifiedValues(v *PendingModifiedValues) *Cluster { 14433 s.PendingModifiedValues = v 14434 return s 14435 } 14436 14437 // SetPreferredMaintenanceWindow sets the PreferredMaintenanceWindow field's value. 14438 func (s *Cluster) SetPreferredMaintenanceWindow(v string) *Cluster { 14439 s.PreferredMaintenanceWindow = &v 14440 return s 14441 } 14442 14443 // SetPubliclyAccessible sets the PubliclyAccessible field's value. 14444 func (s *Cluster) SetPubliclyAccessible(v bool) *Cluster { 14445 s.PubliclyAccessible = &v 14446 return s 14447 } 14448 14449 // SetResizeInfo sets the ResizeInfo field's value. 14450 func (s *Cluster) SetResizeInfo(v *ResizeInfo) *Cluster { 14451 s.ResizeInfo = v 14452 return s 14453 } 14454 14455 // SetRestoreStatus sets the RestoreStatus field's value. 14456 func (s *Cluster) SetRestoreStatus(v *RestoreStatus) *Cluster { 14457 s.RestoreStatus = v 14458 return s 14459 } 14460 14461 // SetSnapshotScheduleIdentifier sets the SnapshotScheduleIdentifier field's value. 14462 func (s *Cluster) SetSnapshotScheduleIdentifier(v string) *Cluster { 14463 s.SnapshotScheduleIdentifier = &v 14464 return s 14465 } 14466 14467 // SetSnapshotScheduleState sets the SnapshotScheduleState field's value. 14468 func (s *Cluster) SetSnapshotScheduleState(v string) *Cluster { 14469 s.SnapshotScheduleState = &v 14470 return s 14471 } 14472 14473 // SetTags sets the Tags field's value. 14474 func (s *Cluster) SetTags(v []*Tag) *Cluster { 14475 s.Tags = v 14476 return s 14477 } 14478 14479 // SetTotalStorageCapacityInMegaBytes sets the TotalStorageCapacityInMegaBytes field's value. 14480 func (s *Cluster) SetTotalStorageCapacityInMegaBytes(v int64) *Cluster { 14481 s.TotalStorageCapacityInMegaBytes = &v 14482 return s 14483 } 14484 14485 // SetVpcId sets the VpcId field's value. 14486 func (s *Cluster) SetVpcId(v string) *Cluster { 14487 s.VpcId = &v 14488 return s 14489 } 14490 14491 // SetVpcSecurityGroups sets the VpcSecurityGroups field's value. 14492 func (s *Cluster) SetVpcSecurityGroups(v []*VpcSecurityGroupMembership) *Cluster { 14493 s.VpcSecurityGroups = v 14494 return s 14495 } 14496 14497 type ClusterAssociatedToSchedule struct { 14498 _ struct{} `type:"structure"` 14499 14500 ClusterIdentifier *string `type:"string"` 14501 14502 ScheduleAssociationState *string `type:"string" enum:"ScheduleState"` 14503 } 14504 14505 // String returns the string representation. 14506 // 14507 // API parameter values that are decorated as "sensitive" in the API will not 14508 // be included in the string output. The member name will be present, but the 14509 // value will be replaced with "sensitive". 14510 func (s ClusterAssociatedToSchedule) String() string { 14511 return awsutil.Prettify(s) 14512 } 14513 14514 // GoString returns the string representation. 14515 // 14516 // API parameter values that are decorated as "sensitive" in the API will not 14517 // be included in the string output. The member name will be present, but the 14518 // value will be replaced with "sensitive". 14519 func (s ClusterAssociatedToSchedule) GoString() string { 14520 return s.String() 14521 } 14522 14523 // SetClusterIdentifier sets the ClusterIdentifier field's value. 14524 func (s *ClusterAssociatedToSchedule) SetClusterIdentifier(v string) *ClusterAssociatedToSchedule { 14525 s.ClusterIdentifier = &v 14526 return s 14527 } 14528 14529 // SetScheduleAssociationState sets the ScheduleAssociationState field's value. 14530 func (s *ClusterAssociatedToSchedule) SetScheduleAssociationState(v string) *ClusterAssociatedToSchedule { 14531 s.ScheduleAssociationState = &v 14532 return s 14533 } 14534 14535 // Describes a ClusterDbRevision. 14536 type ClusterDbRevision struct { 14537 _ struct{} `type:"structure"` 14538 14539 // The unique identifier of the cluster. 14540 ClusterIdentifier *string `type:"string"` 14541 14542 // A string representing the current cluster version. 14543 CurrentDatabaseRevision *string `type:"string"` 14544 14545 // The date on which the database revision was released. 14546 DatabaseRevisionReleaseDate *time.Time `type:"timestamp"` 14547 14548 // A list of RevisionTarget objects, where each object describes the database 14549 // revision that a cluster can be updated to. 14550 RevisionTargets []*RevisionTarget `locationNameList:"RevisionTarget" type:"list"` 14551 } 14552 14553 // String returns the string representation. 14554 // 14555 // API parameter values that are decorated as "sensitive" in the API will not 14556 // be included in the string output. The member name will be present, but the 14557 // value will be replaced with "sensitive". 14558 func (s ClusterDbRevision) String() string { 14559 return awsutil.Prettify(s) 14560 } 14561 14562 // GoString returns the string representation. 14563 // 14564 // API parameter values that are decorated as "sensitive" in the API will not 14565 // be included in the string output. The member name will be present, but the 14566 // value will be replaced with "sensitive". 14567 func (s ClusterDbRevision) GoString() string { 14568 return s.String() 14569 } 14570 14571 // SetClusterIdentifier sets the ClusterIdentifier field's value. 14572 func (s *ClusterDbRevision) SetClusterIdentifier(v string) *ClusterDbRevision { 14573 s.ClusterIdentifier = &v 14574 return s 14575 } 14576 14577 // SetCurrentDatabaseRevision sets the CurrentDatabaseRevision field's value. 14578 func (s *ClusterDbRevision) SetCurrentDatabaseRevision(v string) *ClusterDbRevision { 14579 s.CurrentDatabaseRevision = &v 14580 return s 14581 } 14582 14583 // SetDatabaseRevisionReleaseDate sets the DatabaseRevisionReleaseDate field's value. 14584 func (s *ClusterDbRevision) SetDatabaseRevisionReleaseDate(v time.Time) *ClusterDbRevision { 14585 s.DatabaseRevisionReleaseDate = &v 14586 return s 14587 } 14588 14589 // SetRevisionTargets sets the RevisionTargets field's value. 14590 func (s *ClusterDbRevision) SetRevisionTargets(v []*RevisionTarget) *ClusterDbRevision { 14591 s.RevisionTargets = v 14592 return s 14593 } 14594 14595 // An Identity and Access Management (IAM) role that can be used by the associated 14596 // Amazon Redshift cluster to access other Amazon Web Services services. 14597 type ClusterIamRole struct { 14598 _ struct{} `type:"structure"` 14599 14600 // A value that describes the status of the IAM role's association with an Amazon 14601 // Redshift cluster. 14602 // 14603 // The following are possible statuses and descriptions. 14604 // 14605 // * in-sync: The role is available for use by the cluster. 14606 // 14607 // * adding: The role is in the process of being associated with the cluster. 14608 // 14609 // * removing: The role is in the process of being disassociated with the 14610 // cluster. 14611 ApplyStatus *string `type:"string"` 14612 14613 // The Amazon Resource Name (ARN) of the IAM role, for example, arn:aws:iam::123456789012:role/RedshiftCopyUnload. 14614 IamRoleArn *string `type:"string"` 14615 } 14616 14617 // String returns the string representation. 14618 // 14619 // API parameter values that are decorated as "sensitive" in the API will not 14620 // be included in the string output. The member name will be present, but the 14621 // value will be replaced with "sensitive". 14622 func (s ClusterIamRole) String() string { 14623 return awsutil.Prettify(s) 14624 } 14625 14626 // GoString returns the string representation. 14627 // 14628 // API parameter values that are decorated as "sensitive" in the API will not 14629 // be included in the string output. The member name will be present, but the 14630 // value will be replaced with "sensitive". 14631 func (s ClusterIamRole) GoString() string { 14632 return s.String() 14633 } 14634 14635 // SetApplyStatus sets the ApplyStatus field's value. 14636 func (s *ClusterIamRole) SetApplyStatus(v string) *ClusterIamRole { 14637 s.ApplyStatus = &v 14638 return s 14639 } 14640 14641 // SetIamRoleArn sets the IamRoleArn field's value. 14642 func (s *ClusterIamRole) SetIamRoleArn(v string) *ClusterIamRole { 14643 s.IamRoleArn = &v 14644 return s 14645 } 14646 14647 // The identifier of a node in a cluster. 14648 type ClusterNode struct { 14649 _ struct{} `type:"structure"` 14650 14651 // Whether the node is a leader node or a compute node. 14652 NodeRole *string `type:"string"` 14653 14654 // The private IP address of a node within a cluster. 14655 PrivateIPAddress *string `type:"string"` 14656 14657 // The public IP address of a node within a cluster. 14658 PublicIPAddress *string `type:"string"` 14659 } 14660 14661 // String returns the string representation. 14662 // 14663 // API parameter values that are decorated as "sensitive" in the API will not 14664 // be included in the string output. The member name will be present, but the 14665 // value will be replaced with "sensitive". 14666 func (s ClusterNode) String() string { 14667 return awsutil.Prettify(s) 14668 } 14669 14670 // GoString returns the string representation. 14671 // 14672 // API parameter values that are decorated as "sensitive" in the API will not 14673 // be included in the string output. The member name will be present, but the 14674 // value will be replaced with "sensitive". 14675 func (s ClusterNode) GoString() string { 14676 return s.String() 14677 } 14678 14679 // SetNodeRole sets the NodeRole field's value. 14680 func (s *ClusterNode) SetNodeRole(v string) *ClusterNode { 14681 s.NodeRole = &v 14682 return s 14683 } 14684 14685 // SetPrivateIPAddress sets the PrivateIPAddress field's value. 14686 func (s *ClusterNode) SetPrivateIPAddress(v string) *ClusterNode { 14687 s.PrivateIPAddress = &v 14688 return s 14689 } 14690 14691 // SetPublicIPAddress sets the PublicIPAddress field's value. 14692 func (s *ClusterNode) SetPublicIPAddress(v string) *ClusterNode { 14693 s.PublicIPAddress = &v 14694 return s 14695 } 14696 14697 // Describes a parameter group. 14698 type ClusterParameterGroup struct { 14699 _ struct{} `type:"structure"` 14700 14701 // The description of the parameter group. 14702 Description *string `type:"string"` 14703 14704 // The name of the cluster parameter group family that this cluster parameter 14705 // group is compatible with. 14706 ParameterGroupFamily *string `type:"string"` 14707 14708 // The name of the cluster parameter group. 14709 ParameterGroupName *string `type:"string"` 14710 14711 // The list of tags for the cluster parameter group. 14712 Tags []*Tag `locationNameList:"Tag" type:"list"` 14713 } 14714 14715 // String returns the string representation. 14716 // 14717 // API parameter values that are decorated as "sensitive" in the API will not 14718 // be included in the string output. The member name will be present, but the 14719 // value will be replaced with "sensitive". 14720 func (s ClusterParameterGroup) String() string { 14721 return awsutil.Prettify(s) 14722 } 14723 14724 // GoString returns the string representation. 14725 // 14726 // API parameter values that are decorated as "sensitive" in the API will not 14727 // be included in the string output. The member name will be present, but the 14728 // value will be replaced with "sensitive". 14729 func (s ClusterParameterGroup) GoString() string { 14730 return s.String() 14731 } 14732 14733 // SetDescription sets the Description field's value. 14734 func (s *ClusterParameterGroup) SetDescription(v string) *ClusterParameterGroup { 14735 s.Description = &v 14736 return s 14737 } 14738 14739 // SetParameterGroupFamily sets the ParameterGroupFamily field's value. 14740 func (s *ClusterParameterGroup) SetParameterGroupFamily(v string) *ClusterParameterGroup { 14741 s.ParameterGroupFamily = &v 14742 return s 14743 } 14744 14745 // SetParameterGroupName sets the ParameterGroupName field's value. 14746 func (s *ClusterParameterGroup) SetParameterGroupName(v string) *ClusterParameterGroup { 14747 s.ParameterGroupName = &v 14748 return s 14749 } 14750 14751 // SetTags sets the Tags field's value. 14752 func (s *ClusterParameterGroup) SetTags(v []*Tag) *ClusterParameterGroup { 14753 s.Tags = v 14754 return s 14755 } 14756 14757 type ClusterParameterGroupNameMessage struct { 14758 _ struct{} `type:"structure"` 14759 14760 // The name of the cluster parameter group. 14761 ParameterGroupName *string `type:"string"` 14762 14763 // The status of the parameter group. For example, if you made a change to a 14764 // parameter group name-value pair, then the change could be pending a reboot 14765 // of an associated cluster. 14766 ParameterGroupStatus *string `type:"string"` 14767 } 14768 14769 // String returns the string representation. 14770 // 14771 // API parameter values that are decorated as "sensitive" in the API will not 14772 // be included in the string output. The member name will be present, but the 14773 // value will be replaced with "sensitive". 14774 func (s ClusterParameterGroupNameMessage) String() string { 14775 return awsutil.Prettify(s) 14776 } 14777 14778 // GoString returns the string representation. 14779 // 14780 // API parameter values that are decorated as "sensitive" in the API will not 14781 // be included in the string output. The member name will be present, but the 14782 // value will be replaced with "sensitive". 14783 func (s ClusterParameterGroupNameMessage) GoString() string { 14784 return s.String() 14785 } 14786 14787 // SetParameterGroupName sets the ParameterGroupName field's value. 14788 func (s *ClusterParameterGroupNameMessage) SetParameterGroupName(v string) *ClusterParameterGroupNameMessage { 14789 s.ParameterGroupName = &v 14790 return s 14791 } 14792 14793 // SetParameterGroupStatus sets the ParameterGroupStatus field's value. 14794 func (s *ClusterParameterGroupNameMessage) SetParameterGroupStatus(v string) *ClusterParameterGroupNameMessage { 14795 s.ParameterGroupStatus = &v 14796 return s 14797 } 14798 14799 // Describes the status of a parameter group. 14800 type ClusterParameterGroupStatus struct { 14801 _ struct{} `type:"structure"` 14802 14803 // The list of parameter statuses. 14804 // 14805 // For more information about parameters and parameter groups, go to Amazon 14806 // Redshift Parameter Groups (https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-parameter-groups.html) 14807 // in the Amazon Redshift Cluster Management Guide. 14808 ClusterParameterStatusList []*ClusterParameterStatus `type:"list"` 14809 14810 // The status of parameter updates. 14811 ParameterApplyStatus *string `type:"string"` 14812 14813 // The name of the cluster parameter group. 14814 ParameterGroupName *string `type:"string"` 14815 } 14816 14817 // String returns the string representation. 14818 // 14819 // API parameter values that are decorated as "sensitive" in the API will not 14820 // be included in the string output. The member name will be present, but the 14821 // value will be replaced with "sensitive". 14822 func (s ClusterParameterGroupStatus) String() string { 14823 return awsutil.Prettify(s) 14824 } 14825 14826 // GoString returns the string representation. 14827 // 14828 // API parameter values that are decorated as "sensitive" in the API will not 14829 // be included in the string output. The member name will be present, but the 14830 // value will be replaced with "sensitive". 14831 func (s ClusterParameterGroupStatus) GoString() string { 14832 return s.String() 14833 } 14834 14835 // SetClusterParameterStatusList sets the ClusterParameterStatusList field's value. 14836 func (s *ClusterParameterGroupStatus) SetClusterParameterStatusList(v []*ClusterParameterStatus) *ClusterParameterGroupStatus { 14837 s.ClusterParameterStatusList = v 14838 return s 14839 } 14840 14841 // SetParameterApplyStatus sets the ParameterApplyStatus field's value. 14842 func (s *ClusterParameterGroupStatus) SetParameterApplyStatus(v string) *ClusterParameterGroupStatus { 14843 s.ParameterApplyStatus = &v 14844 return s 14845 } 14846 14847 // SetParameterGroupName sets the ParameterGroupName field's value. 14848 func (s *ClusterParameterGroupStatus) SetParameterGroupName(v string) *ClusterParameterGroupStatus { 14849 s.ParameterGroupName = &v 14850 return s 14851 } 14852 14853 // Describes the status of a parameter group. 14854 type ClusterParameterStatus struct { 14855 _ struct{} `type:"structure"` 14856 14857 // The error that prevented the parameter from being applied to the database. 14858 ParameterApplyErrorDescription *string `type:"string"` 14859 14860 // The status of the parameter that indicates whether the parameter is in sync 14861 // with the database, waiting for a cluster reboot, or encountered an error 14862 // when being applied. 14863 // 14864 // The following are possible statuses and descriptions. 14865 // 14866 // * in-sync: The parameter value is in sync with the database. 14867 // 14868 // * pending-reboot: The parameter value will be applied after the cluster 14869 // reboots. 14870 // 14871 // * applying: The parameter value is being applied to the database. 14872 // 14873 // * invalid-parameter: Cannot apply the parameter value because it has an 14874 // invalid value or syntax. 14875 // 14876 // * apply-deferred: The parameter contains static property changes. The 14877 // changes are deferred until the cluster reboots. 14878 // 14879 // * apply-error: Cannot connect to the cluster. The parameter change will 14880 // be applied after the cluster reboots. 14881 // 14882 // * unknown-error: Cannot apply the parameter change right now. The change 14883 // will be applied after the cluster reboots. 14884 ParameterApplyStatus *string `type:"string"` 14885 14886 // The name of the parameter. 14887 ParameterName *string `type:"string"` 14888 } 14889 14890 // String returns the string representation. 14891 // 14892 // API parameter values that are decorated as "sensitive" in the API will not 14893 // be included in the string output. The member name will be present, but the 14894 // value will be replaced with "sensitive". 14895 func (s ClusterParameterStatus) String() string { 14896 return awsutil.Prettify(s) 14897 } 14898 14899 // GoString returns the string representation. 14900 // 14901 // API parameter values that are decorated as "sensitive" in the API will not 14902 // be included in the string output. The member name will be present, but the 14903 // value will be replaced with "sensitive". 14904 func (s ClusterParameterStatus) GoString() string { 14905 return s.String() 14906 } 14907 14908 // SetParameterApplyErrorDescription sets the ParameterApplyErrorDescription field's value. 14909 func (s *ClusterParameterStatus) SetParameterApplyErrorDescription(v string) *ClusterParameterStatus { 14910 s.ParameterApplyErrorDescription = &v 14911 return s 14912 } 14913 14914 // SetParameterApplyStatus sets the ParameterApplyStatus field's value. 14915 func (s *ClusterParameterStatus) SetParameterApplyStatus(v string) *ClusterParameterStatus { 14916 s.ParameterApplyStatus = &v 14917 return s 14918 } 14919 14920 // SetParameterName sets the ParameterName field's value. 14921 func (s *ClusterParameterStatus) SetParameterName(v string) *ClusterParameterStatus { 14922 s.ParameterName = &v 14923 return s 14924 } 14925 14926 // Describes a security group. 14927 type ClusterSecurityGroup struct { 14928 _ struct{} `type:"structure"` 14929 14930 // The name of the cluster security group to which the operation was applied. 14931 ClusterSecurityGroupName *string `type:"string"` 14932 14933 // A description of the security group. 14934 Description *string `type:"string"` 14935 14936 // A list of EC2 security groups that are permitted to access clusters associated 14937 // with this cluster security group. 14938 EC2SecurityGroups []*EC2SecurityGroup `locationNameList:"EC2SecurityGroup" type:"list"` 14939 14940 // A list of IP ranges (CIDR blocks) that are permitted to access clusters associated 14941 // with this cluster security group. 14942 IPRanges []*IPRange `locationNameList:"IPRange" type:"list"` 14943 14944 // The list of tags for the cluster security group. 14945 Tags []*Tag `locationNameList:"Tag" type:"list"` 14946 } 14947 14948 // String returns the string representation. 14949 // 14950 // API parameter values that are decorated as "sensitive" in the API will not 14951 // be included in the string output. The member name will be present, but the 14952 // value will be replaced with "sensitive". 14953 func (s ClusterSecurityGroup) String() string { 14954 return awsutil.Prettify(s) 14955 } 14956 14957 // GoString returns the string representation. 14958 // 14959 // API parameter values that are decorated as "sensitive" in the API will not 14960 // be included in the string output. The member name will be present, but the 14961 // value will be replaced with "sensitive". 14962 func (s ClusterSecurityGroup) GoString() string { 14963 return s.String() 14964 } 14965 14966 // SetClusterSecurityGroupName sets the ClusterSecurityGroupName field's value. 14967 func (s *ClusterSecurityGroup) SetClusterSecurityGroupName(v string) *ClusterSecurityGroup { 14968 s.ClusterSecurityGroupName = &v 14969 return s 14970 } 14971 14972 // SetDescription sets the Description field's value. 14973 func (s *ClusterSecurityGroup) SetDescription(v string) *ClusterSecurityGroup { 14974 s.Description = &v 14975 return s 14976 } 14977 14978 // SetEC2SecurityGroups sets the EC2SecurityGroups field's value. 14979 func (s *ClusterSecurityGroup) SetEC2SecurityGroups(v []*EC2SecurityGroup) *ClusterSecurityGroup { 14980 s.EC2SecurityGroups = v 14981 return s 14982 } 14983 14984 // SetIPRanges sets the IPRanges field's value. 14985 func (s *ClusterSecurityGroup) SetIPRanges(v []*IPRange) *ClusterSecurityGroup { 14986 s.IPRanges = v 14987 return s 14988 } 14989 14990 // SetTags sets the Tags field's value. 14991 func (s *ClusterSecurityGroup) SetTags(v []*Tag) *ClusterSecurityGroup { 14992 s.Tags = v 14993 return s 14994 } 14995 14996 // Describes a cluster security group. 14997 type ClusterSecurityGroupMembership struct { 14998 _ struct{} `type:"structure"` 14999 15000 // The name of the cluster security group. 15001 ClusterSecurityGroupName *string `type:"string"` 15002 15003 // The status of the cluster security group. 15004 Status *string `type:"string"` 15005 } 15006 15007 // String returns the string representation. 15008 // 15009 // API parameter values that are decorated as "sensitive" in the API will not 15010 // be included in the string output. The member name will be present, but the 15011 // value will be replaced with "sensitive". 15012 func (s ClusterSecurityGroupMembership) String() string { 15013 return awsutil.Prettify(s) 15014 } 15015 15016 // GoString returns the string representation. 15017 // 15018 // API parameter values that are decorated as "sensitive" in the API will not 15019 // be included in the string output. The member name will be present, but the 15020 // value will be replaced with "sensitive". 15021 func (s ClusterSecurityGroupMembership) GoString() string { 15022 return s.String() 15023 } 15024 15025 // SetClusterSecurityGroupName sets the ClusterSecurityGroupName field's value. 15026 func (s *ClusterSecurityGroupMembership) SetClusterSecurityGroupName(v string) *ClusterSecurityGroupMembership { 15027 s.ClusterSecurityGroupName = &v 15028 return s 15029 } 15030 15031 // SetStatus sets the Status field's value. 15032 func (s *ClusterSecurityGroupMembership) SetStatus(v string) *ClusterSecurityGroupMembership { 15033 s.Status = &v 15034 return s 15035 } 15036 15037 // Returns the destination region and retention period that are configured for 15038 // cross-region snapshot copy. 15039 type ClusterSnapshotCopyStatus struct { 15040 _ struct{} `type:"structure"` 15041 15042 // The destination region that snapshots are automatically copied to when cross-region 15043 // snapshot copy is enabled. 15044 DestinationRegion *string `type:"string"` 15045 15046 // The number of days that automated snapshots are retained in the destination 15047 // region after they are copied from a source region. If the value is -1, the 15048 // manual snapshot is retained indefinitely. 15049 // 15050 // The value must be either -1 or an integer between 1 and 3,653. 15051 ManualSnapshotRetentionPeriod *int64 `type:"integer"` 15052 15053 // The number of days that automated snapshots are retained in the destination 15054 // region after they are copied from a source region. 15055 RetentionPeriod *int64 `type:"long"` 15056 15057 // The name of the snapshot copy grant. 15058 SnapshotCopyGrantName *string `type:"string"` 15059 } 15060 15061 // String returns the string representation. 15062 // 15063 // API parameter values that are decorated as "sensitive" in the API will not 15064 // be included in the string output. The member name will be present, but the 15065 // value will be replaced with "sensitive". 15066 func (s ClusterSnapshotCopyStatus) String() string { 15067 return awsutil.Prettify(s) 15068 } 15069 15070 // GoString returns the string representation. 15071 // 15072 // API parameter values that are decorated as "sensitive" in the API will not 15073 // be included in the string output. The member name will be present, but the 15074 // value will be replaced with "sensitive". 15075 func (s ClusterSnapshotCopyStatus) GoString() string { 15076 return s.String() 15077 } 15078 15079 // SetDestinationRegion sets the DestinationRegion field's value. 15080 func (s *ClusterSnapshotCopyStatus) SetDestinationRegion(v string) *ClusterSnapshotCopyStatus { 15081 s.DestinationRegion = &v 15082 return s 15083 } 15084 15085 // SetManualSnapshotRetentionPeriod sets the ManualSnapshotRetentionPeriod field's value. 15086 func (s *ClusterSnapshotCopyStatus) SetManualSnapshotRetentionPeriod(v int64) *ClusterSnapshotCopyStatus { 15087 s.ManualSnapshotRetentionPeriod = &v 15088 return s 15089 } 15090 15091 // SetRetentionPeriod sets the RetentionPeriod field's value. 15092 func (s *ClusterSnapshotCopyStatus) SetRetentionPeriod(v int64) *ClusterSnapshotCopyStatus { 15093 s.RetentionPeriod = &v 15094 return s 15095 } 15096 15097 // SetSnapshotCopyGrantName sets the SnapshotCopyGrantName field's value. 15098 func (s *ClusterSnapshotCopyStatus) SetSnapshotCopyGrantName(v string) *ClusterSnapshotCopyStatus { 15099 s.SnapshotCopyGrantName = &v 15100 return s 15101 } 15102 15103 // Describes a subnet group. 15104 type ClusterSubnetGroup struct { 15105 _ struct{} `type:"structure"` 15106 15107 // The name of the cluster subnet group. 15108 ClusterSubnetGroupName *string `type:"string"` 15109 15110 // The description of the cluster subnet group. 15111 Description *string `type:"string"` 15112 15113 // The status of the cluster subnet group. Possible values are Complete, Incomplete 15114 // and Invalid. 15115 SubnetGroupStatus *string `type:"string"` 15116 15117 // A list of the VPC Subnet elements. 15118 Subnets []*Subnet `locationNameList:"Subnet" type:"list"` 15119 15120 // The list of tags for the cluster subnet group. 15121 Tags []*Tag `locationNameList:"Tag" type:"list"` 15122 15123 // The VPC ID of the cluster subnet group. 15124 VpcId *string `type:"string"` 15125 } 15126 15127 // String returns the string representation. 15128 // 15129 // API parameter values that are decorated as "sensitive" in the API will not 15130 // be included in the string output. The member name will be present, but the 15131 // value will be replaced with "sensitive". 15132 func (s ClusterSubnetGroup) String() string { 15133 return awsutil.Prettify(s) 15134 } 15135 15136 // GoString returns the string representation. 15137 // 15138 // API parameter values that are decorated as "sensitive" in the API will not 15139 // be included in the string output. The member name will be present, but the 15140 // value will be replaced with "sensitive". 15141 func (s ClusterSubnetGroup) GoString() string { 15142 return s.String() 15143 } 15144 15145 // SetClusterSubnetGroupName sets the ClusterSubnetGroupName field's value. 15146 func (s *ClusterSubnetGroup) SetClusterSubnetGroupName(v string) *ClusterSubnetGroup { 15147 s.ClusterSubnetGroupName = &v 15148 return s 15149 } 15150 15151 // SetDescription sets the Description field's value. 15152 func (s *ClusterSubnetGroup) SetDescription(v string) *ClusterSubnetGroup { 15153 s.Description = &v 15154 return s 15155 } 15156 15157 // SetSubnetGroupStatus sets the SubnetGroupStatus field's value. 15158 func (s *ClusterSubnetGroup) SetSubnetGroupStatus(v string) *ClusterSubnetGroup { 15159 s.SubnetGroupStatus = &v 15160 return s 15161 } 15162 15163 // SetSubnets sets the Subnets field's value. 15164 func (s *ClusterSubnetGroup) SetSubnets(v []*Subnet) *ClusterSubnetGroup { 15165 s.Subnets = v 15166 return s 15167 } 15168 15169 // SetTags sets the Tags field's value. 15170 func (s *ClusterSubnetGroup) SetTags(v []*Tag) *ClusterSubnetGroup { 15171 s.Tags = v 15172 return s 15173 } 15174 15175 // SetVpcId sets the VpcId field's value. 15176 func (s *ClusterSubnetGroup) SetVpcId(v string) *ClusterSubnetGroup { 15177 s.VpcId = &v 15178 return s 15179 } 15180 15181 // Describes a cluster version, including the parameter group family and description 15182 // of the version. 15183 type ClusterVersion struct { 15184 _ struct{} `type:"structure"` 15185 15186 // The name of the cluster parameter group family for the cluster. 15187 ClusterParameterGroupFamily *string `type:"string"` 15188 15189 // The version number used by the cluster. 15190 ClusterVersion *string `type:"string"` 15191 15192 // The description of the cluster version. 15193 Description *string `type:"string"` 15194 } 15195 15196 // String returns the string representation. 15197 // 15198 // API parameter values that are decorated as "sensitive" in the API will not 15199 // be included in the string output. The member name will be present, but the 15200 // value will be replaced with "sensitive". 15201 func (s ClusterVersion) String() string { 15202 return awsutil.Prettify(s) 15203 } 15204 15205 // GoString returns the string representation. 15206 // 15207 // API parameter values that are decorated as "sensitive" in the API will not 15208 // be included in the string output. The member name will be present, but the 15209 // value will be replaced with "sensitive". 15210 func (s ClusterVersion) GoString() string { 15211 return s.String() 15212 } 15213 15214 // SetClusterParameterGroupFamily sets the ClusterParameterGroupFamily field's value. 15215 func (s *ClusterVersion) SetClusterParameterGroupFamily(v string) *ClusterVersion { 15216 s.ClusterParameterGroupFamily = &v 15217 return s 15218 } 15219 15220 // SetClusterVersion sets the ClusterVersion field's value. 15221 func (s *ClusterVersion) SetClusterVersion(v string) *ClusterVersion { 15222 s.ClusterVersion = &v 15223 return s 15224 } 15225 15226 // SetDescription sets the Description field's value. 15227 func (s *ClusterVersion) SetDescription(v string) *ClusterVersion { 15228 s.Description = &v 15229 return s 15230 } 15231 15232 type CopyClusterSnapshotInput struct { 15233 _ struct{} `type:"structure"` 15234 15235 // The number of days that a manual snapshot is retained. If the value is -1, 15236 // the manual snapshot is retained indefinitely. 15237 // 15238 // The value must be either -1 or an integer between 1 and 3,653. 15239 // 15240 // The default value is -1. 15241 ManualSnapshotRetentionPeriod *int64 `type:"integer"` 15242 15243 // The identifier of the cluster the source snapshot was created from. This 15244 // parameter is required if your IAM user has a policy containing a snapshot 15245 // resource element that specifies anything other than * for the cluster name. 15246 // 15247 // Constraints: 15248 // 15249 // * Must be the identifier for a valid cluster. 15250 SourceSnapshotClusterIdentifier *string `type:"string"` 15251 15252 // The identifier for the source snapshot. 15253 // 15254 // Constraints: 15255 // 15256 // * Must be the identifier for a valid automated snapshot whose state is 15257 // available. 15258 // 15259 // SourceSnapshotIdentifier is a required field 15260 SourceSnapshotIdentifier *string `type:"string" required:"true"` 15261 15262 // The identifier given to the new manual snapshot. 15263 // 15264 // Constraints: 15265 // 15266 // * Cannot be null, empty, or blank. 15267 // 15268 // * Must contain from 1 to 255 alphanumeric characters or hyphens. 15269 // 15270 // * First character must be a letter. 15271 // 15272 // * Cannot end with a hyphen or contain two consecutive hyphens. 15273 // 15274 // * Must be unique for the Amazon Web Services account that is making the 15275 // request. 15276 // 15277 // TargetSnapshotIdentifier is a required field 15278 TargetSnapshotIdentifier *string `type:"string" required:"true"` 15279 } 15280 15281 // String returns the string representation. 15282 // 15283 // API parameter values that are decorated as "sensitive" in the API will not 15284 // be included in the string output. The member name will be present, but the 15285 // value will be replaced with "sensitive". 15286 func (s CopyClusterSnapshotInput) String() string { 15287 return awsutil.Prettify(s) 15288 } 15289 15290 // GoString returns the string representation. 15291 // 15292 // API parameter values that are decorated as "sensitive" in the API will not 15293 // be included in the string output. The member name will be present, but the 15294 // value will be replaced with "sensitive". 15295 func (s CopyClusterSnapshotInput) GoString() string { 15296 return s.String() 15297 } 15298 15299 // Validate inspects the fields of the type to determine if they are valid. 15300 func (s *CopyClusterSnapshotInput) Validate() error { 15301 invalidParams := request.ErrInvalidParams{Context: "CopyClusterSnapshotInput"} 15302 if s.SourceSnapshotIdentifier == nil { 15303 invalidParams.Add(request.NewErrParamRequired("SourceSnapshotIdentifier")) 15304 } 15305 if s.TargetSnapshotIdentifier == nil { 15306 invalidParams.Add(request.NewErrParamRequired("TargetSnapshotIdentifier")) 15307 } 15308 15309 if invalidParams.Len() > 0 { 15310 return invalidParams 15311 } 15312 return nil 15313 } 15314 15315 // SetManualSnapshotRetentionPeriod sets the ManualSnapshotRetentionPeriod field's value. 15316 func (s *CopyClusterSnapshotInput) SetManualSnapshotRetentionPeriod(v int64) *CopyClusterSnapshotInput { 15317 s.ManualSnapshotRetentionPeriod = &v 15318 return s 15319 } 15320 15321 // SetSourceSnapshotClusterIdentifier sets the SourceSnapshotClusterIdentifier field's value. 15322 func (s *CopyClusterSnapshotInput) SetSourceSnapshotClusterIdentifier(v string) *CopyClusterSnapshotInput { 15323 s.SourceSnapshotClusterIdentifier = &v 15324 return s 15325 } 15326 15327 // SetSourceSnapshotIdentifier sets the SourceSnapshotIdentifier field's value. 15328 func (s *CopyClusterSnapshotInput) SetSourceSnapshotIdentifier(v string) *CopyClusterSnapshotInput { 15329 s.SourceSnapshotIdentifier = &v 15330 return s 15331 } 15332 15333 // SetTargetSnapshotIdentifier sets the TargetSnapshotIdentifier field's value. 15334 func (s *CopyClusterSnapshotInput) SetTargetSnapshotIdentifier(v string) *CopyClusterSnapshotInput { 15335 s.TargetSnapshotIdentifier = &v 15336 return s 15337 } 15338 15339 type CopyClusterSnapshotOutput struct { 15340 _ struct{} `type:"structure"` 15341 15342 // Describes a snapshot. 15343 Snapshot *Snapshot `type:"structure"` 15344 } 15345 15346 // String returns the string representation. 15347 // 15348 // API parameter values that are decorated as "sensitive" in the API will not 15349 // be included in the string output. The member name will be present, but the 15350 // value will be replaced with "sensitive". 15351 func (s CopyClusterSnapshotOutput) String() string { 15352 return awsutil.Prettify(s) 15353 } 15354 15355 // GoString returns the string representation. 15356 // 15357 // API parameter values that are decorated as "sensitive" in the API will not 15358 // be included in the string output. The member name will be present, but the 15359 // value will be replaced with "sensitive". 15360 func (s CopyClusterSnapshotOutput) GoString() string { 15361 return s.String() 15362 } 15363 15364 // SetSnapshot sets the Snapshot field's value. 15365 func (s *CopyClusterSnapshotOutput) SetSnapshot(v *Snapshot) *CopyClusterSnapshotOutput { 15366 s.Snapshot = v 15367 return s 15368 } 15369 15370 type CreateAuthenticationProfileInput struct { 15371 _ struct{} `type:"structure"` 15372 15373 // The content of the authentication profile in JSON format. The maximum length 15374 // of the JSON string is determined by a quota for your account. 15375 // 15376 // AuthenticationProfileContent is a required field 15377 AuthenticationProfileContent *string `type:"string" required:"true"` 15378 15379 // The name of the authentication profile to be created. 15380 // 15381 // AuthenticationProfileName is a required field 15382 AuthenticationProfileName *string `type:"string" required:"true"` 15383 } 15384 15385 // String returns the string representation. 15386 // 15387 // API parameter values that are decorated as "sensitive" in the API will not 15388 // be included in the string output. The member name will be present, but the 15389 // value will be replaced with "sensitive". 15390 func (s CreateAuthenticationProfileInput) String() string { 15391 return awsutil.Prettify(s) 15392 } 15393 15394 // GoString returns the string representation. 15395 // 15396 // API parameter values that are decorated as "sensitive" in the API will not 15397 // be included in the string output. The member name will be present, but the 15398 // value will be replaced with "sensitive". 15399 func (s CreateAuthenticationProfileInput) GoString() string { 15400 return s.String() 15401 } 15402 15403 // Validate inspects the fields of the type to determine if they are valid. 15404 func (s *CreateAuthenticationProfileInput) Validate() error { 15405 invalidParams := request.ErrInvalidParams{Context: "CreateAuthenticationProfileInput"} 15406 if s.AuthenticationProfileContent == nil { 15407 invalidParams.Add(request.NewErrParamRequired("AuthenticationProfileContent")) 15408 } 15409 if s.AuthenticationProfileName == nil { 15410 invalidParams.Add(request.NewErrParamRequired("AuthenticationProfileName")) 15411 } 15412 15413 if invalidParams.Len() > 0 { 15414 return invalidParams 15415 } 15416 return nil 15417 } 15418 15419 // SetAuthenticationProfileContent sets the AuthenticationProfileContent field's value. 15420 func (s *CreateAuthenticationProfileInput) SetAuthenticationProfileContent(v string) *CreateAuthenticationProfileInput { 15421 s.AuthenticationProfileContent = &v 15422 return s 15423 } 15424 15425 // SetAuthenticationProfileName sets the AuthenticationProfileName field's value. 15426 func (s *CreateAuthenticationProfileInput) SetAuthenticationProfileName(v string) *CreateAuthenticationProfileInput { 15427 s.AuthenticationProfileName = &v 15428 return s 15429 } 15430 15431 type CreateAuthenticationProfileOutput struct { 15432 _ struct{} `type:"structure"` 15433 15434 // The content of the authentication profile in JSON format. 15435 AuthenticationProfileContent *string `type:"string"` 15436 15437 // The name of the authentication profile that was created. 15438 AuthenticationProfileName *string `type:"string"` 15439 } 15440 15441 // String returns the string representation. 15442 // 15443 // API parameter values that are decorated as "sensitive" in the API will not 15444 // be included in the string output. The member name will be present, but the 15445 // value will be replaced with "sensitive". 15446 func (s CreateAuthenticationProfileOutput) String() string { 15447 return awsutil.Prettify(s) 15448 } 15449 15450 // GoString returns the string representation. 15451 // 15452 // API parameter values that are decorated as "sensitive" in the API will not 15453 // be included in the string output. The member name will be present, but the 15454 // value will be replaced with "sensitive". 15455 func (s CreateAuthenticationProfileOutput) GoString() string { 15456 return s.String() 15457 } 15458 15459 // SetAuthenticationProfileContent sets the AuthenticationProfileContent field's value. 15460 func (s *CreateAuthenticationProfileOutput) SetAuthenticationProfileContent(v string) *CreateAuthenticationProfileOutput { 15461 s.AuthenticationProfileContent = &v 15462 return s 15463 } 15464 15465 // SetAuthenticationProfileName sets the AuthenticationProfileName field's value. 15466 func (s *CreateAuthenticationProfileOutput) SetAuthenticationProfileName(v string) *CreateAuthenticationProfileOutput { 15467 s.AuthenticationProfileName = &v 15468 return s 15469 } 15470 15471 type CreateClusterInput struct { 15472 _ struct{} `type:"structure"` 15473 15474 // Reserved. 15475 AdditionalInfo *string `type:"string"` 15476 15477 // If true, major version upgrades can be applied during the maintenance window 15478 // to the Amazon Redshift engine that is running on the cluster. 15479 // 15480 // When a new major version of the Amazon Redshift engine is released, you can 15481 // request that the service automatically apply upgrades during the maintenance 15482 // window to the Amazon Redshift engine that is running on your cluster. 15483 // 15484 // Default: true 15485 AllowVersionUpgrade *bool `type:"boolean"` 15486 15487 // The value represents how the cluster is configured to use AQUA (Advanced 15488 // Query Accelerator) when it is created. Possible values include the following. 15489 // 15490 // * enabled - Use AQUA if it is available for the current Amazon Web Services 15491 // Region and Amazon Redshift node type. 15492 // 15493 // * disabled - Don't use AQUA. 15494 // 15495 // * auto - Amazon Redshift determines whether to use AQUA. 15496 AquaConfigurationStatus *string `type:"string" enum:"AquaConfigurationStatus"` 15497 15498 // The number of days that automated snapshots are retained. If the value is 15499 // 0, automated snapshots are disabled. Even if automated snapshots are disabled, 15500 // you can still create manual snapshots when you want with CreateClusterSnapshot. 15501 // 15502 // You can't disable automated snapshots for RA3 node types. Set the automated 15503 // retention period from 1-35 days. 15504 // 15505 // Default: 1 15506 // 15507 // Constraints: Must be a value from 0 to 35. 15508 AutomatedSnapshotRetentionPeriod *int64 `type:"integer"` 15509 15510 // The EC2 Availability Zone (AZ) in which you want Amazon Redshift to provision 15511 // the cluster. For example, if you have several EC2 instances running in a 15512 // specific Availability Zone, then you might want the cluster to be provisioned 15513 // in the same zone in order to decrease network latency. 15514 // 15515 // Default: A random, system-chosen Availability Zone in the region that is 15516 // specified by the endpoint. 15517 // 15518 // Example: us-east-2d 15519 // 15520 // Constraint: The specified Availability Zone must be in the same region as 15521 // the current endpoint. 15522 AvailabilityZone *string `type:"string"` 15523 15524 // The option to enable relocation for an Amazon Redshift cluster between Availability 15525 // Zones after the cluster is created. 15526 AvailabilityZoneRelocation *bool `type:"boolean"` 15527 15528 // A unique identifier for the cluster. You use this identifier to refer to 15529 // the cluster for any subsequent cluster operations such as deleting or modifying. 15530 // The identifier also appears in the Amazon Redshift console. 15531 // 15532 // Constraints: 15533 // 15534 // * Must contain from 1 to 63 alphanumeric characters or hyphens. 15535 // 15536 // * Alphabetic characters must be lowercase. 15537 // 15538 // * First character must be a letter. 15539 // 15540 // * Cannot end with a hyphen or contain two consecutive hyphens. 15541 // 15542 // * Must be unique for all clusters within an Amazon Web Services account. 15543 // 15544 // Example: myexamplecluster 15545 // 15546 // ClusterIdentifier is a required field 15547 ClusterIdentifier *string `type:"string" required:"true"` 15548 15549 // The name of the parameter group to be associated with this cluster. 15550 // 15551 // Default: The default Amazon Redshift cluster parameter group. For information 15552 // about the default parameter group, go to Working with Amazon Redshift Parameter 15553 // Groups (https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-parameter-groups.html) 15554 // 15555 // Constraints: 15556 // 15557 // * Must be 1 to 255 alphanumeric characters or hyphens. 15558 // 15559 // * First character must be a letter. 15560 // 15561 // * Cannot end with a hyphen or contain two consecutive hyphens. 15562 ClusterParameterGroupName *string `type:"string"` 15563 15564 // A list of security groups to be associated with this cluster. 15565 // 15566 // Default: The default cluster security group for Amazon Redshift. 15567 ClusterSecurityGroups []*string `locationNameList:"ClusterSecurityGroupName" type:"list"` 15568 15569 // The name of a cluster subnet group to be associated with this cluster. 15570 // 15571 // If this parameter is not provided the resulting cluster will be deployed 15572 // outside virtual private cloud (VPC). 15573 ClusterSubnetGroupName *string `type:"string"` 15574 15575 // The type of the cluster. When cluster type is specified as 15576 // 15577 // * single-node, the NumberOfNodes parameter is not required. 15578 // 15579 // * multi-node, the NumberOfNodes parameter is required. 15580 // 15581 // Valid Values: multi-node | single-node 15582 // 15583 // Default: multi-node 15584 ClusterType *string `type:"string"` 15585 15586 // The version of the Amazon Redshift engine software that you want to deploy 15587 // on the cluster. 15588 // 15589 // The version selected runs on all the nodes in the cluster. 15590 // 15591 // Constraints: Only version 1.0 is currently available. 15592 // 15593 // Example: 1.0 15594 ClusterVersion *string `type:"string"` 15595 15596 // The name of the first database to be created when the cluster is created. 15597 // 15598 // To create additional databases after the cluster is created, connect to the 15599 // cluster with a SQL client and use SQL commands to create a database. For 15600 // more information, go to Create a Database (https://docs.aws.amazon.com/redshift/latest/dg/t_creating_database.html) 15601 // in the Amazon Redshift Database Developer Guide. 15602 // 15603 // Default: dev 15604 // 15605 // Constraints: 15606 // 15607 // * Must contain 1 to 64 alphanumeric characters. 15608 // 15609 // * Must contain only lowercase letters. 15610 // 15611 // * Cannot be a word that is reserved by the service. A list of reserved 15612 // words can be found in Reserved Words (https://docs.aws.amazon.com/redshift/latest/dg/r_pg_keywords.html) 15613 // in the Amazon Redshift Database Developer Guide. 15614 DBName *string `type:"string"` 15615 15616 // The Elastic IP (EIP) address for the cluster. 15617 // 15618 // Constraints: The cluster must be provisioned in EC2-VPC and publicly-accessible 15619 // through an Internet gateway. For more information about provisioning clusters 15620 // in EC2-VPC, go to Supported Platforms to Launch Your Cluster (https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-clusters.html#cluster-platforms) 15621 // in the Amazon Redshift Cluster Management Guide. 15622 ElasticIp *string `type:"string"` 15623 15624 // If true, the data in the cluster is encrypted at rest. 15625 // 15626 // Default: false 15627 Encrypted *bool `type:"boolean"` 15628 15629 // An option that specifies whether to create the cluster with enhanced VPC 15630 // routing enabled. To create a cluster that uses enhanced VPC routing, the 15631 // cluster must be in a VPC. For more information, see Enhanced VPC Routing 15632 // (https://docs.aws.amazon.com/redshift/latest/mgmt/enhanced-vpc-routing.html) 15633 // in the Amazon Redshift Cluster Management Guide. 15634 // 15635 // If this option is true, enhanced VPC routing is enabled. 15636 // 15637 // Default: false 15638 EnhancedVpcRouting *bool `type:"boolean"` 15639 15640 // Specifies the name of the HSM client certificate the Amazon Redshift cluster 15641 // uses to retrieve the data encryption keys stored in an HSM. 15642 HsmClientCertificateIdentifier *string `type:"string"` 15643 15644 // Specifies the name of the HSM configuration that contains the information 15645 // the Amazon Redshift cluster can use to retrieve and store keys in an HSM. 15646 HsmConfigurationIdentifier *string `type:"string"` 15647 15648 // A list of Identity and Access Management (IAM) roles that can be used by 15649 // the cluster to access other Amazon Web Services services. You must supply 15650 // the IAM roles in their Amazon Resource Name (ARN) format. You can supply 15651 // up to 10 IAM roles in a single request. 15652 // 15653 // A cluster can have up to 10 IAM roles associated with it at any time. 15654 IamRoles []*string `locationNameList:"IamRoleArn" type:"list"` 15655 15656 // The Key Management Service (KMS) key ID of the encryption key that you want 15657 // to use to encrypt data in the cluster. 15658 KmsKeyId *string `type:"string"` 15659 15660 // An optional parameter for the name of the maintenance track for the cluster. 15661 // If you don't provide a maintenance track name, the cluster is assigned to 15662 // the current track. 15663 MaintenanceTrackName *string `type:"string"` 15664 15665 // The default number of days to retain a manual snapshot. If the value is -1, 15666 // the snapshot is retained indefinitely. This setting doesn't change the retention 15667 // period of existing snapshots. 15668 // 15669 // The value must be either -1 or an integer between 1 and 3,653. 15670 ManualSnapshotRetentionPeriod *int64 `type:"integer"` 15671 15672 // The password associated with the admin user account for the cluster that 15673 // is being created. 15674 // 15675 // Constraints: 15676 // 15677 // * Must be between 8 and 64 characters in length. 15678 // 15679 // * Must contain at least one uppercase letter. 15680 // 15681 // * Must contain at least one lowercase letter. 15682 // 15683 // * Must contain one number. 15684 // 15685 // * Can be any printable ASCII character (ASCII code 33 to 126) except ' 15686 // (single quote), " (double quote), \, /, @, or space. 15687 // 15688 // MasterUserPassword is a required field 15689 MasterUserPassword *string `type:"string" required:"true"` 15690 15691 // The user name associated with the admin user account for the cluster that 15692 // is being created. 15693 // 15694 // Constraints: 15695 // 15696 // * Must be 1 - 128 alphanumeric characters. The user name can't be PUBLIC. 15697 // 15698 // * First character must be a letter. 15699 // 15700 // * Cannot be a reserved word. A list of reserved words can be found in 15701 // Reserved Words (https://docs.aws.amazon.com/redshift/latest/dg/r_pg_keywords.html) 15702 // in the Amazon Redshift Database Developer Guide. 15703 // 15704 // MasterUsername is a required field 15705 MasterUsername *string `type:"string" required:"true"` 15706 15707 // The node type to be provisioned for the cluster. For information about node 15708 // types, go to Working with Clusters (https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-clusters.html#how-many-nodes) 15709 // in the Amazon Redshift Cluster Management Guide. 15710 // 15711 // Valid Values: ds2.xlarge | ds2.8xlarge | dc1.large | dc1.8xlarge | dc2.large 15712 // | dc2.8xlarge | ra3.xlplus | ra3.4xlarge | ra3.16xlarge 15713 // 15714 // NodeType is a required field 15715 NodeType *string `type:"string" required:"true"` 15716 15717 // The number of compute nodes in the cluster. This parameter is required when 15718 // the ClusterType parameter is specified as multi-node. 15719 // 15720 // For information about determining how many nodes you need, go to Working 15721 // with Clusters (https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-clusters.html#how-many-nodes) 15722 // in the Amazon Redshift Cluster Management Guide. 15723 // 15724 // If you don't specify this parameter, you get a single-node cluster. When 15725 // requesting a multi-node cluster, you must specify the number of nodes that 15726 // you want in the cluster. 15727 // 15728 // Default: 1 15729 // 15730 // Constraints: Value must be at least 1 and no more than 100. 15731 NumberOfNodes *int64 `type:"integer"` 15732 15733 // The port number on which the cluster accepts incoming connections. 15734 // 15735 // The cluster is accessible only via the JDBC and ODBC connection strings. 15736 // Part of the connection string requires the port on which the cluster will 15737 // listen for incoming connections. 15738 // 15739 // Default: 5439 15740 // 15741 // Valid Values: 1150-65535 15742 Port *int64 `type:"integer"` 15743 15744 // The weekly time range (in UTC) during which automated cluster maintenance 15745 // can occur. 15746 // 15747 // Format: ddd:hh24:mi-ddd:hh24:mi 15748 // 15749 // Default: A 30-minute window selected at random from an 8-hour block of time 15750 // per region, occurring on a random day of the week. For more information about 15751 // the time blocks for each region, see Maintenance Windows (https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-clusters.html#rs-maintenance-windows) 15752 // in Amazon Redshift Cluster Management Guide. 15753 // 15754 // Valid Days: Mon | Tue | Wed | Thu | Fri | Sat | Sun 15755 // 15756 // Constraints: Minimum 30-minute window. 15757 PreferredMaintenanceWindow *string `type:"string"` 15758 15759 // If true, the cluster can be accessed from a public network. 15760 PubliclyAccessible *bool `type:"boolean"` 15761 15762 // A unique identifier for the snapshot schedule. 15763 SnapshotScheduleIdentifier *string `type:"string"` 15764 15765 // A list of tag instances. 15766 Tags []*Tag `locationNameList:"Tag" type:"list"` 15767 15768 // A list of Virtual Private Cloud (VPC) security groups to be associated with 15769 // the cluster. 15770 // 15771 // Default: The default VPC security group is associated with the cluster. 15772 VpcSecurityGroupIds []*string `locationNameList:"VpcSecurityGroupId" type:"list"` 15773 } 15774 15775 // String returns the string representation. 15776 // 15777 // API parameter values that are decorated as "sensitive" in the API will not 15778 // be included in the string output. The member name will be present, but the 15779 // value will be replaced with "sensitive". 15780 func (s CreateClusterInput) String() string { 15781 return awsutil.Prettify(s) 15782 } 15783 15784 // GoString returns the string representation. 15785 // 15786 // API parameter values that are decorated as "sensitive" in the API will not 15787 // be included in the string output. The member name will be present, but the 15788 // value will be replaced with "sensitive". 15789 func (s CreateClusterInput) GoString() string { 15790 return s.String() 15791 } 15792 15793 // Validate inspects the fields of the type to determine if they are valid. 15794 func (s *CreateClusterInput) Validate() error { 15795 invalidParams := request.ErrInvalidParams{Context: "CreateClusterInput"} 15796 if s.ClusterIdentifier == nil { 15797 invalidParams.Add(request.NewErrParamRequired("ClusterIdentifier")) 15798 } 15799 if s.MasterUserPassword == nil { 15800 invalidParams.Add(request.NewErrParamRequired("MasterUserPassword")) 15801 } 15802 if s.MasterUsername == nil { 15803 invalidParams.Add(request.NewErrParamRequired("MasterUsername")) 15804 } 15805 if s.NodeType == nil { 15806 invalidParams.Add(request.NewErrParamRequired("NodeType")) 15807 } 15808 15809 if invalidParams.Len() > 0 { 15810 return invalidParams 15811 } 15812 return nil 15813 } 15814 15815 // SetAdditionalInfo sets the AdditionalInfo field's value. 15816 func (s *CreateClusterInput) SetAdditionalInfo(v string) *CreateClusterInput { 15817 s.AdditionalInfo = &v 15818 return s 15819 } 15820 15821 // SetAllowVersionUpgrade sets the AllowVersionUpgrade field's value. 15822 func (s *CreateClusterInput) SetAllowVersionUpgrade(v bool) *CreateClusterInput { 15823 s.AllowVersionUpgrade = &v 15824 return s 15825 } 15826 15827 // SetAquaConfigurationStatus sets the AquaConfigurationStatus field's value. 15828 func (s *CreateClusterInput) SetAquaConfigurationStatus(v string) *CreateClusterInput { 15829 s.AquaConfigurationStatus = &v 15830 return s 15831 } 15832 15833 // SetAutomatedSnapshotRetentionPeriod sets the AutomatedSnapshotRetentionPeriod field's value. 15834 func (s *CreateClusterInput) SetAutomatedSnapshotRetentionPeriod(v int64) *CreateClusterInput { 15835 s.AutomatedSnapshotRetentionPeriod = &v 15836 return s 15837 } 15838 15839 // SetAvailabilityZone sets the AvailabilityZone field's value. 15840 func (s *CreateClusterInput) SetAvailabilityZone(v string) *CreateClusterInput { 15841 s.AvailabilityZone = &v 15842 return s 15843 } 15844 15845 // SetAvailabilityZoneRelocation sets the AvailabilityZoneRelocation field's value. 15846 func (s *CreateClusterInput) SetAvailabilityZoneRelocation(v bool) *CreateClusterInput { 15847 s.AvailabilityZoneRelocation = &v 15848 return s 15849 } 15850 15851 // SetClusterIdentifier sets the ClusterIdentifier field's value. 15852 func (s *CreateClusterInput) SetClusterIdentifier(v string) *CreateClusterInput { 15853 s.ClusterIdentifier = &v 15854 return s 15855 } 15856 15857 // SetClusterParameterGroupName sets the ClusterParameterGroupName field's value. 15858 func (s *CreateClusterInput) SetClusterParameterGroupName(v string) *CreateClusterInput { 15859 s.ClusterParameterGroupName = &v 15860 return s 15861 } 15862 15863 // SetClusterSecurityGroups sets the ClusterSecurityGroups field's value. 15864 func (s *CreateClusterInput) SetClusterSecurityGroups(v []*string) *CreateClusterInput { 15865 s.ClusterSecurityGroups = v 15866 return s 15867 } 15868 15869 // SetClusterSubnetGroupName sets the ClusterSubnetGroupName field's value. 15870 func (s *CreateClusterInput) SetClusterSubnetGroupName(v string) *CreateClusterInput { 15871 s.ClusterSubnetGroupName = &v 15872 return s 15873 } 15874 15875 // SetClusterType sets the ClusterType field's value. 15876 func (s *CreateClusterInput) SetClusterType(v string) *CreateClusterInput { 15877 s.ClusterType = &v 15878 return s 15879 } 15880 15881 // SetClusterVersion sets the ClusterVersion field's value. 15882 func (s *CreateClusterInput) SetClusterVersion(v string) *CreateClusterInput { 15883 s.ClusterVersion = &v 15884 return s 15885 } 15886 15887 // SetDBName sets the DBName field's value. 15888 func (s *CreateClusterInput) SetDBName(v string) *CreateClusterInput { 15889 s.DBName = &v 15890 return s 15891 } 15892 15893 // SetElasticIp sets the ElasticIp field's value. 15894 func (s *CreateClusterInput) SetElasticIp(v string) *CreateClusterInput { 15895 s.ElasticIp = &v 15896 return s 15897 } 15898 15899 // SetEncrypted sets the Encrypted field's value. 15900 func (s *CreateClusterInput) SetEncrypted(v bool) *CreateClusterInput { 15901 s.Encrypted = &v 15902 return s 15903 } 15904 15905 // SetEnhancedVpcRouting sets the EnhancedVpcRouting field's value. 15906 func (s *CreateClusterInput) SetEnhancedVpcRouting(v bool) *CreateClusterInput { 15907 s.EnhancedVpcRouting = &v 15908 return s 15909 } 15910 15911 // SetHsmClientCertificateIdentifier sets the HsmClientCertificateIdentifier field's value. 15912 func (s *CreateClusterInput) SetHsmClientCertificateIdentifier(v string) *CreateClusterInput { 15913 s.HsmClientCertificateIdentifier = &v 15914 return s 15915 } 15916 15917 // SetHsmConfigurationIdentifier sets the HsmConfigurationIdentifier field's value. 15918 func (s *CreateClusterInput) SetHsmConfigurationIdentifier(v string) *CreateClusterInput { 15919 s.HsmConfigurationIdentifier = &v 15920 return s 15921 } 15922 15923 // SetIamRoles sets the IamRoles field's value. 15924 func (s *CreateClusterInput) SetIamRoles(v []*string) *CreateClusterInput { 15925 s.IamRoles = v 15926 return s 15927 } 15928 15929 // SetKmsKeyId sets the KmsKeyId field's value. 15930 func (s *CreateClusterInput) SetKmsKeyId(v string) *CreateClusterInput { 15931 s.KmsKeyId = &v 15932 return s 15933 } 15934 15935 // SetMaintenanceTrackName sets the MaintenanceTrackName field's value. 15936 func (s *CreateClusterInput) SetMaintenanceTrackName(v string) *CreateClusterInput { 15937 s.MaintenanceTrackName = &v 15938 return s 15939 } 15940 15941 // SetManualSnapshotRetentionPeriod sets the ManualSnapshotRetentionPeriod field's value. 15942 func (s *CreateClusterInput) SetManualSnapshotRetentionPeriod(v int64) *CreateClusterInput { 15943 s.ManualSnapshotRetentionPeriod = &v 15944 return s 15945 } 15946 15947 // SetMasterUserPassword sets the MasterUserPassword field's value. 15948 func (s *CreateClusterInput) SetMasterUserPassword(v string) *CreateClusterInput { 15949 s.MasterUserPassword = &v 15950 return s 15951 } 15952 15953 // SetMasterUsername sets the MasterUsername field's value. 15954 func (s *CreateClusterInput) SetMasterUsername(v string) *CreateClusterInput { 15955 s.MasterUsername = &v 15956 return s 15957 } 15958 15959 // SetNodeType sets the NodeType field's value. 15960 func (s *CreateClusterInput) SetNodeType(v string) *CreateClusterInput { 15961 s.NodeType = &v 15962 return s 15963 } 15964 15965 // SetNumberOfNodes sets the NumberOfNodes field's value. 15966 func (s *CreateClusterInput) SetNumberOfNodes(v int64) *CreateClusterInput { 15967 s.NumberOfNodes = &v 15968 return s 15969 } 15970 15971 // SetPort sets the Port field's value. 15972 func (s *CreateClusterInput) SetPort(v int64) *CreateClusterInput { 15973 s.Port = &v 15974 return s 15975 } 15976 15977 // SetPreferredMaintenanceWindow sets the PreferredMaintenanceWindow field's value. 15978 func (s *CreateClusterInput) SetPreferredMaintenanceWindow(v string) *CreateClusterInput { 15979 s.PreferredMaintenanceWindow = &v 15980 return s 15981 } 15982 15983 // SetPubliclyAccessible sets the PubliclyAccessible field's value. 15984 func (s *CreateClusterInput) SetPubliclyAccessible(v bool) *CreateClusterInput { 15985 s.PubliclyAccessible = &v 15986 return s 15987 } 15988 15989 // SetSnapshotScheduleIdentifier sets the SnapshotScheduleIdentifier field's value. 15990 func (s *CreateClusterInput) SetSnapshotScheduleIdentifier(v string) *CreateClusterInput { 15991 s.SnapshotScheduleIdentifier = &v 15992 return s 15993 } 15994 15995 // SetTags sets the Tags field's value. 15996 func (s *CreateClusterInput) SetTags(v []*Tag) *CreateClusterInput { 15997 s.Tags = v 15998 return s 15999 } 16000 16001 // SetVpcSecurityGroupIds sets the VpcSecurityGroupIds field's value. 16002 func (s *CreateClusterInput) SetVpcSecurityGroupIds(v []*string) *CreateClusterInput { 16003 s.VpcSecurityGroupIds = v 16004 return s 16005 } 16006 16007 type CreateClusterOutput struct { 16008 _ struct{} `type:"structure"` 16009 16010 // Describes a cluster. 16011 Cluster *Cluster `type:"structure"` 16012 } 16013 16014 // String returns the string representation. 16015 // 16016 // API parameter values that are decorated as "sensitive" in the API will not 16017 // be included in the string output. The member name will be present, but the 16018 // value will be replaced with "sensitive". 16019 func (s CreateClusterOutput) String() string { 16020 return awsutil.Prettify(s) 16021 } 16022 16023 // GoString returns the string representation. 16024 // 16025 // API parameter values that are decorated as "sensitive" in the API will not 16026 // be included in the string output. The member name will be present, but the 16027 // value will be replaced with "sensitive". 16028 func (s CreateClusterOutput) GoString() string { 16029 return s.String() 16030 } 16031 16032 // SetCluster sets the Cluster field's value. 16033 func (s *CreateClusterOutput) SetCluster(v *Cluster) *CreateClusterOutput { 16034 s.Cluster = v 16035 return s 16036 } 16037 16038 type CreateClusterParameterGroupInput struct { 16039 _ struct{} `type:"structure"` 16040 16041 // A description of the parameter group. 16042 // 16043 // Description is a required field 16044 Description *string `type:"string" required:"true"` 16045 16046 // The Amazon Redshift engine version to which the cluster parameter group applies. 16047 // The cluster engine version determines the set of parameters. 16048 // 16049 // To get a list of valid parameter group family names, you can call DescribeClusterParameterGroups. 16050 // By default, Amazon Redshift returns a list of all the parameter groups that 16051 // are owned by your Amazon Web Services account, including the default parameter 16052 // groups for each Amazon Redshift engine version. The parameter group family 16053 // names associated with the default parameter groups provide you the valid 16054 // values. For example, a valid family name is "redshift-1.0". 16055 // 16056 // ParameterGroupFamily is a required field 16057 ParameterGroupFamily *string `type:"string" required:"true"` 16058 16059 // The name of the cluster parameter group. 16060 // 16061 // Constraints: 16062 // 16063 // * Must be 1 to 255 alphanumeric characters or hyphens 16064 // 16065 // * First character must be a letter. 16066 // 16067 // * Cannot end with a hyphen or contain two consecutive hyphens. 16068 // 16069 // * Must be unique withing your Amazon Web Services account. 16070 // 16071 // This value is stored as a lower-case string. 16072 // 16073 // ParameterGroupName is a required field 16074 ParameterGroupName *string `type:"string" required:"true"` 16075 16076 // A list of tag instances. 16077 Tags []*Tag `locationNameList:"Tag" type:"list"` 16078 } 16079 16080 // String returns the string representation. 16081 // 16082 // API parameter values that are decorated as "sensitive" in the API will not 16083 // be included in the string output. The member name will be present, but the 16084 // value will be replaced with "sensitive". 16085 func (s CreateClusterParameterGroupInput) String() string { 16086 return awsutil.Prettify(s) 16087 } 16088 16089 // GoString returns the string representation. 16090 // 16091 // API parameter values that are decorated as "sensitive" in the API will not 16092 // be included in the string output. The member name will be present, but the 16093 // value will be replaced with "sensitive". 16094 func (s CreateClusterParameterGroupInput) GoString() string { 16095 return s.String() 16096 } 16097 16098 // Validate inspects the fields of the type to determine if they are valid. 16099 func (s *CreateClusterParameterGroupInput) Validate() error { 16100 invalidParams := request.ErrInvalidParams{Context: "CreateClusterParameterGroupInput"} 16101 if s.Description == nil { 16102 invalidParams.Add(request.NewErrParamRequired("Description")) 16103 } 16104 if s.ParameterGroupFamily == nil { 16105 invalidParams.Add(request.NewErrParamRequired("ParameterGroupFamily")) 16106 } 16107 if s.ParameterGroupName == nil { 16108 invalidParams.Add(request.NewErrParamRequired("ParameterGroupName")) 16109 } 16110 16111 if invalidParams.Len() > 0 { 16112 return invalidParams 16113 } 16114 return nil 16115 } 16116 16117 // SetDescription sets the Description field's value. 16118 func (s *CreateClusterParameterGroupInput) SetDescription(v string) *CreateClusterParameterGroupInput { 16119 s.Description = &v 16120 return s 16121 } 16122 16123 // SetParameterGroupFamily sets the ParameterGroupFamily field's value. 16124 func (s *CreateClusterParameterGroupInput) SetParameterGroupFamily(v string) *CreateClusterParameterGroupInput { 16125 s.ParameterGroupFamily = &v 16126 return s 16127 } 16128 16129 // SetParameterGroupName sets the ParameterGroupName field's value. 16130 func (s *CreateClusterParameterGroupInput) SetParameterGroupName(v string) *CreateClusterParameterGroupInput { 16131 s.ParameterGroupName = &v 16132 return s 16133 } 16134 16135 // SetTags sets the Tags field's value. 16136 func (s *CreateClusterParameterGroupInput) SetTags(v []*Tag) *CreateClusterParameterGroupInput { 16137 s.Tags = v 16138 return s 16139 } 16140 16141 type CreateClusterParameterGroupOutput struct { 16142 _ struct{} `type:"structure"` 16143 16144 // Describes a parameter group. 16145 ClusterParameterGroup *ClusterParameterGroup `type:"structure"` 16146 } 16147 16148 // String returns the string representation. 16149 // 16150 // API parameter values that are decorated as "sensitive" in the API will not 16151 // be included in the string output. The member name will be present, but the 16152 // value will be replaced with "sensitive". 16153 func (s CreateClusterParameterGroupOutput) String() string { 16154 return awsutil.Prettify(s) 16155 } 16156 16157 // GoString returns the string representation. 16158 // 16159 // API parameter values that are decorated as "sensitive" in the API will not 16160 // be included in the string output. The member name will be present, but the 16161 // value will be replaced with "sensitive". 16162 func (s CreateClusterParameterGroupOutput) GoString() string { 16163 return s.String() 16164 } 16165 16166 // SetClusterParameterGroup sets the ClusterParameterGroup field's value. 16167 func (s *CreateClusterParameterGroupOutput) SetClusterParameterGroup(v *ClusterParameterGroup) *CreateClusterParameterGroupOutput { 16168 s.ClusterParameterGroup = v 16169 return s 16170 } 16171 16172 type CreateClusterSecurityGroupInput struct { 16173 _ struct{} `type:"structure"` 16174 16175 // The name for the security group. Amazon Redshift stores the value as a lowercase 16176 // string. 16177 // 16178 // Constraints: 16179 // 16180 // * Must contain no more than 255 alphanumeric characters or hyphens. 16181 // 16182 // * Must not be "Default". 16183 // 16184 // * Must be unique for all security groups that are created by your Amazon 16185 // Web Services account. 16186 // 16187 // Example: examplesecuritygroup 16188 // 16189 // ClusterSecurityGroupName is a required field 16190 ClusterSecurityGroupName *string `type:"string" required:"true"` 16191 16192 // A description for the security group. 16193 // 16194 // Description is a required field 16195 Description *string `type:"string" required:"true"` 16196 16197 // A list of tag instances. 16198 Tags []*Tag `locationNameList:"Tag" type:"list"` 16199 } 16200 16201 // String returns the string representation. 16202 // 16203 // API parameter values that are decorated as "sensitive" in the API will not 16204 // be included in the string output. The member name will be present, but the 16205 // value will be replaced with "sensitive". 16206 func (s CreateClusterSecurityGroupInput) String() string { 16207 return awsutil.Prettify(s) 16208 } 16209 16210 // GoString returns the string representation. 16211 // 16212 // API parameter values that are decorated as "sensitive" in the API will not 16213 // be included in the string output. The member name will be present, but the 16214 // value will be replaced with "sensitive". 16215 func (s CreateClusterSecurityGroupInput) GoString() string { 16216 return s.String() 16217 } 16218 16219 // Validate inspects the fields of the type to determine if they are valid. 16220 func (s *CreateClusterSecurityGroupInput) Validate() error { 16221 invalidParams := request.ErrInvalidParams{Context: "CreateClusterSecurityGroupInput"} 16222 if s.ClusterSecurityGroupName == nil { 16223 invalidParams.Add(request.NewErrParamRequired("ClusterSecurityGroupName")) 16224 } 16225 if s.Description == nil { 16226 invalidParams.Add(request.NewErrParamRequired("Description")) 16227 } 16228 16229 if invalidParams.Len() > 0 { 16230 return invalidParams 16231 } 16232 return nil 16233 } 16234 16235 // SetClusterSecurityGroupName sets the ClusterSecurityGroupName field's value. 16236 func (s *CreateClusterSecurityGroupInput) SetClusterSecurityGroupName(v string) *CreateClusterSecurityGroupInput { 16237 s.ClusterSecurityGroupName = &v 16238 return s 16239 } 16240 16241 // SetDescription sets the Description field's value. 16242 func (s *CreateClusterSecurityGroupInput) SetDescription(v string) *CreateClusterSecurityGroupInput { 16243 s.Description = &v 16244 return s 16245 } 16246 16247 // SetTags sets the Tags field's value. 16248 func (s *CreateClusterSecurityGroupInput) SetTags(v []*Tag) *CreateClusterSecurityGroupInput { 16249 s.Tags = v 16250 return s 16251 } 16252 16253 type CreateClusterSecurityGroupOutput struct { 16254 _ struct{} `type:"structure"` 16255 16256 // Describes a security group. 16257 ClusterSecurityGroup *ClusterSecurityGroup `type:"structure"` 16258 } 16259 16260 // String returns the string representation. 16261 // 16262 // API parameter values that are decorated as "sensitive" in the API will not 16263 // be included in the string output. The member name will be present, but the 16264 // value will be replaced with "sensitive". 16265 func (s CreateClusterSecurityGroupOutput) String() string { 16266 return awsutil.Prettify(s) 16267 } 16268 16269 // GoString returns the string representation. 16270 // 16271 // API parameter values that are decorated as "sensitive" in the API will not 16272 // be included in the string output. The member name will be present, but the 16273 // value will be replaced with "sensitive". 16274 func (s CreateClusterSecurityGroupOutput) GoString() string { 16275 return s.String() 16276 } 16277 16278 // SetClusterSecurityGroup sets the ClusterSecurityGroup field's value. 16279 func (s *CreateClusterSecurityGroupOutput) SetClusterSecurityGroup(v *ClusterSecurityGroup) *CreateClusterSecurityGroupOutput { 16280 s.ClusterSecurityGroup = v 16281 return s 16282 } 16283 16284 type CreateClusterSnapshotInput struct { 16285 _ struct{} `type:"structure"` 16286 16287 // The cluster identifier for which you want a snapshot. 16288 // 16289 // ClusterIdentifier is a required field 16290 ClusterIdentifier *string `type:"string" required:"true"` 16291 16292 // The number of days that a manual snapshot is retained. If the value is -1, 16293 // the manual snapshot is retained indefinitely. 16294 // 16295 // The value must be either -1 or an integer between 1 and 3,653. 16296 // 16297 // The default value is -1. 16298 ManualSnapshotRetentionPeriod *int64 `type:"integer"` 16299 16300 // A unique identifier for the snapshot that you are requesting. This identifier 16301 // must be unique for all snapshots within the Amazon Web Services account. 16302 // 16303 // Constraints: 16304 // 16305 // * Cannot be null, empty, or blank 16306 // 16307 // * Must contain from 1 to 255 alphanumeric characters or hyphens 16308 // 16309 // * First character must be a letter 16310 // 16311 // * Cannot end with a hyphen or contain two consecutive hyphens 16312 // 16313 // Example: my-snapshot-id 16314 // 16315 // SnapshotIdentifier is a required field 16316 SnapshotIdentifier *string `type:"string" required:"true"` 16317 16318 // A list of tag instances. 16319 Tags []*Tag `locationNameList:"Tag" type:"list"` 16320 } 16321 16322 // String returns the string representation. 16323 // 16324 // API parameter values that are decorated as "sensitive" in the API will not 16325 // be included in the string output. The member name will be present, but the 16326 // value will be replaced with "sensitive". 16327 func (s CreateClusterSnapshotInput) String() string { 16328 return awsutil.Prettify(s) 16329 } 16330 16331 // GoString returns the string representation. 16332 // 16333 // API parameter values that are decorated as "sensitive" in the API will not 16334 // be included in the string output. The member name will be present, but the 16335 // value will be replaced with "sensitive". 16336 func (s CreateClusterSnapshotInput) GoString() string { 16337 return s.String() 16338 } 16339 16340 // Validate inspects the fields of the type to determine if they are valid. 16341 func (s *CreateClusterSnapshotInput) Validate() error { 16342 invalidParams := request.ErrInvalidParams{Context: "CreateClusterSnapshotInput"} 16343 if s.ClusterIdentifier == nil { 16344 invalidParams.Add(request.NewErrParamRequired("ClusterIdentifier")) 16345 } 16346 if s.SnapshotIdentifier == nil { 16347 invalidParams.Add(request.NewErrParamRequired("SnapshotIdentifier")) 16348 } 16349 16350 if invalidParams.Len() > 0 { 16351 return invalidParams 16352 } 16353 return nil 16354 } 16355 16356 // SetClusterIdentifier sets the ClusterIdentifier field's value. 16357 func (s *CreateClusterSnapshotInput) SetClusterIdentifier(v string) *CreateClusterSnapshotInput { 16358 s.ClusterIdentifier = &v 16359 return s 16360 } 16361 16362 // SetManualSnapshotRetentionPeriod sets the ManualSnapshotRetentionPeriod field's value. 16363 func (s *CreateClusterSnapshotInput) SetManualSnapshotRetentionPeriod(v int64) *CreateClusterSnapshotInput { 16364 s.ManualSnapshotRetentionPeriod = &v 16365 return s 16366 } 16367 16368 // SetSnapshotIdentifier sets the SnapshotIdentifier field's value. 16369 func (s *CreateClusterSnapshotInput) SetSnapshotIdentifier(v string) *CreateClusterSnapshotInput { 16370 s.SnapshotIdentifier = &v 16371 return s 16372 } 16373 16374 // SetTags sets the Tags field's value. 16375 func (s *CreateClusterSnapshotInput) SetTags(v []*Tag) *CreateClusterSnapshotInput { 16376 s.Tags = v 16377 return s 16378 } 16379 16380 type CreateClusterSnapshotOutput struct { 16381 _ struct{} `type:"structure"` 16382 16383 // Describes a snapshot. 16384 Snapshot *Snapshot `type:"structure"` 16385 } 16386 16387 // String returns the string representation. 16388 // 16389 // API parameter values that are decorated as "sensitive" in the API will not 16390 // be included in the string output. The member name will be present, but the 16391 // value will be replaced with "sensitive". 16392 func (s CreateClusterSnapshotOutput) String() string { 16393 return awsutil.Prettify(s) 16394 } 16395 16396 // GoString returns the string representation. 16397 // 16398 // API parameter values that are decorated as "sensitive" in the API will not 16399 // be included in the string output. The member name will be present, but the 16400 // value will be replaced with "sensitive". 16401 func (s CreateClusterSnapshotOutput) GoString() string { 16402 return s.String() 16403 } 16404 16405 // SetSnapshot sets the Snapshot field's value. 16406 func (s *CreateClusterSnapshotOutput) SetSnapshot(v *Snapshot) *CreateClusterSnapshotOutput { 16407 s.Snapshot = v 16408 return s 16409 } 16410 16411 type CreateClusterSubnetGroupInput struct { 16412 _ struct{} `type:"structure"` 16413 16414 // The name for the subnet group. Amazon Redshift stores the value as a lowercase 16415 // string. 16416 // 16417 // Constraints: 16418 // 16419 // * Must contain no more than 255 alphanumeric characters or hyphens. 16420 // 16421 // * Must not be "Default". 16422 // 16423 // * Must be unique for all subnet groups that are created by your Amazon 16424 // Web Services account. 16425 // 16426 // Example: examplesubnetgroup 16427 // 16428 // ClusterSubnetGroupName is a required field 16429 ClusterSubnetGroupName *string `type:"string" required:"true"` 16430 16431 // A description for the subnet group. 16432 // 16433 // Description is a required field 16434 Description *string `type:"string" required:"true"` 16435 16436 // An array of VPC subnet IDs. A maximum of 20 subnets can be modified in a 16437 // single request. 16438 // 16439 // SubnetIds is a required field 16440 SubnetIds []*string `locationNameList:"SubnetIdentifier" type:"list" required:"true"` 16441 16442 // A list of tag instances. 16443 Tags []*Tag `locationNameList:"Tag" type:"list"` 16444 } 16445 16446 // String returns the string representation. 16447 // 16448 // API parameter values that are decorated as "sensitive" in the API will not 16449 // be included in the string output. The member name will be present, but the 16450 // value will be replaced with "sensitive". 16451 func (s CreateClusterSubnetGroupInput) String() string { 16452 return awsutil.Prettify(s) 16453 } 16454 16455 // GoString returns the string representation. 16456 // 16457 // API parameter values that are decorated as "sensitive" in the API will not 16458 // be included in the string output. The member name will be present, but the 16459 // value will be replaced with "sensitive". 16460 func (s CreateClusterSubnetGroupInput) GoString() string { 16461 return s.String() 16462 } 16463 16464 // Validate inspects the fields of the type to determine if they are valid. 16465 func (s *CreateClusterSubnetGroupInput) Validate() error { 16466 invalidParams := request.ErrInvalidParams{Context: "CreateClusterSubnetGroupInput"} 16467 if s.ClusterSubnetGroupName == nil { 16468 invalidParams.Add(request.NewErrParamRequired("ClusterSubnetGroupName")) 16469 } 16470 if s.Description == nil { 16471 invalidParams.Add(request.NewErrParamRequired("Description")) 16472 } 16473 if s.SubnetIds == nil { 16474 invalidParams.Add(request.NewErrParamRequired("SubnetIds")) 16475 } 16476 16477 if invalidParams.Len() > 0 { 16478 return invalidParams 16479 } 16480 return nil 16481 } 16482 16483 // SetClusterSubnetGroupName sets the ClusterSubnetGroupName field's value. 16484 func (s *CreateClusterSubnetGroupInput) SetClusterSubnetGroupName(v string) *CreateClusterSubnetGroupInput { 16485 s.ClusterSubnetGroupName = &v 16486 return s 16487 } 16488 16489 // SetDescription sets the Description field's value. 16490 func (s *CreateClusterSubnetGroupInput) SetDescription(v string) *CreateClusterSubnetGroupInput { 16491 s.Description = &v 16492 return s 16493 } 16494 16495 // SetSubnetIds sets the SubnetIds field's value. 16496 func (s *CreateClusterSubnetGroupInput) SetSubnetIds(v []*string) *CreateClusterSubnetGroupInput { 16497 s.SubnetIds = v 16498 return s 16499 } 16500 16501 // SetTags sets the Tags field's value. 16502 func (s *CreateClusterSubnetGroupInput) SetTags(v []*Tag) *CreateClusterSubnetGroupInput { 16503 s.Tags = v 16504 return s 16505 } 16506 16507 type CreateClusterSubnetGroupOutput struct { 16508 _ struct{} `type:"structure"` 16509 16510 // Describes a subnet group. 16511 ClusterSubnetGroup *ClusterSubnetGroup `type:"structure"` 16512 } 16513 16514 // String returns the string representation. 16515 // 16516 // API parameter values that are decorated as "sensitive" in the API will not 16517 // be included in the string output. The member name will be present, but the 16518 // value will be replaced with "sensitive". 16519 func (s CreateClusterSubnetGroupOutput) String() string { 16520 return awsutil.Prettify(s) 16521 } 16522 16523 // GoString returns the string representation. 16524 // 16525 // API parameter values that are decorated as "sensitive" in the API will not 16526 // be included in the string output. The member name will be present, but the 16527 // value will be replaced with "sensitive". 16528 func (s CreateClusterSubnetGroupOutput) GoString() string { 16529 return s.String() 16530 } 16531 16532 // SetClusterSubnetGroup sets the ClusterSubnetGroup field's value. 16533 func (s *CreateClusterSubnetGroupOutput) SetClusterSubnetGroup(v *ClusterSubnetGroup) *CreateClusterSubnetGroupOutput { 16534 s.ClusterSubnetGroup = v 16535 return s 16536 } 16537 16538 type CreateEndpointAccessInput struct { 16539 _ struct{} `type:"structure"` 16540 16541 // The cluster identifier of the cluster to access. 16542 ClusterIdentifier *string `type:"string"` 16543 16544 // The Redshift-managed VPC endpoint name. 16545 // 16546 // An endpoint name must contain 1-30 characters. Valid characters are A-Z, 16547 // a-z, 0-9, and hyphen(-). The first character must be a letter. The name can't 16548 // contain two consecutive hyphens or end with a hyphen. 16549 // 16550 // EndpointName is a required field 16551 EndpointName *string `type:"string" required:"true"` 16552 16553 // The Amazon Web Services account ID of the owner of the cluster. This is only 16554 // required if the cluster is in another Amazon Web Services account. 16555 ResourceOwner *string `type:"string"` 16556 16557 // The subnet group from which Amazon Redshift chooses the subnet to deploy 16558 // the endpoint. 16559 // 16560 // SubnetGroupName is a required field 16561 SubnetGroupName *string `type:"string" required:"true"` 16562 16563 // The security group that defines the ports, protocols, and sources for inbound 16564 // traffic that you are authorizing into your endpoint. 16565 VpcSecurityGroupIds []*string `locationNameList:"VpcSecurityGroupId" type:"list"` 16566 } 16567 16568 // String returns the string representation. 16569 // 16570 // API parameter values that are decorated as "sensitive" in the API will not 16571 // be included in the string output. The member name will be present, but the 16572 // value will be replaced with "sensitive". 16573 func (s CreateEndpointAccessInput) String() string { 16574 return awsutil.Prettify(s) 16575 } 16576 16577 // GoString returns the string representation. 16578 // 16579 // API parameter values that are decorated as "sensitive" in the API will not 16580 // be included in the string output. The member name will be present, but the 16581 // value will be replaced with "sensitive". 16582 func (s CreateEndpointAccessInput) GoString() string { 16583 return s.String() 16584 } 16585 16586 // Validate inspects the fields of the type to determine if they are valid. 16587 func (s *CreateEndpointAccessInput) Validate() error { 16588 invalidParams := request.ErrInvalidParams{Context: "CreateEndpointAccessInput"} 16589 if s.EndpointName == nil { 16590 invalidParams.Add(request.NewErrParamRequired("EndpointName")) 16591 } 16592 if s.SubnetGroupName == nil { 16593 invalidParams.Add(request.NewErrParamRequired("SubnetGroupName")) 16594 } 16595 16596 if invalidParams.Len() > 0 { 16597 return invalidParams 16598 } 16599 return nil 16600 } 16601 16602 // SetClusterIdentifier sets the ClusterIdentifier field's value. 16603 func (s *CreateEndpointAccessInput) SetClusterIdentifier(v string) *CreateEndpointAccessInput { 16604 s.ClusterIdentifier = &v 16605 return s 16606 } 16607 16608 // SetEndpointName sets the EndpointName field's value. 16609 func (s *CreateEndpointAccessInput) SetEndpointName(v string) *CreateEndpointAccessInput { 16610 s.EndpointName = &v 16611 return s 16612 } 16613 16614 // SetResourceOwner sets the ResourceOwner field's value. 16615 func (s *CreateEndpointAccessInput) SetResourceOwner(v string) *CreateEndpointAccessInput { 16616 s.ResourceOwner = &v 16617 return s 16618 } 16619 16620 // SetSubnetGroupName sets the SubnetGroupName field's value. 16621 func (s *CreateEndpointAccessInput) SetSubnetGroupName(v string) *CreateEndpointAccessInput { 16622 s.SubnetGroupName = &v 16623 return s 16624 } 16625 16626 // SetVpcSecurityGroupIds sets the VpcSecurityGroupIds field's value. 16627 func (s *CreateEndpointAccessInput) SetVpcSecurityGroupIds(v []*string) *CreateEndpointAccessInput { 16628 s.VpcSecurityGroupIds = v 16629 return s 16630 } 16631 16632 // Describes a Redshift-managed VPC endpoint. 16633 type CreateEndpointAccessOutput struct { 16634 _ struct{} `type:"structure"` 16635 16636 // The DNS address of the endpoint. 16637 Address *string `type:"string"` 16638 16639 // The cluster identifier of the cluster associated with the endpoint. 16640 ClusterIdentifier *string `type:"string"` 16641 16642 // The time (UTC) that the endpoint was created. 16643 EndpointCreateTime *time.Time `type:"timestamp"` 16644 16645 // The name of the endpoint. 16646 EndpointName *string `type:"string"` 16647 16648 // The status of the endpoint. 16649 EndpointStatus *string `type:"string"` 16650 16651 // The port number on which the cluster accepts incoming connections. 16652 Port *int64 `type:"integer"` 16653 16654 // The Amazon Web Services account ID of the owner of the cluster. 16655 ResourceOwner *string `type:"string"` 16656 16657 // The subnet group name where Amazon Redshift chooses to deploy the endpoint. 16658 SubnetGroupName *string `type:"string"` 16659 16660 // The connection endpoint for connecting to an Amazon Redshift cluster through 16661 // the proxy. 16662 VpcEndpoint *VpcEndpoint `type:"structure"` 16663 16664 // The security groups associated with the endpoint. 16665 VpcSecurityGroups []*VpcSecurityGroupMembership `locationNameList:"VpcSecurityGroup" type:"list"` 16666 } 16667 16668 // String returns the string representation. 16669 // 16670 // API parameter values that are decorated as "sensitive" in the API will not 16671 // be included in the string output. The member name will be present, but the 16672 // value will be replaced with "sensitive". 16673 func (s CreateEndpointAccessOutput) String() string { 16674 return awsutil.Prettify(s) 16675 } 16676 16677 // GoString returns the string representation. 16678 // 16679 // API parameter values that are decorated as "sensitive" in the API will not 16680 // be included in the string output. The member name will be present, but the 16681 // value will be replaced with "sensitive". 16682 func (s CreateEndpointAccessOutput) GoString() string { 16683 return s.String() 16684 } 16685 16686 // SetAddress sets the Address field's value. 16687 func (s *CreateEndpointAccessOutput) SetAddress(v string) *CreateEndpointAccessOutput { 16688 s.Address = &v 16689 return s 16690 } 16691 16692 // SetClusterIdentifier sets the ClusterIdentifier field's value. 16693 func (s *CreateEndpointAccessOutput) SetClusterIdentifier(v string) *CreateEndpointAccessOutput { 16694 s.ClusterIdentifier = &v 16695 return s 16696 } 16697 16698 // SetEndpointCreateTime sets the EndpointCreateTime field's value. 16699 func (s *CreateEndpointAccessOutput) SetEndpointCreateTime(v time.Time) *CreateEndpointAccessOutput { 16700 s.EndpointCreateTime = &v 16701 return s 16702 } 16703 16704 // SetEndpointName sets the EndpointName field's value. 16705 func (s *CreateEndpointAccessOutput) SetEndpointName(v string) *CreateEndpointAccessOutput { 16706 s.EndpointName = &v 16707 return s 16708 } 16709 16710 // SetEndpointStatus sets the EndpointStatus field's value. 16711 func (s *CreateEndpointAccessOutput) SetEndpointStatus(v string) *CreateEndpointAccessOutput { 16712 s.EndpointStatus = &v 16713 return s 16714 } 16715 16716 // SetPort sets the Port field's value. 16717 func (s *CreateEndpointAccessOutput) SetPort(v int64) *CreateEndpointAccessOutput { 16718 s.Port = &v 16719 return s 16720 } 16721 16722 // SetResourceOwner sets the ResourceOwner field's value. 16723 func (s *CreateEndpointAccessOutput) SetResourceOwner(v string) *CreateEndpointAccessOutput { 16724 s.ResourceOwner = &v 16725 return s 16726 } 16727 16728 // SetSubnetGroupName sets the SubnetGroupName field's value. 16729 func (s *CreateEndpointAccessOutput) SetSubnetGroupName(v string) *CreateEndpointAccessOutput { 16730 s.SubnetGroupName = &v 16731 return s 16732 } 16733 16734 // SetVpcEndpoint sets the VpcEndpoint field's value. 16735 func (s *CreateEndpointAccessOutput) SetVpcEndpoint(v *VpcEndpoint) *CreateEndpointAccessOutput { 16736 s.VpcEndpoint = v 16737 return s 16738 } 16739 16740 // SetVpcSecurityGroups sets the VpcSecurityGroups field's value. 16741 func (s *CreateEndpointAccessOutput) SetVpcSecurityGroups(v []*VpcSecurityGroupMembership) *CreateEndpointAccessOutput { 16742 s.VpcSecurityGroups = v 16743 return s 16744 } 16745 16746 type CreateEventSubscriptionInput struct { 16747 _ struct{} `type:"structure"` 16748 16749 // A boolean value; set to true to activate the subscription, and set to false 16750 // to create the subscription but not activate it. 16751 Enabled *bool `type:"boolean"` 16752 16753 // Specifies the Amazon Redshift event categories to be published by the event 16754 // notification subscription. 16755 // 16756 // Values: configuration, management, monitoring, security, pending 16757 EventCategories []*string `locationNameList:"EventCategory" type:"list"` 16758 16759 // Specifies the Amazon Redshift event severity to be published by the event 16760 // notification subscription. 16761 // 16762 // Values: ERROR, INFO 16763 Severity *string `type:"string"` 16764 16765 // The Amazon Resource Name (ARN) of the Amazon SNS topic used to transmit the 16766 // event notifications. The ARN is created by Amazon SNS when you create a topic 16767 // and subscribe to it. 16768 // 16769 // SnsTopicArn is a required field 16770 SnsTopicArn *string `type:"string" required:"true"` 16771 16772 // A list of one or more identifiers of Amazon Redshift source objects. All 16773 // of the objects must be of the same type as was specified in the source type 16774 // parameter. The event subscription will return only events generated by the 16775 // specified objects. If not specified, then events are returned for all objects 16776 // within the source type specified. 16777 // 16778 // Example: my-cluster-1, my-cluster-2 16779 // 16780 // Example: my-snapshot-20131010 16781 SourceIds []*string `locationNameList:"SourceId" type:"list"` 16782 16783 // The type of source that will be generating the events. For example, if you 16784 // want to be notified of events generated by a cluster, you would set this 16785 // parameter to cluster. If this value is not specified, events are returned 16786 // for all Amazon Redshift objects in your Amazon Web Services account. You 16787 // must specify a source type in order to specify source IDs. 16788 // 16789 // Valid values: cluster, cluster-parameter-group, cluster-security-group, cluster-snapshot, 16790 // and scheduled-action. 16791 SourceType *string `type:"string"` 16792 16793 // The name of the event subscription to be created. 16794 // 16795 // Constraints: 16796 // 16797 // * Cannot be null, empty, or blank. 16798 // 16799 // * Must contain from 1 to 255 alphanumeric characters or hyphens. 16800 // 16801 // * First character must be a letter. 16802 // 16803 // * Cannot end with a hyphen or contain two consecutive hyphens. 16804 // 16805 // SubscriptionName is a required field 16806 SubscriptionName *string `type:"string" required:"true"` 16807 16808 // A list of tag instances. 16809 Tags []*Tag `locationNameList:"Tag" type:"list"` 16810 } 16811 16812 // String returns the string representation. 16813 // 16814 // API parameter values that are decorated as "sensitive" in the API will not 16815 // be included in the string output. The member name will be present, but the 16816 // value will be replaced with "sensitive". 16817 func (s CreateEventSubscriptionInput) String() string { 16818 return awsutil.Prettify(s) 16819 } 16820 16821 // GoString returns the string representation. 16822 // 16823 // API parameter values that are decorated as "sensitive" in the API will not 16824 // be included in the string output. The member name will be present, but the 16825 // value will be replaced with "sensitive". 16826 func (s CreateEventSubscriptionInput) GoString() string { 16827 return s.String() 16828 } 16829 16830 // Validate inspects the fields of the type to determine if they are valid. 16831 func (s *CreateEventSubscriptionInput) Validate() error { 16832 invalidParams := request.ErrInvalidParams{Context: "CreateEventSubscriptionInput"} 16833 if s.SnsTopicArn == nil { 16834 invalidParams.Add(request.NewErrParamRequired("SnsTopicArn")) 16835 } 16836 if s.SubscriptionName == nil { 16837 invalidParams.Add(request.NewErrParamRequired("SubscriptionName")) 16838 } 16839 16840 if invalidParams.Len() > 0 { 16841 return invalidParams 16842 } 16843 return nil 16844 } 16845 16846 // SetEnabled sets the Enabled field's value. 16847 func (s *CreateEventSubscriptionInput) SetEnabled(v bool) *CreateEventSubscriptionInput { 16848 s.Enabled = &v 16849 return s 16850 } 16851 16852 // SetEventCategories sets the EventCategories field's value. 16853 func (s *CreateEventSubscriptionInput) SetEventCategories(v []*string) *CreateEventSubscriptionInput { 16854 s.EventCategories = v 16855 return s 16856 } 16857 16858 // SetSeverity sets the Severity field's value. 16859 func (s *CreateEventSubscriptionInput) SetSeverity(v string) *CreateEventSubscriptionInput { 16860 s.Severity = &v 16861 return s 16862 } 16863 16864 // SetSnsTopicArn sets the SnsTopicArn field's value. 16865 func (s *CreateEventSubscriptionInput) SetSnsTopicArn(v string) *CreateEventSubscriptionInput { 16866 s.SnsTopicArn = &v 16867 return s 16868 } 16869 16870 // SetSourceIds sets the SourceIds field's value. 16871 func (s *CreateEventSubscriptionInput) SetSourceIds(v []*string) *CreateEventSubscriptionInput { 16872 s.SourceIds = v 16873 return s 16874 } 16875 16876 // SetSourceType sets the SourceType field's value. 16877 func (s *CreateEventSubscriptionInput) SetSourceType(v string) *CreateEventSubscriptionInput { 16878 s.SourceType = &v 16879 return s 16880 } 16881 16882 // SetSubscriptionName sets the SubscriptionName field's value. 16883 func (s *CreateEventSubscriptionInput) SetSubscriptionName(v string) *CreateEventSubscriptionInput { 16884 s.SubscriptionName = &v 16885 return s 16886 } 16887 16888 // SetTags sets the Tags field's value. 16889 func (s *CreateEventSubscriptionInput) SetTags(v []*Tag) *CreateEventSubscriptionInput { 16890 s.Tags = v 16891 return s 16892 } 16893 16894 type CreateEventSubscriptionOutput struct { 16895 _ struct{} `type:"structure"` 16896 16897 // Describes event subscriptions. 16898 EventSubscription *EventSubscription `type:"structure"` 16899 } 16900 16901 // String returns the string representation. 16902 // 16903 // API parameter values that are decorated as "sensitive" in the API will not 16904 // be included in the string output. The member name will be present, but the 16905 // value will be replaced with "sensitive". 16906 func (s CreateEventSubscriptionOutput) String() string { 16907 return awsutil.Prettify(s) 16908 } 16909 16910 // GoString returns the string representation. 16911 // 16912 // API parameter values that are decorated as "sensitive" in the API will not 16913 // be included in the string output. The member name will be present, but the 16914 // value will be replaced with "sensitive". 16915 func (s CreateEventSubscriptionOutput) GoString() string { 16916 return s.String() 16917 } 16918 16919 // SetEventSubscription sets the EventSubscription field's value. 16920 func (s *CreateEventSubscriptionOutput) SetEventSubscription(v *EventSubscription) *CreateEventSubscriptionOutput { 16921 s.EventSubscription = v 16922 return s 16923 } 16924 16925 type CreateHsmClientCertificateInput struct { 16926 _ struct{} `type:"structure"` 16927 16928 // The identifier to be assigned to the new HSM client certificate that the 16929 // cluster will use to connect to the HSM to use the database encryption keys. 16930 // 16931 // HsmClientCertificateIdentifier is a required field 16932 HsmClientCertificateIdentifier *string `type:"string" required:"true"` 16933 16934 // A list of tag instances. 16935 Tags []*Tag `locationNameList:"Tag" type:"list"` 16936 } 16937 16938 // String returns the string representation. 16939 // 16940 // API parameter values that are decorated as "sensitive" in the API will not 16941 // be included in the string output. The member name will be present, but the 16942 // value will be replaced with "sensitive". 16943 func (s CreateHsmClientCertificateInput) String() string { 16944 return awsutil.Prettify(s) 16945 } 16946 16947 // GoString returns the string representation. 16948 // 16949 // API parameter values that are decorated as "sensitive" in the API will not 16950 // be included in the string output. The member name will be present, but the 16951 // value will be replaced with "sensitive". 16952 func (s CreateHsmClientCertificateInput) GoString() string { 16953 return s.String() 16954 } 16955 16956 // Validate inspects the fields of the type to determine if they are valid. 16957 func (s *CreateHsmClientCertificateInput) Validate() error { 16958 invalidParams := request.ErrInvalidParams{Context: "CreateHsmClientCertificateInput"} 16959 if s.HsmClientCertificateIdentifier == nil { 16960 invalidParams.Add(request.NewErrParamRequired("HsmClientCertificateIdentifier")) 16961 } 16962 16963 if invalidParams.Len() > 0 { 16964 return invalidParams 16965 } 16966 return nil 16967 } 16968 16969 // SetHsmClientCertificateIdentifier sets the HsmClientCertificateIdentifier field's value. 16970 func (s *CreateHsmClientCertificateInput) SetHsmClientCertificateIdentifier(v string) *CreateHsmClientCertificateInput { 16971 s.HsmClientCertificateIdentifier = &v 16972 return s 16973 } 16974 16975 // SetTags sets the Tags field's value. 16976 func (s *CreateHsmClientCertificateInput) SetTags(v []*Tag) *CreateHsmClientCertificateInput { 16977 s.Tags = v 16978 return s 16979 } 16980 16981 type CreateHsmClientCertificateOutput struct { 16982 _ struct{} `type:"structure"` 16983 16984 // Returns information about an HSM client certificate. The certificate is stored 16985 // in a secure Hardware Storage Module (HSM), and used by the Amazon Redshift 16986 // cluster to encrypt data files. 16987 HsmClientCertificate *HsmClientCertificate `type:"structure"` 16988 } 16989 16990 // String returns the string representation. 16991 // 16992 // API parameter values that are decorated as "sensitive" in the API will not 16993 // be included in the string output. The member name will be present, but the 16994 // value will be replaced with "sensitive". 16995 func (s CreateHsmClientCertificateOutput) String() string { 16996 return awsutil.Prettify(s) 16997 } 16998 16999 // GoString returns the string representation. 17000 // 17001 // API parameter values that are decorated as "sensitive" in the API will not 17002 // be included in the string output. The member name will be present, but the 17003 // value will be replaced with "sensitive". 17004 func (s CreateHsmClientCertificateOutput) GoString() string { 17005 return s.String() 17006 } 17007 17008 // SetHsmClientCertificate sets the HsmClientCertificate field's value. 17009 func (s *CreateHsmClientCertificateOutput) SetHsmClientCertificate(v *HsmClientCertificate) *CreateHsmClientCertificateOutput { 17010 s.HsmClientCertificate = v 17011 return s 17012 } 17013 17014 type CreateHsmConfigurationInput struct { 17015 _ struct{} `type:"structure"` 17016 17017 // A text description of the HSM configuration to be created. 17018 // 17019 // Description is a required field 17020 Description *string `type:"string" required:"true"` 17021 17022 // The identifier to be assigned to the new Amazon Redshift HSM configuration. 17023 // 17024 // HsmConfigurationIdentifier is a required field 17025 HsmConfigurationIdentifier *string `type:"string" required:"true"` 17026 17027 // The IP address that the Amazon Redshift cluster must use to access the HSM. 17028 // 17029 // HsmIpAddress is a required field 17030 HsmIpAddress *string `type:"string" required:"true"` 17031 17032 // The name of the partition in the HSM where the Amazon Redshift clusters will 17033 // store their database encryption keys. 17034 // 17035 // HsmPartitionName is a required field 17036 HsmPartitionName *string `type:"string" required:"true"` 17037 17038 // The password required to access the HSM partition. 17039 // 17040 // HsmPartitionPassword is a required field 17041 HsmPartitionPassword *string `type:"string" required:"true"` 17042 17043 // The HSMs public certificate file. When using Cloud HSM, the file name is 17044 // server.pem. 17045 // 17046 // HsmServerPublicCertificate is a required field 17047 HsmServerPublicCertificate *string `type:"string" required:"true"` 17048 17049 // A list of tag instances. 17050 Tags []*Tag `locationNameList:"Tag" type:"list"` 17051 } 17052 17053 // String returns the string representation. 17054 // 17055 // API parameter values that are decorated as "sensitive" in the API will not 17056 // be included in the string output. The member name will be present, but the 17057 // value will be replaced with "sensitive". 17058 func (s CreateHsmConfigurationInput) String() string { 17059 return awsutil.Prettify(s) 17060 } 17061 17062 // GoString returns the string representation. 17063 // 17064 // API parameter values that are decorated as "sensitive" in the API will not 17065 // be included in the string output. The member name will be present, but the 17066 // value will be replaced with "sensitive". 17067 func (s CreateHsmConfigurationInput) GoString() string { 17068 return s.String() 17069 } 17070 17071 // Validate inspects the fields of the type to determine if they are valid. 17072 func (s *CreateHsmConfigurationInput) Validate() error { 17073 invalidParams := request.ErrInvalidParams{Context: "CreateHsmConfigurationInput"} 17074 if s.Description == nil { 17075 invalidParams.Add(request.NewErrParamRequired("Description")) 17076 } 17077 if s.HsmConfigurationIdentifier == nil { 17078 invalidParams.Add(request.NewErrParamRequired("HsmConfigurationIdentifier")) 17079 } 17080 if s.HsmIpAddress == nil { 17081 invalidParams.Add(request.NewErrParamRequired("HsmIpAddress")) 17082 } 17083 if s.HsmPartitionName == nil { 17084 invalidParams.Add(request.NewErrParamRequired("HsmPartitionName")) 17085 } 17086 if s.HsmPartitionPassword == nil { 17087 invalidParams.Add(request.NewErrParamRequired("HsmPartitionPassword")) 17088 } 17089 if s.HsmServerPublicCertificate == nil { 17090 invalidParams.Add(request.NewErrParamRequired("HsmServerPublicCertificate")) 17091 } 17092 17093 if invalidParams.Len() > 0 { 17094 return invalidParams 17095 } 17096 return nil 17097 } 17098 17099 // SetDescription sets the Description field's value. 17100 func (s *CreateHsmConfigurationInput) SetDescription(v string) *CreateHsmConfigurationInput { 17101 s.Description = &v 17102 return s 17103 } 17104 17105 // SetHsmConfigurationIdentifier sets the HsmConfigurationIdentifier field's value. 17106 func (s *CreateHsmConfigurationInput) SetHsmConfigurationIdentifier(v string) *CreateHsmConfigurationInput { 17107 s.HsmConfigurationIdentifier = &v 17108 return s 17109 } 17110 17111 // SetHsmIpAddress sets the HsmIpAddress field's value. 17112 func (s *CreateHsmConfigurationInput) SetHsmIpAddress(v string) *CreateHsmConfigurationInput { 17113 s.HsmIpAddress = &v 17114 return s 17115 } 17116 17117 // SetHsmPartitionName sets the HsmPartitionName field's value. 17118 func (s *CreateHsmConfigurationInput) SetHsmPartitionName(v string) *CreateHsmConfigurationInput { 17119 s.HsmPartitionName = &v 17120 return s 17121 } 17122 17123 // SetHsmPartitionPassword sets the HsmPartitionPassword field's value. 17124 func (s *CreateHsmConfigurationInput) SetHsmPartitionPassword(v string) *CreateHsmConfigurationInput { 17125 s.HsmPartitionPassword = &v 17126 return s 17127 } 17128 17129 // SetHsmServerPublicCertificate sets the HsmServerPublicCertificate field's value. 17130 func (s *CreateHsmConfigurationInput) SetHsmServerPublicCertificate(v string) *CreateHsmConfigurationInput { 17131 s.HsmServerPublicCertificate = &v 17132 return s 17133 } 17134 17135 // SetTags sets the Tags field's value. 17136 func (s *CreateHsmConfigurationInput) SetTags(v []*Tag) *CreateHsmConfigurationInput { 17137 s.Tags = v 17138 return s 17139 } 17140 17141 type CreateHsmConfigurationOutput struct { 17142 _ struct{} `type:"structure"` 17143 17144 // Returns information about an HSM configuration, which is an object that describes 17145 // to Amazon Redshift clusters the information they require to connect to an 17146 // HSM where they can store database encryption keys. 17147 HsmConfiguration *HsmConfiguration `type:"structure"` 17148 } 17149 17150 // String returns the string representation. 17151 // 17152 // API parameter values that are decorated as "sensitive" in the API will not 17153 // be included in the string output. The member name will be present, but the 17154 // value will be replaced with "sensitive". 17155 func (s CreateHsmConfigurationOutput) String() string { 17156 return awsutil.Prettify(s) 17157 } 17158 17159 // GoString returns the string representation. 17160 // 17161 // API parameter values that are decorated as "sensitive" in the API will not 17162 // be included in the string output. The member name will be present, but the 17163 // value will be replaced with "sensitive". 17164 func (s CreateHsmConfigurationOutput) GoString() string { 17165 return s.String() 17166 } 17167 17168 // SetHsmConfiguration sets the HsmConfiguration field's value. 17169 func (s *CreateHsmConfigurationOutput) SetHsmConfiguration(v *HsmConfiguration) *CreateHsmConfigurationOutput { 17170 s.HsmConfiguration = v 17171 return s 17172 } 17173 17174 type CreateScheduledActionInput struct { 17175 _ struct{} `type:"structure"` 17176 17177 // If true, the schedule is enabled. If false, the scheduled action does not 17178 // trigger. For more information about state of the scheduled action, see ScheduledAction. 17179 Enable *bool `type:"boolean"` 17180 17181 // The end time in UTC of the scheduled action. After this time, the scheduled 17182 // action does not trigger. For more information about this parameter, see ScheduledAction. 17183 EndTime *time.Time `type:"timestamp"` 17184 17185 // The IAM role to assume to run the target action. For more information about 17186 // this parameter, see ScheduledAction. 17187 // 17188 // IamRole is a required field 17189 IamRole *string `type:"string" required:"true"` 17190 17191 // The schedule in at( ) or cron( ) format. For more information about this 17192 // parameter, see ScheduledAction. 17193 // 17194 // Schedule is a required field 17195 Schedule *string `type:"string" required:"true"` 17196 17197 // The description of the scheduled action. 17198 ScheduledActionDescription *string `type:"string"` 17199 17200 // The name of the scheduled action. The name must be unique within an account. 17201 // For more information about this parameter, see ScheduledAction. 17202 // 17203 // ScheduledActionName is a required field 17204 ScheduledActionName *string `type:"string" required:"true"` 17205 17206 // The start time in UTC of the scheduled action. Before this time, the scheduled 17207 // action does not trigger. For more information about this parameter, see ScheduledAction. 17208 StartTime *time.Time `type:"timestamp"` 17209 17210 // A JSON format string of the Amazon Redshift API operation with input parameters. 17211 // For more information about this parameter, see ScheduledAction. 17212 // 17213 // TargetAction is a required field 17214 TargetAction *ScheduledActionType `type:"structure" required:"true"` 17215 } 17216 17217 // String returns the string representation. 17218 // 17219 // API parameter values that are decorated as "sensitive" in the API will not 17220 // be included in the string output. The member name will be present, but the 17221 // value will be replaced with "sensitive". 17222 func (s CreateScheduledActionInput) String() string { 17223 return awsutil.Prettify(s) 17224 } 17225 17226 // GoString returns the string representation. 17227 // 17228 // API parameter values that are decorated as "sensitive" in the API will not 17229 // be included in the string output. The member name will be present, but the 17230 // value will be replaced with "sensitive". 17231 func (s CreateScheduledActionInput) GoString() string { 17232 return s.String() 17233 } 17234 17235 // Validate inspects the fields of the type to determine if they are valid. 17236 func (s *CreateScheduledActionInput) Validate() error { 17237 invalidParams := request.ErrInvalidParams{Context: "CreateScheduledActionInput"} 17238 if s.IamRole == nil { 17239 invalidParams.Add(request.NewErrParamRequired("IamRole")) 17240 } 17241 if s.Schedule == nil { 17242 invalidParams.Add(request.NewErrParamRequired("Schedule")) 17243 } 17244 if s.ScheduledActionName == nil { 17245 invalidParams.Add(request.NewErrParamRequired("ScheduledActionName")) 17246 } 17247 if s.TargetAction == nil { 17248 invalidParams.Add(request.NewErrParamRequired("TargetAction")) 17249 } 17250 if s.TargetAction != nil { 17251 if err := s.TargetAction.Validate(); err != nil { 17252 invalidParams.AddNested("TargetAction", err.(request.ErrInvalidParams)) 17253 } 17254 } 17255 17256 if invalidParams.Len() > 0 { 17257 return invalidParams 17258 } 17259 return nil 17260 } 17261 17262 // SetEnable sets the Enable field's value. 17263 func (s *CreateScheduledActionInput) SetEnable(v bool) *CreateScheduledActionInput { 17264 s.Enable = &v 17265 return s 17266 } 17267 17268 // SetEndTime sets the EndTime field's value. 17269 func (s *CreateScheduledActionInput) SetEndTime(v time.Time) *CreateScheduledActionInput { 17270 s.EndTime = &v 17271 return s 17272 } 17273 17274 // SetIamRole sets the IamRole field's value. 17275 func (s *CreateScheduledActionInput) SetIamRole(v string) *CreateScheduledActionInput { 17276 s.IamRole = &v 17277 return s 17278 } 17279 17280 // SetSchedule sets the Schedule field's value. 17281 func (s *CreateScheduledActionInput) SetSchedule(v string) *CreateScheduledActionInput { 17282 s.Schedule = &v 17283 return s 17284 } 17285 17286 // SetScheduledActionDescription sets the ScheduledActionDescription field's value. 17287 func (s *CreateScheduledActionInput) SetScheduledActionDescription(v string) *CreateScheduledActionInput { 17288 s.ScheduledActionDescription = &v 17289 return s 17290 } 17291 17292 // SetScheduledActionName sets the ScheduledActionName field's value. 17293 func (s *CreateScheduledActionInput) SetScheduledActionName(v string) *CreateScheduledActionInput { 17294 s.ScheduledActionName = &v 17295 return s 17296 } 17297 17298 // SetStartTime sets the StartTime field's value. 17299 func (s *CreateScheduledActionInput) SetStartTime(v time.Time) *CreateScheduledActionInput { 17300 s.StartTime = &v 17301 return s 17302 } 17303 17304 // SetTargetAction sets the TargetAction field's value. 17305 func (s *CreateScheduledActionInput) SetTargetAction(v *ScheduledActionType) *CreateScheduledActionInput { 17306 s.TargetAction = v 17307 return s 17308 } 17309 17310 // Describes a scheduled action. You can use a scheduled action to trigger some 17311 // Amazon Redshift API operations on a schedule. For information about which 17312 // API operations can be scheduled, see ScheduledActionType. 17313 type CreateScheduledActionOutput struct { 17314 _ struct{} `type:"structure"` 17315 17316 // The end time in UTC when the schedule is no longer active. After this time, 17317 // the scheduled action does not trigger. 17318 EndTime *time.Time `type:"timestamp"` 17319 17320 // The IAM role to assume to run the scheduled action. This IAM role must have 17321 // permission to run the Amazon Redshift API operation in the scheduled action. 17322 // This IAM role must allow the Amazon Redshift scheduler (Principal scheduler.redshift.amazonaws.com) 17323 // to assume permissions on your behalf. For more information about the IAM 17324 // role to use with the Amazon Redshift scheduler, see Using Identity-Based 17325 // Policies for Amazon Redshift (https://docs.aws.amazon.com/redshift/latest/mgmt/redshift-iam-access-control-identity-based.html) 17326 // in the Amazon Redshift Cluster Management Guide. 17327 IamRole *string `type:"string"` 17328 17329 // List of times when the scheduled action will run. 17330 NextInvocations []*time.Time `locationNameList:"ScheduledActionTime" type:"list"` 17331 17332 // The schedule for a one-time (at format) or recurring (cron format) scheduled 17333 // action. Schedule invocations must be separated by at least one hour. 17334 // 17335 // Format of at expressions is "at(yyyy-mm-ddThh:mm:ss)". For example, "at(2016-03-04T17:27:00)". 17336 // 17337 // Format of cron expressions is "cron(Minutes Hours Day-of-month Month Day-of-week 17338 // Year)". For example, "cron(0 10 ? * MON *)". For more information, see Cron 17339 // Expressions (https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/ScheduledEvents.html#CronExpressions) 17340 // in the Amazon CloudWatch Events User Guide. 17341 Schedule *string `type:"string"` 17342 17343 // The description of the scheduled action. 17344 ScheduledActionDescription *string `type:"string"` 17345 17346 // The name of the scheduled action. 17347 ScheduledActionName *string `type:"string"` 17348 17349 // The start time in UTC when the schedule is active. Before this time, the 17350 // scheduled action does not trigger. 17351 StartTime *time.Time `type:"timestamp"` 17352 17353 // The state of the scheduled action. For example, DISABLED. 17354 State *string `type:"string" enum:"ScheduledActionState"` 17355 17356 // A JSON format string of the Amazon Redshift API operation with input parameters. 17357 // 17358 // "{\"ResizeCluster\":{\"NodeType\":\"ds2.8xlarge\",\"ClusterIdentifier\":\"my-test-cluster\",\"NumberOfNodes\":3}}". 17359 TargetAction *ScheduledActionType `type:"structure"` 17360 } 17361 17362 // String returns the string representation. 17363 // 17364 // API parameter values that are decorated as "sensitive" in the API will not 17365 // be included in the string output. The member name will be present, but the 17366 // value will be replaced with "sensitive". 17367 func (s CreateScheduledActionOutput) String() string { 17368 return awsutil.Prettify(s) 17369 } 17370 17371 // GoString returns the string representation. 17372 // 17373 // API parameter values that are decorated as "sensitive" in the API will not 17374 // be included in the string output. The member name will be present, but the 17375 // value will be replaced with "sensitive". 17376 func (s CreateScheduledActionOutput) GoString() string { 17377 return s.String() 17378 } 17379 17380 // SetEndTime sets the EndTime field's value. 17381 func (s *CreateScheduledActionOutput) SetEndTime(v time.Time) *CreateScheduledActionOutput { 17382 s.EndTime = &v 17383 return s 17384 } 17385 17386 // SetIamRole sets the IamRole field's value. 17387 func (s *CreateScheduledActionOutput) SetIamRole(v string) *CreateScheduledActionOutput { 17388 s.IamRole = &v 17389 return s 17390 } 17391 17392 // SetNextInvocations sets the NextInvocations field's value. 17393 func (s *CreateScheduledActionOutput) SetNextInvocations(v []*time.Time) *CreateScheduledActionOutput { 17394 s.NextInvocations = v 17395 return s 17396 } 17397 17398 // SetSchedule sets the Schedule field's value. 17399 func (s *CreateScheduledActionOutput) SetSchedule(v string) *CreateScheduledActionOutput { 17400 s.Schedule = &v 17401 return s 17402 } 17403 17404 // SetScheduledActionDescription sets the ScheduledActionDescription field's value. 17405 func (s *CreateScheduledActionOutput) SetScheduledActionDescription(v string) *CreateScheduledActionOutput { 17406 s.ScheduledActionDescription = &v 17407 return s 17408 } 17409 17410 // SetScheduledActionName sets the ScheduledActionName field's value. 17411 func (s *CreateScheduledActionOutput) SetScheduledActionName(v string) *CreateScheduledActionOutput { 17412 s.ScheduledActionName = &v 17413 return s 17414 } 17415 17416 // SetStartTime sets the StartTime field's value. 17417 func (s *CreateScheduledActionOutput) SetStartTime(v time.Time) *CreateScheduledActionOutput { 17418 s.StartTime = &v 17419 return s 17420 } 17421 17422 // SetState sets the State field's value. 17423 func (s *CreateScheduledActionOutput) SetState(v string) *CreateScheduledActionOutput { 17424 s.State = &v 17425 return s 17426 } 17427 17428 // SetTargetAction sets the TargetAction field's value. 17429 func (s *CreateScheduledActionOutput) SetTargetAction(v *ScheduledActionType) *CreateScheduledActionOutput { 17430 s.TargetAction = v 17431 return s 17432 } 17433 17434 // The result of the CreateSnapshotCopyGrant action. 17435 type CreateSnapshotCopyGrantInput struct { 17436 _ struct{} `type:"structure"` 17437 17438 // The unique identifier of the customer master key (CMK) to which to grant 17439 // Amazon Redshift permission. If no key is specified, the default key is used. 17440 KmsKeyId *string `type:"string"` 17441 17442 // The name of the snapshot copy grant. This name must be unique in the region 17443 // for the Amazon Web Services account. 17444 // 17445 // Constraints: 17446 // 17447 // * Must contain from 1 to 63 alphanumeric characters or hyphens. 17448 // 17449 // * Alphabetic characters must be lowercase. 17450 // 17451 // * First character must be a letter. 17452 // 17453 // * Cannot end with a hyphen or contain two consecutive hyphens. 17454 // 17455 // * Must be unique for all clusters within an Amazon Web Services account. 17456 // 17457 // SnapshotCopyGrantName is a required field 17458 SnapshotCopyGrantName *string `type:"string" required:"true"` 17459 17460 // A list of tag instances. 17461 Tags []*Tag `locationNameList:"Tag" type:"list"` 17462 } 17463 17464 // String returns the string representation. 17465 // 17466 // API parameter values that are decorated as "sensitive" in the API will not 17467 // be included in the string output. The member name will be present, but the 17468 // value will be replaced with "sensitive". 17469 func (s CreateSnapshotCopyGrantInput) String() string { 17470 return awsutil.Prettify(s) 17471 } 17472 17473 // GoString returns the string representation. 17474 // 17475 // API parameter values that are decorated as "sensitive" in the API will not 17476 // be included in the string output. The member name will be present, but the 17477 // value will be replaced with "sensitive". 17478 func (s CreateSnapshotCopyGrantInput) GoString() string { 17479 return s.String() 17480 } 17481 17482 // Validate inspects the fields of the type to determine if they are valid. 17483 func (s *CreateSnapshotCopyGrantInput) Validate() error { 17484 invalidParams := request.ErrInvalidParams{Context: "CreateSnapshotCopyGrantInput"} 17485 if s.SnapshotCopyGrantName == nil { 17486 invalidParams.Add(request.NewErrParamRequired("SnapshotCopyGrantName")) 17487 } 17488 17489 if invalidParams.Len() > 0 { 17490 return invalidParams 17491 } 17492 return nil 17493 } 17494 17495 // SetKmsKeyId sets the KmsKeyId field's value. 17496 func (s *CreateSnapshotCopyGrantInput) SetKmsKeyId(v string) *CreateSnapshotCopyGrantInput { 17497 s.KmsKeyId = &v 17498 return s 17499 } 17500 17501 // SetSnapshotCopyGrantName sets the SnapshotCopyGrantName field's value. 17502 func (s *CreateSnapshotCopyGrantInput) SetSnapshotCopyGrantName(v string) *CreateSnapshotCopyGrantInput { 17503 s.SnapshotCopyGrantName = &v 17504 return s 17505 } 17506 17507 // SetTags sets the Tags field's value. 17508 func (s *CreateSnapshotCopyGrantInput) SetTags(v []*Tag) *CreateSnapshotCopyGrantInput { 17509 s.Tags = v 17510 return s 17511 } 17512 17513 type CreateSnapshotCopyGrantOutput struct { 17514 _ struct{} `type:"structure"` 17515 17516 // The snapshot copy grant that grants Amazon Redshift permission to encrypt 17517 // copied snapshots with the specified customer master key (CMK) from Amazon 17518 // Web Services KMS in the destination region. 17519 // 17520 // For more information about managing snapshot copy grants, go to Amazon Redshift 17521 // Database Encryption (https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-db-encryption.html) 17522 // in the Amazon Redshift Cluster Management Guide. 17523 SnapshotCopyGrant *SnapshotCopyGrant `type:"structure"` 17524 } 17525 17526 // String returns the string representation. 17527 // 17528 // API parameter values that are decorated as "sensitive" in the API will not 17529 // be included in the string output. The member name will be present, but the 17530 // value will be replaced with "sensitive". 17531 func (s CreateSnapshotCopyGrantOutput) String() string { 17532 return awsutil.Prettify(s) 17533 } 17534 17535 // GoString returns the string representation. 17536 // 17537 // API parameter values that are decorated as "sensitive" in the API will not 17538 // be included in the string output. The member name will be present, but the 17539 // value will be replaced with "sensitive". 17540 func (s CreateSnapshotCopyGrantOutput) GoString() string { 17541 return s.String() 17542 } 17543 17544 // SetSnapshotCopyGrant sets the SnapshotCopyGrant field's value. 17545 func (s *CreateSnapshotCopyGrantOutput) SetSnapshotCopyGrant(v *SnapshotCopyGrant) *CreateSnapshotCopyGrantOutput { 17546 s.SnapshotCopyGrant = v 17547 return s 17548 } 17549 17550 type CreateSnapshotScheduleInput struct { 17551 _ struct{} `type:"structure"` 17552 17553 DryRun *bool `type:"boolean"` 17554 17555 NextInvocations *int64 `type:"integer"` 17556 17557 // The definition of the snapshot schedule. The definition is made up of schedule 17558 // expressions, for example "cron(30 12 *)" or "rate(12 hours)". 17559 ScheduleDefinitions []*string `locationNameList:"ScheduleDefinition" type:"list"` 17560 17561 // The description of the snapshot schedule. 17562 ScheduleDescription *string `type:"string"` 17563 17564 // A unique identifier for a snapshot schedule. Only alphanumeric characters 17565 // are allowed for the identifier. 17566 ScheduleIdentifier *string `type:"string"` 17567 17568 // An optional set of tags you can use to search for the schedule. 17569 Tags []*Tag `locationNameList:"Tag" type:"list"` 17570 } 17571 17572 // String returns the string representation. 17573 // 17574 // API parameter values that are decorated as "sensitive" in the API will not 17575 // be included in the string output. The member name will be present, but the 17576 // value will be replaced with "sensitive". 17577 func (s CreateSnapshotScheduleInput) String() string { 17578 return awsutil.Prettify(s) 17579 } 17580 17581 // GoString returns the string representation. 17582 // 17583 // API parameter values that are decorated as "sensitive" in the API will not 17584 // be included in the string output. The member name will be present, but the 17585 // value will be replaced with "sensitive". 17586 func (s CreateSnapshotScheduleInput) GoString() string { 17587 return s.String() 17588 } 17589 17590 // SetDryRun sets the DryRun field's value. 17591 func (s *CreateSnapshotScheduleInput) SetDryRun(v bool) *CreateSnapshotScheduleInput { 17592 s.DryRun = &v 17593 return s 17594 } 17595 17596 // SetNextInvocations sets the NextInvocations field's value. 17597 func (s *CreateSnapshotScheduleInput) SetNextInvocations(v int64) *CreateSnapshotScheduleInput { 17598 s.NextInvocations = &v 17599 return s 17600 } 17601 17602 // SetScheduleDefinitions sets the ScheduleDefinitions field's value. 17603 func (s *CreateSnapshotScheduleInput) SetScheduleDefinitions(v []*string) *CreateSnapshotScheduleInput { 17604 s.ScheduleDefinitions = v 17605 return s 17606 } 17607 17608 // SetScheduleDescription sets the ScheduleDescription field's value. 17609 func (s *CreateSnapshotScheduleInput) SetScheduleDescription(v string) *CreateSnapshotScheduleInput { 17610 s.ScheduleDescription = &v 17611 return s 17612 } 17613 17614 // SetScheduleIdentifier sets the ScheduleIdentifier field's value. 17615 func (s *CreateSnapshotScheduleInput) SetScheduleIdentifier(v string) *CreateSnapshotScheduleInput { 17616 s.ScheduleIdentifier = &v 17617 return s 17618 } 17619 17620 // SetTags sets the Tags field's value. 17621 func (s *CreateSnapshotScheduleInput) SetTags(v []*Tag) *CreateSnapshotScheduleInput { 17622 s.Tags = v 17623 return s 17624 } 17625 17626 // Describes a snapshot schedule. You can set a regular interval for creating 17627 // snapshots of a cluster. You can also schedule snapshots for specific dates. 17628 type CreateSnapshotScheduleOutput struct { 17629 _ struct{} `type:"structure"` 17630 17631 // The number of clusters associated with the schedule. 17632 AssociatedClusterCount *int64 `type:"integer"` 17633 17634 // A list of clusters associated with the schedule. A maximum of 100 clusters 17635 // is returned. 17636 AssociatedClusters []*ClusterAssociatedToSchedule `locationNameList:"ClusterAssociatedToSchedule" type:"list"` 17637 17638 NextInvocations []*time.Time `locationNameList:"SnapshotTime" type:"list"` 17639 17640 // A list of ScheduleDefinitions. 17641 ScheduleDefinitions []*string `locationNameList:"ScheduleDefinition" type:"list"` 17642 17643 // The description of the schedule. 17644 ScheduleDescription *string `type:"string"` 17645 17646 // A unique identifier for the schedule. 17647 ScheduleIdentifier *string `type:"string"` 17648 17649 // An optional set of tags describing the schedule. 17650 Tags []*Tag `locationNameList:"Tag" type:"list"` 17651 } 17652 17653 // String returns the string representation. 17654 // 17655 // API parameter values that are decorated as "sensitive" in the API will not 17656 // be included in the string output. The member name will be present, but the 17657 // value will be replaced with "sensitive". 17658 func (s CreateSnapshotScheduleOutput) String() string { 17659 return awsutil.Prettify(s) 17660 } 17661 17662 // GoString returns the string representation. 17663 // 17664 // API parameter values that are decorated as "sensitive" in the API will not 17665 // be included in the string output. The member name will be present, but the 17666 // value will be replaced with "sensitive". 17667 func (s CreateSnapshotScheduleOutput) GoString() string { 17668 return s.String() 17669 } 17670 17671 // SetAssociatedClusterCount sets the AssociatedClusterCount field's value. 17672 func (s *CreateSnapshotScheduleOutput) SetAssociatedClusterCount(v int64) *CreateSnapshotScheduleOutput { 17673 s.AssociatedClusterCount = &v 17674 return s 17675 } 17676 17677 // SetAssociatedClusters sets the AssociatedClusters field's value. 17678 func (s *CreateSnapshotScheduleOutput) SetAssociatedClusters(v []*ClusterAssociatedToSchedule) *CreateSnapshotScheduleOutput { 17679 s.AssociatedClusters = v 17680 return s 17681 } 17682 17683 // SetNextInvocations sets the NextInvocations field's value. 17684 func (s *CreateSnapshotScheduleOutput) SetNextInvocations(v []*time.Time) *CreateSnapshotScheduleOutput { 17685 s.NextInvocations = v 17686 return s 17687 } 17688 17689 // SetScheduleDefinitions sets the ScheduleDefinitions field's value. 17690 func (s *CreateSnapshotScheduleOutput) SetScheduleDefinitions(v []*string) *CreateSnapshotScheduleOutput { 17691 s.ScheduleDefinitions = v 17692 return s 17693 } 17694 17695 // SetScheduleDescription sets the ScheduleDescription field's value. 17696 func (s *CreateSnapshotScheduleOutput) SetScheduleDescription(v string) *CreateSnapshotScheduleOutput { 17697 s.ScheduleDescription = &v 17698 return s 17699 } 17700 17701 // SetScheduleIdentifier sets the ScheduleIdentifier field's value. 17702 func (s *CreateSnapshotScheduleOutput) SetScheduleIdentifier(v string) *CreateSnapshotScheduleOutput { 17703 s.ScheduleIdentifier = &v 17704 return s 17705 } 17706 17707 // SetTags sets the Tags field's value. 17708 func (s *CreateSnapshotScheduleOutput) SetTags(v []*Tag) *CreateSnapshotScheduleOutput { 17709 s.Tags = v 17710 return s 17711 } 17712 17713 // Contains the output from the CreateTags action. 17714 type CreateTagsInput struct { 17715 _ struct{} `type:"structure"` 17716 17717 // The Amazon Resource Name (ARN) to which you want to add the tag or tags. 17718 // For example, arn:aws:redshift:us-east-2:123456789:cluster:t1. 17719 // 17720 // ResourceName is a required field 17721 ResourceName *string `type:"string" required:"true"` 17722 17723 // One or more name/value pairs to add as tags to the specified resource. Each 17724 // tag name is passed in with the parameter Key and the corresponding value 17725 // is passed in with the parameter Value. The Key and Value parameters are separated 17726 // by a comma (,). Separate multiple tags with a space. For example, --tags 17727 // "Key"="owner","Value"="admin" "Key"="environment","Value"="test" "Key"="version","Value"="1.0". 17728 // 17729 // Tags is a required field 17730 Tags []*Tag `locationNameList:"Tag" type:"list" required:"true"` 17731 } 17732 17733 // String returns the string representation. 17734 // 17735 // API parameter values that are decorated as "sensitive" in the API will not 17736 // be included in the string output. The member name will be present, but the 17737 // value will be replaced with "sensitive". 17738 func (s CreateTagsInput) String() string { 17739 return awsutil.Prettify(s) 17740 } 17741 17742 // GoString returns the string representation. 17743 // 17744 // API parameter values that are decorated as "sensitive" in the API will not 17745 // be included in the string output. The member name will be present, but the 17746 // value will be replaced with "sensitive". 17747 func (s CreateTagsInput) GoString() string { 17748 return s.String() 17749 } 17750 17751 // Validate inspects the fields of the type to determine if they are valid. 17752 func (s *CreateTagsInput) Validate() error { 17753 invalidParams := request.ErrInvalidParams{Context: "CreateTagsInput"} 17754 if s.ResourceName == nil { 17755 invalidParams.Add(request.NewErrParamRequired("ResourceName")) 17756 } 17757 if s.Tags == nil { 17758 invalidParams.Add(request.NewErrParamRequired("Tags")) 17759 } 17760 17761 if invalidParams.Len() > 0 { 17762 return invalidParams 17763 } 17764 return nil 17765 } 17766 17767 // SetResourceName sets the ResourceName field's value. 17768 func (s *CreateTagsInput) SetResourceName(v string) *CreateTagsInput { 17769 s.ResourceName = &v 17770 return s 17771 } 17772 17773 // SetTags sets the Tags field's value. 17774 func (s *CreateTagsInput) SetTags(v []*Tag) *CreateTagsInput { 17775 s.Tags = v 17776 return s 17777 } 17778 17779 type CreateTagsOutput struct { 17780 _ struct{} `type:"structure"` 17781 } 17782 17783 // String returns the string representation. 17784 // 17785 // API parameter values that are decorated as "sensitive" in the API will not 17786 // be included in the string output. The member name will be present, but the 17787 // value will be replaced with "sensitive". 17788 func (s CreateTagsOutput) String() string { 17789 return awsutil.Prettify(s) 17790 } 17791 17792 // GoString returns the string representation. 17793 // 17794 // API parameter values that are decorated as "sensitive" in the API will not 17795 // be included in the string output. The member name will be present, but the 17796 // value will be replaced with "sensitive". 17797 func (s CreateTagsOutput) GoString() string { 17798 return s.String() 17799 } 17800 17801 type CreateUsageLimitInput struct { 17802 _ struct{} `type:"structure"` 17803 17804 // The limit amount. If time-based, this amount is in minutes. If data-based, 17805 // this amount is in terabytes (TB). The value must be a positive number. 17806 // 17807 // Amount is a required field 17808 Amount *int64 `type:"long" required:"true"` 17809 17810 // The action that Amazon Redshift takes when the limit is reached. The default 17811 // is log. For more information about this parameter, see UsageLimit. 17812 BreachAction *string `type:"string" enum:"UsageLimitBreachAction"` 17813 17814 // The identifier of the cluster that you want to limit usage. 17815 // 17816 // ClusterIdentifier is a required field 17817 ClusterIdentifier *string `type:"string" required:"true"` 17818 17819 // The Amazon Redshift feature that you want to limit. 17820 // 17821 // FeatureType is a required field 17822 FeatureType *string `type:"string" required:"true" enum:"UsageLimitFeatureType"` 17823 17824 // The type of limit. Depending on the feature type, this can be based on a 17825 // time duration or data size. If FeatureType is spectrum, then LimitType must 17826 // be data-scanned. If FeatureType is concurrency-scaling, then LimitType must 17827 // be time. 17828 // 17829 // LimitType is a required field 17830 LimitType *string `type:"string" required:"true" enum:"UsageLimitLimitType"` 17831 17832 // The time period that the amount applies to. A weekly period begins on Sunday. 17833 // The default is monthly. 17834 Period *string `type:"string" enum:"UsageLimitPeriod"` 17835 17836 // A list of tag instances. 17837 Tags []*Tag `locationNameList:"Tag" type:"list"` 17838 } 17839 17840 // String returns the string representation. 17841 // 17842 // API parameter values that are decorated as "sensitive" in the API will not 17843 // be included in the string output. The member name will be present, but the 17844 // value will be replaced with "sensitive". 17845 func (s CreateUsageLimitInput) String() string { 17846 return awsutil.Prettify(s) 17847 } 17848 17849 // GoString returns the string representation. 17850 // 17851 // API parameter values that are decorated as "sensitive" in the API will not 17852 // be included in the string output. The member name will be present, but the 17853 // value will be replaced with "sensitive". 17854 func (s CreateUsageLimitInput) GoString() string { 17855 return s.String() 17856 } 17857 17858 // Validate inspects the fields of the type to determine if they are valid. 17859 func (s *CreateUsageLimitInput) Validate() error { 17860 invalidParams := request.ErrInvalidParams{Context: "CreateUsageLimitInput"} 17861 if s.Amount == nil { 17862 invalidParams.Add(request.NewErrParamRequired("Amount")) 17863 } 17864 if s.ClusterIdentifier == nil { 17865 invalidParams.Add(request.NewErrParamRequired("ClusterIdentifier")) 17866 } 17867 if s.FeatureType == nil { 17868 invalidParams.Add(request.NewErrParamRequired("FeatureType")) 17869 } 17870 if s.LimitType == nil { 17871 invalidParams.Add(request.NewErrParamRequired("LimitType")) 17872 } 17873 17874 if invalidParams.Len() > 0 { 17875 return invalidParams 17876 } 17877 return nil 17878 } 17879 17880 // SetAmount sets the Amount field's value. 17881 func (s *CreateUsageLimitInput) SetAmount(v int64) *CreateUsageLimitInput { 17882 s.Amount = &v 17883 return s 17884 } 17885 17886 // SetBreachAction sets the BreachAction field's value. 17887 func (s *CreateUsageLimitInput) SetBreachAction(v string) *CreateUsageLimitInput { 17888 s.BreachAction = &v 17889 return s 17890 } 17891 17892 // SetClusterIdentifier sets the ClusterIdentifier field's value. 17893 func (s *CreateUsageLimitInput) SetClusterIdentifier(v string) *CreateUsageLimitInput { 17894 s.ClusterIdentifier = &v 17895 return s 17896 } 17897 17898 // SetFeatureType sets the FeatureType field's value. 17899 func (s *CreateUsageLimitInput) SetFeatureType(v string) *CreateUsageLimitInput { 17900 s.FeatureType = &v 17901 return s 17902 } 17903 17904 // SetLimitType sets the LimitType field's value. 17905 func (s *CreateUsageLimitInput) SetLimitType(v string) *CreateUsageLimitInput { 17906 s.LimitType = &v 17907 return s 17908 } 17909 17910 // SetPeriod sets the Period field's value. 17911 func (s *CreateUsageLimitInput) SetPeriod(v string) *CreateUsageLimitInput { 17912 s.Period = &v 17913 return s 17914 } 17915 17916 // SetTags sets the Tags field's value. 17917 func (s *CreateUsageLimitInput) SetTags(v []*Tag) *CreateUsageLimitInput { 17918 s.Tags = v 17919 return s 17920 } 17921 17922 // Describes a usage limit object for a cluster. 17923 type CreateUsageLimitOutput struct { 17924 _ struct{} `type:"structure"` 17925 17926 // The limit amount. If time-based, this amount is in minutes. If data-based, 17927 // this amount is in terabytes (TB). 17928 Amount *int64 `type:"long"` 17929 17930 // The action that Amazon Redshift takes when the limit is reached. Possible 17931 // values are: 17932 // 17933 // * log - To log an event in a system table. The default is log. 17934 // 17935 // * emit-metric - To emit CloudWatch metrics. 17936 // 17937 // * disable - To disable the feature until the next usage period begins. 17938 BreachAction *string `type:"string" enum:"UsageLimitBreachAction"` 17939 17940 // The identifier of the cluster with a usage limit. 17941 ClusterIdentifier *string `type:"string"` 17942 17943 // The Amazon Redshift feature to which the limit applies. 17944 FeatureType *string `type:"string" enum:"UsageLimitFeatureType"` 17945 17946 // The type of limit. Depending on the feature type, this can be based on a 17947 // time duration or data size. 17948 LimitType *string `type:"string" enum:"UsageLimitLimitType"` 17949 17950 // The time period that the amount applies to. A weekly period begins on Sunday. 17951 // The default is monthly. 17952 Period *string `type:"string" enum:"UsageLimitPeriod"` 17953 17954 // A list of tag instances. 17955 Tags []*Tag `locationNameList:"Tag" type:"list"` 17956 17957 // The identifier of the usage limit. 17958 UsageLimitId *string `type:"string"` 17959 } 17960 17961 // String returns the string representation. 17962 // 17963 // API parameter values that are decorated as "sensitive" in the API will not 17964 // be included in the string output. The member name will be present, but the 17965 // value will be replaced with "sensitive". 17966 func (s CreateUsageLimitOutput) String() string { 17967 return awsutil.Prettify(s) 17968 } 17969 17970 // GoString returns the string representation. 17971 // 17972 // API parameter values that are decorated as "sensitive" in the API will not 17973 // be included in the string output. The member name will be present, but the 17974 // value will be replaced with "sensitive". 17975 func (s CreateUsageLimitOutput) GoString() string { 17976 return s.String() 17977 } 17978 17979 // SetAmount sets the Amount field's value. 17980 func (s *CreateUsageLimitOutput) SetAmount(v int64) *CreateUsageLimitOutput { 17981 s.Amount = &v 17982 return s 17983 } 17984 17985 // SetBreachAction sets the BreachAction field's value. 17986 func (s *CreateUsageLimitOutput) SetBreachAction(v string) *CreateUsageLimitOutput { 17987 s.BreachAction = &v 17988 return s 17989 } 17990 17991 // SetClusterIdentifier sets the ClusterIdentifier field's value. 17992 func (s *CreateUsageLimitOutput) SetClusterIdentifier(v string) *CreateUsageLimitOutput { 17993 s.ClusterIdentifier = &v 17994 return s 17995 } 17996 17997 // SetFeatureType sets the FeatureType field's value. 17998 func (s *CreateUsageLimitOutput) SetFeatureType(v string) *CreateUsageLimitOutput { 17999 s.FeatureType = &v 18000 return s 18001 } 18002 18003 // SetLimitType sets the LimitType field's value. 18004 func (s *CreateUsageLimitOutput) SetLimitType(v string) *CreateUsageLimitOutput { 18005 s.LimitType = &v 18006 return s 18007 } 18008 18009 // SetPeriod sets the Period field's value. 18010 func (s *CreateUsageLimitOutput) SetPeriod(v string) *CreateUsageLimitOutput { 18011 s.Period = &v 18012 return s 18013 } 18014 18015 // SetTags sets the Tags field's value. 18016 func (s *CreateUsageLimitOutput) SetTags(v []*Tag) *CreateUsageLimitOutput { 18017 s.Tags = v 18018 return s 18019 } 18020 18021 // SetUsageLimitId sets the UsageLimitId field's value. 18022 func (s *CreateUsageLimitOutput) SetUsageLimitId(v string) *CreateUsageLimitOutput { 18023 s.UsageLimitId = &v 18024 return s 18025 } 18026 18027 type DataShare struct { 18028 _ struct{} `type:"structure"` 18029 18030 // A value that specifies whether the datashare can be shared to a publicly 18031 // accessible cluster. 18032 AllowPubliclyAccessibleConsumers *bool `type:"boolean"` 18033 18034 // An Amazon Resource Name (ARN) that references the datashare that is owned 18035 // by a specific namespace of the producer cluster. A datashare ARN is in the 18036 // arn:aws:redshift:{region}:{account-id}:{datashare}:{namespace-guid}/{datashare-name} 18037 // format. 18038 DataShareArn *string `type:"string"` 18039 18040 // A value that specifies when the datashare has an association between a producer 18041 // and data consumers. 18042 DataShareAssociations []*DataShareAssociation `type:"list"` 18043 18044 // The Amazon Resource Name (ARN) of the producer. 18045 ProducerArn *string `type:"string"` 18046 } 18047 18048 // String returns the string representation. 18049 // 18050 // API parameter values that are decorated as "sensitive" in the API will not 18051 // be included in the string output. The member name will be present, but the 18052 // value will be replaced with "sensitive". 18053 func (s DataShare) String() string { 18054 return awsutil.Prettify(s) 18055 } 18056 18057 // GoString returns the string representation. 18058 // 18059 // API parameter values that are decorated as "sensitive" in the API will not 18060 // be included in the string output. The member name will be present, but the 18061 // value will be replaced with "sensitive". 18062 func (s DataShare) GoString() string { 18063 return s.String() 18064 } 18065 18066 // SetAllowPubliclyAccessibleConsumers sets the AllowPubliclyAccessibleConsumers field's value. 18067 func (s *DataShare) SetAllowPubliclyAccessibleConsumers(v bool) *DataShare { 18068 s.AllowPubliclyAccessibleConsumers = &v 18069 return s 18070 } 18071 18072 // SetDataShareArn sets the DataShareArn field's value. 18073 func (s *DataShare) SetDataShareArn(v string) *DataShare { 18074 s.DataShareArn = &v 18075 return s 18076 } 18077 18078 // SetDataShareAssociations sets the DataShareAssociations field's value. 18079 func (s *DataShare) SetDataShareAssociations(v []*DataShareAssociation) *DataShare { 18080 s.DataShareAssociations = v 18081 return s 18082 } 18083 18084 // SetProducerArn sets the ProducerArn field's value. 18085 func (s *DataShare) SetProducerArn(v string) *DataShare { 18086 s.ProducerArn = &v 18087 return s 18088 } 18089 18090 // The association of a datashare from a producer account with a data consumer. 18091 type DataShareAssociation struct { 18092 _ struct{} `type:"structure"` 18093 18094 // The name of the consumer accounts that have an association with a producer 18095 // datashare. 18096 ConsumerIdentifier *string `type:"string"` 18097 18098 // The creation date of the datashare that is associated. 18099 CreatedDate *time.Time `type:"timestamp"` 18100 18101 // The status of the datashare that is associated. 18102 Status *string `type:"string" enum:"DataShareStatus"` 18103 18104 // The status change data of the datashare that is associated. 18105 StatusChangeDate *time.Time `type:"timestamp"` 18106 } 18107 18108 // String returns the string representation. 18109 // 18110 // API parameter values that are decorated as "sensitive" in the API will not 18111 // be included in the string output. The member name will be present, but the 18112 // value will be replaced with "sensitive". 18113 func (s DataShareAssociation) String() string { 18114 return awsutil.Prettify(s) 18115 } 18116 18117 // GoString returns the string representation. 18118 // 18119 // API parameter values that are decorated as "sensitive" in the API will not 18120 // be included in the string output. The member name will be present, but the 18121 // value will be replaced with "sensitive". 18122 func (s DataShareAssociation) GoString() string { 18123 return s.String() 18124 } 18125 18126 // SetConsumerIdentifier sets the ConsumerIdentifier field's value. 18127 func (s *DataShareAssociation) SetConsumerIdentifier(v string) *DataShareAssociation { 18128 s.ConsumerIdentifier = &v 18129 return s 18130 } 18131 18132 // SetCreatedDate sets the CreatedDate field's value. 18133 func (s *DataShareAssociation) SetCreatedDate(v time.Time) *DataShareAssociation { 18134 s.CreatedDate = &v 18135 return s 18136 } 18137 18138 // SetStatus sets the Status field's value. 18139 func (s *DataShareAssociation) SetStatus(v string) *DataShareAssociation { 18140 s.Status = &v 18141 return s 18142 } 18143 18144 // SetStatusChangeDate sets the StatusChangeDate field's value. 18145 func (s *DataShareAssociation) SetStatusChangeDate(v time.Time) *DataShareAssociation { 18146 s.StatusChangeDate = &v 18147 return s 18148 } 18149 18150 // Describes the status of a cluster while it is in the process of resizing 18151 // with an incremental resize. 18152 type DataTransferProgress struct { 18153 _ struct{} `type:"structure"` 18154 18155 // Describes the data transfer rate in MB's per second. 18156 CurrentRateInMegaBytesPerSecond *float64 `type:"double"` 18157 18158 // Describes the total amount of data that has been transfered in MB's. 18159 DataTransferredInMegaBytes *int64 `type:"long"` 18160 18161 // Describes the number of seconds that have elapsed during the data transfer. 18162 ElapsedTimeInSeconds *int64 `type:"long"` 18163 18164 // Describes the estimated number of seconds remaining to complete the transfer. 18165 EstimatedTimeToCompletionInSeconds *int64 `type:"long"` 18166 18167 // Describes the status of the cluster. While the transfer is in progress the 18168 // status is transferringdata. 18169 Status *string `type:"string"` 18170 18171 // Describes the total amount of data to be transfered in megabytes. 18172 TotalDataInMegaBytes *int64 `type:"long"` 18173 } 18174 18175 // String returns the string representation. 18176 // 18177 // API parameter values that are decorated as "sensitive" in the API will not 18178 // be included in the string output. The member name will be present, but the 18179 // value will be replaced with "sensitive". 18180 func (s DataTransferProgress) String() string { 18181 return awsutil.Prettify(s) 18182 } 18183 18184 // GoString returns the string representation. 18185 // 18186 // API parameter values that are decorated as "sensitive" in the API will not 18187 // be included in the string output. The member name will be present, but the 18188 // value will be replaced with "sensitive". 18189 func (s DataTransferProgress) GoString() string { 18190 return s.String() 18191 } 18192 18193 // SetCurrentRateInMegaBytesPerSecond sets the CurrentRateInMegaBytesPerSecond field's value. 18194 func (s *DataTransferProgress) SetCurrentRateInMegaBytesPerSecond(v float64) *DataTransferProgress { 18195 s.CurrentRateInMegaBytesPerSecond = &v 18196 return s 18197 } 18198 18199 // SetDataTransferredInMegaBytes sets the DataTransferredInMegaBytes field's value. 18200 func (s *DataTransferProgress) SetDataTransferredInMegaBytes(v int64) *DataTransferProgress { 18201 s.DataTransferredInMegaBytes = &v 18202 return s 18203 } 18204 18205 // SetElapsedTimeInSeconds sets the ElapsedTimeInSeconds field's value. 18206 func (s *DataTransferProgress) SetElapsedTimeInSeconds(v int64) *DataTransferProgress { 18207 s.ElapsedTimeInSeconds = &v 18208 return s 18209 } 18210 18211 // SetEstimatedTimeToCompletionInSeconds sets the EstimatedTimeToCompletionInSeconds field's value. 18212 func (s *DataTransferProgress) SetEstimatedTimeToCompletionInSeconds(v int64) *DataTransferProgress { 18213 s.EstimatedTimeToCompletionInSeconds = &v 18214 return s 18215 } 18216 18217 // SetStatus sets the Status field's value. 18218 func (s *DataTransferProgress) SetStatus(v string) *DataTransferProgress { 18219 s.Status = &v 18220 return s 18221 } 18222 18223 // SetTotalDataInMegaBytes sets the TotalDataInMegaBytes field's value. 18224 func (s *DataTransferProgress) SetTotalDataInMegaBytes(v int64) *DataTransferProgress { 18225 s.TotalDataInMegaBytes = &v 18226 return s 18227 } 18228 18229 type DeauthorizeDataShareInput struct { 18230 _ struct{} `type:"structure"` 18231 18232 // The identifier of the data consumer that is to have authorization removed 18233 // from the datashare. This identifier is an AWS account ID. 18234 // 18235 // ConsumerIdentifier is a required field 18236 ConsumerIdentifier *string `type:"string" required:"true"` 18237 18238 // The Amazon Resource Name (ARN) of the datashare to remove authorization from. 18239 // 18240 // DataShareArn is a required field 18241 DataShareArn *string `type:"string" required:"true"` 18242 } 18243 18244 // String returns the string representation. 18245 // 18246 // API parameter values that are decorated as "sensitive" in the API will not 18247 // be included in the string output. The member name will be present, but the 18248 // value will be replaced with "sensitive". 18249 func (s DeauthorizeDataShareInput) String() string { 18250 return awsutil.Prettify(s) 18251 } 18252 18253 // GoString returns the string representation. 18254 // 18255 // API parameter values that are decorated as "sensitive" in the API will not 18256 // be included in the string output. The member name will be present, but the 18257 // value will be replaced with "sensitive". 18258 func (s DeauthorizeDataShareInput) GoString() string { 18259 return s.String() 18260 } 18261 18262 // Validate inspects the fields of the type to determine if they are valid. 18263 func (s *DeauthorizeDataShareInput) Validate() error { 18264 invalidParams := request.ErrInvalidParams{Context: "DeauthorizeDataShareInput"} 18265 if s.ConsumerIdentifier == nil { 18266 invalidParams.Add(request.NewErrParamRequired("ConsumerIdentifier")) 18267 } 18268 if s.DataShareArn == nil { 18269 invalidParams.Add(request.NewErrParamRequired("DataShareArn")) 18270 } 18271 18272 if invalidParams.Len() > 0 { 18273 return invalidParams 18274 } 18275 return nil 18276 } 18277 18278 // SetConsumerIdentifier sets the ConsumerIdentifier field's value. 18279 func (s *DeauthorizeDataShareInput) SetConsumerIdentifier(v string) *DeauthorizeDataShareInput { 18280 s.ConsumerIdentifier = &v 18281 return s 18282 } 18283 18284 // SetDataShareArn sets the DataShareArn field's value. 18285 func (s *DeauthorizeDataShareInput) SetDataShareArn(v string) *DeauthorizeDataShareInput { 18286 s.DataShareArn = &v 18287 return s 18288 } 18289 18290 type DeauthorizeDataShareOutput struct { 18291 _ struct{} `type:"structure"` 18292 18293 // A value that specifies whether the datashare can be shared to a publicly 18294 // accessible cluster. 18295 AllowPubliclyAccessibleConsumers *bool `type:"boolean"` 18296 18297 // An Amazon Resource Name (ARN) that references the datashare that is owned 18298 // by a specific namespace of the producer cluster. A datashare ARN is in the 18299 // arn:aws:redshift:{region}:{account-id}:{datashare}:{namespace-guid}/{datashare-name} 18300 // format. 18301 DataShareArn *string `type:"string"` 18302 18303 // A value that specifies when the datashare has an association between a producer 18304 // and data consumers. 18305 DataShareAssociations []*DataShareAssociation `type:"list"` 18306 18307 // The Amazon Resource Name (ARN) of the producer. 18308 ProducerArn *string `type:"string"` 18309 } 18310 18311 // String returns the string representation. 18312 // 18313 // API parameter values that are decorated as "sensitive" in the API will not 18314 // be included in the string output. The member name will be present, but the 18315 // value will be replaced with "sensitive". 18316 func (s DeauthorizeDataShareOutput) String() string { 18317 return awsutil.Prettify(s) 18318 } 18319 18320 // GoString returns the string representation. 18321 // 18322 // API parameter values that are decorated as "sensitive" in the API will not 18323 // be included in the string output. The member name will be present, but the 18324 // value will be replaced with "sensitive". 18325 func (s DeauthorizeDataShareOutput) GoString() string { 18326 return s.String() 18327 } 18328 18329 // SetAllowPubliclyAccessibleConsumers sets the AllowPubliclyAccessibleConsumers field's value. 18330 func (s *DeauthorizeDataShareOutput) SetAllowPubliclyAccessibleConsumers(v bool) *DeauthorizeDataShareOutput { 18331 s.AllowPubliclyAccessibleConsumers = &v 18332 return s 18333 } 18334 18335 // SetDataShareArn sets the DataShareArn field's value. 18336 func (s *DeauthorizeDataShareOutput) SetDataShareArn(v string) *DeauthorizeDataShareOutput { 18337 s.DataShareArn = &v 18338 return s 18339 } 18340 18341 // SetDataShareAssociations sets the DataShareAssociations field's value. 18342 func (s *DeauthorizeDataShareOutput) SetDataShareAssociations(v []*DataShareAssociation) *DeauthorizeDataShareOutput { 18343 s.DataShareAssociations = v 18344 return s 18345 } 18346 18347 // SetProducerArn sets the ProducerArn field's value. 18348 func (s *DeauthorizeDataShareOutput) SetProducerArn(v string) *DeauthorizeDataShareOutput { 18349 s.ProducerArn = &v 18350 return s 18351 } 18352 18353 // Describes the default cluster parameters for a parameter group family. 18354 type DefaultClusterParameters struct { 18355 _ struct{} `type:"structure"` 18356 18357 // A value that indicates the starting point for the next set of response records 18358 // in a subsequent request. If a value is returned in a response, you can retrieve 18359 // the next set of records by providing this returned marker value in the Marker 18360 // parameter and retrying the command. If the Marker field is empty, all response 18361 // records have been retrieved for the request. 18362 Marker *string `type:"string"` 18363 18364 // The name of the cluster parameter group family to which the engine default 18365 // parameters apply. 18366 ParameterGroupFamily *string `type:"string"` 18367 18368 // The list of cluster default parameters. 18369 Parameters []*Parameter `locationNameList:"Parameter" type:"list"` 18370 } 18371 18372 // String returns the string representation. 18373 // 18374 // API parameter values that are decorated as "sensitive" in the API will not 18375 // be included in the string output. The member name will be present, but the 18376 // value will be replaced with "sensitive". 18377 func (s DefaultClusterParameters) String() string { 18378 return awsutil.Prettify(s) 18379 } 18380 18381 // GoString returns the string representation. 18382 // 18383 // API parameter values that are decorated as "sensitive" in the API will not 18384 // be included in the string output. The member name will be present, but the 18385 // value will be replaced with "sensitive". 18386 func (s DefaultClusterParameters) GoString() string { 18387 return s.String() 18388 } 18389 18390 // SetMarker sets the Marker field's value. 18391 func (s *DefaultClusterParameters) SetMarker(v string) *DefaultClusterParameters { 18392 s.Marker = &v 18393 return s 18394 } 18395 18396 // SetParameterGroupFamily sets the ParameterGroupFamily field's value. 18397 func (s *DefaultClusterParameters) SetParameterGroupFamily(v string) *DefaultClusterParameters { 18398 s.ParameterGroupFamily = &v 18399 return s 18400 } 18401 18402 // SetParameters sets the Parameters field's value. 18403 func (s *DefaultClusterParameters) SetParameters(v []*Parameter) *DefaultClusterParameters { 18404 s.Parameters = v 18405 return s 18406 } 18407 18408 // Describes a deferred maintenance window 18409 type DeferredMaintenanceWindow struct { 18410 _ struct{} `type:"structure"` 18411 18412 // A timestamp for the end of the time period when we defer maintenance. 18413 DeferMaintenanceEndTime *time.Time `type:"timestamp"` 18414 18415 // A unique identifier for the maintenance window. 18416 DeferMaintenanceIdentifier *string `type:"string"` 18417 18418 // A timestamp for the beginning of the time period when we defer maintenance. 18419 DeferMaintenanceStartTime *time.Time `type:"timestamp"` 18420 } 18421 18422 // String returns the string representation. 18423 // 18424 // API parameter values that are decorated as "sensitive" in the API will not 18425 // be included in the string output. The member name will be present, but the 18426 // value will be replaced with "sensitive". 18427 func (s DeferredMaintenanceWindow) String() string { 18428 return awsutil.Prettify(s) 18429 } 18430 18431 // GoString returns the string representation. 18432 // 18433 // API parameter values that are decorated as "sensitive" in the API will not 18434 // be included in the string output. The member name will be present, but the 18435 // value will be replaced with "sensitive". 18436 func (s DeferredMaintenanceWindow) GoString() string { 18437 return s.String() 18438 } 18439 18440 // SetDeferMaintenanceEndTime sets the DeferMaintenanceEndTime field's value. 18441 func (s *DeferredMaintenanceWindow) SetDeferMaintenanceEndTime(v time.Time) *DeferredMaintenanceWindow { 18442 s.DeferMaintenanceEndTime = &v 18443 return s 18444 } 18445 18446 // SetDeferMaintenanceIdentifier sets the DeferMaintenanceIdentifier field's value. 18447 func (s *DeferredMaintenanceWindow) SetDeferMaintenanceIdentifier(v string) *DeferredMaintenanceWindow { 18448 s.DeferMaintenanceIdentifier = &v 18449 return s 18450 } 18451 18452 // SetDeferMaintenanceStartTime sets the DeferMaintenanceStartTime field's value. 18453 func (s *DeferredMaintenanceWindow) SetDeferMaintenanceStartTime(v time.Time) *DeferredMaintenanceWindow { 18454 s.DeferMaintenanceStartTime = &v 18455 return s 18456 } 18457 18458 type DeleteAuthenticationProfileInput struct { 18459 _ struct{} `type:"structure"` 18460 18461 // The name of the authentication profile to delete. 18462 // 18463 // AuthenticationProfileName is a required field 18464 AuthenticationProfileName *string `type:"string" required:"true"` 18465 } 18466 18467 // String returns the string representation. 18468 // 18469 // API parameter values that are decorated as "sensitive" in the API will not 18470 // be included in the string output. The member name will be present, but the 18471 // value will be replaced with "sensitive". 18472 func (s DeleteAuthenticationProfileInput) String() string { 18473 return awsutil.Prettify(s) 18474 } 18475 18476 // GoString returns the string representation. 18477 // 18478 // API parameter values that are decorated as "sensitive" in the API will not 18479 // be included in the string output. The member name will be present, but the 18480 // value will be replaced with "sensitive". 18481 func (s DeleteAuthenticationProfileInput) GoString() string { 18482 return s.String() 18483 } 18484 18485 // Validate inspects the fields of the type to determine if they are valid. 18486 func (s *DeleteAuthenticationProfileInput) Validate() error { 18487 invalidParams := request.ErrInvalidParams{Context: "DeleteAuthenticationProfileInput"} 18488 if s.AuthenticationProfileName == nil { 18489 invalidParams.Add(request.NewErrParamRequired("AuthenticationProfileName")) 18490 } 18491 18492 if invalidParams.Len() > 0 { 18493 return invalidParams 18494 } 18495 return nil 18496 } 18497 18498 // SetAuthenticationProfileName sets the AuthenticationProfileName field's value. 18499 func (s *DeleteAuthenticationProfileInput) SetAuthenticationProfileName(v string) *DeleteAuthenticationProfileInput { 18500 s.AuthenticationProfileName = &v 18501 return s 18502 } 18503 18504 type DeleteAuthenticationProfileOutput struct { 18505 _ struct{} `type:"structure"` 18506 18507 // The name of the authentication profile that was deleted. 18508 AuthenticationProfileName *string `type:"string"` 18509 } 18510 18511 // String returns the string representation. 18512 // 18513 // API parameter values that are decorated as "sensitive" in the API will not 18514 // be included in the string output. The member name will be present, but the 18515 // value will be replaced with "sensitive". 18516 func (s DeleteAuthenticationProfileOutput) String() string { 18517 return awsutil.Prettify(s) 18518 } 18519 18520 // GoString returns the string representation. 18521 // 18522 // API parameter values that are decorated as "sensitive" in the API will not 18523 // be included in the string output. The member name will be present, but the 18524 // value will be replaced with "sensitive". 18525 func (s DeleteAuthenticationProfileOutput) GoString() string { 18526 return s.String() 18527 } 18528 18529 // SetAuthenticationProfileName sets the AuthenticationProfileName field's value. 18530 func (s *DeleteAuthenticationProfileOutput) SetAuthenticationProfileName(v string) *DeleteAuthenticationProfileOutput { 18531 s.AuthenticationProfileName = &v 18532 return s 18533 } 18534 18535 type DeleteClusterInput struct { 18536 _ struct{} `type:"structure"` 18537 18538 // The identifier of the cluster to be deleted. 18539 // 18540 // Constraints: 18541 // 18542 // * Must contain lowercase characters. 18543 // 18544 // * Must contain from 1 to 63 alphanumeric characters or hyphens. 18545 // 18546 // * First character must be a letter. 18547 // 18548 // * Cannot end with a hyphen or contain two consecutive hyphens. 18549 // 18550 // ClusterIdentifier is a required field 18551 ClusterIdentifier *string `type:"string" required:"true"` 18552 18553 // The identifier of the final snapshot that is to be created immediately before 18554 // deleting the cluster. If this parameter is provided, SkipFinalClusterSnapshot 18555 // must be false. 18556 // 18557 // Constraints: 18558 // 18559 // * Must be 1 to 255 alphanumeric characters. 18560 // 18561 // * First character must be a letter. 18562 // 18563 // * Cannot end with a hyphen or contain two consecutive hyphens. 18564 FinalClusterSnapshotIdentifier *string `type:"string"` 18565 18566 // The number of days that a manual snapshot is retained. If the value is -1, 18567 // the manual snapshot is retained indefinitely. 18568 // 18569 // The value must be either -1 or an integer between 1 and 3,653. 18570 // 18571 // The default value is -1. 18572 FinalClusterSnapshotRetentionPeriod *int64 `type:"integer"` 18573 18574 // Determines whether a final snapshot of the cluster is created before Amazon 18575 // Redshift deletes the cluster. If true, a final cluster snapshot is not created. 18576 // If false, a final cluster snapshot is created before the cluster is deleted. 18577 // 18578 // The FinalClusterSnapshotIdentifier parameter must be specified if SkipFinalClusterSnapshot 18579 // is false. 18580 // 18581 // Default: false 18582 SkipFinalClusterSnapshot *bool `type:"boolean"` 18583 } 18584 18585 // String returns the string representation. 18586 // 18587 // API parameter values that are decorated as "sensitive" in the API will not 18588 // be included in the string output. The member name will be present, but the 18589 // value will be replaced with "sensitive". 18590 func (s DeleteClusterInput) String() string { 18591 return awsutil.Prettify(s) 18592 } 18593 18594 // GoString returns the string representation. 18595 // 18596 // API parameter values that are decorated as "sensitive" in the API will not 18597 // be included in the string output. The member name will be present, but the 18598 // value will be replaced with "sensitive". 18599 func (s DeleteClusterInput) GoString() string { 18600 return s.String() 18601 } 18602 18603 // Validate inspects the fields of the type to determine if they are valid. 18604 func (s *DeleteClusterInput) Validate() error { 18605 invalidParams := request.ErrInvalidParams{Context: "DeleteClusterInput"} 18606 if s.ClusterIdentifier == nil { 18607 invalidParams.Add(request.NewErrParamRequired("ClusterIdentifier")) 18608 } 18609 18610 if invalidParams.Len() > 0 { 18611 return invalidParams 18612 } 18613 return nil 18614 } 18615 18616 // SetClusterIdentifier sets the ClusterIdentifier field's value. 18617 func (s *DeleteClusterInput) SetClusterIdentifier(v string) *DeleteClusterInput { 18618 s.ClusterIdentifier = &v 18619 return s 18620 } 18621 18622 // SetFinalClusterSnapshotIdentifier sets the FinalClusterSnapshotIdentifier field's value. 18623 func (s *DeleteClusterInput) SetFinalClusterSnapshotIdentifier(v string) *DeleteClusterInput { 18624 s.FinalClusterSnapshotIdentifier = &v 18625 return s 18626 } 18627 18628 // SetFinalClusterSnapshotRetentionPeriod sets the FinalClusterSnapshotRetentionPeriod field's value. 18629 func (s *DeleteClusterInput) SetFinalClusterSnapshotRetentionPeriod(v int64) *DeleteClusterInput { 18630 s.FinalClusterSnapshotRetentionPeriod = &v 18631 return s 18632 } 18633 18634 // SetSkipFinalClusterSnapshot sets the SkipFinalClusterSnapshot field's value. 18635 func (s *DeleteClusterInput) SetSkipFinalClusterSnapshot(v bool) *DeleteClusterInput { 18636 s.SkipFinalClusterSnapshot = &v 18637 return s 18638 } 18639 18640 type DeleteClusterOutput struct { 18641 _ struct{} `type:"structure"` 18642 18643 // Describes a cluster. 18644 Cluster *Cluster `type:"structure"` 18645 } 18646 18647 // String returns the string representation. 18648 // 18649 // API parameter values that are decorated as "sensitive" in the API will not 18650 // be included in the string output. The member name will be present, but the 18651 // value will be replaced with "sensitive". 18652 func (s DeleteClusterOutput) String() string { 18653 return awsutil.Prettify(s) 18654 } 18655 18656 // GoString returns the string representation. 18657 // 18658 // API parameter values that are decorated as "sensitive" in the API will not 18659 // be included in the string output. The member name will be present, but the 18660 // value will be replaced with "sensitive". 18661 func (s DeleteClusterOutput) GoString() string { 18662 return s.String() 18663 } 18664 18665 // SetCluster sets the Cluster field's value. 18666 func (s *DeleteClusterOutput) SetCluster(v *Cluster) *DeleteClusterOutput { 18667 s.Cluster = v 18668 return s 18669 } 18670 18671 type DeleteClusterParameterGroupInput struct { 18672 _ struct{} `type:"structure"` 18673 18674 // The name of the parameter group to be deleted. 18675 // 18676 // Constraints: 18677 // 18678 // * Must be the name of an existing cluster parameter group. 18679 // 18680 // * Cannot delete a default cluster parameter group. 18681 // 18682 // ParameterGroupName is a required field 18683 ParameterGroupName *string `type:"string" required:"true"` 18684 } 18685 18686 // String returns the string representation. 18687 // 18688 // API parameter values that are decorated as "sensitive" in the API will not 18689 // be included in the string output. The member name will be present, but the 18690 // value will be replaced with "sensitive". 18691 func (s DeleteClusterParameterGroupInput) String() string { 18692 return awsutil.Prettify(s) 18693 } 18694 18695 // GoString returns the string representation. 18696 // 18697 // API parameter values that are decorated as "sensitive" in the API will not 18698 // be included in the string output. The member name will be present, but the 18699 // value will be replaced with "sensitive". 18700 func (s DeleteClusterParameterGroupInput) GoString() string { 18701 return s.String() 18702 } 18703 18704 // Validate inspects the fields of the type to determine if they are valid. 18705 func (s *DeleteClusterParameterGroupInput) Validate() error { 18706 invalidParams := request.ErrInvalidParams{Context: "DeleteClusterParameterGroupInput"} 18707 if s.ParameterGroupName == nil { 18708 invalidParams.Add(request.NewErrParamRequired("ParameterGroupName")) 18709 } 18710 18711 if invalidParams.Len() > 0 { 18712 return invalidParams 18713 } 18714 return nil 18715 } 18716 18717 // SetParameterGroupName sets the ParameterGroupName field's value. 18718 func (s *DeleteClusterParameterGroupInput) SetParameterGroupName(v string) *DeleteClusterParameterGroupInput { 18719 s.ParameterGroupName = &v 18720 return s 18721 } 18722 18723 type DeleteClusterParameterGroupOutput struct { 18724 _ struct{} `type:"structure"` 18725 } 18726 18727 // String returns the string representation. 18728 // 18729 // API parameter values that are decorated as "sensitive" in the API will not 18730 // be included in the string output. The member name will be present, but the 18731 // value will be replaced with "sensitive". 18732 func (s DeleteClusterParameterGroupOutput) String() string { 18733 return awsutil.Prettify(s) 18734 } 18735 18736 // GoString returns the string representation. 18737 // 18738 // API parameter values that are decorated as "sensitive" in the API will not 18739 // be included in the string output. The member name will be present, but the 18740 // value will be replaced with "sensitive". 18741 func (s DeleteClusterParameterGroupOutput) GoString() string { 18742 return s.String() 18743 } 18744 18745 type DeleteClusterSecurityGroupInput struct { 18746 _ struct{} `type:"structure"` 18747 18748 // The name of the cluster security group to be deleted. 18749 // 18750 // ClusterSecurityGroupName is a required field 18751 ClusterSecurityGroupName *string `type:"string" required:"true"` 18752 } 18753 18754 // String returns the string representation. 18755 // 18756 // API parameter values that are decorated as "sensitive" in the API will not 18757 // be included in the string output. The member name will be present, but the 18758 // value will be replaced with "sensitive". 18759 func (s DeleteClusterSecurityGroupInput) String() string { 18760 return awsutil.Prettify(s) 18761 } 18762 18763 // GoString returns the string representation. 18764 // 18765 // API parameter values that are decorated as "sensitive" in the API will not 18766 // be included in the string output. The member name will be present, but the 18767 // value will be replaced with "sensitive". 18768 func (s DeleteClusterSecurityGroupInput) GoString() string { 18769 return s.String() 18770 } 18771 18772 // Validate inspects the fields of the type to determine if they are valid. 18773 func (s *DeleteClusterSecurityGroupInput) Validate() error { 18774 invalidParams := request.ErrInvalidParams{Context: "DeleteClusterSecurityGroupInput"} 18775 if s.ClusterSecurityGroupName == nil { 18776 invalidParams.Add(request.NewErrParamRequired("ClusterSecurityGroupName")) 18777 } 18778 18779 if invalidParams.Len() > 0 { 18780 return invalidParams 18781 } 18782 return nil 18783 } 18784 18785 // SetClusterSecurityGroupName sets the ClusterSecurityGroupName field's value. 18786 func (s *DeleteClusterSecurityGroupInput) SetClusterSecurityGroupName(v string) *DeleteClusterSecurityGroupInput { 18787 s.ClusterSecurityGroupName = &v 18788 return s 18789 } 18790 18791 type DeleteClusterSecurityGroupOutput struct { 18792 _ struct{} `type:"structure"` 18793 } 18794 18795 // String returns the string representation. 18796 // 18797 // API parameter values that are decorated as "sensitive" in the API will not 18798 // be included in the string output. The member name will be present, but the 18799 // value will be replaced with "sensitive". 18800 func (s DeleteClusterSecurityGroupOutput) String() string { 18801 return awsutil.Prettify(s) 18802 } 18803 18804 // GoString returns the string representation. 18805 // 18806 // API parameter values that are decorated as "sensitive" in the API will not 18807 // be included in the string output. The member name will be present, but the 18808 // value will be replaced with "sensitive". 18809 func (s DeleteClusterSecurityGroupOutput) GoString() string { 18810 return s.String() 18811 } 18812 18813 type DeleteClusterSnapshotInput struct { 18814 _ struct{} `type:"structure"` 18815 18816 // The unique identifier of the cluster the snapshot was created from. This 18817 // parameter is required if your IAM user has a policy containing a snapshot 18818 // resource element that specifies anything other than * for the cluster name. 18819 // 18820 // Constraints: Must be the name of valid cluster. 18821 SnapshotClusterIdentifier *string `type:"string"` 18822 18823 // The unique identifier of the manual snapshot to be deleted. 18824 // 18825 // Constraints: Must be the name of an existing snapshot that is in the available, 18826 // failed, or cancelled state. 18827 // 18828 // SnapshotIdentifier is a required field 18829 SnapshotIdentifier *string `type:"string" required:"true"` 18830 } 18831 18832 // String returns the string representation. 18833 // 18834 // API parameter values that are decorated as "sensitive" in the API will not 18835 // be included in the string output. The member name will be present, but the 18836 // value will be replaced with "sensitive". 18837 func (s DeleteClusterSnapshotInput) String() string { 18838 return awsutil.Prettify(s) 18839 } 18840 18841 // GoString returns the string representation. 18842 // 18843 // API parameter values that are decorated as "sensitive" in the API will not 18844 // be included in the string output. The member name will be present, but the 18845 // value will be replaced with "sensitive". 18846 func (s DeleteClusterSnapshotInput) GoString() string { 18847 return s.String() 18848 } 18849 18850 // Validate inspects the fields of the type to determine if they are valid. 18851 func (s *DeleteClusterSnapshotInput) Validate() error { 18852 invalidParams := request.ErrInvalidParams{Context: "DeleteClusterSnapshotInput"} 18853 if s.SnapshotIdentifier == nil { 18854 invalidParams.Add(request.NewErrParamRequired("SnapshotIdentifier")) 18855 } 18856 18857 if invalidParams.Len() > 0 { 18858 return invalidParams 18859 } 18860 return nil 18861 } 18862 18863 // SetSnapshotClusterIdentifier sets the SnapshotClusterIdentifier field's value. 18864 func (s *DeleteClusterSnapshotInput) SetSnapshotClusterIdentifier(v string) *DeleteClusterSnapshotInput { 18865 s.SnapshotClusterIdentifier = &v 18866 return s 18867 } 18868 18869 // SetSnapshotIdentifier sets the SnapshotIdentifier field's value. 18870 func (s *DeleteClusterSnapshotInput) SetSnapshotIdentifier(v string) *DeleteClusterSnapshotInput { 18871 s.SnapshotIdentifier = &v 18872 return s 18873 } 18874 18875 type DeleteClusterSnapshotMessage struct { 18876 _ struct{} `type:"structure"` 18877 18878 // The unique identifier of the cluster the snapshot was created from. This 18879 // parameter is required if your IAM user has a policy containing a snapshot 18880 // resource element that specifies anything other than * for the cluster name. 18881 // 18882 // Constraints: Must be the name of valid cluster. 18883 SnapshotClusterIdentifier *string `type:"string"` 18884 18885 // The unique identifier of the manual snapshot to be deleted. 18886 // 18887 // Constraints: Must be the name of an existing snapshot that is in the available, 18888 // failed, or cancelled state. 18889 // 18890 // SnapshotIdentifier is a required field 18891 SnapshotIdentifier *string `type:"string" required:"true"` 18892 } 18893 18894 // String returns the string representation. 18895 // 18896 // API parameter values that are decorated as "sensitive" in the API will not 18897 // be included in the string output. The member name will be present, but the 18898 // value will be replaced with "sensitive". 18899 func (s DeleteClusterSnapshotMessage) String() string { 18900 return awsutil.Prettify(s) 18901 } 18902 18903 // GoString returns the string representation. 18904 // 18905 // API parameter values that are decorated as "sensitive" in the API will not 18906 // be included in the string output. The member name will be present, but the 18907 // value will be replaced with "sensitive". 18908 func (s DeleteClusterSnapshotMessage) GoString() string { 18909 return s.String() 18910 } 18911 18912 // Validate inspects the fields of the type to determine if they are valid. 18913 func (s *DeleteClusterSnapshotMessage) Validate() error { 18914 invalidParams := request.ErrInvalidParams{Context: "DeleteClusterSnapshotMessage"} 18915 if s.SnapshotIdentifier == nil { 18916 invalidParams.Add(request.NewErrParamRequired("SnapshotIdentifier")) 18917 } 18918 18919 if invalidParams.Len() > 0 { 18920 return invalidParams 18921 } 18922 return nil 18923 } 18924 18925 // SetSnapshotClusterIdentifier sets the SnapshotClusterIdentifier field's value. 18926 func (s *DeleteClusterSnapshotMessage) SetSnapshotClusterIdentifier(v string) *DeleteClusterSnapshotMessage { 18927 s.SnapshotClusterIdentifier = &v 18928 return s 18929 } 18930 18931 // SetSnapshotIdentifier sets the SnapshotIdentifier field's value. 18932 func (s *DeleteClusterSnapshotMessage) SetSnapshotIdentifier(v string) *DeleteClusterSnapshotMessage { 18933 s.SnapshotIdentifier = &v 18934 return s 18935 } 18936 18937 type DeleteClusterSnapshotOutput struct { 18938 _ struct{} `type:"structure"` 18939 18940 // Describes a snapshot. 18941 Snapshot *Snapshot `type:"structure"` 18942 } 18943 18944 // String returns the string representation. 18945 // 18946 // API parameter values that are decorated as "sensitive" in the API will not 18947 // be included in the string output. The member name will be present, but the 18948 // value will be replaced with "sensitive". 18949 func (s DeleteClusterSnapshotOutput) String() string { 18950 return awsutil.Prettify(s) 18951 } 18952 18953 // GoString returns the string representation. 18954 // 18955 // API parameter values that are decorated as "sensitive" in the API will not 18956 // be included in the string output. The member name will be present, but the 18957 // value will be replaced with "sensitive". 18958 func (s DeleteClusterSnapshotOutput) GoString() string { 18959 return s.String() 18960 } 18961 18962 // SetSnapshot sets the Snapshot field's value. 18963 func (s *DeleteClusterSnapshotOutput) SetSnapshot(v *Snapshot) *DeleteClusterSnapshotOutput { 18964 s.Snapshot = v 18965 return s 18966 } 18967 18968 type DeleteClusterSubnetGroupInput struct { 18969 _ struct{} `type:"structure"` 18970 18971 // The name of the cluster subnet group name to be deleted. 18972 // 18973 // ClusterSubnetGroupName is a required field 18974 ClusterSubnetGroupName *string `type:"string" required:"true"` 18975 } 18976 18977 // String returns the string representation. 18978 // 18979 // API parameter values that are decorated as "sensitive" in the API will not 18980 // be included in the string output. The member name will be present, but the 18981 // value will be replaced with "sensitive". 18982 func (s DeleteClusterSubnetGroupInput) String() string { 18983 return awsutil.Prettify(s) 18984 } 18985 18986 // GoString returns the string representation. 18987 // 18988 // API parameter values that are decorated as "sensitive" in the API will not 18989 // be included in the string output. The member name will be present, but the 18990 // value will be replaced with "sensitive". 18991 func (s DeleteClusterSubnetGroupInput) GoString() string { 18992 return s.String() 18993 } 18994 18995 // Validate inspects the fields of the type to determine if they are valid. 18996 func (s *DeleteClusterSubnetGroupInput) Validate() error { 18997 invalidParams := request.ErrInvalidParams{Context: "DeleteClusterSubnetGroupInput"} 18998 if s.ClusterSubnetGroupName == nil { 18999 invalidParams.Add(request.NewErrParamRequired("ClusterSubnetGroupName")) 19000 } 19001 19002 if invalidParams.Len() > 0 { 19003 return invalidParams 19004 } 19005 return nil 19006 } 19007 19008 // SetClusterSubnetGroupName sets the ClusterSubnetGroupName field's value. 19009 func (s *DeleteClusterSubnetGroupInput) SetClusterSubnetGroupName(v string) *DeleteClusterSubnetGroupInput { 19010 s.ClusterSubnetGroupName = &v 19011 return s 19012 } 19013 19014 type DeleteClusterSubnetGroupOutput struct { 19015 _ struct{} `type:"structure"` 19016 } 19017 19018 // String returns the string representation. 19019 // 19020 // API parameter values that are decorated as "sensitive" in the API will not 19021 // be included in the string output. The member name will be present, but the 19022 // value will be replaced with "sensitive". 19023 func (s DeleteClusterSubnetGroupOutput) String() string { 19024 return awsutil.Prettify(s) 19025 } 19026 19027 // GoString returns the string representation. 19028 // 19029 // API parameter values that are decorated as "sensitive" in the API will not 19030 // be included in the string output. The member name will be present, but the 19031 // value will be replaced with "sensitive". 19032 func (s DeleteClusterSubnetGroupOutput) GoString() string { 19033 return s.String() 19034 } 19035 19036 type DeleteEndpointAccessInput struct { 19037 _ struct{} `type:"structure"` 19038 19039 // The Redshift-managed VPC endpoint to delete. 19040 // 19041 // EndpointName is a required field 19042 EndpointName *string `type:"string" required:"true"` 19043 } 19044 19045 // String returns the string representation. 19046 // 19047 // API parameter values that are decorated as "sensitive" in the API will not 19048 // be included in the string output. The member name will be present, but the 19049 // value will be replaced with "sensitive". 19050 func (s DeleteEndpointAccessInput) String() string { 19051 return awsutil.Prettify(s) 19052 } 19053 19054 // GoString returns the string representation. 19055 // 19056 // API parameter values that are decorated as "sensitive" in the API will not 19057 // be included in the string output. The member name will be present, but the 19058 // value will be replaced with "sensitive". 19059 func (s DeleteEndpointAccessInput) GoString() string { 19060 return s.String() 19061 } 19062 19063 // Validate inspects the fields of the type to determine if they are valid. 19064 func (s *DeleteEndpointAccessInput) Validate() error { 19065 invalidParams := request.ErrInvalidParams{Context: "DeleteEndpointAccessInput"} 19066 if s.EndpointName == nil { 19067 invalidParams.Add(request.NewErrParamRequired("EndpointName")) 19068 } 19069 19070 if invalidParams.Len() > 0 { 19071 return invalidParams 19072 } 19073 return nil 19074 } 19075 19076 // SetEndpointName sets the EndpointName field's value. 19077 func (s *DeleteEndpointAccessInput) SetEndpointName(v string) *DeleteEndpointAccessInput { 19078 s.EndpointName = &v 19079 return s 19080 } 19081 19082 // Describes a Redshift-managed VPC endpoint. 19083 type DeleteEndpointAccessOutput struct { 19084 _ struct{} `type:"structure"` 19085 19086 // The DNS address of the endpoint. 19087 Address *string `type:"string"` 19088 19089 // The cluster identifier of the cluster associated with the endpoint. 19090 ClusterIdentifier *string `type:"string"` 19091 19092 // The time (UTC) that the endpoint was created. 19093 EndpointCreateTime *time.Time `type:"timestamp"` 19094 19095 // The name of the endpoint. 19096 EndpointName *string `type:"string"` 19097 19098 // The status of the endpoint. 19099 EndpointStatus *string `type:"string"` 19100 19101 // The port number on which the cluster accepts incoming connections. 19102 Port *int64 `type:"integer"` 19103 19104 // The Amazon Web Services account ID of the owner of the cluster. 19105 ResourceOwner *string `type:"string"` 19106 19107 // The subnet group name where Amazon Redshift chooses to deploy the endpoint. 19108 SubnetGroupName *string `type:"string"` 19109 19110 // The connection endpoint for connecting to an Amazon Redshift cluster through 19111 // the proxy. 19112 VpcEndpoint *VpcEndpoint `type:"structure"` 19113 19114 // The security groups associated with the endpoint. 19115 VpcSecurityGroups []*VpcSecurityGroupMembership `locationNameList:"VpcSecurityGroup" type:"list"` 19116 } 19117 19118 // String returns the string representation. 19119 // 19120 // API parameter values that are decorated as "sensitive" in the API will not 19121 // be included in the string output. The member name will be present, but the 19122 // value will be replaced with "sensitive". 19123 func (s DeleteEndpointAccessOutput) String() string { 19124 return awsutil.Prettify(s) 19125 } 19126 19127 // GoString returns the string representation. 19128 // 19129 // API parameter values that are decorated as "sensitive" in the API will not 19130 // be included in the string output. The member name will be present, but the 19131 // value will be replaced with "sensitive". 19132 func (s DeleteEndpointAccessOutput) GoString() string { 19133 return s.String() 19134 } 19135 19136 // SetAddress sets the Address field's value. 19137 func (s *DeleteEndpointAccessOutput) SetAddress(v string) *DeleteEndpointAccessOutput { 19138 s.Address = &v 19139 return s 19140 } 19141 19142 // SetClusterIdentifier sets the ClusterIdentifier field's value. 19143 func (s *DeleteEndpointAccessOutput) SetClusterIdentifier(v string) *DeleteEndpointAccessOutput { 19144 s.ClusterIdentifier = &v 19145 return s 19146 } 19147 19148 // SetEndpointCreateTime sets the EndpointCreateTime field's value. 19149 func (s *DeleteEndpointAccessOutput) SetEndpointCreateTime(v time.Time) *DeleteEndpointAccessOutput { 19150 s.EndpointCreateTime = &v 19151 return s 19152 } 19153 19154 // SetEndpointName sets the EndpointName field's value. 19155 func (s *DeleteEndpointAccessOutput) SetEndpointName(v string) *DeleteEndpointAccessOutput { 19156 s.EndpointName = &v 19157 return s 19158 } 19159 19160 // SetEndpointStatus sets the EndpointStatus field's value. 19161 func (s *DeleteEndpointAccessOutput) SetEndpointStatus(v string) *DeleteEndpointAccessOutput { 19162 s.EndpointStatus = &v 19163 return s 19164 } 19165 19166 // SetPort sets the Port field's value. 19167 func (s *DeleteEndpointAccessOutput) SetPort(v int64) *DeleteEndpointAccessOutput { 19168 s.Port = &v 19169 return s 19170 } 19171 19172 // SetResourceOwner sets the ResourceOwner field's value. 19173 func (s *DeleteEndpointAccessOutput) SetResourceOwner(v string) *DeleteEndpointAccessOutput { 19174 s.ResourceOwner = &v 19175 return s 19176 } 19177 19178 // SetSubnetGroupName sets the SubnetGroupName field's value. 19179 func (s *DeleteEndpointAccessOutput) SetSubnetGroupName(v string) *DeleteEndpointAccessOutput { 19180 s.SubnetGroupName = &v 19181 return s 19182 } 19183 19184 // SetVpcEndpoint sets the VpcEndpoint field's value. 19185 func (s *DeleteEndpointAccessOutput) SetVpcEndpoint(v *VpcEndpoint) *DeleteEndpointAccessOutput { 19186 s.VpcEndpoint = v 19187 return s 19188 } 19189 19190 // SetVpcSecurityGroups sets the VpcSecurityGroups field's value. 19191 func (s *DeleteEndpointAccessOutput) SetVpcSecurityGroups(v []*VpcSecurityGroupMembership) *DeleteEndpointAccessOutput { 19192 s.VpcSecurityGroups = v 19193 return s 19194 } 19195 19196 type DeleteEventSubscriptionInput struct { 19197 _ struct{} `type:"structure"` 19198 19199 // The name of the Amazon Redshift event notification subscription to be deleted. 19200 // 19201 // SubscriptionName is a required field 19202 SubscriptionName *string `type:"string" required:"true"` 19203 } 19204 19205 // String returns the string representation. 19206 // 19207 // API parameter values that are decorated as "sensitive" in the API will not 19208 // be included in the string output. The member name will be present, but the 19209 // value will be replaced with "sensitive". 19210 func (s DeleteEventSubscriptionInput) String() string { 19211 return awsutil.Prettify(s) 19212 } 19213 19214 // GoString returns the string representation. 19215 // 19216 // API parameter values that are decorated as "sensitive" in the API will not 19217 // be included in the string output. The member name will be present, but the 19218 // value will be replaced with "sensitive". 19219 func (s DeleteEventSubscriptionInput) GoString() string { 19220 return s.String() 19221 } 19222 19223 // Validate inspects the fields of the type to determine if they are valid. 19224 func (s *DeleteEventSubscriptionInput) Validate() error { 19225 invalidParams := request.ErrInvalidParams{Context: "DeleteEventSubscriptionInput"} 19226 if s.SubscriptionName == nil { 19227 invalidParams.Add(request.NewErrParamRequired("SubscriptionName")) 19228 } 19229 19230 if invalidParams.Len() > 0 { 19231 return invalidParams 19232 } 19233 return nil 19234 } 19235 19236 // SetSubscriptionName sets the SubscriptionName field's value. 19237 func (s *DeleteEventSubscriptionInput) SetSubscriptionName(v string) *DeleteEventSubscriptionInput { 19238 s.SubscriptionName = &v 19239 return s 19240 } 19241 19242 type DeleteEventSubscriptionOutput struct { 19243 _ struct{} `type:"structure"` 19244 } 19245 19246 // String returns the string representation. 19247 // 19248 // API parameter values that are decorated as "sensitive" in the API will not 19249 // be included in the string output. The member name will be present, but the 19250 // value will be replaced with "sensitive". 19251 func (s DeleteEventSubscriptionOutput) String() string { 19252 return awsutil.Prettify(s) 19253 } 19254 19255 // GoString returns the string representation. 19256 // 19257 // API parameter values that are decorated as "sensitive" in the API will not 19258 // be included in the string output. The member name will be present, but the 19259 // value will be replaced with "sensitive". 19260 func (s DeleteEventSubscriptionOutput) GoString() string { 19261 return s.String() 19262 } 19263 19264 type DeleteHsmClientCertificateInput struct { 19265 _ struct{} `type:"structure"` 19266 19267 // The identifier of the HSM client certificate to be deleted. 19268 // 19269 // HsmClientCertificateIdentifier is a required field 19270 HsmClientCertificateIdentifier *string `type:"string" required:"true"` 19271 } 19272 19273 // String returns the string representation. 19274 // 19275 // API parameter values that are decorated as "sensitive" in the API will not 19276 // be included in the string output. The member name will be present, but the 19277 // value will be replaced with "sensitive". 19278 func (s DeleteHsmClientCertificateInput) String() string { 19279 return awsutil.Prettify(s) 19280 } 19281 19282 // GoString returns the string representation. 19283 // 19284 // API parameter values that are decorated as "sensitive" in the API will not 19285 // be included in the string output. The member name will be present, but the 19286 // value will be replaced with "sensitive". 19287 func (s DeleteHsmClientCertificateInput) GoString() string { 19288 return s.String() 19289 } 19290 19291 // Validate inspects the fields of the type to determine if they are valid. 19292 func (s *DeleteHsmClientCertificateInput) Validate() error { 19293 invalidParams := request.ErrInvalidParams{Context: "DeleteHsmClientCertificateInput"} 19294 if s.HsmClientCertificateIdentifier == nil { 19295 invalidParams.Add(request.NewErrParamRequired("HsmClientCertificateIdentifier")) 19296 } 19297 19298 if invalidParams.Len() > 0 { 19299 return invalidParams 19300 } 19301 return nil 19302 } 19303 19304 // SetHsmClientCertificateIdentifier sets the HsmClientCertificateIdentifier field's value. 19305 func (s *DeleteHsmClientCertificateInput) SetHsmClientCertificateIdentifier(v string) *DeleteHsmClientCertificateInput { 19306 s.HsmClientCertificateIdentifier = &v 19307 return s 19308 } 19309 19310 type DeleteHsmClientCertificateOutput struct { 19311 _ struct{} `type:"structure"` 19312 } 19313 19314 // String returns the string representation. 19315 // 19316 // API parameter values that are decorated as "sensitive" in the API will not 19317 // be included in the string output. The member name will be present, but the 19318 // value will be replaced with "sensitive". 19319 func (s DeleteHsmClientCertificateOutput) String() string { 19320 return awsutil.Prettify(s) 19321 } 19322 19323 // GoString returns the string representation. 19324 // 19325 // API parameter values that are decorated as "sensitive" in the API will not 19326 // be included in the string output. The member name will be present, but the 19327 // value will be replaced with "sensitive". 19328 func (s DeleteHsmClientCertificateOutput) GoString() string { 19329 return s.String() 19330 } 19331 19332 type DeleteHsmConfigurationInput struct { 19333 _ struct{} `type:"structure"` 19334 19335 // The identifier of the Amazon Redshift HSM configuration to be deleted. 19336 // 19337 // HsmConfigurationIdentifier is a required field 19338 HsmConfigurationIdentifier *string `type:"string" required:"true"` 19339 } 19340 19341 // String returns the string representation. 19342 // 19343 // API parameter values that are decorated as "sensitive" in the API will not 19344 // be included in the string output. The member name will be present, but the 19345 // value will be replaced with "sensitive". 19346 func (s DeleteHsmConfigurationInput) String() string { 19347 return awsutil.Prettify(s) 19348 } 19349 19350 // GoString returns the string representation. 19351 // 19352 // API parameter values that are decorated as "sensitive" in the API will not 19353 // be included in the string output. The member name will be present, but the 19354 // value will be replaced with "sensitive". 19355 func (s DeleteHsmConfigurationInput) GoString() string { 19356 return s.String() 19357 } 19358 19359 // Validate inspects the fields of the type to determine if they are valid. 19360 func (s *DeleteHsmConfigurationInput) Validate() error { 19361 invalidParams := request.ErrInvalidParams{Context: "DeleteHsmConfigurationInput"} 19362 if s.HsmConfigurationIdentifier == nil { 19363 invalidParams.Add(request.NewErrParamRequired("HsmConfigurationIdentifier")) 19364 } 19365 19366 if invalidParams.Len() > 0 { 19367 return invalidParams 19368 } 19369 return nil 19370 } 19371 19372 // SetHsmConfigurationIdentifier sets the HsmConfigurationIdentifier field's value. 19373 func (s *DeleteHsmConfigurationInput) SetHsmConfigurationIdentifier(v string) *DeleteHsmConfigurationInput { 19374 s.HsmConfigurationIdentifier = &v 19375 return s 19376 } 19377 19378 type DeleteHsmConfigurationOutput struct { 19379 _ struct{} `type:"structure"` 19380 } 19381 19382 // String returns the string representation. 19383 // 19384 // API parameter values that are decorated as "sensitive" in the API will not 19385 // be included in the string output. The member name will be present, but the 19386 // value will be replaced with "sensitive". 19387 func (s DeleteHsmConfigurationOutput) String() string { 19388 return awsutil.Prettify(s) 19389 } 19390 19391 // GoString returns the string representation. 19392 // 19393 // API parameter values that are decorated as "sensitive" in the API will not 19394 // be included in the string output. The member name will be present, but the 19395 // value will be replaced with "sensitive". 19396 func (s DeleteHsmConfigurationOutput) GoString() string { 19397 return s.String() 19398 } 19399 19400 type DeletePartnerInput struct { 19401 _ struct{} `type:"structure"` 19402 19403 // The Amazon Web Services account ID that owns the cluster. 19404 // 19405 // AccountId is a required field 19406 AccountId *string `min:"12" type:"string" required:"true"` 19407 19408 // The cluster identifier of the cluster that receives data from the partner. 19409 // 19410 // ClusterIdentifier is a required field 19411 ClusterIdentifier *string `type:"string" required:"true"` 19412 19413 // The name of the database that receives data from the partner. 19414 // 19415 // DatabaseName is a required field 19416 DatabaseName *string `type:"string" required:"true"` 19417 19418 // The name of the partner that is authorized to send data. 19419 // 19420 // PartnerName is a required field 19421 PartnerName *string `type:"string" required:"true"` 19422 } 19423 19424 // String returns the string representation. 19425 // 19426 // API parameter values that are decorated as "sensitive" in the API will not 19427 // be included in the string output. The member name will be present, but the 19428 // value will be replaced with "sensitive". 19429 func (s DeletePartnerInput) String() string { 19430 return awsutil.Prettify(s) 19431 } 19432 19433 // GoString returns the string representation. 19434 // 19435 // API parameter values that are decorated as "sensitive" in the API will not 19436 // be included in the string output. The member name will be present, but the 19437 // value will be replaced with "sensitive". 19438 func (s DeletePartnerInput) GoString() string { 19439 return s.String() 19440 } 19441 19442 // Validate inspects the fields of the type to determine if they are valid. 19443 func (s *DeletePartnerInput) Validate() error { 19444 invalidParams := request.ErrInvalidParams{Context: "DeletePartnerInput"} 19445 if s.AccountId == nil { 19446 invalidParams.Add(request.NewErrParamRequired("AccountId")) 19447 } 19448 if s.AccountId != nil && len(*s.AccountId) < 12 { 19449 invalidParams.Add(request.NewErrParamMinLen("AccountId", 12)) 19450 } 19451 if s.ClusterIdentifier == nil { 19452 invalidParams.Add(request.NewErrParamRequired("ClusterIdentifier")) 19453 } 19454 if s.DatabaseName == nil { 19455 invalidParams.Add(request.NewErrParamRequired("DatabaseName")) 19456 } 19457 if s.PartnerName == nil { 19458 invalidParams.Add(request.NewErrParamRequired("PartnerName")) 19459 } 19460 19461 if invalidParams.Len() > 0 { 19462 return invalidParams 19463 } 19464 return nil 19465 } 19466 19467 // SetAccountId sets the AccountId field's value. 19468 func (s *DeletePartnerInput) SetAccountId(v string) *DeletePartnerInput { 19469 s.AccountId = &v 19470 return s 19471 } 19472 19473 // SetClusterIdentifier sets the ClusterIdentifier field's value. 19474 func (s *DeletePartnerInput) SetClusterIdentifier(v string) *DeletePartnerInput { 19475 s.ClusterIdentifier = &v 19476 return s 19477 } 19478 19479 // SetDatabaseName sets the DatabaseName field's value. 19480 func (s *DeletePartnerInput) SetDatabaseName(v string) *DeletePartnerInput { 19481 s.DatabaseName = &v 19482 return s 19483 } 19484 19485 // SetPartnerName sets the PartnerName field's value. 19486 func (s *DeletePartnerInput) SetPartnerName(v string) *DeletePartnerInput { 19487 s.PartnerName = &v 19488 return s 19489 } 19490 19491 type DeletePartnerOutput struct { 19492 _ struct{} `type:"structure"` 19493 19494 // The name of the database that receives data from the partner. 19495 DatabaseName *string `type:"string"` 19496 19497 // The name of the partner that is authorized to send data. 19498 PartnerName *string `type:"string"` 19499 } 19500 19501 // String returns the string representation. 19502 // 19503 // API parameter values that are decorated as "sensitive" in the API will not 19504 // be included in the string output. The member name will be present, but the 19505 // value will be replaced with "sensitive". 19506 func (s DeletePartnerOutput) String() string { 19507 return awsutil.Prettify(s) 19508 } 19509 19510 // GoString returns the string representation. 19511 // 19512 // API parameter values that are decorated as "sensitive" in the API will not 19513 // be included in the string output. The member name will be present, but the 19514 // value will be replaced with "sensitive". 19515 func (s DeletePartnerOutput) GoString() string { 19516 return s.String() 19517 } 19518 19519 // SetDatabaseName sets the DatabaseName field's value. 19520 func (s *DeletePartnerOutput) SetDatabaseName(v string) *DeletePartnerOutput { 19521 s.DatabaseName = &v 19522 return s 19523 } 19524 19525 // SetPartnerName sets the PartnerName field's value. 19526 func (s *DeletePartnerOutput) SetPartnerName(v string) *DeletePartnerOutput { 19527 s.PartnerName = &v 19528 return s 19529 } 19530 19531 type DeleteScheduledActionInput struct { 19532 _ struct{} `type:"structure"` 19533 19534 // The name of the scheduled action to delete. 19535 // 19536 // ScheduledActionName is a required field 19537 ScheduledActionName *string `type:"string" required:"true"` 19538 } 19539 19540 // String returns the string representation. 19541 // 19542 // API parameter values that are decorated as "sensitive" in the API will not 19543 // be included in the string output. The member name will be present, but the 19544 // value will be replaced with "sensitive". 19545 func (s DeleteScheduledActionInput) String() string { 19546 return awsutil.Prettify(s) 19547 } 19548 19549 // GoString returns the string representation. 19550 // 19551 // API parameter values that are decorated as "sensitive" in the API will not 19552 // be included in the string output. The member name will be present, but the 19553 // value will be replaced with "sensitive". 19554 func (s DeleteScheduledActionInput) GoString() string { 19555 return s.String() 19556 } 19557 19558 // Validate inspects the fields of the type to determine if they are valid. 19559 func (s *DeleteScheduledActionInput) Validate() error { 19560 invalidParams := request.ErrInvalidParams{Context: "DeleteScheduledActionInput"} 19561 if s.ScheduledActionName == nil { 19562 invalidParams.Add(request.NewErrParamRequired("ScheduledActionName")) 19563 } 19564 19565 if invalidParams.Len() > 0 { 19566 return invalidParams 19567 } 19568 return nil 19569 } 19570 19571 // SetScheduledActionName sets the ScheduledActionName field's value. 19572 func (s *DeleteScheduledActionInput) SetScheduledActionName(v string) *DeleteScheduledActionInput { 19573 s.ScheduledActionName = &v 19574 return s 19575 } 19576 19577 type DeleteScheduledActionOutput struct { 19578 _ struct{} `type:"structure"` 19579 } 19580 19581 // String returns the string representation. 19582 // 19583 // API parameter values that are decorated as "sensitive" in the API will not 19584 // be included in the string output. The member name will be present, but the 19585 // value will be replaced with "sensitive". 19586 func (s DeleteScheduledActionOutput) String() string { 19587 return awsutil.Prettify(s) 19588 } 19589 19590 // GoString returns the string representation. 19591 // 19592 // API parameter values that are decorated as "sensitive" in the API will not 19593 // be included in the string output. The member name will be present, but the 19594 // value will be replaced with "sensitive". 19595 func (s DeleteScheduledActionOutput) GoString() string { 19596 return s.String() 19597 } 19598 19599 // The result of the DeleteSnapshotCopyGrant action. 19600 type DeleteSnapshotCopyGrantInput struct { 19601 _ struct{} `type:"structure"` 19602 19603 // The name of the snapshot copy grant to delete. 19604 // 19605 // SnapshotCopyGrantName is a required field 19606 SnapshotCopyGrantName *string `type:"string" required:"true"` 19607 } 19608 19609 // String returns the string representation. 19610 // 19611 // API parameter values that are decorated as "sensitive" in the API will not 19612 // be included in the string output. The member name will be present, but the 19613 // value will be replaced with "sensitive". 19614 func (s DeleteSnapshotCopyGrantInput) String() string { 19615 return awsutil.Prettify(s) 19616 } 19617 19618 // GoString returns the string representation. 19619 // 19620 // API parameter values that are decorated as "sensitive" in the API will not 19621 // be included in the string output. The member name will be present, but the 19622 // value will be replaced with "sensitive". 19623 func (s DeleteSnapshotCopyGrantInput) GoString() string { 19624 return s.String() 19625 } 19626 19627 // Validate inspects the fields of the type to determine if they are valid. 19628 func (s *DeleteSnapshotCopyGrantInput) Validate() error { 19629 invalidParams := request.ErrInvalidParams{Context: "DeleteSnapshotCopyGrantInput"} 19630 if s.SnapshotCopyGrantName == nil { 19631 invalidParams.Add(request.NewErrParamRequired("SnapshotCopyGrantName")) 19632 } 19633 19634 if invalidParams.Len() > 0 { 19635 return invalidParams 19636 } 19637 return nil 19638 } 19639 19640 // SetSnapshotCopyGrantName sets the SnapshotCopyGrantName field's value. 19641 func (s *DeleteSnapshotCopyGrantInput) SetSnapshotCopyGrantName(v string) *DeleteSnapshotCopyGrantInput { 19642 s.SnapshotCopyGrantName = &v 19643 return s 19644 } 19645 19646 type DeleteSnapshotCopyGrantOutput struct { 19647 _ struct{} `type:"structure"` 19648 } 19649 19650 // String returns the string representation. 19651 // 19652 // API parameter values that are decorated as "sensitive" in the API will not 19653 // be included in the string output. The member name will be present, but the 19654 // value will be replaced with "sensitive". 19655 func (s DeleteSnapshotCopyGrantOutput) String() string { 19656 return awsutil.Prettify(s) 19657 } 19658 19659 // GoString returns the string representation. 19660 // 19661 // API parameter values that are decorated as "sensitive" in the API will not 19662 // be included in the string output. The member name will be present, but the 19663 // value will be replaced with "sensitive". 19664 func (s DeleteSnapshotCopyGrantOutput) GoString() string { 19665 return s.String() 19666 } 19667 19668 type DeleteSnapshotScheduleInput struct { 19669 _ struct{} `type:"structure"` 19670 19671 // A unique identifier of the snapshot schedule to delete. 19672 // 19673 // ScheduleIdentifier is a required field 19674 ScheduleIdentifier *string `type:"string" required:"true"` 19675 } 19676 19677 // String returns the string representation. 19678 // 19679 // API parameter values that are decorated as "sensitive" in the API will not 19680 // be included in the string output. The member name will be present, but the 19681 // value will be replaced with "sensitive". 19682 func (s DeleteSnapshotScheduleInput) String() string { 19683 return awsutil.Prettify(s) 19684 } 19685 19686 // GoString returns the string representation. 19687 // 19688 // API parameter values that are decorated as "sensitive" in the API will not 19689 // be included in the string output. The member name will be present, but the 19690 // value will be replaced with "sensitive". 19691 func (s DeleteSnapshotScheduleInput) GoString() string { 19692 return s.String() 19693 } 19694 19695 // Validate inspects the fields of the type to determine if they are valid. 19696 func (s *DeleteSnapshotScheduleInput) Validate() error { 19697 invalidParams := request.ErrInvalidParams{Context: "DeleteSnapshotScheduleInput"} 19698 if s.ScheduleIdentifier == nil { 19699 invalidParams.Add(request.NewErrParamRequired("ScheduleIdentifier")) 19700 } 19701 19702 if invalidParams.Len() > 0 { 19703 return invalidParams 19704 } 19705 return nil 19706 } 19707 19708 // SetScheduleIdentifier sets the ScheduleIdentifier field's value. 19709 func (s *DeleteSnapshotScheduleInput) SetScheduleIdentifier(v string) *DeleteSnapshotScheduleInput { 19710 s.ScheduleIdentifier = &v 19711 return s 19712 } 19713 19714 type DeleteSnapshotScheduleOutput struct { 19715 _ struct{} `type:"structure"` 19716 } 19717 19718 // String returns the string representation. 19719 // 19720 // API parameter values that are decorated as "sensitive" in the API will not 19721 // be included in the string output. The member name will be present, but the 19722 // value will be replaced with "sensitive". 19723 func (s DeleteSnapshotScheduleOutput) String() string { 19724 return awsutil.Prettify(s) 19725 } 19726 19727 // GoString returns the string representation. 19728 // 19729 // API parameter values that are decorated as "sensitive" in the API will not 19730 // be included in the string output. The member name will be present, but the 19731 // value will be replaced with "sensitive". 19732 func (s DeleteSnapshotScheduleOutput) GoString() string { 19733 return s.String() 19734 } 19735 19736 // Contains the output from the DeleteTags action. 19737 type DeleteTagsInput struct { 19738 _ struct{} `type:"structure"` 19739 19740 // The Amazon Resource Name (ARN) from which you want to remove the tag or tags. 19741 // For example, arn:aws:redshift:us-east-2:123456789:cluster:t1. 19742 // 19743 // ResourceName is a required field 19744 ResourceName *string `type:"string" required:"true"` 19745 19746 // The tag key that you want to delete. 19747 // 19748 // TagKeys is a required field 19749 TagKeys []*string `locationNameList:"TagKey" type:"list" required:"true"` 19750 } 19751 19752 // String returns the string representation. 19753 // 19754 // API parameter values that are decorated as "sensitive" in the API will not 19755 // be included in the string output. The member name will be present, but the 19756 // value will be replaced with "sensitive". 19757 func (s DeleteTagsInput) String() string { 19758 return awsutil.Prettify(s) 19759 } 19760 19761 // GoString returns the string representation. 19762 // 19763 // API parameter values that are decorated as "sensitive" in the API will not 19764 // be included in the string output. The member name will be present, but the 19765 // value will be replaced with "sensitive". 19766 func (s DeleteTagsInput) GoString() string { 19767 return s.String() 19768 } 19769 19770 // Validate inspects the fields of the type to determine if they are valid. 19771 func (s *DeleteTagsInput) Validate() error { 19772 invalidParams := request.ErrInvalidParams{Context: "DeleteTagsInput"} 19773 if s.ResourceName == nil { 19774 invalidParams.Add(request.NewErrParamRequired("ResourceName")) 19775 } 19776 if s.TagKeys == nil { 19777 invalidParams.Add(request.NewErrParamRequired("TagKeys")) 19778 } 19779 19780 if invalidParams.Len() > 0 { 19781 return invalidParams 19782 } 19783 return nil 19784 } 19785 19786 // SetResourceName sets the ResourceName field's value. 19787 func (s *DeleteTagsInput) SetResourceName(v string) *DeleteTagsInput { 19788 s.ResourceName = &v 19789 return s 19790 } 19791 19792 // SetTagKeys sets the TagKeys field's value. 19793 func (s *DeleteTagsInput) SetTagKeys(v []*string) *DeleteTagsInput { 19794 s.TagKeys = v 19795 return s 19796 } 19797 19798 type DeleteTagsOutput struct { 19799 _ struct{} `type:"structure"` 19800 } 19801 19802 // String returns the string representation. 19803 // 19804 // API parameter values that are decorated as "sensitive" in the API will not 19805 // be included in the string output. The member name will be present, but the 19806 // value will be replaced with "sensitive". 19807 func (s DeleteTagsOutput) String() string { 19808 return awsutil.Prettify(s) 19809 } 19810 19811 // GoString returns the string representation. 19812 // 19813 // API parameter values that are decorated as "sensitive" in the API will not 19814 // be included in the string output. The member name will be present, but the 19815 // value will be replaced with "sensitive". 19816 func (s DeleteTagsOutput) GoString() string { 19817 return s.String() 19818 } 19819 19820 type DeleteUsageLimitInput struct { 19821 _ struct{} `type:"structure"` 19822 19823 // The identifier of the usage limit to delete. 19824 // 19825 // UsageLimitId is a required field 19826 UsageLimitId *string `type:"string" required:"true"` 19827 } 19828 19829 // String returns the string representation. 19830 // 19831 // API parameter values that are decorated as "sensitive" in the API will not 19832 // be included in the string output. The member name will be present, but the 19833 // value will be replaced with "sensitive". 19834 func (s DeleteUsageLimitInput) String() string { 19835 return awsutil.Prettify(s) 19836 } 19837 19838 // GoString returns the string representation. 19839 // 19840 // API parameter values that are decorated as "sensitive" in the API will not 19841 // be included in the string output. The member name will be present, but the 19842 // value will be replaced with "sensitive". 19843 func (s DeleteUsageLimitInput) GoString() string { 19844 return s.String() 19845 } 19846 19847 // Validate inspects the fields of the type to determine if they are valid. 19848 func (s *DeleteUsageLimitInput) Validate() error { 19849 invalidParams := request.ErrInvalidParams{Context: "DeleteUsageLimitInput"} 19850 if s.UsageLimitId == nil { 19851 invalidParams.Add(request.NewErrParamRequired("UsageLimitId")) 19852 } 19853 19854 if invalidParams.Len() > 0 { 19855 return invalidParams 19856 } 19857 return nil 19858 } 19859 19860 // SetUsageLimitId sets the UsageLimitId field's value. 19861 func (s *DeleteUsageLimitInput) SetUsageLimitId(v string) *DeleteUsageLimitInput { 19862 s.UsageLimitId = &v 19863 return s 19864 } 19865 19866 type DeleteUsageLimitOutput struct { 19867 _ struct{} `type:"structure"` 19868 } 19869 19870 // String returns the string representation. 19871 // 19872 // API parameter values that are decorated as "sensitive" in the API will not 19873 // be included in the string output. The member name will be present, but the 19874 // value will be replaced with "sensitive". 19875 func (s DeleteUsageLimitOutput) String() string { 19876 return awsutil.Prettify(s) 19877 } 19878 19879 // GoString returns the string representation. 19880 // 19881 // API parameter values that are decorated as "sensitive" in the API will not 19882 // be included in the string output. The member name will be present, but the 19883 // value will be replaced with "sensitive". 19884 func (s DeleteUsageLimitOutput) GoString() string { 19885 return s.String() 19886 } 19887 19888 type DescribeAccountAttributesInput struct { 19889 _ struct{} `type:"structure"` 19890 19891 // A list of attribute names. 19892 AttributeNames []*string `locationNameList:"AttributeName" type:"list"` 19893 } 19894 19895 // String returns the string representation. 19896 // 19897 // API parameter values that are decorated as "sensitive" in the API will not 19898 // be included in the string output. The member name will be present, but the 19899 // value will be replaced with "sensitive". 19900 func (s DescribeAccountAttributesInput) String() string { 19901 return awsutil.Prettify(s) 19902 } 19903 19904 // GoString returns the string representation. 19905 // 19906 // API parameter values that are decorated as "sensitive" in the API will not 19907 // be included in the string output. The member name will be present, but the 19908 // value will be replaced with "sensitive". 19909 func (s DescribeAccountAttributesInput) GoString() string { 19910 return s.String() 19911 } 19912 19913 // SetAttributeNames sets the AttributeNames field's value. 19914 func (s *DescribeAccountAttributesInput) SetAttributeNames(v []*string) *DescribeAccountAttributesInput { 19915 s.AttributeNames = v 19916 return s 19917 } 19918 19919 type DescribeAccountAttributesOutput struct { 19920 _ struct{} `type:"structure"` 19921 19922 // A list of attributes assigned to an account. 19923 AccountAttributes []*AccountAttribute `locationNameList:"AccountAttribute" type:"list"` 19924 } 19925 19926 // String returns the string representation. 19927 // 19928 // API parameter values that are decorated as "sensitive" in the API will not 19929 // be included in the string output. The member name will be present, but the 19930 // value will be replaced with "sensitive". 19931 func (s DescribeAccountAttributesOutput) String() string { 19932 return awsutil.Prettify(s) 19933 } 19934 19935 // GoString returns the string representation. 19936 // 19937 // API parameter values that are decorated as "sensitive" in the API will not 19938 // be included in the string output. The member name will be present, but the 19939 // value will be replaced with "sensitive". 19940 func (s DescribeAccountAttributesOutput) GoString() string { 19941 return s.String() 19942 } 19943 19944 // SetAccountAttributes sets the AccountAttributes field's value. 19945 func (s *DescribeAccountAttributesOutput) SetAccountAttributes(v []*AccountAttribute) *DescribeAccountAttributesOutput { 19946 s.AccountAttributes = v 19947 return s 19948 } 19949 19950 type DescribeAuthenticationProfilesInput struct { 19951 _ struct{} `type:"structure"` 19952 19953 // The name of the authentication profile to describe. If not specified then 19954 // all authentication profiles owned by the account are listed. 19955 AuthenticationProfileName *string `type:"string"` 19956 } 19957 19958 // String returns the string representation. 19959 // 19960 // API parameter values that are decorated as "sensitive" in the API will not 19961 // be included in the string output. The member name will be present, but the 19962 // value will be replaced with "sensitive". 19963 func (s DescribeAuthenticationProfilesInput) String() string { 19964 return awsutil.Prettify(s) 19965 } 19966 19967 // GoString returns the string representation. 19968 // 19969 // API parameter values that are decorated as "sensitive" in the API will not 19970 // be included in the string output. The member name will be present, but the 19971 // value will be replaced with "sensitive". 19972 func (s DescribeAuthenticationProfilesInput) GoString() string { 19973 return s.String() 19974 } 19975 19976 // SetAuthenticationProfileName sets the AuthenticationProfileName field's value. 19977 func (s *DescribeAuthenticationProfilesInput) SetAuthenticationProfileName(v string) *DescribeAuthenticationProfilesInput { 19978 s.AuthenticationProfileName = &v 19979 return s 19980 } 19981 19982 type DescribeAuthenticationProfilesOutput struct { 19983 _ struct{} `type:"structure"` 19984 19985 // The list of authentication profiles. 19986 AuthenticationProfiles []*AuthenticationProfile `type:"list"` 19987 } 19988 19989 // String returns the string representation. 19990 // 19991 // API parameter values that are decorated as "sensitive" in the API will not 19992 // be included in the string output. The member name will be present, but the 19993 // value will be replaced with "sensitive". 19994 func (s DescribeAuthenticationProfilesOutput) String() string { 19995 return awsutil.Prettify(s) 19996 } 19997 19998 // GoString returns the string representation. 19999 // 20000 // API parameter values that are decorated as "sensitive" in the API will not 20001 // be included in the string output. The member name will be present, but the 20002 // value will be replaced with "sensitive". 20003 func (s DescribeAuthenticationProfilesOutput) GoString() string { 20004 return s.String() 20005 } 20006 20007 // SetAuthenticationProfiles sets the AuthenticationProfiles field's value. 20008 func (s *DescribeAuthenticationProfilesOutput) SetAuthenticationProfiles(v []*AuthenticationProfile) *DescribeAuthenticationProfilesOutput { 20009 s.AuthenticationProfiles = v 20010 return s 20011 } 20012 20013 type DescribeClusterDbRevisionsInput struct { 20014 _ struct{} `type:"structure"` 20015 20016 // A unique identifier for a cluster whose ClusterDbRevisions you are requesting. 20017 // This parameter is case sensitive. All clusters defined for an account are 20018 // returned by default. 20019 ClusterIdentifier *string `type:"string"` 20020 20021 // An optional parameter that specifies the starting point for returning a set 20022 // of response records. When the results of a DescribeClusterDbRevisions request 20023 // exceed the value specified in MaxRecords, Amazon Redshift returns a value 20024 // in the marker field of the response. You can retrieve the next set of response 20025 // records by providing the returned marker value in the marker parameter and 20026 // retrying the request. 20027 // 20028 // Constraints: You can specify either the ClusterIdentifier parameter, or the 20029 // marker parameter, but not both. 20030 Marker *string `type:"string"` 20031 20032 // The maximum number of response records to return in each call. If the number 20033 // of remaining response records exceeds the specified MaxRecords value, a value 20034 // is returned in the marker field of the response. You can retrieve the next 20035 // set of response records by providing the returned marker value in the marker 20036 // parameter and retrying the request. 20037 // 20038 // Default: 100 20039 // 20040 // Constraints: minimum 20, maximum 100. 20041 MaxRecords *int64 `type:"integer"` 20042 } 20043 20044 // String returns the string representation. 20045 // 20046 // API parameter values that are decorated as "sensitive" in the API will not 20047 // be included in the string output. The member name will be present, but the 20048 // value will be replaced with "sensitive". 20049 func (s DescribeClusterDbRevisionsInput) String() string { 20050 return awsutil.Prettify(s) 20051 } 20052 20053 // GoString returns the string representation. 20054 // 20055 // API parameter values that are decorated as "sensitive" in the API will not 20056 // be included in the string output. The member name will be present, but the 20057 // value will be replaced with "sensitive". 20058 func (s DescribeClusterDbRevisionsInput) GoString() string { 20059 return s.String() 20060 } 20061 20062 // SetClusterIdentifier sets the ClusterIdentifier field's value. 20063 func (s *DescribeClusterDbRevisionsInput) SetClusterIdentifier(v string) *DescribeClusterDbRevisionsInput { 20064 s.ClusterIdentifier = &v 20065 return s 20066 } 20067 20068 // SetMarker sets the Marker field's value. 20069 func (s *DescribeClusterDbRevisionsInput) SetMarker(v string) *DescribeClusterDbRevisionsInput { 20070 s.Marker = &v 20071 return s 20072 } 20073 20074 // SetMaxRecords sets the MaxRecords field's value. 20075 func (s *DescribeClusterDbRevisionsInput) SetMaxRecords(v int64) *DescribeClusterDbRevisionsInput { 20076 s.MaxRecords = &v 20077 return s 20078 } 20079 20080 type DescribeClusterDbRevisionsOutput struct { 20081 _ struct{} `type:"structure"` 20082 20083 // A list of revisions. 20084 ClusterDbRevisions []*ClusterDbRevision `locationNameList:"ClusterDbRevision" type:"list"` 20085 20086 // A string representing the starting point for the next set of revisions. If 20087 // a value is returned in a response, you can retrieve the next set of revisions 20088 // by providing the value in the marker parameter and retrying the command. 20089 // If the marker field is empty, all revisions have already been returned. 20090 Marker *string `type:"string"` 20091 } 20092 20093 // String returns the string representation. 20094 // 20095 // API parameter values that are decorated as "sensitive" in the API will not 20096 // be included in the string output. The member name will be present, but the 20097 // value will be replaced with "sensitive". 20098 func (s DescribeClusterDbRevisionsOutput) String() string { 20099 return awsutil.Prettify(s) 20100 } 20101 20102 // GoString returns the string representation. 20103 // 20104 // API parameter values that are decorated as "sensitive" in the API will not 20105 // be included in the string output. The member name will be present, but the 20106 // value will be replaced with "sensitive". 20107 func (s DescribeClusterDbRevisionsOutput) GoString() string { 20108 return s.String() 20109 } 20110 20111 // SetClusterDbRevisions sets the ClusterDbRevisions field's value. 20112 func (s *DescribeClusterDbRevisionsOutput) SetClusterDbRevisions(v []*ClusterDbRevision) *DescribeClusterDbRevisionsOutput { 20113 s.ClusterDbRevisions = v 20114 return s 20115 } 20116 20117 // SetMarker sets the Marker field's value. 20118 func (s *DescribeClusterDbRevisionsOutput) SetMarker(v string) *DescribeClusterDbRevisionsOutput { 20119 s.Marker = &v 20120 return s 20121 } 20122 20123 type DescribeClusterParameterGroupsInput struct { 20124 _ struct{} `type:"structure"` 20125 20126 // An optional parameter that specifies the starting point to return a set of 20127 // response records. When the results of a DescribeClusterParameterGroups request 20128 // exceed the value specified in MaxRecords, Amazon Web Services returns a value 20129 // in the Marker field of the response. You can retrieve the next set of response 20130 // records by providing the returned marker value in the Marker parameter and 20131 // retrying the request. 20132 Marker *string `type:"string"` 20133 20134 // The maximum number of response records to return in each call. If the number 20135 // of remaining response records exceeds the specified MaxRecords value, a value 20136 // is returned in a marker field of the response. You can retrieve the next 20137 // set of records by retrying the command with the returned marker value. 20138 // 20139 // Default: 100 20140 // 20141 // Constraints: minimum 20, maximum 100. 20142 MaxRecords *int64 `type:"integer"` 20143 20144 // The name of a specific parameter group for which to return details. By default, 20145 // details about all parameter groups and the default parameter group are returned. 20146 ParameterGroupName *string `type:"string"` 20147 20148 // A tag key or keys for which you want to return all matching cluster parameter 20149 // groups that are associated with the specified key or keys. For example, suppose 20150 // that you have parameter groups that are tagged with keys called owner and 20151 // environment. If you specify both of these tag keys in the request, Amazon 20152 // Redshift returns a response with the parameter groups that have either or 20153 // both of these tag keys associated with them. 20154 TagKeys []*string `locationNameList:"TagKey" type:"list"` 20155 20156 // A tag value or values for which you want to return all matching cluster parameter 20157 // groups that are associated with the specified tag value or values. For example, 20158 // suppose that you have parameter groups that are tagged with values called 20159 // admin and test. If you specify both of these tag values in the request, Amazon 20160 // Redshift returns a response with the parameter groups that have either or 20161 // both of these tag values associated with them. 20162 TagValues []*string `locationNameList:"TagValue" type:"list"` 20163 } 20164 20165 // String returns the string representation. 20166 // 20167 // API parameter values that are decorated as "sensitive" in the API will not 20168 // be included in the string output. The member name will be present, but the 20169 // value will be replaced with "sensitive". 20170 func (s DescribeClusterParameterGroupsInput) String() string { 20171 return awsutil.Prettify(s) 20172 } 20173 20174 // GoString returns the string representation. 20175 // 20176 // API parameter values that are decorated as "sensitive" in the API will not 20177 // be included in the string output. The member name will be present, but the 20178 // value will be replaced with "sensitive". 20179 func (s DescribeClusterParameterGroupsInput) GoString() string { 20180 return s.String() 20181 } 20182 20183 // SetMarker sets the Marker field's value. 20184 func (s *DescribeClusterParameterGroupsInput) SetMarker(v string) *DescribeClusterParameterGroupsInput { 20185 s.Marker = &v 20186 return s 20187 } 20188 20189 // SetMaxRecords sets the MaxRecords field's value. 20190 func (s *DescribeClusterParameterGroupsInput) SetMaxRecords(v int64) *DescribeClusterParameterGroupsInput { 20191 s.MaxRecords = &v 20192 return s 20193 } 20194 20195 // SetParameterGroupName sets the ParameterGroupName field's value. 20196 func (s *DescribeClusterParameterGroupsInput) SetParameterGroupName(v string) *DescribeClusterParameterGroupsInput { 20197 s.ParameterGroupName = &v 20198 return s 20199 } 20200 20201 // SetTagKeys sets the TagKeys field's value. 20202 func (s *DescribeClusterParameterGroupsInput) SetTagKeys(v []*string) *DescribeClusterParameterGroupsInput { 20203 s.TagKeys = v 20204 return s 20205 } 20206 20207 // SetTagValues sets the TagValues field's value. 20208 func (s *DescribeClusterParameterGroupsInput) SetTagValues(v []*string) *DescribeClusterParameterGroupsInput { 20209 s.TagValues = v 20210 return s 20211 } 20212 20213 // Contains the output from the DescribeClusterParameterGroups action. 20214 type DescribeClusterParameterGroupsOutput struct { 20215 _ struct{} `type:"structure"` 20216 20217 // A value that indicates the starting point for the next set of response records 20218 // in a subsequent request. If a value is returned in a response, you can retrieve 20219 // the next set of records by providing this returned marker value in the Marker 20220 // parameter and retrying the command. If the Marker field is empty, all response 20221 // records have been retrieved for the request. 20222 Marker *string `type:"string"` 20223 20224 // A list of ClusterParameterGroup instances. Each instance describes one cluster 20225 // parameter group. 20226 ParameterGroups []*ClusterParameterGroup `locationNameList:"ClusterParameterGroup" type:"list"` 20227 } 20228 20229 // String returns the string representation. 20230 // 20231 // API parameter values that are decorated as "sensitive" in the API will not 20232 // be included in the string output. The member name will be present, but the 20233 // value will be replaced with "sensitive". 20234 func (s DescribeClusterParameterGroupsOutput) String() string { 20235 return awsutil.Prettify(s) 20236 } 20237 20238 // GoString returns the string representation. 20239 // 20240 // API parameter values that are decorated as "sensitive" in the API will not 20241 // be included in the string output. The member name will be present, but the 20242 // value will be replaced with "sensitive". 20243 func (s DescribeClusterParameterGroupsOutput) GoString() string { 20244 return s.String() 20245 } 20246 20247 // SetMarker sets the Marker field's value. 20248 func (s *DescribeClusterParameterGroupsOutput) SetMarker(v string) *DescribeClusterParameterGroupsOutput { 20249 s.Marker = &v 20250 return s 20251 } 20252 20253 // SetParameterGroups sets the ParameterGroups field's value. 20254 func (s *DescribeClusterParameterGroupsOutput) SetParameterGroups(v []*ClusterParameterGroup) *DescribeClusterParameterGroupsOutput { 20255 s.ParameterGroups = v 20256 return s 20257 } 20258 20259 type DescribeClusterParametersInput struct { 20260 _ struct{} `type:"structure"` 20261 20262 // An optional parameter that specifies the starting point to return a set of 20263 // response records. When the results of a DescribeClusterParameters request 20264 // exceed the value specified in MaxRecords, Amazon Web Services returns a value 20265 // in the Marker field of the response. You can retrieve the next set of response 20266 // records by providing the returned marker value in the Marker parameter and 20267 // retrying the request. 20268 Marker *string `type:"string"` 20269 20270 // The maximum number of response records to return in each call. If the number 20271 // of remaining response records exceeds the specified MaxRecords value, a value 20272 // is returned in a marker field of the response. You can retrieve the next 20273 // set of records by retrying the command with the returned marker value. 20274 // 20275 // Default: 100 20276 // 20277 // Constraints: minimum 20, maximum 100. 20278 MaxRecords *int64 `type:"integer"` 20279 20280 // The name of a cluster parameter group for which to return details. 20281 // 20282 // ParameterGroupName is a required field 20283 ParameterGroupName *string `type:"string" required:"true"` 20284 20285 // The parameter types to return. Specify user to show parameters that are different 20286 // form the default. Similarly, specify engine-default to show parameters that 20287 // are the same as the default parameter group. 20288 // 20289 // Default: All parameter types returned. 20290 // 20291 // Valid Values: user | engine-default 20292 Source *string `type:"string"` 20293 } 20294 20295 // String returns the string representation. 20296 // 20297 // API parameter values that are decorated as "sensitive" in the API will not 20298 // be included in the string output. The member name will be present, but the 20299 // value will be replaced with "sensitive". 20300 func (s DescribeClusterParametersInput) String() string { 20301 return awsutil.Prettify(s) 20302 } 20303 20304 // GoString returns the string representation. 20305 // 20306 // API parameter values that are decorated as "sensitive" in the API will not 20307 // be included in the string output. The member name will be present, but the 20308 // value will be replaced with "sensitive". 20309 func (s DescribeClusterParametersInput) GoString() string { 20310 return s.String() 20311 } 20312 20313 // Validate inspects the fields of the type to determine if they are valid. 20314 func (s *DescribeClusterParametersInput) Validate() error { 20315 invalidParams := request.ErrInvalidParams{Context: "DescribeClusterParametersInput"} 20316 if s.ParameterGroupName == nil { 20317 invalidParams.Add(request.NewErrParamRequired("ParameterGroupName")) 20318 } 20319 20320 if invalidParams.Len() > 0 { 20321 return invalidParams 20322 } 20323 return nil 20324 } 20325 20326 // SetMarker sets the Marker field's value. 20327 func (s *DescribeClusterParametersInput) SetMarker(v string) *DescribeClusterParametersInput { 20328 s.Marker = &v 20329 return s 20330 } 20331 20332 // SetMaxRecords sets the MaxRecords field's value. 20333 func (s *DescribeClusterParametersInput) SetMaxRecords(v int64) *DescribeClusterParametersInput { 20334 s.MaxRecords = &v 20335 return s 20336 } 20337 20338 // SetParameterGroupName sets the ParameterGroupName field's value. 20339 func (s *DescribeClusterParametersInput) SetParameterGroupName(v string) *DescribeClusterParametersInput { 20340 s.ParameterGroupName = &v 20341 return s 20342 } 20343 20344 // SetSource sets the Source field's value. 20345 func (s *DescribeClusterParametersInput) SetSource(v string) *DescribeClusterParametersInput { 20346 s.Source = &v 20347 return s 20348 } 20349 20350 // Contains the output from the DescribeClusterParameters action. 20351 type DescribeClusterParametersOutput struct { 20352 _ struct{} `type:"structure"` 20353 20354 // A value that indicates the starting point for the next set of response records 20355 // in a subsequent request. If a value is returned in a response, you can retrieve 20356 // the next set of records by providing this returned marker value in the Marker 20357 // parameter and retrying the command. If the Marker field is empty, all response 20358 // records have been retrieved for the request. 20359 Marker *string `type:"string"` 20360 20361 // A list of Parameter instances. Each instance lists the parameters of one 20362 // cluster parameter group. 20363 Parameters []*Parameter `locationNameList:"Parameter" type:"list"` 20364 } 20365 20366 // String returns the string representation. 20367 // 20368 // API parameter values that are decorated as "sensitive" in the API will not 20369 // be included in the string output. The member name will be present, but the 20370 // value will be replaced with "sensitive". 20371 func (s DescribeClusterParametersOutput) String() string { 20372 return awsutil.Prettify(s) 20373 } 20374 20375 // GoString returns the string representation. 20376 // 20377 // API parameter values that are decorated as "sensitive" in the API will not 20378 // be included in the string output. The member name will be present, but the 20379 // value will be replaced with "sensitive". 20380 func (s DescribeClusterParametersOutput) GoString() string { 20381 return s.String() 20382 } 20383 20384 // SetMarker sets the Marker field's value. 20385 func (s *DescribeClusterParametersOutput) SetMarker(v string) *DescribeClusterParametersOutput { 20386 s.Marker = &v 20387 return s 20388 } 20389 20390 // SetParameters sets the Parameters field's value. 20391 func (s *DescribeClusterParametersOutput) SetParameters(v []*Parameter) *DescribeClusterParametersOutput { 20392 s.Parameters = v 20393 return s 20394 } 20395 20396 type DescribeClusterSecurityGroupsInput struct { 20397 _ struct{} `type:"structure"` 20398 20399 // The name of a cluster security group for which you are requesting details. 20400 // You can specify either the Marker parameter or a ClusterSecurityGroupName 20401 // parameter, but not both. 20402 // 20403 // Example: securitygroup1 20404 ClusterSecurityGroupName *string `type:"string"` 20405 20406 // An optional parameter that specifies the starting point to return a set of 20407 // response records. When the results of a DescribeClusterSecurityGroups request 20408 // exceed the value specified in MaxRecords, Amazon Web Services returns a value 20409 // in the Marker field of the response. You can retrieve the next set of response 20410 // records by providing the returned marker value in the Marker parameter and 20411 // retrying the request. 20412 // 20413 // Constraints: You can specify either the ClusterSecurityGroupName parameter 20414 // or the Marker parameter, but not both. 20415 Marker *string `type:"string"` 20416 20417 // The maximum number of response records to return in each call. If the number 20418 // of remaining response records exceeds the specified MaxRecords value, a value 20419 // is returned in a marker field of the response. You can retrieve the next 20420 // set of records by retrying the command with the returned marker value. 20421 // 20422 // Default: 100 20423 // 20424 // Constraints: minimum 20, maximum 100. 20425 MaxRecords *int64 `type:"integer"` 20426 20427 // A tag key or keys for which you want to return all matching cluster security 20428 // groups that are associated with the specified key or keys. For example, suppose 20429 // that you have security groups that are tagged with keys called owner and 20430 // environment. If you specify both of these tag keys in the request, Amazon 20431 // Redshift returns a response with the security groups that have either or 20432 // both of these tag keys associated with them. 20433 TagKeys []*string `locationNameList:"TagKey" type:"list"` 20434 20435 // A tag value or values for which you want to return all matching cluster security 20436 // groups that are associated with the specified tag value or values. For example, 20437 // suppose that you have security groups that are tagged with values called 20438 // admin and test. If you specify both of these tag values in the request, Amazon 20439 // Redshift returns a response with the security groups that have either or 20440 // both of these tag values associated with them. 20441 TagValues []*string `locationNameList:"TagValue" type:"list"` 20442 } 20443 20444 // String returns the string representation. 20445 // 20446 // API parameter values that are decorated as "sensitive" in the API will not 20447 // be included in the string output. The member name will be present, but the 20448 // value will be replaced with "sensitive". 20449 func (s DescribeClusterSecurityGroupsInput) String() string { 20450 return awsutil.Prettify(s) 20451 } 20452 20453 // GoString returns the string representation. 20454 // 20455 // API parameter values that are decorated as "sensitive" in the API will not 20456 // be included in the string output. The member name will be present, but the 20457 // value will be replaced with "sensitive". 20458 func (s DescribeClusterSecurityGroupsInput) GoString() string { 20459 return s.String() 20460 } 20461 20462 // SetClusterSecurityGroupName sets the ClusterSecurityGroupName field's value. 20463 func (s *DescribeClusterSecurityGroupsInput) SetClusterSecurityGroupName(v string) *DescribeClusterSecurityGroupsInput { 20464 s.ClusterSecurityGroupName = &v 20465 return s 20466 } 20467 20468 // SetMarker sets the Marker field's value. 20469 func (s *DescribeClusterSecurityGroupsInput) SetMarker(v string) *DescribeClusterSecurityGroupsInput { 20470 s.Marker = &v 20471 return s 20472 } 20473 20474 // SetMaxRecords sets the MaxRecords field's value. 20475 func (s *DescribeClusterSecurityGroupsInput) SetMaxRecords(v int64) *DescribeClusterSecurityGroupsInput { 20476 s.MaxRecords = &v 20477 return s 20478 } 20479 20480 // SetTagKeys sets the TagKeys field's value. 20481 func (s *DescribeClusterSecurityGroupsInput) SetTagKeys(v []*string) *DescribeClusterSecurityGroupsInput { 20482 s.TagKeys = v 20483 return s 20484 } 20485 20486 // SetTagValues sets the TagValues field's value. 20487 func (s *DescribeClusterSecurityGroupsInput) SetTagValues(v []*string) *DescribeClusterSecurityGroupsInput { 20488 s.TagValues = v 20489 return s 20490 } 20491 20492 type DescribeClusterSecurityGroupsOutput struct { 20493 _ struct{} `type:"structure"` 20494 20495 // A list of ClusterSecurityGroup instances. 20496 ClusterSecurityGroups []*ClusterSecurityGroup `locationNameList:"ClusterSecurityGroup" type:"list"` 20497 20498 // A value that indicates the starting point for the next set of response records 20499 // in a subsequent request. If a value is returned in a response, you can retrieve 20500 // the next set of records by providing this returned marker value in the Marker 20501 // parameter and retrying the command. If the Marker field is empty, all response 20502 // records have been retrieved for the request. 20503 Marker *string `type:"string"` 20504 } 20505 20506 // String returns the string representation. 20507 // 20508 // API parameter values that are decorated as "sensitive" in the API will not 20509 // be included in the string output. The member name will be present, but the 20510 // value will be replaced with "sensitive". 20511 func (s DescribeClusterSecurityGroupsOutput) String() string { 20512 return awsutil.Prettify(s) 20513 } 20514 20515 // GoString returns the string representation. 20516 // 20517 // API parameter values that are decorated as "sensitive" in the API will not 20518 // be included in the string output. The member name will be present, but the 20519 // value will be replaced with "sensitive". 20520 func (s DescribeClusterSecurityGroupsOutput) GoString() string { 20521 return s.String() 20522 } 20523 20524 // SetClusterSecurityGroups sets the ClusterSecurityGroups field's value. 20525 func (s *DescribeClusterSecurityGroupsOutput) SetClusterSecurityGroups(v []*ClusterSecurityGroup) *DescribeClusterSecurityGroupsOutput { 20526 s.ClusterSecurityGroups = v 20527 return s 20528 } 20529 20530 // SetMarker sets the Marker field's value. 20531 func (s *DescribeClusterSecurityGroupsOutput) SetMarker(v string) *DescribeClusterSecurityGroupsOutput { 20532 s.Marker = &v 20533 return s 20534 } 20535 20536 type DescribeClusterSnapshotsInput struct { 20537 _ struct{} `type:"structure"` 20538 20539 // A value that indicates whether to return snapshots only for an existing cluster. 20540 // You can perform table-level restore only by using a snapshot of an existing 20541 // cluster, that is, a cluster that has not been deleted. Values for this parameter 20542 // work as follows: 20543 // 20544 // * If ClusterExists is set to true, ClusterIdentifier is required. 20545 // 20546 // * If ClusterExists is set to false and ClusterIdentifier isn't specified, 20547 // all snapshots associated with deleted clusters (orphaned snapshots) are 20548 // returned. 20549 // 20550 // * If ClusterExists is set to false and ClusterIdentifier is specified 20551 // for a deleted cluster, snapshots associated with that cluster are returned. 20552 // 20553 // * If ClusterExists is set to false and ClusterIdentifier is specified 20554 // for an existing cluster, no snapshots are returned. 20555 ClusterExists *bool `type:"boolean"` 20556 20557 // The identifier of the cluster which generated the requested snapshots. 20558 ClusterIdentifier *string `type:"string"` 20559 20560 // A time value that requests only snapshots created at or before the specified 20561 // time. The time value is specified in ISO 8601 format. For more information 20562 // about ISO 8601, go to the ISO8601 Wikipedia page. (http://en.wikipedia.org/wiki/ISO_8601) 20563 // 20564 // Example: 2012-07-16T18:00:00Z 20565 EndTime *time.Time `type:"timestamp"` 20566 20567 // An optional parameter that specifies the starting point to return a set of 20568 // response records. When the results of a DescribeClusterSnapshots request 20569 // exceed the value specified in MaxRecords, Amazon Web Services returns a value 20570 // in the Marker field of the response. You can retrieve the next set of response 20571 // records by providing the returned marker value in the Marker parameter and 20572 // retrying the request. 20573 Marker *string `type:"string"` 20574 20575 // The maximum number of response records to return in each call. If the number 20576 // of remaining response records exceeds the specified MaxRecords value, a value 20577 // is returned in a marker field of the response. You can retrieve the next 20578 // set of records by retrying the command with the returned marker value. 20579 // 20580 // Default: 100 20581 // 20582 // Constraints: minimum 20, maximum 100. 20583 MaxRecords *int64 `type:"integer"` 20584 20585 // The Amazon Web Services account used to create or copy the snapshot. Use 20586 // this field to filter the results to snapshots owned by a particular account. 20587 // To describe snapshots you own, either specify your Amazon Web Services account, 20588 // or do not specify the parameter. 20589 OwnerAccount *string `type:"string"` 20590 20591 // The snapshot identifier of the snapshot about which to return information. 20592 SnapshotIdentifier *string `type:"string"` 20593 20594 // The type of snapshots for which you are requesting information. By default, 20595 // snapshots of all types are returned. 20596 // 20597 // Valid Values: automated | manual 20598 SnapshotType *string `type:"string"` 20599 20600 SortingEntities []*SnapshotSortingEntity `locationNameList:"SnapshotSortingEntity" type:"list"` 20601 20602 // A value that requests only snapshots created at or after the specified time. 20603 // The time value is specified in ISO 8601 format. For more information about 20604 // ISO 8601, go to the ISO8601 Wikipedia page. (http://en.wikipedia.org/wiki/ISO_8601) 20605 // 20606 // Example: 2012-07-16T18:00:00Z 20607 StartTime *time.Time `type:"timestamp"` 20608 20609 // A tag key or keys for which you want to return all matching cluster snapshots 20610 // that are associated with the specified key or keys. For example, suppose 20611 // that you have snapshots that are tagged with keys called owner and environment. 20612 // If you specify both of these tag keys in the request, Amazon Redshift returns 20613 // a response with the snapshots that have either or both of these tag keys 20614 // associated with them. 20615 TagKeys []*string `locationNameList:"TagKey" type:"list"` 20616 20617 // A tag value or values for which you want to return all matching cluster snapshots 20618 // that are associated with the specified tag value or values. For example, 20619 // suppose that you have snapshots that are tagged with values called admin 20620 // and test. If you specify both of these tag values in the request, Amazon 20621 // Redshift returns a response with the snapshots that have either or both of 20622 // these tag values associated with them. 20623 TagValues []*string `locationNameList:"TagValue" type:"list"` 20624 } 20625 20626 // String returns the string representation. 20627 // 20628 // API parameter values that are decorated as "sensitive" in the API will not 20629 // be included in the string output. The member name will be present, but the 20630 // value will be replaced with "sensitive". 20631 func (s DescribeClusterSnapshotsInput) String() string { 20632 return awsutil.Prettify(s) 20633 } 20634 20635 // GoString returns the string representation. 20636 // 20637 // API parameter values that are decorated as "sensitive" in the API will not 20638 // be included in the string output. The member name will be present, but the 20639 // value will be replaced with "sensitive". 20640 func (s DescribeClusterSnapshotsInput) GoString() string { 20641 return s.String() 20642 } 20643 20644 // Validate inspects the fields of the type to determine if they are valid. 20645 func (s *DescribeClusterSnapshotsInput) Validate() error { 20646 invalidParams := request.ErrInvalidParams{Context: "DescribeClusterSnapshotsInput"} 20647 if s.SortingEntities != nil { 20648 for i, v := range s.SortingEntities { 20649 if v == nil { 20650 continue 20651 } 20652 if err := v.Validate(); err != nil { 20653 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "SortingEntities", i), err.(request.ErrInvalidParams)) 20654 } 20655 } 20656 } 20657 20658 if invalidParams.Len() > 0 { 20659 return invalidParams 20660 } 20661 return nil 20662 } 20663 20664 // SetClusterExists sets the ClusterExists field's value. 20665 func (s *DescribeClusterSnapshotsInput) SetClusterExists(v bool) *DescribeClusterSnapshotsInput { 20666 s.ClusterExists = &v 20667 return s 20668 } 20669 20670 // SetClusterIdentifier sets the ClusterIdentifier field's value. 20671 func (s *DescribeClusterSnapshotsInput) SetClusterIdentifier(v string) *DescribeClusterSnapshotsInput { 20672 s.ClusterIdentifier = &v 20673 return s 20674 } 20675 20676 // SetEndTime sets the EndTime field's value. 20677 func (s *DescribeClusterSnapshotsInput) SetEndTime(v time.Time) *DescribeClusterSnapshotsInput { 20678 s.EndTime = &v 20679 return s 20680 } 20681 20682 // SetMarker sets the Marker field's value. 20683 func (s *DescribeClusterSnapshotsInput) SetMarker(v string) *DescribeClusterSnapshotsInput { 20684 s.Marker = &v 20685 return s 20686 } 20687 20688 // SetMaxRecords sets the MaxRecords field's value. 20689 func (s *DescribeClusterSnapshotsInput) SetMaxRecords(v int64) *DescribeClusterSnapshotsInput { 20690 s.MaxRecords = &v 20691 return s 20692 } 20693 20694 // SetOwnerAccount sets the OwnerAccount field's value. 20695 func (s *DescribeClusterSnapshotsInput) SetOwnerAccount(v string) *DescribeClusterSnapshotsInput { 20696 s.OwnerAccount = &v 20697 return s 20698 } 20699 20700 // SetSnapshotIdentifier sets the SnapshotIdentifier field's value. 20701 func (s *DescribeClusterSnapshotsInput) SetSnapshotIdentifier(v string) *DescribeClusterSnapshotsInput { 20702 s.SnapshotIdentifier = &v 20703 return s 20704 } 20705 20706 // SetSnapshotType sets the SnapshotType field's value. 20707 func (s *DescribeClusterSnapshotsInput) SetSnapshotType(v string) *DescribeClusterSnapshotsInput { 20708 s.SnapshotType = &v 20709 return s 20710 } 20711 20712 // SetSortingEntities sets the SortingEntities field's value. 20713 func (s *DescribeClusterSnapshotsInput) SetSortingEntities(v []*SnapshotSortingEntity) *DescribeClusterSnapshotsInput { 20714 s.SortingEntities = v 20715 return s 20716 } 20717 20718 // SetStartTime sets the StartTime field's value. 20719 func (s *DescribeClusterSnapshotsInput) SetStartTime(v time.Time) *DescribeClusterSnapshotsInput { 20720 s.StartTime = &v 20721 return s 20722 } 20723 20724 // SetTagKeys sets the TagKeys field's value. 20725 func (s *DescribeClusterSnapshotsInput) SetTagKeys(v []*string) *DescribeClusterSnapshotsInput { 20726 s.TagKeys = v 20727 return s 20728 } 20729 20730 // SetTagValues sets the TagValues field's value. 20731 func (s *DescribeClusterSnapshotsInput) SetTagValues(v []*string) *DescribeClusterSnapshotsInput { 20732 s.TagValues = v 20733 return s 20734 } 20735 20736 // Contains the output from the DescribeClusterSnapshots action. 20737 type DescribeClusterSnapshotsOutput struct { 20738 _ struct{} `type:"structure"` 20739 20740 // A value that indicates the starting point for the next set of response records 20741 // in a subsequent request. If a value is returned in a response, you can retrieve 20742 // the next set of records by providing this returned marker value in the Marker 20743 // parameter and retrying the command. If the Marker field is empty, all response 20744 // records have been retrieved for the request. 20745 Marker *string `type:"string"` 20746 20747 // A list of Snapshot instances. 20748 Snapshots []*Snapshot `locationNameList:"Snapshot" type:"list"` 20749 } 20750 20751 // String returns the string representation. 20752 // 20753 // API parameter values that are decorated as "sensitive" in the API will not 20754 // be included in the string output. The member name will be present, but the 20755 // value will be replaced with "sensitive". 20756 func (s DescribeClusterSnapshotsOutput) String() string { 20757 return awsutil.Prettify(s) 20758 } 20759 20760 // GoString returns the string representation. 20761 // 20762 // API parameter values that are decorated as "sensitive" in the API will not 20763 // be included in the string output. The member name will be present, but the 20764 // value will be replaced with "sensitive". 20765 func (s DescribeClusterSnapshotsOutput) GoString() string { 20766 return s.String() 20767 } 20768 20769 // SetMarker sets the Marker field's value. 20770 func (s *DescribeClusterSnapshotsOutput) SetMarker(v string) *DescribeClusterSnapshotsOutput { 20771 s.Marker = &v 20772 return s 20773 } 20774 20775 // SetSnapshots sets the Snapshots field's value. 20776 func (s *DescribeClusterSnapshotsOutput) SetSnapshots(v []*Snapshot) *DescribeClusterSnapshotsOutput { 20777 s.Snapshots = v 20778 return s 20779 } 20780 20781 type DescribeClusterSubnetGroupsInput struct { 20782 _ struct{} `type:"structure"` 20783 20784 // The name of the cluster subnet group for which information is requested. 20785 ClusterSubnetGroupName *string `type:"string"` 20786 20787 // An optional parameter that specifies the starting point to return a set of 20788 // response records. When the results of a DescribeClusterSubnetGroups request 20789 // exceed the value specified in MaxRecords, Amazon Web Services returns a value 20790 // in the Marker field of the response. You can retrieve the next set of response 20791 // records by providing the returned marker value in the Marker parameter and 20792 // retrying the request. 20793 Marker *string `type:"string"` 20794 20795 // The maximum number of response records to return in each call. If the number 20796 // of remaining response records exceeds the specified MaxRecords value, a value 20797 // is returned in a marker field of the response. You can retrieve the next 20798 // set of records by retrying the command with the returned marker value. 20799 // 20800 // Default: 100 20801 // 20802 // Constraints: minimum 20, maximum 100. 20803 MaxRecords *int64 `type:"integer"` 20804 20805 // A tag key or keys for which you want to return all matching cluster subnet 20806 // groups that are associated with the specified key or keys. For example, suppose 20807 // that you have subnet groups that are tagged with keys called owner and environment. 20808 // If you specify both of these tag keys in the request, Amazon Redshift returns 20809 // a response with the subnet groups that have either or both of these tag keys 20810 // associated with them. 20811 TagKeys []*string `locationNameList:"TagKey" type:"list"` 20812 20813 // A tag value or values for which you want to return all matching cluster subnet 20814 // groups that are associated with the specified tag value or values. For example, 20815 // suppose that you have subnet groups that are tagged with values called admin 20816 // and test. If you specify both of these tag values in the request, Amazon 20817 // Redshift returns a response with the subnet groups that have either or both 20818 // of these tag values associated with them. 20819 TagValues []*string `locationNameList:"TagValue" type:"list"` 20820 } 20821 20822 // String returns the string representation. 20823 // 20824 // API parameter values that are decorated as "sensitive" in the API will not 20825 // be included in the string output. The member name will be present, but the 20826 // value will be replaced with "sensitive". 20827 func (s DescribeClusterSubnetGroupsInput) String() string { 20828 return awsutil.Prettify(s) 20829 } 20830 20831 // GoString returns the string representation. 20832 // 20833 // API parameter values that are decorated as "sensitive" in the API will not 20834 // be included in the string output. The member name will be present, but the 20835 // value will be replaced with "sensitive". 20836 func (s DescribeClusterSubnetGroupsInput) GoString() string { 20837 return s.String() 20838 } 20839 20840 // SetClusterSubnetGroupName sets the ClusterSubnetGroupName field's value. 20841 func (s *DescribeClusterSubnetGroupsInput) SetClusterSubnetGroupName(v string) *DescribeClusterSubnetGroupsInput { 20842 s.ClusterSubnetGroupName = &v 20843 return s 20844 } 20845 20846 // SetMarker sets the Marker field's value. 20847 func (s *DescribeClusterSubnetGroupsInput) SetMarker(v string) *DescribeClusterSubnetGroupsInput { 20848 s.Marker = &v 20849 return s 20850 } 20851 20852 // SetMaxRecords sets the MaxRecords field's value. 20853 func (s *DescribeClusterSubnetGroupsInput) SetMaxRecords(v int64) *DescribeClusterSubnetGroupsInput { 20854 s.MaxRecords = &v 20855 return s 20856 } 20857 20858 // SetTagKeys sets the TagKeys field's value. 20859 func (s *DescribeClusterSubnetGroupsInput) SetTagKeys(v []*string) *DescribeClusterSubnetGroupsInput { 20860 s.TagKeys = v 20861 return s 20862 } 20863 20864 // SetTagValues sets the TagValues field's value. 20865 func (s *DescribeClusterSubnetGroupsInput) SetTagValues(v []*string) *DescribeClusterSubnetGroupsInput { 20866 s.TagValues = v 20867 return s 20868 } 20869 20870 // Contains the output from the DescribeClusterSubnetGroups action. 20871 type DescribeClusterSubnetGroupsOutput struct { 20872 _ struct{} `type:"structure"` 20873 20874 // A list of ClusterSubnetGroup instances. 20875 ClusterSubnetGroups []*ClusterSubnetGroup `locationNameList:"ClusterSubnetGroup" type:"list"` 20876 20877 // A value that indicates the starting point for the next set of response records 20878 // in a subsequent request. If a value is returned in a response, you can retrieve 20879 // the next set of records by providing this returned marker value in the Marker 20880 // parameter and retrying the command. If the Marker field is empty, all response 20881 // records have been retrieved for the request. 20882 Marker *string `type:"string"` 20883 } 20884 20885 // String returns the string representation. 20886 // 20887 // API parameter values that are decorated as "sensitive" in the API will not 20888 // be included in the string output. The member name will be present, but the 20889 // value will be replaced with "sensitive". 20890 func (s DescribeClusterSubnetGroupsOutput) String() string { 20891 return awsutil.Prettify(s) 20892 } 20893 20894 // GoString returns the string representation. 20895 // 20896 // API parameter values that are decorated as "sensitive" in the API will not 20897 // be included in the string output. The member name will be present, but the 20898 // value will be replaced with "sensitive". 20899 func (s DescribeClusterSubnetGroupsOutput) GoString() string { 20900 return s.String() 20901 } 20902 20903 // SetClusterSubnetGroups sets the ClusterSubnetGroups field's value. 20904 func (s *DescribeClusterSubnetGroupsOutput) SetClusterSubnetGroups(v []*ClusterSubnetGroup) *DescribeClusterSubnetGroupsOutput { 20905 s.ClusterSubnetGroups = v 20906 return s 20907 } 20908 20909 // SetMarker sets the Marker field's value. 20910 func (s *DescribeClusterSubnetGroupsOutput) SetMarker(v string) *DescribeClusterSubnetGroupsOutput { 20911 s.Marker = &v 20912 return s 20913 } 20914 20915 type DescribeClusterTracksInput struct { 20916 _ struct{} `type:"structure"` 20917 20918 // The name of the maintenance track. 20919 MaintenanceTrackName *string `type:"string"` 20920 20921 // An optional parameter that specifies the starting point to return a set of 20922 // response records. When the results of a DescribeClusterTracks request exceed 20923 // the value specified in MaxRecords, Amazon Redshift returns a value in the 20924 // Marker field of the response. You can retrieve the next set of response records 20925 // by providing the returned marker value in the Marker parameter and retrying 20926 // the request. 20927 Marker *string `type:"string"` 20928 20929 // An integer value for the maximum number of maintenance tracks to return. 20930 MaxRecords *int64 `type:"integer"` 20931 } 20932 20933 // String returns the string representation. 20934 // 20935 // API parameter values that are decorated as "sensitive" in the API will not 20936 // be included in the string output. The member name will be present, but the 20937 // value will be replaced with "sensitive". 20938 func (s DescribeClusterTracksInput) String() string { 20939 return awsutil.Prettify(s) 20940 } 20941 20942 // GoString returns the string representation. 20943 // 20944 // API parameter values that are decorated as "sensitive" in the API will not 20945 // be included in the string output. The member name will be present, but the 20946 // value will be replaced with "sensitive". 20947 func (s DescribeClusterTracksInput) GoString() string { 20948 return s.String() 20949 } 20950 20951 // SetMaintenanceTrackName sets the MaintenanceTrackName field's value. 20952 func (s *DescribeClusterTracksInput) SetMaintenanceTrackName(v string) *DescribeClusterTracksInput { 20953 s.MaintenanceTrackName = &v 20954 return s 20955 } 20956 20957 // SetMarker sets the Marker field's value. 20958 func (s *DescribeClusterTracksInput) SetMarker(v string) *DescribeClusterTracksInput { 20959 s.Marker = &v 20960 return s 20961 } 20962 20963 // SetMaxRecords sets the MaxRecords field's value. 20964 func (s *DescribeClusterTracksInput) SetMaxRecords(v int64) *DescribeClusterTracksInput { 20965 s.MaxRecords = &v 20966 return s 20967 } 20968 20969 type DescribeClusterTracksOutput struct { 20970 _ struct{} `type:"structure"` 20971 20972 // A list of maintenance tracks output by the DescribeClusterTracks operation. 20973 MaintenanceTracks []*MaintenanceTrack `locationNameList:"MaintenanceTrack" type:"list"` 20974 20975 // The starting point to return a set of response tracklist records. You can 20976 // retrieve the next set of response records by providing the returned marker 20977 // value in the Marker parameter and retrying the request. 20978 Marker *string `type:"string"` 20979 } 20980 20981 // String returns the string representation. 20982 // 20983 // API parameter values that are decorated as "sensitive" in the API will not 20984 // be included in the string output. The member name will be present, but the 20985 // value will be replaced with "sensitive". 20986 func (s DescribeClusterTracksOutput) String() string { 20987 return awsutil.Prettify(s) 20988 } 20989 20990 // GoString returns the string representation. 20991 // 20992 // API parameter values that are decorated as "sensitive" in the API will not 20993 // be included in the string output. The member name will be present, but the 20994 // value will be replaced with "sensitive". 20995 func (s DescribeClusterTracksOutput) GoString() string { 20996 return s.String() 20997 } 20998 20999 // SetMaintenanceTracks sets the MaintenanceTracks field's value. 21000 func (s *DescribeClusterTracksOutput) SetMaintenanceTracks(v []*MaintenanceTrack) *DescribeClusterTracksOutput { 21001 s.MaintenanceTracks = v 21002 return s 21003 } 21004 21005 // SetMarker sets the Marker field's value. 21006 func (s *DescribeClusterTracksOutput) SetMarker(v string) *DescribeClusterTracksOutput { 21007 s.Marker = &v 21008 return s 21009 } 21010 21011 type DescribeClusterVersionsInput struct { 21012 _ struct{} `type:"structure"` 21013 21014 // The name of a specific cluster parameter group family to return details for. 21015 // 21016 // Constraints: 21017 // 21018 // * Must be 1 to 255 alphanumeric characters 21019 // 21020 // * First character must be a letter 21021 // 21022 // * Cannot end with a hyphen or contain two consecutive hyphens 21023 ClusterParameterGroupFamily *string `type:"string"` 21024 21025 // The specific cluster version to return. 21026 // 21027 // Example: 1.0 21028 ClusterVersion *string `type:"string"` 21029 21030 // An optional parameter that specifies the starting point to return a set of 21031 // response records. When the results of a DescribeClusterVersions request exceed 21032 // the value specified in MaxRecords, Amazon Web Services returns a value in 21033 // the Marker field of the response. You can retrieve the next set of response 21034 // records by providing the returned marker value in the Marker parameter and 21035 // retrying the request. 21036 Marker *string `type:"string"` 21037 21038 // The maximum number of response records to return in each call. If the number 21039 // of remaining response records exceeds the specified MaxRecords value, a value 21040 // is returned in a marker field of the response. You can retrieve the next 21041 // set of records by retrying the command with the returned marker value. 21042 // 21043 // Default: 100 21044 // 21045 // Constraints: minimum 20, maximum 100. 21046 MaxRecords *int64 `type:"integer"` 21047 } 21048 21049 // String returns the string representation. 21050 // 21051 // API parameter values that are decorated as "sensitive" in the API will not 21052 // be included in the string output. The member name will be present, but the 21053 // value will be replaced with "sensitive". 21054 func (s DescribeClusterVersionsInput) String() string { 21055 return awsutil.Prettify(s) 21056 } 21057 21058 // GoString returns the string representation. 21059 // 21060 // API parameter values that are decorated as "sensitive" in the API will not 21061 // be included in the string output. The member name will be present, but the 21062 // value will be replaced with "sensitive". 21063 func (s DescribeClusterVersionsInput) GoString() string { 21064 return s.String() 21065 } 21066 21067 // SetClusterParameterGroupFamily sets the ClusterParameterGroupFamily field's value. 21068 func (s *DescribeClusterVersionsInput) SetClusterParameterGroupFamily(v string) *DescribeClusterVersionsInput { 21069 s.ClusterParameterGroupFamily = &v 21070 return s 21071 } 21072 21073 // SetClusterVersion sets the ClusterVersion field's value. 21074 func (s *DescribeClusterVersionsInput) SetClusterVersion(v string) *DescribeClusterVersionsInput { 21075 s.ClusterVersion = &v 21076 return s 21077 } 21078 21079 // SetMarker sets the Marker field's value. 21080 func (s *DescribeClusterVersionsInput) SetMarker(v string) *DescribeClusterVersionsInput { 21081 s.Marker = &v 21082 return s 21083 } 21084 21085 // SetMaxRecords sets the MaxRecords field's value. 21086 func (s *DescribeClusterVersionsInput) SetMaxRecords(v int64) *DescribeClusterVersionsInput { 21087 s.MaxRecords = &v 21088 return s 21089 } 21090 21091 // Contains the output from the DescribeClusterVersions action. 21092 type DescribeClusterVersionsOutput struct { 21093 _ struct{} `type:"structure"` 21094 21095 // A list of Version elements. 21096 ClusterVersions []*ClusterVersion `locationNameList:"ClusterVersion" type:"list"` 21097 21098 // A value that indicates the starting point for the next set of response records 21099 // in a subsequent request. If a value is returned in a response, you can retrieve 21100 // the next set of records by providing this returned marker value in the Marker 21101 // parameter and retrying the command. If the Marker field is empty, all response 21102 // records have been retrieved for the request. 21103 Marker *string `type:"string"` 21104 } 21105 21106 // String returns the string representation. 21107 // 21108 // API parameter values that are decorated as "sensitive" in the API will not 21109 // be included in the string output. The member name will be present, but the 21110 // value will be replaced with "sensitive". 21111 func (s DescribeClusterVersionsOutput) String() string { 21112 return awsutil.Prettify(s) 21113 } 21114 21115 // GoString returns the string representation. 21116 // 21117 // API parameter values that are decorated as "sensitive" in the API will not 21118 // be included in the string output. The member name will be present, but the 21119 // value will be replaced with "sensitive". 21120 func (s DescribeClusterVersionsOutput) GoString() string { 21121 return s.String() 21122 } 21123 21124 // SetClusterVersions sets the ClusterVersions field's value. 21125 func (s *DescribeClusterVersionsOutput) SetClusterVersions(v []*ClusterVersion) *DescribeClusterVersionsOutput { 21126 s.ClusterVersions = v 21127 return s 21128 } 21129 21130 // SetMarker sets the Marker field's value. 21131 func (s *DescribeClusterVersionsOutput) SetMarker(v string) *DescribeClusterVersionsOutput { 21132 s.Marker = &v 21133 return s 21134 } 21135 21136 type DescribeClustersInput struct { 21137 _ struct{} `type:"structure"` 21138 21139 // The unique identifier of a cluster whose properties you are requesting. This 21140 // parameter is case sensitive. 21141 // 21142 // The default is that all clusters defined for an account are returned. 21143 ClusterIdentifier *string `type:"string"` 21144 21145 // An optional parameter that specifies the starting point to return a set of 21146 // response records. When the results of a DescribeClusters request exceed the 21147 // value specified in MaxRecords, Amazon Web Services returns a value in the 21148 // Marker field of the response. You can retrieve the next set of response records 21149 // by providing the returned marker value in the Marker parameter and retrying 21150 // the request. 21151 // 21152 // Constraints: You can specify either the ClusterIdentifier parameter or the 21153 // Marker parameter, but not both. 21154 Marker *string `type:"string"` 21155 21156 // The maximum number of response records to return in each call. If the number 21157 // of remaining response records exceeds the specified MaxRecords value, a value 21158 // is returned in a marker field of the response. You can retrieve the next 21159 // set of records by retrying the command with the returned marker value. 21160 // 21161 // Default: 100 21162 // 21163 // Constraints: minimum 20, maximum 100. 21164 MaxRecords *int64 `type:"integer"` 21165 21166 // A tag key or keys for which you want to return all matching clusters that 21167 // are associated with the specified key or keys. For example, suppose that 21168 // you have clusters that are tagged with keys called owner and environment. 21169 // If you specify both of these tag keys in the request, Amazon Redshift returns 21170 // a response with the clusters that have either or both of these tag keys associated 21171 // with them. 21172 TagKeys []*string `locationNameList:"TagKey" type:"list"` 21173 21174 // A tag value or values for which you want to return all matching clusters 21175 // that are associated with the specified tag value or values. For example, 21176 // suppose that you have clusters that are tagged with values called admin and 21177 // test. If you specify both of these tag values in the request, Amazon Redshift 21178 // returns a response with the clusters that have either or both of these tag 21179 // values associated with them. 21180 TagValues []*string `locationNameList:"TagValue" type:"list"` 21181 } 21182 21183 // String returns the string representation. 21184 // 21185 // API parameter values that are decorated as "sensitive" in the API will not 21186 // be included in the string output. The member name will be present, but the 21187 // value will be replaced with "sensitive". 21188 func (s DescribeClustersInput) String() string { 21189 return awsutil.Prettify(s) 21190 } 21191 21192 // GoString returns the string representation. 21193 // 21194 // API parameter values that are decorated as "sensitive" in the API will not 21195 // be included in the string output. The member name will be present, but the 21196 // value will be replaced with "sensitive". 21197 func (s DescribeClustersInput) GoString() string { 21198 return s.String() 21199 } 21200 21201 // SetClusterIdentifier sets the ClusterIdentifier field's value. 21202 func (s *DescribeClustersInput) SetClusterIdentifier(v string) *DescribeClustersInput { 21203 s.ClusterIdentifier = &v 21204 return s 21205 } 21206 21207 // SetMarker sets the Marker field's value. 21208 func (s *DescribeClustersInput) SetMarker(v string) *DescribeClustersInput { 21209 s.Marker = &v 21210 return s 21211 } 21212 21213 // SetMaxRecords sets the MaxRecords field's value. 21214 func (s *DescribeClustersInput) SetMaxRecords(v int64) *DescribeClustersInput { 21215 s.MaxRecords = &v 21216 return s 21217 } 21218 21219 // SetTagKeys sets the TagKeys field's value. 21220 func (s *DescribeClustersInput) SetTagKeys(v []*string) *DescribeClustersInput { 21221 s.TagKeys = v 21222 return s 21223 } 21224 21225 // SetTagValues sets the TagValues field's value. 21226 func (s *DescribeClustersInput) SetTagValues(v []*string) *DescribeClustersInput { 21227 s.TagValues = v 21228 return s 21229 } 21230 21231 // Contains the output from the DescribeClusters action. 21232 type DescribeClustersOutput struct { 21233 _ struct{} `type:"structure"` 21234 21235 // A list of Cluster objects, where each object describes one cluster. 21236 Clusters []*Cluster `locationNameList:"Cluster" type:"list"` 21237 21238 // A value that indicates the starting point for the next set of response records 21239 // in a subsequent request. If a value is returned in a response, you can retrieve 21240 // the next set of records by providing this returned marker value in the Marker 21241 // parameter and retrying the command. If the Marker field is empty, all response 21242 // records have been retrieved for the request. 21243 Marker *string `type:"string"` 21244 } 21245 21246 // String returns the string representation. 21247 // 21248 // API parameter values that are decorated as "sensitive" in the API will not 21249 // be included in the string output. The member name will be present, but the 21250 // value will be replaced with "sensitive". 21251 func (s DescribeClustersOutput) String() string { 21252 return awsutil.Prettify(s) 21253 } 21254 21255 // GoString returns the string representation. 21256 // 21257 // API parameter values that are decorated as "sensitive" in the API will not 21258 // be included in the string output. The member name will be present, but the 21259 // value will be replaced with "sensitive". 21260 func (s DescribeClustersOutput) GoString() string { 21261 return s.String() 21262 } 21263 21264 // SetClusters sets the Clusters field's value. 21265 func (s *DescribeClustersOutput) SetClusters(v []*Cluster) *DescribeClustersOutput { 21266 s.Clusters = v 21267 return s 21268 } 21269 21270 // SetMarker sets the Marker field's value. 21271 func (s *DescribeClustersOutput) SetMarker(v string) *DescribeClustersOutput { 21272 s.Marker = &v 21273 return s 21274 } 21275 21276 type DescribeDataSharesForConsumerInput struct { 21277 _ struct{} `type:"structure"` 21278 21279 // The Amazon Resource Name (ARN) of the consumer that returns in the list of 21280 // datashares. 21281 ConsumerArn *string `type:"string"` 21282 21283 // An optional parameter that specifies the starting point to return a set of 21284 // response records. When the results of a DescribeDataSharesForConsumer request 21285 // exceed the value specified in MaxRecords, AWS returns a value in the Marker 21286 // field of the response. You can retrieve the next set of response records 21287 // by providing the returned marker value in the Marker parameter and retrying 21288 // the request. 21289 Marker *string `type:"string"` 21290 21291 // The maximum number of response records to return in each call. If the number 21292 // of remaining response records exceeds the specified MaxRecords value, a value 21293 // is returned in a marker field of the response. You can retrieve the next 21294 // set of records by retrying the command with the returned marker value. 21295 MaxRecords *int64 `type:"integer"` 21296 21297 // An identifier giving the status of a datashare in the consumer cluster. If 21298 // this field is specified, Amazon Redshift returns the list of datashares that 21299 // have the specified status. 21300 Status *string `type:"string" enum:"DataShareStatusForConsumer"` 21301 } 21302 21303 // String returns the string representation. 21304 // 21305 // API parameter values that are decorated as "sensitive" in the API will not 21306 // be included in the string output. The member name will be present, but the 21307 // value will be replaced with "sensitive". 21308 func (s DescribeDataSharesForConsumerInput) String() string { 21309 return awsutil.Prettify(s) 21310 } 21311 21312 // GoString returns the string representation. 21313 // 21314 // API parameter values that are decorated as "sensitive" in the API will not 21315 // be included in the string output. The member name will be present, but the 21316 // value will be replaced with "sensitive". 21317 func (s DescribeDataSharesForConsumerInput) GoString() string { 21318 return s.String() 21319 } 21320 21321 // SetConsumerArn sets the ConsumerArn field's value. 21322 func (s *DescribeDataSharesForConsumerInput) SetConsumerArn(v string) *DescribeDataSharesForConsumerInput { 21323 s.ConsumerArn = &v 21324 return s 21325 } 21326 21327 // SetMarker sets the Marker field's value. 21328 func (s *DescribeDataSharesForConsumerInput) SetMarker(v string) *DescribeDataSharesForConsumerInput { 21329 s.Marker = &v 21330 return s 21331 } 21332 21333 // SetMaxRecords sets the MaxRecords field's value. 21334 func (s *DescribeDataSharesForConsumerInput) SetMaxRecords(v int64) *DescribeDataSharesForConsumerInput { 21335 s.MaxRecords = &v 21336 return s 21337 } 21338 21339 // SetStatus sets the Status field's value. 21340 func (s *DescribeDataSharesForConsumerInput) SetStatus(v string) *DescribeDataSharesForConsumerInput { 21341 s.Status = &v 21342 return s 21343 } 21344 21345 type DescribeDataSharesForConsumerOutput struct { 21346 _ struct{} `type:"structure"` 21347 21348 // Shows the results of datashares available for consumers. 21349 DataShares []*DataShare `type:"list"` 21350 21351 // An optional parameter that specifies the starting point to return a set of 21352 // response records. When the results of a DescribeDataSharesForConsumer request 21353 // exceed the value specified in MaxRecords, AWS returns a value in the Marker 21354 // field of the response. You can retrieve the next set of response records 21355 // by providing the returned marker value in the Marker parameter and retrying 21356 // the request. 21357 Marker *string `type:"string"` 21358 } 21359 21360 // String returns the string representation. 21361 // 21362 // API parameter values that are decorated as "sensitive" in the API will not 21363 // be included in the string output. The member name will be present, but the 21364 // value will be replaced with "sensitive". 21365 func (s DescribeDataSharesForConsumerOutput) String() string { 21366 return awsutil.Prettify(s) 21367 } 21368 21369 // GoString returns the string representation. 21370 // 21371 // API parameter values that are decorated as "sensitive" in the API will not 21372 // be included in the string output. The member name will be present, but the 21373 // value will be replaced with "sensitive". 21374 func (s DescribeDataSharesForConsumerOutput) GoString() string { 21375 return s.String() 21376 } 21377 21378 // SetDataShares sets the DataShares field's value. 21379 func (s *DescribeDataSharesForConsumerOutput) SetDataShares(v []*DataShare) *DescribeDataSharesForConsumerOutput { 21380 s.DataShares = v 21381 return s 21382 } 21383 21384 // SetMarker sets the Marker field's value. 21385 func (s *DescribeDataSharesForConsumerOutput) SetMarker(v string) *DescribeDataSharesForConsumerOutput { 21386 s.Marker = &v 21387 return s 21388 } 21389 21390 type DescribeDataSharesForProducerInput struct { 21391 _ struct{} `type:"structure"` 21392 21393 // An optional parameter that specifies the starting point to return a set of 21394 // response records. When the results of a DescribeDataSharesForProducer request 21395 // exceed the value specified in MaxRecords, AWS returns a value in the Marker 21396 // field of the response. You can retrieve the next set of response records 21397 // by providing the returned marker value in the Marker parameter and retrying 21398 // the request. 21399 Marker *string `type:"string"` 21400 21401 // The maximum number of response records to return in each call. If the number 21402 // of remaining response records exceeds the specified MaxRecords value, a value 21403 // is returned in a marker field of the response. You can retrieve the next 21404 // set of records by retrying the command with the returned marker value. 21405 MaxRecords *int64 `type:"integer"` 21406 21407 // The Amazon Resource Name (ARN) of the producer that returns in the list of 21408 // datashares. 21409 ProducerArn *string `type:"string"` 21410 21411 // An identifier giving the status of a datashare in the producer. If this field 21412 // is specified, Amazon Redshift returns the list of datashares that have the 21413 // specified status. 21414 Status *string `type:"string" enum:"DataShareStatusForProducer"` 21415 } 21416 21417 // String returns the string representation. 21418 // 21419 // API parameter values that are decorated as "sensitive" in the API will not 21420 // be included in the string output. The member name will be present, but the 21421 // value will be replaced with "sensitive". 21422 func (s DescribeDataSharesForProducerInput) String() string { 21423 return awsutil.Prettify(s) 21424 } 21425 21426 // GoString returns the string representation. 21427 // 21428 // API parameter values that are decorated as "sensitive" in the API will not 21429 // be included in the string output. The member name will be present, but the 21430 // value will be replaced with "sensitive". 21431 func (s DescribeDataSharesForProducerInput) GoString() string { 21432 return s.String() 21433 } 21434 21435 // SetMarker sets the Marker field's value. 21436 func (s *DescribeDataSharesForProducerInput) SetMarker(v string) *DescribeDataSharesForProducerInput { 21437 s.Marker = &v 21438 return s 21439 } 21440 21441 // SetMaxRecords sets the MaxRecords field's value. 21442 func (s *DescribeDataSharesForProducerInput) SetMaxRecords(v int64) *DescribeDataSharesForProducerInput { 21443 s.MaxRecords = &v 21444 return s 21445 } 21446 21447 // SetProducerArn sets the ProducerArn field's value. 21448 func (s *DescribeDataSharesForProducerInput) SetProducerArn(v string) *DescribeDataSharesForProducerInput { 21449 s.ProducerArn = &v 21450 return s 21451 } 21452 21453 // SetStatus sets the Status field's value. 21454 func (s *DescribeDataSharesForProducerInput) SetStatus(v string) *DescribeDataSharesForProducerInput { 21455 s.Status = &v 21456 return s 21457 } 21458 21459 type DescribeDataSharesForProducerOutput struct { 21460 _ struct{} `type:"structure"` 21461 21462 // Shows the results of datashares available for producers. 21463 DataShares []*DataShare `type:"list"` 21464 21465 // An optional parameter that specifies the starting point to return a set of 21466 // response records. When the results of a DescribeDataSharesForProducer request 21467 // exceed the value specified in MaxRecords, AWS returns a value in the Marker 21468 // field of the response. You can retrieve the next set of response records 21469 // by providing the returned marker value in the Marker parameter and retrying 21470 // the request. 21471 Marker *string `type:"string"` 21472 } 21473 21474 // String returns the string representation. 21475 // 21476 // API parameter values that are decorated as "sensitive" in the API will not 21477 // be included in the string output. The member name will be present, but the 21478 // value will be replaced with "sensitive". 21479 func (s DescribeDataSharesForProducerOutput) String() string { 21480 return awsutil.Prettify(s) 21481 } 21482 21483 // GoString returns the string representation. 21484 // 21485 // API parameter values that are decorated as "sensitive" in the API will not 21486 // be included in the string output. The member name will be present, but the 21487 // value will be replaced with "sensitive". 21488 func (s DescribeDataSharesForProducerOutput) GoString() string { 21489 return s.String() 21490 } 21491 21492 // SetDataShares sets the DataShares field's value. 21493 func (s *DescribeDataSharesForProducerOutput) SetDataShares(v []*DataShare) *DescribeDataSharesForProducerOutput { 21494 s.DataShares = v 21495 return s 21496 } 21497 21498 // SetMarker sets the Marker field's value. 21499 func (s *DescribeDataSharesForProducerOutput) SetMarker(v string) *DescribeDataSharesForProducerOutput { 21500 s.Marker = &v 21501 return s 21502 } 21503 21504 type DescribeDataSharesInput struct { 21505 _ struct{} `type:"structure"` 21506 21507 // The identifier of the datashare to describe details of. 21508 DataShareArn *string `type:"string"` 21509 21510 // An optional parameter that specifies the starting point to return a set of 21511 // response records. When the results of a DescribeDataShares request exceed 21512 // the value specified in MaxRecords, AWS returns a value in the Marker field 21513 // of the response. You can retrieve the next set of response records by providing 21514 // the returned marker value in the Marker parameter and retrying the request. 21515 Marker *string `type:"string"` 21516 21517 // The maximum number of response records to return in each call. If the number 21518 // of remaining response records exceeds the specified MaxRecords value, a value 21519 // is returned in a marker field of the response. You can retrieve the next 21520 // set of records by retrying the command with the returned marker value. 21521 MaxRecords *int64 `type:"integer"` 21522 } 21523 21524 // String returns the string representation. 21525 // 21526 // API parameter values that are decorated as "sensitive" in the API will not 21527 // be included in the string output. The member name will be present, but the 21528 // value will be replaced with "sensitive". 21529 func (s DescribeDataSharesInput) String() string { 21530 return awsutil.Prettify(s) 21531 } 21532 21533 // GoString returns the string representation. 21534 // 21535 // API parameter values that are decorated as "sensitive" in the API will not 21536 // be included in the string output. The member name will be present, but the 21537 // value will be replaced with "sensitive". 21538 func (s DescribeDataSharesInput) GoString() string { 21539 return s.String() 21540 } 21541 21542 // SetDataShareArn sets the DataShareArn field's value. 21543 func (s *DescribeDataSharesInput) SetDataShareArn(v string) *DescribeDataSharesInput { 21544 s.DataShareArn = &v 21545 return s 21546 } 21547 21548 // SetMarker sets the Marker field's value. 21549 func (s *DescribeDataSharesInput) SetMarker(v string) *DescribeDataSharesInput { 21550 s.Marker = &v 21551 return s 21552 } 21553 21554 // SetMaxRecords sets the MaxRecords field's value. 21555 func (s *DescribeDataSharesInput) SetMaxRecords(v int64) *DescribeDataSharesInput { 21556 s.MaxRecords = &v 21557 return s 21558 } 21559 21560 type DescribeDataSharesOutput struct { 21561 _ struct{} `type:"structure"` 21562 21563 // The results returned from describing datashares. 21564 DataShares []*DataShare `type:"list"` 21565 21566 // An optional parameter that specifies the starting point to return a set of 21567 // response records. When the results of a DescribeDataShares request exceed 21568 // the value specified in MaxRecords, AWS returns a value in the Marker field 21569 // of the response. You can retrieve the next set of response records by providing 21570 // the returned marker value in the Marker parameter and retrying the request. 21571 Marker *string `type:"string"` 21572 } 21573 21574 // String returns the string representation. 21575 // 21576 // API parameter values that are decorated as "sensitive" in the API will not 21577 // be included in the string output. The member name will be present, but the 21578 // value will be replaced with "sensitive". 21579 func (s DescribeDataSharesOutput) String() string { 21580 return awsutil.Prettify(s) 21581 } 21582 21583 // GoString returns the string representation. 21584 // 21585 // API parameter values that are decorated as "sensitive" in the API will not 21586 // be included in the string output. The member name will be present, but the 21587 // value will be replaced with "sensitive". 21588 func (s DescribeDataSharesOutput) GoString() string { 21589 return s.String() 21590 } 21591 21592 // SetDataShares sets the DataShares field's value. 21593 func (s *DescribeDataSharesOutput) SetDataShares(v []*DataShare) *DescribeDataSharesOutput { 21594 s.DataShares = v 21595 return s 21596 } 21597 21598 // SetMarker sets the Marker field's value. 21599 func (s *DescribeDataSharesOutput) SetMarker(v string) *DescribeDataSharesOutput { 21600 s.Marker = &v 21601 return s 21602 } 21603 21604 type DescribeDefaultClusterParametersInput struct { 21605 _ struct{} `type:"structure"` 21606 21607 // An optional parameter that specifies the starting point to return a set of 21608 // response records. When the results of a DescribeDefaultClusterParameters 21609 // request exceed the value specified in MaxRecords, Amazon Web Services returns 21610 // a value in the Marker field of the response. You can retrieve the next set 21611 // of response records by providing the returned marker value in the Marker 21612 // parameter and retrying the request. 21613 Marker *string `type:"string"` 21614 21615 // The maximum number of response records to return in each call. If the number 21616 // of remaining response records exceeds the specified MaxRecords value, a value 21617 // is returned in a marker field of the response. You can retrieve the next 21618 // set of records by retrying the command with the returned marker value. 21619 // 21620 // Default: 100 21621 // 21622 // Constraints: minimum 20, maximum 100. 21623 MaxRecords *int64 `type:"integer"` 21624 21625 // The name of the cluster parameter group family. 21626 // 21627 // ParameterGroupFamily is a required field 21628 ParameterGroupFamily *string `type:"string" required:"true"` 21629 } 21630 21631 // String returns the string representation. 21632 // 21633 // API parameter values that are decorated as "sensitive" in the API will not 21634 // be included in the string output. The member name will be present, but the 21635 // value will be replaced with "sensitive". 21636 func (s DescribeDefaultClusterParametersInput) String() string { 21637 return awsutil.Prettify(s) 21638 } 21639 21640 // GoString returns the string representation. 21641 // 21642 // API parameter values that are decorated as "sensitive" in the API will not 21643 // be included in the string output. The member name will be present, but the 21644 // value will be replaced with "sensitive". 21645 func (s DescribeDefaultClusterParametersInput) GoString() string { 21646 return s.String() 21647 } 21648 21649 // Validate inspects the fields of the type to determine if they are valid. 21650 func (s *DescribeDefaultClusterParametersInput) Validate() error { 21651 invalidParams := request.ErrInvalidParams{Context: "DescribeDefaultClusterParametersInput"} 21652 if s.ParameterGroupFamily == nil { 21653 invalidParams.Add(request.NewErrParamRequired("ParameterGroupFamily")) 21654 } 21655 21656 if invalidParams.Len() > 0 { 21657 return invalidParams 21658 } 21659 return nil 21660 } 21661 21662 // SetMarker sets the Marker field's value. 21663 func (s *DescribeDefaultClusterParametersInput) SetMarker(v string) *DescribeDefaultClusterParametersInput { 21664 s.Marker = &v 21665 return s 21666 } 21667 21668 // SetMaxRecords sets the MaxRecords field's value. 21669 func (s *DescribeDefaultClusterParametersInput) SetMaxRecords(v int64) *DescribeDefaultClusterParametersInput { 21670 s.MaxRecords = &v 21671 return s 21672 } 21673 21674 // SetParameterGroupFamily sets the ParameterGroupFamily field's value. 21675 func (s *DescribeDefaultClusterParametersInput) SetParameterGroupFamily(v string) *DescribeDefaultClusterParametersInput { 21676 s.ParameterGroupFamily = &v 21677 return s 21678 } 21679 21680 type DescribeDefaultClusterParametersOutput struct { 21681 _ struct{} `type:"structure"` 21682 21683 // Describes the default cluster parameters for a parameter group family. 21684 DefaultClusterParameters *DefaultClusterParameters `type:"structure"` 21685 } 21686 21687 // String returns the string representation. 21688 // 21689 // API parameter values that are decorated as "sensitive" in the API will not 21690 // be included in the string output. The member name will be present, but the 21691 // value will be replaced with "sensitive". 21692 func (s DescribeDefaultClusterParametersOutput) String() string { 21693 return awsutil.Prettify(s) 21694 } 21695 21696 // GoString returns the string representation. 21697 // 21698 // API parameter values that are decorated as "sensitive" in the API will not 21699 // be included in the string output. The member name will be present, but the 21700 // value will be replaced with "sensitive". 21701 func (s DescribeDefaultClusterParametersOutput) GoString() string { 21702 return s.String() 21703 } 21704 21705 // SetDefaultClusterParameters sets the DefaultClusterParameters field's value. 21706 func (s *DescribeDefaultClusterParametersOutput) SetDefaultClusterParameters(v *DefaultClusterParameters) *DescribeDefaultClusterParametersOutput { 21707 s.DefaultClusterParameters = v 21708 return s 21709 } 21710 21711 type DescribeEndpointAccessInput struct { 21712 _ struct{} `type:"structure"` 21713 21714 // The cluster identifier associated with the described endpoint. 21715 ClusterIdentifier *string `type:"string"` 21716 21717 // The name of the endpoint to be described. 21718 EndpointName *string `type:"string"` 21719 21720 // An optional pagination token provided by a previous DescribeEndpointAccess 21721 // request. If this parameter is specified, the response includes only records 21722 // beyond the marker, up to the value specified by the MaxRecords parameter. 21723 Marker *string `type:"string"` 21724 21725 // The maximum number of records to include in the response. If more records 21726 // exist than the specified MaxRecords value, a pagination token called a Marker 21727 // is included in the response so that the remaining results can be retrieved. 21728 MaxRecords *int64 `type:"integer"` 21729 21730 // The Amazon Web Services account ID of the owner of the cluster. 21731 ResourceOwner *string `type:"string"` 21732 21733 // The virtual private cloud (VPC) identifier with access to the cluster. 21734 VpcId *string `type:"string"` 21735 } 21736 21737 // String returns the string representation. 21738 // 21739 // API parameter values that are decorated as "sensitive" in the API will not 21740 // be included in the string output. The member name will be present, but the 21741 // value will be replaced with "sensitive". 21742 func (s DescribeEndpointAccessInput) String() string { 21743 return awsutil.Prettify(s) 21744 } 21745 21746 // GoString returns the string representation. 21747 // 21748 // API parameter values that are decorated as "sensitive" in the API will not 21749 // be included in the string output. The member name will be present, but the 21750 // value will be replaced with "sensitive". 21751 func (s DescribeEndpointAccessInput) GoString() string { 21752 return s.String() 21753 } 21754 21755 // SetClusterIdentifier sets the ClusterIdentifier field's value. 21756 func (s *DescribeEndpointAccessInput) SetClusterIdentifier(v string) *DescribeEndpointAccessInput { 21757 s.ClusterIdentifier = &v 21758 return s 21759 } 21760 21761 // SetEndpointName sets the EndpointName field's value. 21762 func (s *DescribeEndpointAccessInput) SetEndpointName(v string) *DescribeEndpointAccessInput { 21763 s.EndpointName = &v 21764 return s 21765 } 21766 21767 // SetMarker sets the Marker field's value. 21768 func (s *DescribeEndpointAccessInput) SetMarker(v string) *DescribeEndpointAccessInput { 21769 s.Marker = &v 21770 return s 21771 } 21772 21773 // SetMaxRecords sets the MaxRecords field's value. 21774 func (s *DescribeEndpointAccessInput) SetMaxRecords(v int64) *DescribeEndpointAccessInput { 21775 s.MaxRecords = &v 21776 return s 21777 } 21778 21779 // SetResourceOwner sets the ResourceOwner field's value. 21780 func (s *DescribeEndpointAccessInput) SetResourceOwner(v string) *DescribeEndpointAccessInput { 21781 s.ResourceOwner = &v 21782 return s 21783 } 21784 21785 // SetVpcId sets the VpcId field's value. 21786 func (s *DescribeEndpointAccessInput) SetVpcId(v string) *DescribeEndpointAccessInput { 21787 s.VpcId = &v 21788 return s 21789 } 21790 21791 type DescribeEndpointAccessOutput struct { 21792 _ struct{} `type:"structure"` 21793 21794 // The list of endpoints with access to the cluster. 21795 EndpointAccessList []*EndpointAccess `type:"list"` 21796 21797 // An optional pagination token provided by a previous DescribeEndpointAccess 21798 // request. If this parameter is specified, the response includes only records 21799 // beyond the marker, up to the value specified by the MaxRecords parameter. 21800 Marker *string `type:"string"` 21801 } 21802 21803 // String returns the string representation. 21804 // 21805 // API parameter values that are decorated as "sensitive" in the API will not 21806 // be included in the string output. The member name will be present, but the 21807 // value will be replaced with "sensitive". 21808 func (s DescribeEndpointAccessOutput) String() string { 21809 return awsutil.Prettify(s) 21810 } 21811 21812 // GoString returns the string representation. 21813 // 21814 // API parameter values that are decorated as "sensitive" in the API will not 21815 // be included in the string output. The member name will be present, but the 21816 // value will be replaced with "sensitive". 21817 func (s DescribeEndpointAccessOutput) GoString() string { 21818 return s.String() 21819 } 21820 21821 // SetEndpointAccessList sets the EndpointAccessList field's value. 21822 func (s *DescribeEndpointAccessOutput) SetEndpointAccessList(v []*EndpointAccess) *DescribeEndpointAccessOutput { 21823 s.EndpointAccessList = v 21824 return s 21825 } 21826 21827 // SetMarker sets the Marker field's value. 21828 func (s *DescribeEndpointAccessOutput) SetMarker(v string) *DescribeEndpointAccessOutput { 21829 s.Marker = &v 21830 return s 21831 } 21832 21833 type DescribeEndpointAuthorizationInput struct { 21834 _ struct{} `type:"structure"` 21835 21836 // The AAmazon Web Services account ID of either the cluster owner (grantor) 21837 // or grantee. If Grantee parameter is true, then the Account value is of the 21838 // grantor. 21839 Account *string `type:"string"` 21840 21841 // The cluster identifier of the cluster to access. 21842 ClusterIdentifier *string `type:"string"` 21843 21844 // Indicates whether to check authorization from a grantor or grantee point 21845 // of view. If true, Amazon Redshift returns endpoint authorizations that you've 21846 // been granted. If false (default), checks authorization from a grantor point 21847 // of view. 21848 Grantee *bool `type:"boolean"` 21849 21850 // An optional pagination token provided by a previous DescribeEndpointAuthorization 21851 // request. If this parameter is specified, the response includes only records 21852 // beyond the marker, up to the value specified by the MaxRecords parameter. 21853 Marker *string `type:"string"` 21854 21855 // The maximum number of records to include in the response. If more records 21856 // exist than the specified MaxRecords value, a pagination token called a Marker 21857 // is included in the response so that the remaining results can be retrieved. 21858 MaxRecords *int64 `type:"integer"` 21859 } 21860 21861 // String returns the string representation. 21862 // 21863 // API parameter values that are decorated as "sensitive" in the API will not 21864 // be included in the string output. The member name will be present, but the 21865 // value will be replaced with "sensitive". 21866 func (s DescribeEndpointAuthorizationInput) String() string { 21867 return awsutil.Prettify(s) 21868 } 21869 21870 // GoString returns the string representation. 21871 // 21872 // API parameter values that are decorated as "sensitive" in the API will not 21873 // be included in the string output. The member name will be present, but the 21874 // value will be replaced with "sensitive". 21875 func (s DescribeEndpointAuthorizationInput) GoString() string { 21876 return s.String() 21877 } 21878 21879 // SetAccount sets the Account field's value. 21880 func (s *DescribeEndpointAuthorizationInput) SetAccount(v string) *DescribeEndpointAuthorizationInput { 21881 s.Account = &v 21882 return s 21883 } 21884 21885 // SetClusterIdentifier sets the ClusterIdentifier field's value. 21886 func (s *DescribeEndpointAuthorizationInput) SetClusterIdentifier(v string) *DescribeEndpointAuthorizationInput { 21887 s.ClusterIdentifier = &v 21888 return s 21889 } 21890 21891 // SetGrantee sets the Grantee field's value. 21892 func (s *DescribeEndpointAuthorizationInput) SetGrantee(v bool) *DescribeEndpointAuthorizationInput { 21893 s.Grantee = &v 21894 return s 21895 } 21896 21897 // SetMarker sets the Marker field's value. 21898 func (s *DescribeEndpointAuthorizationInput) SetMarker(v string) *DescribeEndpointAuthorizationInput { 21899 s.Marker = &v 21900 return s 21901 } 21902 21903 // SetMaxRecords sets the MaxRecords field's value. 21904 func (s *DescribeEndpointAuthorizationInput) SetMaxRecords(v int64) *DescribeEndpointAuthorizationInput { 21905 s.MaxRecords = &v 21906 return s 21907 } 21908 21909 type DescribeEndpointAuthorizationOutput struct { 21910 _ struct{} `type:"structure"` 21911 21912 // The authorizations to an endpoint. 21913 EndpointAuthorizationList []*EndpointAuthorization `type:"list"` 21914 21915 // An optional pagination token provided by a previous DescribeEndpointAuthorization 21916 // request. If this parameter is specified, the response includes only records 21917 // beyond the marker, up to the value specified by the MaxRecords parameter. 21918 Marker *string `type:"string"` 21919 } 21920 21921 // String returns the string representation. 21922 // 21923 // API parameter values that are decorated as "sensitive" in the API will not 21924 // be included in the string output. The member name will be present, but the 21925 // value will be replaced with "sensitive". 21926 func (s DescribeEndpointAuthorizationOutput) String() string { 21927 return awsutil.Prettify(s) 21928 } 21929 21930 // GoString returns the string representation. 21931 // 21932 // API parameter values that are decorated as "sensitive" in the API will not 21933 // be included in the string output. The member name will be present, but the 21934 // value will be replaced with "sensitive". 21935 func (s DescribeEndpointAuthorizationOutput) GoString() string { 21936 return s.String() 21937 } 21938 21939 // SetEndpointAuthorizationList sets the EndpointAuthorizationList field's value. 21940 func (s *DescribeEndpointAuthorizationOutput) SetEndpointAuthorizationList(v []*EndpointAuthorization) *DescribeEndpointAuthorizationOutput { 21941 s.EndpointAuthorizationList = v 21942 return s 21943 } 21944 21945 // SetMarker sets the Marker field's value. 21946 func (s *DescribeEndpointAuthorizationOutput) SetMarker(v string) *DescribeEndpointAuthorizationOutput { 21947 s.Marker = &v 21948 return s 21949 } 21950 21951 type DescribeEventCategoriesInput struct { 21952 _ struct{} `type:"structure"` 21953 21954 // The source type, such as cluster or parameter group, to which the described 21955 // event categories apply. 21956 // 21957 // Valid values: cluster, cluster-snapshot, cluster-parameter-group, cluster-security-group, 21958 // and scheduled-action. 21959 SourceType *string `type:"string"` 21960 } 21961 21962 // String returns the string representation. 21963 // 21964 // API parameter values that are decorated as "sensitive" in the API will not 21965 // be included in the string output. The member name will be present, but the 21966 // value will be replaced with "sensitive". 21967 func (s DescribeEventCategoriesInput) String() string { 21968 return awsutil.Prettify(s) 21969 } 21970 21971 // GoString returns the string representation. 21972 // 21973 // API parameter values that are decorated as "sensitive" in the API will not 21974 // be included in the string output. The member name will be present, but the 21975 // value will be replaced with "sensitive". 21976 func (s DescribeEventCategoriesInput) GoString() string { 21977 return s.String() 21978 } 21979 21980 // SetSourceType sets the SourceType field's value. 21981 func (s *DescribeEventCategoriesInput) SetSourceType(v string) *DescribeEventCategoriesInput { 21982 s.SourceType = &v 21983 return s 21984 } 21985 21986 type DescribeEventCategoriesOutput struct { 21987 _ struct{} `type:"structure"` 21988 21989 // A list of event categories descriptions. 21990 EventCategoriesMapList []*EventCategoriesMap `locationNameList:"EventCategoriesMap" type:"list"` 21991 } 21992 21993 // String returns the string representation. 21994 // 21995 // API parameter values that are decorated as "sensitive" in the API will not 21996 // be included in the string output. The member name will be present, but the 21997 // value will be replaced with "sensitive". 21998 func (s DescribeEventCategoriesOutput) String() string { 21999 return awsutil.Prettify(s) 22000 } 22001 22002 // GoString returns the string representation. 22003 // 22004 // API parameter values that are decorated as "sensitive" in the API will not 22005 // be included in the string output. The member name will be present, but the 22006 // value will be replaced with "sensitive". 22007 func (s DescribeEventCategoriesOutput) GoString() string { 22008 return s.String() 22009 } 22010 22011 // SetEventCategoriesMapList sets the EventCategoriesMapList field's value. 22012 func (s *DescribeEventCategoriesOutput) SetEventCategoriesMapList(v []*EventCategoriesMap) *DescribeEventCategoriesOutput { 22013 s.EventCategoriesMapList = v 22014 return s 22015 } 22016 22017 type DescribeEventSubscriptionsInput struct { 22018 _ struct{} `type:"structure"` 22019 22020 // An optional parameter that specifies the starting point to return a set of 22021 // response records. When the results of a DescribeEventSubscriptions request 22022 // exceed the value specified in MaxRecords, Amazon Web Services returns a value 22023 // in the Marker field of the response. You can retrieve the next set of response 22024 // records by providing the returned marker value in the Marker parameter and 22025 // retrying the request. 22026 Marker *string `type:"string"` 22027 22028 // The maximum number of response records to return in each call. If the number 22029 // of remaining response records exceeds the specified MaxRecords value, a value 22030 // is returned in a marker field of the response. You can retrieve the next 22031 // set of records by retrying the command with the returned marker value. 22032 // 22033 // Default: 100 22034 // 22035 // Constraints: minimum 20, maximum 100. 22036 MaxRecords *int64 `type:"integer"` 22037 22038 // The name of the Amazon Redshift event notification subscription to be described. 22039 SubscriptionName *string `type:"string"` 22040 22041 // A tag key or keys for which you want to return all matching event notification 22042 // subscriptions that are associated with the specified key or keys. For example, 22043 // suppose that you have subscriptions that are tagged with keys called owner 22044 // and environment. If you specify both of these tag keys in the request, Amazon 22045 // Redshift returns a response with the subscriptions that have either or both 22046 // of these tag keys associated with them. 22047 TagKeys []*string `locationNameList:"TagKey" type:"list"` 22048 22049 // A tag value or values for which you want to return all matching event notification 22050 // subscriptions that are associated with the specified tag value or values. 22051 // For example, suppose that you have subscriptions that are tagged with values 22052 // called admin and test. If you specify both of these tag values in the request, 22053 // Amazon Redshift returns a response with the subscriptions that have either 22054 // or both of these tag values associated with them. 22055 TagValues []*string `locationNameList:"TagValue" type:"list"` 22056 } 22057 22058 // String returns the string representation. 22059 // 22060 // API parameter values that are decorated as "sensitive" in the API will not 22061 // be included in the string output. The member name will be present, but the 22062 // value will be replaced with "sensitive". 22063 func (s DescribeEventSubscriptionsInput) String() string { 22064 return awsutil.Prettify(s) 22065 } 22066 22067 // GoString returns the string representation. 22068 // 22069 // API parameter values that are decorated as "sensitive" in the API will not 22070 // be included in the string output. The member name will be present, but the 22071 // value will be replaced with "sensitive". 22072 func (s DescribeEventSubscriptionsInput) GoString() string { 22073 return s.String() 22074 } 22075 22076 // SetMarker sets the Marker field's value. 22077 func (s *DescribeEventSubscriptionsInput) SetMarker(v string) *DescribeEventSubscriptionsInput { 22078 s.Marker = &v 22079 return s 22080 } 22081 22082 // SetMaxRecords sets the MaxRecords field's value. 22083 func (s *DescribeEventSubscriptionsInput) SetMaxRecords(v int64) *DescribeEventSubscriptionsInput { 22084 s.MaxRecords = &v 22085 return s 22086 } 22087 22088 // SetSubscriptionName sets the SubscriptionName field's value. 22089 func (s *DescribeEventSubscriptionsInput) SetSubscriptionName(v string) *DescribeEventSubscriptionsInput { 22090 s.SubscriptionName = &v 22091 return s 22092 } 22093 22094 // SetTagKeys sets the TagKeys field's value. 22095 func (s *DescribeEventSubscriptionsInput) SetTagKeys(v []*string) *DescribeEventSubscriptionsInput { 22096 s.TagKeys = v 22097 return s 22098 } 22099 22100 // SetTagValues sets the TagValues field's value. 22101 func (s *DescribeEventSubscriptionsInput) SetTagValues(v []*string) *DescribeEventSubscriptionsInput { 22102 s.TagValues = v 22103 return s 22104 } 22105 22106 type DescribeEventSubscriptionsOutput struct { 22107 _ struct{} `type:"structure"` 22108 22109 // A list of event subscriptions. 22110 EventSubscriptionsList []*EventSubscription `locationNameList:"EventSubscription" type:"list"` 22111 22112 // A value that indicates the starting point for the next set of response records 22113 // in a subsequent request. If a value is returned in a response, you can retrieve 22114 // the next set of records by providing this returned marker value in the Marker 22115 // parameter and retrying the command. If the Marker field is empty, all response 22116 // records have been retrieved for the request. 22117 Marker *string `type:"string"` 22118 } 22119 22120 // String returns the string representation. 22121 // 22122 // API parameter values that are decorated as "sensitive" in the API will not 22123 // be included in the string output. The member name will be present, but the 22124 // value will be replaced with "sensitive". 22125 func (s DescribeEventSubscriptionsOutput) String() string { 22126 return awsutil.Prettify(s) 22127 } 22128 22129 // GoString returns the string representation. 22130 // 22131 // API parameter values that are decorated as "sensitive" in the API will not 22132 // be included in the string output. The member name will be present, but the 22133 // value will be replaced with "sensitive". 22134 func (s DescribeEventSubscriptionsOutput) GoString() string { 22135 return s.String() 22136 } 22137 22138 // SetEventSubscriptionsList sets the EventSubscriptionsList field's value. 22139 func (s *DescribeEventSubscriptionsOutput) SetEventSubscriptionsList(v []*EventSubscription) *DescribeEventSubscriptionsOutput { 22140 s.EventSubscriptionsList = v 22141 return s 22142 } 22143 22144 // SetMarker sets the Marker field's value. 22145 func (s *DescribeEventSubscriptionsOutput) SetMarker(v string) *DescribeEventSubscriptionsOutput { 22146 s.Marker = &v 22147 return s 22148 } 22149 22150 type DescribeEventsInput struct { 22151 _ struct{} `type:"structure"` 22152 22153 // The number of minutes prior to the time of the request for which to retrieve 22154 // events. For example, if the request is sent at 18:00 and you specify a duration 22155 // of 60, then only events which have occurred after 17:00 will be returned. 22156 // 22157 // Default: 60 22158 Duration *int64 `type:"integer"` 22159 22160 // The end of the time interval for which to retrieve events, specified in ISO 22161 // 8601 format. For more information about ISO 8601, go to the ISO8601 Wikipedia 22162 // page. (http://en.wikipedia.org/wiki/ISO_8601) 22163 // 22164 // Example: 2009-07-08T18:00Z 22165 EndTime *time.Time `type:"timestamp"` 22166 22167 // An optional parameter that specifies the starting point to return a set of 22168 // response records. When the results of a DescribeEvents request exceed the 22169 // value specified in MaxRecords, Amazon Web Services returns a value in the 22170 // Marker field of the response. You can retrieve the next set of response records 22171 // by providing the returned marker value in the Marker parameter and retrying 22172 // the request. 22173 Marker *string `type:"string"` 22174 22175 // The maximum number of response records to return in each call. If the number 22176 // of remaining response records exceeds the specified MaxRecords value, a value 22177 // is returned in a marker field of the response. You can retrieve the next 22178 // set of records by retrying the command with the returned marker value. 22179 // 22180 // Default: 100 22181 // 22182 // Constraints: minimum 20, maximum 100. 22183 MaxRecords *int64 `type:"integer"` 22184 22185 // The identifier of the event source for which events will be returned. If 22186 // this parameter is not specified, then all sources are included in the response. 22187 // 22188 // Constraints: 22189 // 22190 // If SourceIdentifier is supplied, SourceType must also be provided. 22191 // 22192 // * Specify a cluster identifier when SourceType is cluster. 22193 // 22194 // * Specify a cluster security group name when SourceType is cluster-security-group. 22195 // 22196 // * Specify a cluster parameter group name when SourceType is cluster-parameter-group. 22197 // 22198 // * Specify a cluster snapshot identifier when SourceType is cluster-snapshot. 22199 SourceIdentifier *string `type:"string"` 22200 22201 // The event source to retrieve events for. If no value is specified, all events 22202 // are returned. 22203 // 22204 // Constraints: 22205 // 22206 // If SourceType is supplied, SourceIdentifier must also be provided. 22207 // 22208 // * Specify cluster when SourceIdentifier is a cluster identifier. 22209 // 22210 // * Specify cluster-security-group when SourceIdentifier is a cluster security 22211 // group name. 22212 // 22213 // * Specify cluster-parameter-group when SourceIdentifier is a cluster parameter 22214 // group name. 22215 // 22216 // * Specify cluster-snapshot when SourceIdentifier is a cluster snapshot 22217 // identifier. 22218 SourceType *string `type:"string" enum:"SourceType"` 22219 22220 // The beginning of the time interval to retrieve events for, specified in ISO 22221 // 8601 format. For more information about ISO 8601, go to the ISO8601 Wikipedia 22222 // page. (http://en.wikipedia.org/wiki/ISO_8601) 22223 // 22224 // Example: 2009-07-08T18:00Z 22225 StartTime *time.Time `type:"timestamp"` 22226 } 22227 22228 // String returns the string representation. 22229 // 22230 // API parameter values that are decorated as "sensitive" in the API will not 22231 // be included in the string output. The member name will be present, but the 22232 // value will be replaced with "sensitive". 22233 func (s DescribeEventsInput) String() string { 22234 return awsutil.Prettify(s) 22235 } 22236 22237 // GoString returns the string representation. 22238 // 22239 // API parameter values that are decorated as "sensitive" in the API will not 22240 // be included in the string output. The member name will be present, but the 22241 // value will be replaced with "sensitive". 22242 func (s DescribeEventsInput) GoString() string { 22243 return s.String() 22244 } 22245 22246 // SetDuration sets the Duration field's value. 22247 func (s *DescribeEventsInput) SetDuration(v int64) *DescribeEventsInput { 22248 s.Duration = &v 22249 return s 22250 } 22251 22252 // SetEndTime sets the EndTime field's value. 22253 func (s *DescribeEventsInput) SetEndTime(v time.Time) *DescribeEventsInput { 22254 s.EndTime = &v 22255 return s 22256 } 22257 22258 // SetMarker sets the Marker field's value. 22259 func (s *DescribeEventsInput) SetMarker(v string) *DescribeEventsInput { 22260 s.Marker = &v 22261 return s 22262 } 22263 22264 // SetMaxRecords sets the MaxRecords field's value. 22265 func (s *DescribeEventsInput) SetMaxRecords(v int64) *DescribeEventsInput { 22266 s.MaxRecords = &v 22267 return s 22268 } 22269 22270 // SetSourceIdentifier sets the SourceIdentifier field's value. 22271 func (s *DescribeEventsInput) SetSourceIdentifier(v string) *DescribeEventsInput { 22272 s.SourceIdentifier = &v 22273 return s 22274 } 22275 22276 // SetSourceType sets the SourceType field's value. 22277 func (s *DescribeEventsInput) SetSourceType(v string) *DescribeEventsInput { 22278 s.SourceType = &v 22279 return s 22280 } 22281 22282 // SetStartTime sets the StartTime field's value. 22283 func (s *DescribeEventsInput) SetStartTime(v time.Time) *DescribeEventsInput { 22284 s.StartTime = &v 22285 return s 22286 } 22287 22288 type DescribeEventsOutput struct { 22289 _ struct{} `type:"structure"` 22290 22291 // A list of Event instances. 22292 Events []*Event `locationNameList:"Event" type:"list"` 22293 22294 // A value that indicates the starting point for the next set of response records 22295 // in a subsequent request. If a value is returned in a response, you can retrieve 22296 // the next set of records by providing this returned marker value in the Marker 22297 // parameter and retrying the command. If the Marker field is empty, all response 22298 // records have been retrieved for the request. 22299 Marker *string `type:"string"` 22300 } 22301 22302 // String returns the string representation. 22303 // 22304 // API parameter values that are decorated as "sensitive" in the API will not 22305 // be included in the string output. The member name will be present, but the 22306 // value will be replaced with "sensitive". 22307 func (s DescribeEventsOutput) String() string { 22308 return awsutil.Prettify(s) 22309 } 22310 22311 // GoString returns the string representation. 22312 // 22313 // API parameter values that are decorated as "sensitive" in the API will not 22314 // be included in the string output. The member name will be present, but the 22315 // value will be replaced with "sensitive". 22316 func (s DescribeEventsOutput) GoString() string { 22317 return s.String() 22318 } 22319 22320 // SetEvents sets the Events field's value. 22321 func (s *DescribeEventsOutput) SetEvents(v []*Event) *DescribeEventsOutput { 22322 s.Events = v 22323 return s 22324 } 22325 22326 // SetMarker sets the Marker field's value. 22327 func (s *DescribeEventsOutput) SetMarker(v string) *DescribeEventsOutput { 22328 s.Marker = &v 22329 return s 22330 } 22331 22332 type DescribeHsmClientCertificatesInput struct { 22333 _ struct{} `type:"structure"` 22334 22335 // The identifier of a specific HSM client certificate for which you want information. 22336 // If no identifier is specified, information is returned for all HSM client 22337 // certificates owned by your Amazon Web Services account. 22338 HsmClientCertificateIdentifier *string `type:"string"` 22339 22340 // An optional parameter that specifies the starting point to return a set of 22341 // response records. When the results of a DescribeHsmClientCertificates request 22342 // exceed the value specified in MaxRecords, Amazon Web Services returns a value 22343 // in the Marker field of the response. You can retrieve the next set of response 22344 // records by providing the returned marker value in the Marker parameter and 22345 // retrying the request. 22346 Marker *string `type:"string"` 22347 22348 // The maximum number of response records to return in each call. If the number 22349 // of remaining response records exceeds the specified MaxRecords value, a value 22350 // is returned in a marker field of the response. You can retrieve the next 22351 // set of records by retrying the command with the returned marker value. 22352 // 22353 // Default: 100 22354 // 22355 // Constraints: minimum 20, maximum 100. 22356 MaxRecords *int64 `type:"integer"` 22357 22358 // A tag key or keys for which you want to return all matching HSM client certificates 22359 // that are associated with the specified key or keys. For example, suppose 22360 // that you have HSM client certificates that are tagged with keys called owner 22361 // and environment. If you specify both of these tag keys in the request, Amazon 22362 // Redshift returns a response with the HSM client certificates that have either 22363 // or both of these tag keys associated with them. 22364 TagKeys []*string `locationNameList:"TagKey" type:"list"` 22365 22366 // A tag value or values for which you want to return all matching HSM client 22367 // certificates that are associated with the specified tag value or values. 22368 // For example, suppose that you have HSM client certificates that are tagged 22369 // with values called admin and test. If you specify both of these tag values 22370 // in the request, Amazon Redshift returns a response with the HSM client certificates 22371 // that have either or both of these tag values associated with them. 22372 TagValues []*string `locationNameList:"TagValue" type:"list"` 22373 } 22374 22375 // String returns the string representation. 22376 // 22377 // API parameter values that are decorated as "sensitive" in the API will not 22378 // be included in the string output. The member name will be present, but the 22379 // value will be replaced with "sensitive". 22380 func (s DescribeHsmClientCertificatesInput) String() string { 22381 return awsutil.Prettify(s) 22382 } 22383 22384 // GoString returns the string representation. 22385 // 22386 // API parameter values that are decorated as "sensitive" in the API will not 22387 // be included in the string output. The member name will be present, but the 22388 // value will be replaced with "sensitive". 22389 func (s DescribeHsmClientCertificatesInput) GoString() string { 22390 return s.String() 22391 } 22392 22393 // SetHsmClientCertificateIdentifier sets the HsmClientCertificateIdentifier field's value. 22394 func (s *DescribeHsmClientCertificatesInput) SetHsmClientCertificateIdentifier(v string) *DescribeHsmClientCertificatesInput { 22395 s.HsmClientCertificateIdentifier = &v 22396 return s 22397 } 22398 22399 // SetMarker sets the Marker field's value. 22400 func (s *DescribeHsmClientCertificatesInput) SetMarker(v string) *DescribeHsmClientCertificatesInput { 22401 s.Marker = &v 22402 return s 22403 } 22404 22405 // SetMaxRecords sets the MaxRecords field's value. 22406 func (s *DescribeHsmClientCertificatesInput) SetMaxRecords(v int64) *DescribeHsmClientCertificatesInput { 22407 s.MaxRecords = &v 22408 return s 22409 } 22410 22411 // SetTagKeys sets the TagKeys field's value. 22412 func (s *DescribeHsmClientCertificatesInput) SetTagKeys(v []*string) *DescribeHsmClientCertificatesInput { 22413 s.TagKeys = v 22414 return s 22415 } 22416 22417 // SetTagValues sets the TagValues field's value. 22418 func (s *DescribeHsmClientCertificatesInput) SetTagValues(v []*string) *DescribeHsmClientCertificatesInput { 22419 s.TagValues = v 22420 return s 22421 } 22422 22423 type DescribeHsmClientCertificatesOutput struct { 22424 _ struct{} `type:"structure"` 22425 22426 // A list of the identifiers for one or more HSM client certificates used by 22427 // Amazon Redshift clusters to store and retrieve database encryption keys in 22428 // an HSM. 22429 HsmClientCertificates []*HsmClientCertificate `locationNameList:"HsmClientCertificate" type:"list"` 22430 22431 // A value that indicates the starting point for the next set of response records 22432 // in a subsequent request. If a value is returned in a response, you can retrieve 22433 // the next set of records by providing this returned marker value in the Marker 22434 // parameter and retrying the command. If the Marker field is empty, all response 22435 // records have been retrieved for the request. 22436 Marker *string `type:"string"` 22437 } 22438 22439 // String returns the string representation. 22440 // 22441 // API parameter values that are decorated as "sensitive" in the API will not 22442 // be included in the string output. The member name will be present, but the 22443 // value will be replaced with "sensitive". 22444 func (s DescribeHsmClientCertificatesOutput) String() string { 22445 return awsutil.Prettify(s) 22446 } 22447 22448 // GoString returns the string representation. 22449 // 22450 // API parameter values that are decorated as "sensitive" in the API will not 22451 // be included in the string output. The member name will be present, but the 22452 // value will be replaced with "sensitive". 22453 func (s DescribeHsmClientCertificatesOutput) GoString() string { 22454 return s.String() 22455 } 22456 22457 // SetHsmClientCertificates sets the HsmClientCertificates field's value. 22458 func (s *DescribeHsmClientCertificatesOutput) SetHsmClientCertificates(v []*HsmClientCertificate) *DescribeHsmClientCertificatesOutput { 22459 s.HsmClientCertificates = v 22460 return s 22461 } 22462 22463 // SetMarker sets the Marker field's value. 22464 func (s *DescribeHsmClientCertificatesOutput) SetMarker(v string) *DescribeHsmClientCertificatesOutput { 22465 s.Marker = &v 22466 return s 22467 } 22468 22469 type DescribeHsmConfigurationsInput struct { 22470 _ struct{} `type:"structure"` 22471 22472 // The identifier of a specific Amazon Redshift HSM configuration to be described. 22473 // If no identifier is specified, information is returned for all HSM configurations 22474 // owned by your Amazon Web Services account. 22475 HsmConfigurationIdentifier *string `type:"string"` 22476 22477 // An optional parameter that specifies the starting point to return a set of 22478 // response records. When the results of a DescribeHsmConfigurations request 22479 // exceed the value specified in MaxRecords, Amazon Web Services returns a value 22480 // in the Marker field of the response. You can retrieve the next set of response 22481 // records by providing the returned marker value in the Marker parameter and 22482 // retrying the request. 22483 Marker *string `type:"string"` 22484 22485 // The maximum number of response records to return in each call. If the number 22486 // of remaining response records exceeds the specified MaxRecords value, a value 22487 // is returned in a marker field of the response. You can retrieve the next 22488 // set of records by retrying the command with the returned marker value. 22489 // 22490 // Default: 100 22491 // 22492 // Constraints: minimum 20, maximum 100. 22493 MaxRecords *int64 `type:"integer"` 22494 22495 // A tag key or keys for which you want to return all matching HSM configurations 22496 // that are associated with the specified key or keys. For example, suppose 22497 // that you have HSM configurations that are tagged with keys called owner and 22498 // environment. If you specify both of these tag keys in the request, Amazon 22499 // Redshift returns a response with the HSM configurations that have either 22500 // or both of these tag keys associated with them. 22501 TagKeys []*string `locationNameList:"TagKey" type:"list"` 22502 22503 // A tag value or values for which you want to return all matching HSM configurations 22504 // that are associated with the specified tag value or values. For example, 22505 // suppose that you have HSM configurations that are tagged with values called 22506 // admin and test. If you specify both of these tag values in the request, Amazon 22507 // Redshift returns a response with the HSM configurations that have either 22508 // or both of these tag values associated with them. 22509 TagValues []*string `locationNameList:"TagValue" type:"list"` 22510 } 22511 22512 // String returns the string representation. 22513 // 22514 // API parameter values that are decorated as "sensitive" in the API will not 22515 // be included in the string output. The member name will be present, but the 22516 // value will be replaced with "sensitive". 22517 func (s DescribeHsmConfigurationsInput) String() string { 22518 return awsutil.Prettify(s) 22519 } 22520 22521 // GoString returns the string representation. 22522 // 22523 // API parameter values that are decorated as "sensitive" in the API will not 22524 // be included in the string output. The member name will be present, but the 22525 // value will be replaced with "sensitive". 22526 func (s DescribeHsmConfigurationsInput) GoString() string { 22527 return s.String() 22528 } 22529 22530 // SetHsmConfigurationIdentifier sets the HsmConfigurationIdentifier field's value. 22531 func (s *DescribeHsmConfigurationsInput) SetHsmConfigurationIdentifier(v string) *DescribeHsmConfigurationsInput { 22532 s.HsmConfigurationIdentifier = &v 22533 return s 22534 } 22535 22536 // SetMarker sets the Marker field's value. 22537 func (s *DescribeHsmConfigurationsInput) SetMarker(v string) *DescribeHsmConfigurationsInput { 22538 s.Marker = &v 22539 return s 22540 } 22541 22542 // SetMaxRecords sets the MaxRecords field's value. 22543 func (s *DescribeHsmConfigurationsInput) SetMaxRecords(v int64) *DescribeHsmConfigurationsInput { 22544 s.MaxRecords = &v 22545 return s 22546 } 22547 22548 // SetTagKeys sets the TagKeys field's value. 22549 func (s *DescribeHsmConfigurationsInput) SetTagKeys(v []*string) *DescribeHsmConfigurationsInput { 22550 s.TagKeys = v 22551 return s 22552 } 22553 22554 // SetTagValues sets the TagValues field's value. 22555 func (s *DescribeHsmConfigurationsInput) SetTagValues(v []*string) *DescribeHsmConfigurationsInput { 22556 s.TagValues = v 22557 return s 22558 } 22559 22560 type DescribeHsmConfigurationsOutput struct { 22561 _ struct{} `type:"structure"` 22562 22563 // A list of HsmConfiguration objects. 22564 HsmConfigurations []*HsmConfiguration `locationNameList:"HsmConfiguration" type:"list"` 22565 22566 // A value that indicates the starting point for the next set of response records 22567 // in a subsequent request. If a value is returned in a response, you can retrieve 22568 // the next set of records by providing this returned marker value in the Marker 22569 // parameter and retrying the command. If the Marker field is empty, all response 22570 // records have been retrieved for the request. 22571 Marker *string `type:"string"` 22572 } 22573 22574 // String returns the string representation. 22575 // 22576 // API parameter values that are decorated as "sensitive" in the API will not 22577 // be included in the string output. The member name will be present, but the 22578 // value will be replaced with "sensitive". 22579 func (s DescribeHsmConfigurationsOutput) String() string { 22580 return awsutil.Prettify(s) 22581 } 22582 22583 // GoString returns the string representation. 22584 // 22585 // API parameter values that are decorated as "sensitive" in the API will not 22586 // be included in the string output. The member name will be present, but the 22587 // value will be replaced with "sensitive". 22588 func (s DescribeHsmConfigurationsOutput) GoString() string { 22589 return s.String() 22590 } 22591 22592 // SetHsmConfigurations sets the HsmConfigurations field's value. 22593 func (s *DescribeHsmConfigurationsOutput) SetHsmConfigurations(v []*HsmConfiguration) *DescribeHsmConfigurationsOutput { 22594 s.HsmConfigurations = v 22595 return s 22596 } 22597 22598 // SetMarker sets the Marker field's value. 22599 func (s *DescribeHsmConfigurationsOutput) SetMarker(v string) *DescribeHsmConfigurationsOutput { 22600 s.Marker = &v 22601 return s 22602 } 22603 22604 type DescribeLoggingStatusInput struct { 22605 _ struct{} `type:"structure"` 22606 22607 // The identifier of the cluster from which to get the logging status. 22608 // 22609 // Example: examplecluster 22610 // 22611 // ClusterIdentifier is a required field 22612 ClusterIdentifier *string `type:"string" required:"true"` 22613 } 22614 22615 // String returns the string representation. 22616 // 22617 // API parameter values that are decorated as "sensitive" in the API will not 22618 // be included in the string output. The member name will be present, but the 22619 // value will be replaced with "sensitive". 22620 func (s DescribeLoggingStatusInput) String() string { 22621 return awsutil.Prettify(s) 22622 } 22623 22624 // GoString returns the string representation. 22625 // 22626 // API parameter values that are decorated as "sensitive" in the API will not 22627 // be included in the string output. The member name will be present, but the 22628 // value will be replaced with "sensitive". 22629 func (s DescribeLoggingStatusInput) GoString() string { 22630 return s.String() 22631 } 22632 22633 // Validate inspects the fields of the type to determine if they are valid. 22634 func (s *DescribeLoggingStatusInput) Validate() error { 22635 invalidParams := request.ErrInvalidParams{Context: "DescribeLoggingStatusInput"} 22636 if s.ClusterIdentifier == nil { 22637 invalidParams.Add(request.NewErrParamRequired("ClusterIdentifier")) 22638 } 22639 22640 if invalidParams.Len() > 0 { 22641 return invalidParams 22642 } 22643 return nil 22644 } 22645 22646 // SetClusterIdentifier sets the ClusterIdentifier field's value. 22647 func (s *DescribeLoggingStatusInput) SetClusterIdentifier(v string) *DescribeLoggingStatusInput { 22648 s.ClusterIdentifier = &v 22649 return s 22650 } 22651 22652 type DescribeNodeConfigurationOptionsInput struct { 22653 _ struct{} `type:"structure"` 22654 22655 // The action type to evaluate for possible node configurations. Specify "restore-cluster" 22656 // to get configuration combinations based on an existing snapshot. Specify 22657 // "recommend-node-config" to get configuration recommendations based on an 22658 // existing cluster or snapshot. Specify "resize-cluster" to get configuration 22659 // combinations for elastic resize based on an existing cluster. 22660 // 22661 // ActionType is a required field 22662 ActionType *string `type:"string" required:"true" enum:"ActionType"` 22663 22664 // The identifier of the cluster to evaluate for possible node configurations. 22665 ClusterIdentifier *string `type:"string"` 22666 22667 // A set of name, operator, and value items to filter the results. 22668 Filters []*NodeConfigurationOptionsFilter `locationName:"Filter" locationNameList:"NodeConfigurationOptionsFilter" type:"list"` 22669 22670 // An optional parameter that specifies the starting point to return a set of 22671 // response records. When the results of a DescribeNodeConfigurationOptions 22672 // request exceed the value specified in MaxRecords, Amazon Web Services returns 22673 // a value in the Marker field of the response. You can retrieve the next set 22674 // of response records by providing the returned marker value in the Marker 22675 // parameter and retrying the request. 22676 Marker *string `type:"string"` 22677 22678 // The maximum number of response records to return in each call. If the number 22679 // of remaining response records exceeds the specified MaxRecords value, a value 22680 // is returned in a marker field of the response. You can retrieve the next 22681 // set of records by retrying the command with the returned marker value. 22682 // 22683 // Default: 500 22684 // 22685 // Constraints: minimum 100, maximum 500. 22686 MaxRecords *int64 `type:"integer"` 22687 22688 // The Amazon Web Services account used to create or copy the snapshot. Required 22689 // if you are restoring a snapshot you do not own, optional if you own the snapshot. 22690 OwnerAccount *string `type:"string"` 22691 22692 // The identifier of the snapshot to evaluate for possible node configurations. 22693 SnapshotIdentifier *string `type:"string"` 22694 } 22695 22696 // String returns the string representation. 22697 // 22698 // API parameter values that are decorated as "sensitive" in the API will not 22699 // be included in the string output. The member name will be present, but the 22700 // value will be replaced with "sensitive". 22701 func (s DescribeNodeConfigurationOptionsInput) String() string { 22702 return awsutil.Prettify(s) 22703 } 22704 22705 // GoString returns the string representation. 22706 // 22707 // API parameter values that are decorated as "sensitive" in the API will not 22708 // be included in the string output. The member name will be present, but the 22709 // value will be replaced with "sensitive". 22710 func (s DescribeNodeConfigurationOptionsInput) GoString() string { 22711 return s.String() 22712 } 22713 22714 // Validate inspects the fields of the type to determine if they are valid. 22715 func (s *DescribeNodeConfigurationOptionsInput) Validate() error { 22716 invalidParams := request.ErrInvalidParams{Context: "DescribeNodeConfigurationOptionsInput"} 22717 if s.ActionType == nil { 22718 invalidParams.Add(request.NewErrParamRequired("ActionType")) 22719 } 22720 22721 if invalidParams.Len() > 0 { 22722 return invalidParams 22723 } 22724 return nil 22725 } 22726 22727 // SetActionType sets the ActionType field's value. 22728 func (s *DescribeNodeConfigurationOptionsInput) SetActionType(v string) *DescribeNodeConfigurationOptionsInput { 22729 s.ActionType = &v 22730 return s 22731 } 22732 22733 // SetClusterIdentifier sets the ClusterIdentifier field's value. 22734 func (s *DescribeNodeConfigurationOptionsInput) SetClusterIdentifier(v string) *DescribeNodeConfigurationOptionsInput { 22735 s.ClusterIdentifier = &v 22736 return s 22737 } 22738 22739 // SetFilters sets the Filters field's value. 22740 func (s *DescribeNodeConfigurationOptionsInput) SetFilters(v []*NodeConfigurationOptionsFilter) *DescribeNodeConfigurationOptionsInput { 22741 s.Filters = v 22742 return s 22743 } 22744 22745 // SetMarker sets the Marker field's value. 22746 func (s *DescribeNodeConfigurationOptionsInput) SetMarker(v string) *DescribeNodeConfigurationOptionsInput { 22747 s.Marker = &v 22748 return s 22749 } 22750 22751 // SetMaxRecords sets the MaxRecords field's value. 22752 func (s *DescribeNodeConfigurationOptionsInput) SetMaxRecords(v int64) *DescribeNodeConfigurationOptionsInput { 22753 s.MaxRecords = &v 22754 return s 22755 } 22756 22757 // SetOwnerAccount sets the OwnerAccount field's value. 22758 func (s *DescribeNodeConfigurationOptionsInput) SetOwnerAccount(v string) *DescribeNodeConfigurationOptionsInput { 22759 s.OwnerAccount = &v 22760 return s 22761 } 22762 22763 // SetSnapshotIdentifier sets the SnapshotIdentifier field's value. 22764 func (s *DescribeNodeConfigurationOptionsInput) SetSnapshotIdentifier(v string) *DescribeNodeConfigurationOptionsInput { 22765 s.SnapshotIdentifier = &v 22766 return s 22767 } 22768 22769 type DescribeNodeConfigurationOptionsOutput struct { 22770 _ struct{} `type:"structure"` 22771 22772 // A value that indicates the starting point for the next set of response records 22773 // in a subsequent request. If a value is returned in a response, you can retrieve 22774 // the next set of records by providing this returned marker value in the Marker 22775 // parameter and retrying the command. If the Marker field is empty, all response 22776 // records have been retrieved for the request. 22777 Marker *string `type:"string"` 22778 22779 // A list of valid node configurations. 22780 NodeConfigurationOptionList []*NodeConfigurationOption `locationNameList:"NodeConfigurationOption" type:"list"` 22781 } 22782 22783 // String returns the string representation. 22784 // 22785 // API parameter values that are decorated as "sensitive" in the API will not 22786 // be included in the string output. The member name will be present, but the 22787 // value will be replaced with "sensitive". 22788 func (s DescribeNodeConfigurationOptionsOutput) String() string { 22789 return awsutil.Prettify(s) 22790 } 22791 22792 // GoString returns the string representation. 22793 // 22794 // API parameter values that are decorated as "sensitive" in the API will not 22795 // be included in the string output. The member name will be present, but the 22796 // value will be replaced with "sensitive". 22797 func (s DescribeNodeConfigurationOptionsOutput) GoString() string { 22798 return s.String() 22799 } 22800 22801 // SetMarker sets the Marker field's value. 22802 func (s *DescribeNodeConfigurationOptionsOutput) SetMarker(v string) *DescribeNodeConfigurationOptionsOutput { 22803 s.Marker = &v 22804 return s 22805 } 22806 22807 // SetNodeConfigurationOptionList sets the NodeConfigurationOptionList field's value. 22808 func (s *DescribeNodeConfigurationOptionsOutput) SetNodeConfigurationOptionList(v []*NodeConfigurationOption) *DescribeNodeConfigurationOptionsOutput { 22809 s.NodeConfigurationOptionList = v 22810 return s 22811 } 22812 22813 type DescribeOrderableClusterOptionsInput struct { 22814 _ struct{} `type:"structure"` 22815 22816 // The version filter value. Specify this parameter to show only the available 22817 // offerings matching the specified version. 22818 // 22819 // Default: All versions. 22820 // 22821 // Constraints: Must be one of the version returned from DescribeClusterVersions. 22822 ClusterVersion *string `type:"string"` 22823 22824 // An optional parameter that specifies the starting point to return a set of 22825 // response records. When the results of a DescribeOrderableClusterOptions request 22826 // exceed the value specified in MaxRecords, Amazon Web Services returns a value 22827 // in the Marker field of the response. You can retrieve the next set of response 22828 // records by providing the returned marker value in the Marker parameter and 22829 // retrying the request. 22830 Marker *string `type:"string"` 22831 22832 // The maximum number of response records to return in each call. If the number 22833 // of remaining response records exceeds the specified MaxRecords value, a value 22834 // is returned in a marker field of the response. You can retrieve the next 22835 // set of records by retrying the command with the returned marker value. 22836 // 22837 // Default: 100 22838 // 22839 // Constraints: minimum 20, maximum 100. 22840 MaxRecords *int64 `type:"integer"` 22841 22842 // The node type filter value. Specify this parameter to show only the available 22843 // offerings matching the specified node type. 22844 NodeType *string `type:"string"` 22845 } 22846 22847 // String returns the string representation. 22848 // 22849 // API parameter values that are decorated as "sensitive" in the API will not 22850 // be included in the string output. The member name will be present, but the 22851 // value will be replaced with "sensitive". 22852 func (s DescribeOrderableClusterOptionsInput) String() string { 22853 return awsutil.Prettify(s) 22854 } 22855 22856 // GoString returns the string representation. 22857 // 22858 // API parameter values that are decorated as "sensitive" in the API will not 22859 // be included in the string output. The member name will be present, but the 22860 // value will be replaced with "sensitive". 22861 func (s DescribeOrderableClusterOptionsInput) GoString() string { 22862 return s.String() 22863 } 22864 22865 // SetClusterVersion sets the ClusterVersion field's value. 22866 func (s *DescribeOrderableClusterOptionsInput) SetClusterVersion(v string) *DescribeOrderableClusterOptionsInput { 22867 s.ClusterVersion = &v 22868 return s 22869 } 22870 22871 // SetMarker sets the Marker field's value. 22872 func (s *DescribeOrderableClusterOptionsInput) SetMarker(v string) *DescribeOrderableClusterOptionsInput { 22873 s.Marker = &v 22874 return s 22875 } 22876 22877 // SetMaxRecords sets the MaxRecords field's value. 22878 func (s *DescribeOrderableClusterOptionsInput) SetMaxRecords(v int64) *DescribeOrderableClusterOptionsInput { 22879 s.MaxRecords = &v 22880 return s 22881 } 22882 22883 // SetNodeType sets the NodeType field's value. 22884 func (s *DescribeOrderableClusterOptionsInput) SetNodeType(v string) *DescribeOrderableClusterOptionsInput { 22885 s.NodeType = &v 22886 return s 22887 } 22888 22889 // Contains the output from the DescribeOrderableClusterOptions action. 22890 type DescribeOrderableClusterOptionsOutput struct { 22891 _ struct{} `type:"structure"` 22892 22893 // A value that indicates the starting point for the next set of response records 22894 // in a subsequent request. If a value is returned in a response, you can retrieve 22895 // the next set of records by providing this returned marker value in the Marker 22896 // parameter and retrying the command. If the Marker field is empty, all response 22897 // records have been retrieved for the request. 22898 Marker *string `type:"string"` 22899 22900 // An OrderableClusterOption structure containing information about orderable 22901 // options for the cluster. 22902 OrderableClusterOptions []*OrderableClusterOption `locationNameList:"OrderableClusterOption" type:"list"` 22903 } 22904 22905 // String returns the string representation. 22906 // 22907 // API parameter values that are decorated as "sensitive" in the API will not 22908 // be included in the string output. The member name will be present, but the 22909 // value will be replaced with "sensitive". 22910 func (s DescribeOrderableClusterOptionsOutput) String() string { 22911 return awsutil.Prettify(s) 22912 } 22913 22914 // GoString returns the string representation. 22915 // 22916 // API parameter values that are decorated as "sensitive" in the API will not 22917 // be included in the string output. The member name will be present, but the 22918 // value will be replaced with "sensitive". 22919 func (s DescribeOrderableClusterOptionsOutput) GoString() string { 22920 return s.String() 22921 } 22922 22923 // SetMarker sets the Marker field's value. 22924 func (s *DescribeOrderableClusterOptionsOutput) SetMarker(v string) *DescribeOrderableClusterOptionsOutput { 22925 s.Marker = &v 22926 return s 22927 } 22928 22929 // SetOrderableClusterOptions sets the OrderableClusterOptions field's value. 22930 func (s *DescribeOrderableClusterOptionsOutput) SetOrderableClusterOptions(v []*OrderableClusterOption) *DescribeOrderableClusterOptionsOutput { 22931 s.OrderableClusterOptions = v 22932 return s 22933 } 22934 22935 type DescribePartnersInput struct { 22936 _ struct{} `type:"structure"` 22937 22938 // The Amazon Web Services account ID that owns the cluster. 22939 // 22940 // AccountId is a required field 22941 AccountId *string `min:"12" type:"string" required:"true"` 22942 22943 // The cluster identifier of the cluster whose partner integration is being 22944 // described. 22945 // 22946 // ClusterIdentifier is a required field 22947 ClusterIdentifier *string `type:"string" required:"true"` 22948 22949 // The name of the database whose partner integration is being described. If 22950 // database name is not specified, then all databases in the cluster are described. 22951 DatabaseName *string `type:"string"` 22952 22953 // The name of the partner that is being described. If partner name is not specified, 22954 // then all partner integrations are described. 22955 PartnerName *string `type:"string"` 22956 } 22957 22958 // String returns the string representation. 22959 // 22960 // API parameter values that are decorated as "sensitive" in the API will not 22961 // be included in the string output. The member name will be present, but the 22962 // value will be replaced with "sensitive". 22963 func (s DescribePartnersInput) String() string { 22964 return awsutil.Prettify(s) 22965 } 22966 22967 // GoString returns the string representation. 22968 // 22969 // API parameter values that are decorated as "sensitive" in the API will not 22970 // be included in the string output. The member name will be present, but the 22971 // value will be replaced with "sensitive". 22972 func (s DescribePartnersInput) GoString() string { 22973 return s.String() 22974 } 22975 22976 // Validate inspects the fields of the type to determine if they are valid. 22977 func (s *DescribePartnersInput) Validate() error { 22978 invalidParams := request.ErrInvalidParams{Context: "DescribePartnersInput"} 22979 if s.AccountId == nil { 22980 invalidParams.Add(request.NewErrParamRequired("AccountId")) 22981 } 22982 if s.AccountId != nil && len(*s.AccountId) < 12 { 22983 invalidParams.Add(request.NewErrParamMinLen("AccountId", 12)) 22984 } 22985 if s.ClusterIdentifier == nil { 22986 invalidParams.Add(request.NewErrParamRequired("ClusterIdentifier")) 22987 } 22988 22989 if invalidParams.Len() > 0 { 22990 return invalidParams 22991 } 22992 return nil 22993 } 22994 22995 // SetAccountId sets the AccountId field's value. 22996 func (s *DescribePartnersInput) SetAccountId(v string) *DescribePartnersInput { 22997 s.AccountId = &v 22998 return s 22999 } 23000 23001 // SetClusterIdentifier sets the ClusterIdentifier field's value. 23002 func (s *DescribePartnersInput) SetClusterIdentifier(v string) *DescribePartnersInput { 23003 s.ClusterIdentifier = &v 23004 return s 23005 } 23006 23007 // SetDatabaseName sets the DatabaseName field's value. 23008 func (s *DescribePartnersInput) SetDatabaseName(v string) *DescribePartnersInput { 23009 s.DatabaseName = &v 23010 return s 23011 } 23012 23013 // SetPartnerName sets the PartnerName field's value. 23014 func (s *DescribePartnersInput) SetPartnerName(v string) *DescribePartnersInput { 23015 s.PartnerName = &v 23016 return s 23017 } 23018 23019 type DescribePartnersOutput struct { 23020 _ struct{} `type:"structure"` 23021 23022 // A list of partner integrations. 23023 PartnerIntegrationInfoList []*PartnerIntegrationInfo `locationNameList:"PartnerIntegrationInfo" type:"list"` 23024 } 23025 23026 // String returns the string representation. 23027 // 23028 // API parameter values that are decorated as "sensitive" in the API will not 23029 // be included in the string output. The member name will be present, but the 23030 // value will be replaced with "sensitive". 23031 func (s DescribePartnersOutput) String() string { 23032 return awsutil.Prettify(s) 23033 } 23034 23035 // GoString returns the string representation. 23036 // 23037 // API parameter values that are decorated as "sensitive" in the API will not 23038 // be included in the string output. The member name will be present, but the 23039 // value will be replaced with "sensitive". 23040 func (s DescribePartnersOutput) GoString() string { 23041 return s.String() 23042 } 23043 23044 // SetPartnerIntegrationInfoList sets the PartnerIntegrationInfoList field's value. 23045 func (s *DescribePartnersOutput) SetPartnerIntegrationInfoList(v []*PartnerIntegrationInfo) *DescribePartnersOutput { 23046 s.PartnerIntegrationInfoList = v 23047 return s 23048 } 23049 23050 type DescribeReservedNodeOfferingsInput struct { 23051 _ struct{} `type:"structure"` 23052 23053 // An optional parameter that specifies the starting point to return a set of 23054 // response records. When the results of a DescribeReservedNodeOfferings request 23055 // exceed the value specified in MaxRecords, Amazon Web Services returns a value 23056 // in the Marker field of the response. You can retrieve the next set of response 23057 // records by providing the returned marker value in the Marker parameter and 23058 // retrying the request. 23059 Marker *string `type:"string"` 23060 23061 // The maximum number of response records to return in each call. If the number 23062 // of remaining response records exceeds the specified MaxRecords value, a value 23063 // is returned in a marker field of the response. You can retrieve the next 23064 // set of records by retrying the command with the returned marker value. 23065 // 23066 // Default: 100 23067 // 23068 // Constraints: minimum 20, maximum 100. 23069 MaxRecords *int64 `type:"integer"` 23070 23071 // The unique identifier for the offering. 23072 ReservedNodeOfferingId *string `type:"string"` 23073 } 23074 23075 // String returns the string representation. 23076 // 23077 // API parameter values that are decorated as "sensitive" in the API will not 23078 // be included in the string output. The member name will be present, but the 23079 // value will be replaced with "sensitive". 23080 func (s DescribeReservedNodeOfferingsInput) String() string { 23081 return awsutil.Prettify(s) 23082 } 23083 23084 // GoString returns the string representation. 23085 // 23086 // API parameter values that are decorated as "sensitive" in the API will not 23087 // be included in the string output. The member name will be present, but the 23088 // value will be replaced with "sensitive". 23089 func (s DescribeReservedNodeOfferingsInput) GoString() string { 23090 return s.String() 23091 } 23092 23093 // SetMarker sets the Marker field's value. 23094 func (s *DescribeReservedNodeOfferingsInput) SetMarker(v string) *DescribeReservedNodeOfferingsInput { 23095 s.Marker = &v 23096 return s 23097 } 23098 23099 // SetMaxRecords sets the MaxRecords field's value. 23100 func (s *DescribeReservedNodeOfferingsInput) SetMaxRecords(v int64) *DescribeReservedNodeOfferingsInput { 23101 s.MaxRecords = &v 23102 return s 23103 } 23104 23105 // SetReservedNodeOfferingId sets the ReservedNodeOfferingId field's value. 23106 func (s *DescribeReservedNodeOfferingsInput) SetReservedNodeOfferingId(v string) *DescribeReservedNodeOfferingsInput { 23107 s.ReservedNodeOfferingId = &v 23108 return s 23109 } 23110 23111 type DescribeReservedNodeOfferingsOutput struct { 23112 _ struct{} `type:"structure"` 23113 23114 // A value that indicates the starting point for the next set of response records 23115 // in a subsequent request. If a value is returned in a response, you can retrieve 23116 // the next set of records by providing this returned marker value in the Marker 23117 // parameter and retrying the command. If the Marker field is empty, all response 23118 // records have been retrieved for the request. 23119 Marker *string `type:"string"` 23120 23121 // A list of ReservedNodeOffering objects. 23122 ReservedNodeOfferings []*ReservedNodeOffering `locationNameList:"ReservedNodeOffering" type:"list"` 23123 } 23124 23125 // String returns the string representation. 23126 // 23127 // API parameter values that are decorated as "sensitive" in the API will not 23128 // be included in the string output. The member name will be present, but the 23129 // value will be replaced with "sensitive". 23130 func (s DescribeReservedNodeOfferingsOutput) String() string { 23131 return awsutil.Prettify(s) 23132 } 23133 23134 // GoString returns the string representation. 23135 // 23136 // API parameter values that are decorated as "sensitive" in the API will not 23137 // be included in the string output. The member name will be present, but the 23138 // value will be replaced with "sensitive". 23139 func (s DescribeReservedNodeOfferingsOutput) GoString() string { 23140 return s.String() 23141 } 23142 23143 // SetMarker sets the Marker field's value. 23144 func (s *DescribeReservedNodeOfferingsOutput) SetMarker(v string) *DescribeReservedNodeOfferingsOutput { 23145 s.Marker = &v 23146 return s 23147 } 23148 23149 // SetReservedNodeOfferings sets the ReservedNodeOfferings field's value. 23150 func (s *DescribeReservedNodeOfferingsOutput) SetReservedNodeOfferings(v []*ReservedNodeOffering) *DescribeReservedNodeOfferingsOutput { 23151 s.ReservedNodeOfferings = v 23152 return s 23153 } 23154 23155 type DescribeReservedNodesInput struct { 23156 _ struct{} `type:"structure"` 23157 23158 // An optional parameter that specifies the starting point to return a set of 23159 // response records. When the results of a DescribeReservedNodes request exceed 23160 // the value specified in MaxRecords, Amazon Web Services returns a value in 23161 // the Marker field of the response. You can retrieve the next set of response 23162 // records by providing the returned marker value in the Marker parameter and 23163 // retrying the request. 23164 Marker *string `type:"string"` 23165 23166 // The maximum number of response records to return in each call. If the number 23167 // of remaining response records exceeds the specified MaxRecords value, a value 23168 // is returned in a marker field of the response. You can retrieve the next 23169 // set of records by retrying the command with the returned marker value. 23170 // 23171 // Default: 100 23172 // 23173 // Constraints: minimum 20, maximum 100. 23174 MaxRecords *int64 `type:"integer"` 23175 23176 // Identifier for the node reservation. 23177 ReservedNodeId *string `type:"string"` 23178 } 23179 23180 // String returns the string representation. 23181 // 23182 // API parameter values that are decorated as "sensitive" in the API will not 23183 // be included in the string output. The member name will be present, but the 23184 // value will be replaced with "sensitive". 23185 func (s DescribeReservedNodesInput) String() string { 23186 return awsutil.Prettify(s) 23187 } 23188 23189 // GoString returns the string representation. 23190 // 23191 // API parameter values that are decorated as "sensitive" in the API will not 23192 // be included in the string output. The member name will be present, but the 23193 // value will be replaced with "sensitive". 23194 func (s DescribeReservedNodesInput) GoString() string { 23195 return s.String() 23196 } 23197 23198 // SetMarker sets the Marker field's value. 23199 func (s *DescribeReservedNodesInput) SetMarker(v string) *DescribeReservedNodesInput { 23200 s.Marker = &v 23201 return s 23202 } 23203 23204 // SetMaxRecords sets the MaxRecords field's value. 23205 func (s *DescribeReservedNodesInput) SetMaxRecords(v int64) *DescribeReservedNodesInput { 23206 s.MaxRecords = &v 23207 return s 23208 } 23209 23210 // SetReservedNodeId sets the ReservedNodeId field's value. 23211 func (s *DescribeReservedNodesInput) SetReservedNodeId(v string) *DescribeReservedNodesInput { 23212 s.ReservedNodeId = &v 23213 return s 23214 } 23215 23216 type DescribeReservedNodesOutput struct { 23217 _ struct{} `type:"structure"` 23218 23219 // A value that indicates the starting point for the next set of response records 23220 // in a subsequent request. If a value is returned in a response, you can retrieve 23221 // the next set of records by providing this returned marker value in the Marker 23222 // parameter and retrying the command. If the Marker field is empty, all response 23223 // records have been retrieved for the request. 23224 Marker *string `type:"string"` 23225 23226 // The list of ReservedNode objects. 23227 ReservedNodes []*ReservedNode `locationNameList:"ReservedNode" type:"list"` 23228 } 23229 23230 // String returns the string representation. 23231 // 23232 // API parameter values that are decorated as "sensitive" in the API will not 23233 // be included in the string output. The member name will be present, but the 23234 // value will be replaced with "sensitive". 23235 func (s DescribeReservedNodesOutput) String() string { 23236 return awsutil.Prettify(s) 23237 } 23238 23239 // GoString returns the string representation. 23240 // 23241 // API parameter values that are decorated as "sensitive" in the API will not 23242 // be included in the string output. The member name will be present, but the 23243 // value will be replaced with "sensitive". 23244 func (s DescribeReservedNodesOutput) GoString() string { 23245 return s.String() 23246 } 23247 23248 // SetMarker sets the Marker field's value. 23249 func (s *DescribeReservedNodesOutput) SetMarker(v string) *DescribeReservedNodesOutput { 23250 s.Marker = &v 23251 return s 23252 } 23253 23254 // SetReservedNodes sets the ReservedNodes field's value. 23255 func (s *DescribeReservedNodesOutput) SetReservedNodes(v []*ReservedNode) *DescribeReservedNodesOutput { 23256 s.ReservedNodes = v 23257 return s 23258 } 23259 23260 type DescribeResizeInput struct { 23261 _ struct{} `type:"structure"` 23262 23263 // The unique identifier of a cluster whose resize progress you are requesting. 23264 // This parameter is case-sensitive. 23265 // 23266 // By default, resize operations for all clusters defined for an Amazon Web 23267 // Services account are returned. 23268 // 23269 // ClusterIdentifier is a required field 23270 ClusterIdentifier *string `type:"string" required:"true"` 23271 } 23272 23273 // String returns the string representation. 23274 // 23275 // API parameter values that are decorated as "sensitive" in the API will not 23276 // be included in the string output. The member name will be present, but the 23277 // value will be replaced with "sensitive". 23278 func (s DescribeResizeInput) String() string { 23279 return awsutil.Prettify(s) 23280 } 23281 23282 // GoString returns the string representation. 23283 // 23284 // API parameter values that are decorated as "sensitive" in the API will not 23285 // be included in the string output. The member name will be present, but the 23286 // value will be replaced with "sensitive". 23287 func (s DescribeResizeInput) GoString() string { 23288 return s.String() 23289 } 23290 23291 // Validate inspects the fields of the type to determine if they are valid. 23292 func (s *DescribeResizeInput) Validate() error { 23293 invalidParams := request.ErrInvalidParams{Context: "DescribeResizeInput"} 23294 if s.ClusterIdentifier == nil { 23295 invalidParams.Add(request.NewErrParamRequired("ClusterIdentifier")) 23296 } 23297 23298 if invalidParams.Len() > 0 { 23299 return invalidParams 23300 } 23301 return nil 23302 } 23303 23304 // SetClusterIdentifier sets the ClusterIdentifier field's value. 23305 func (s *DescribeResizeInput) SetClusterIdentifier(v string) *DescribeResizeInput { 23306 s.ClusterIdentifier = &v 23307 return s 23308 } 23309 23310 // Describes the result of a cluster resize operation. 23311 type DescribeResizeOutput struct { 23312 _ struct{} `type:"structure"` 23313 23314 // The average rate of the resize operation over the last few minutes, measured 23315 // in megabytes per second. After the resize operation completes, this value 23316 // shows the average rate of the entire resize operation. 23317 AvgResizeRateInMegaBytesPerSecond *float64 `type:"double"` 23318 23319 // The percent of data transferred from source cluster to target cluster. 23320 DataTransferProgressPercent *float64 `type:"double"` 23321 23322 // The amount of seconds that have elapsed since the resize operation began. 23323 // After the resize operation completes, this value shows the total actual time, 23324 // in seconds, for the resize operation. 23325 ElapsedTimeInSeconds *int64 `type:"long"` 23326 23327 // The estimated time remaining, in seconds, until the resize operation is complete. 23328 // This value is calculated based on the average resize rate and the estimated 23329 // amount of data remaining to be processed. Once the resize operation is complete, 23330 // this value will be 0. 23331 EstimatedTimeToCompletionInSeconds *int64 `type:"long"` 23332 23333 // The names of tables that have been completely imported . 23334 // 23335 // Valid Values: List of table names. 23336 ImportTablesCompleted []*string `type:"list"` 23337 23338 // The names of tables that are being currently imported. 23339 // 23340 // Valid Values: List of table names. 23341 ImportTablesInProgress []*string `type:"list"` 23342 23343 // The names of tables that have not been yet imported. 23344 // 23345 // Valid Values: List of table names 23346 ImportTablesNotStarted []*string `type:"list"` 23347 23348 // An optional string to provide additional details about the resize action. 23349 Message *string `type:"string"` 23350 23351 // While the resize operation is in progress, this value shows the current amount 23352 // of data, in megabytes, that has been processed so far. When the resize operation 23353 // is complete, this value shows the total amount of data, in megabytes, on 23354 // the cluster, which may be more or less than TotalResizeDataInMegaBytes (the 23355 // estimated total amount of data before resize). 23356 ProgressInMegaBytes *int64 `type:"long"` 23357 23358 // An enum with possible values of ClassicResize and ElasticResize. These values 23359 // describe the type of resize operation being performed. 23360 ResizeType *string `type:"string"` 23361 23362 // The status of the resize operation. 23363 // 23364 // Valid Values: NONE | IN_PROGRESS | FAILED | SUCCEEDED | CANCELLING 23365 Status *string `type:"string"` 23366 23367 // The cluster type after the resize operation is complete. 23368 // 23369 // Valid Values: multi-node | single-node 23370 TargetClusterType *string `type:"string"` 23371 23372 // The type of encryption for the cluster after the resize is complete. 23373 // 23374 // Possible values are KMS and None. 23375 TargetEncryptionType *string `type:"string"` 23376 23377 // The node type that the cluster will have after the resize operation is complete. 23378 TargetNodeType *string `type:"string"` 23379 23380 // The number of nodes that the cluster will have after the resize operation 23381 // is complete. 23382 TargetNumberOfNodes *int64 `type:"integer"` 23383 23384 // The estimated total amount of data, in megabytes, on the cluster before the 23385 // resize operation began. 23386 TotalResizeDataInMegaBytes *int64 `type:"long"` 23387 } 23388 23389 // String returns the string representation. 23390 // 23391 // API parameter values that are decorated as "sensitive" in the API will not 23392 // be included in the string output. The member name will be present, but the 23393 // value will be replaced with "sensitive". 23394 func (s DescribeResizeOutput) String() string { 23395 return awsutil.Prettify(s) 23396 } 23397 23398 // GoString returns the string representation. 23399 // 23400 // API parameter values that are decorated as "sensitive" in the API will not 23401 // be included in the string output. The member name will be present, but the 23402 // value will be replaced with "sensitive". 23403 func (s DescribeResizeOutput) GoString() string { 23404 return s.String() 23405 } 23406 23407 // SetAvgResizeRateInMegaBytesPerSecond sets the AvgResizeRateInMegaBytesPerSecond field's value. 23408 func (s *DescribeResizeOutput) SetAvgResizeRateInMegaBytesPerSecond(v float64) *DescribeResizeOutput { 23409 s.AvgResizeRateInMegaBytesPerSecond = &v 23410 return s 23411 } 23412 23413 // SetDataTransferProgressPercent sets the DataTransferProgressPercent field's value. 23414 func (s *DescribeResizeOutput) SetDataTransferProgressPercent(v float64) *DescribeResizeOutput { 23415 s.DataTransferProgressPercent = &v 23416 return s 23417 } 23418 23419 // SetElapsedTimeInSeconds sets the ElapsedTimeInSeconds field's value. 23420 func (s *DescribeResizeOutput) SetElapsedTimeInSeconds(v int64) *DescribeResizeOutput { 23421 s.ElapsedTimeInSeconds = &v 23422 return s 23423 } 23424 23425 // SetEstimatedTimeToCompletionInSeconds sets the EstimatedTimeToCompletionInSeconds field's value. 23426 func (s *DescribeResizeOutput) SetEstimatedTimeToCompletionInSeconds(v int64) *DescribeResizeOutput { 23427 s.EstimatedTimeToCompletionInSeconds = &v 23428 return s 23429 } 23430 23431 // SetImportTablesCompleted sets the ImportTablesCompleted field's value. 23432 func (s *DescribeResizeOutput) SetImportTablesCompleted(v []*string) *DescribeResizeOutput { 23433 s.ImportTablesCompleted = v 23434 return s 23435 } 23436 23437 // SetImportTablesInProgress sets the ImportTablesInProgress field's value. 23438 func (s *DescribeResizeOutput) SetImportTablesInProgress(v []*string) *DescribeResizeOutput { 23439 s.ImportTablesInProgress = v 23440 return s 23441 } 23442 23443 // SetImportTablesNotStarted sets the ImportTablesNotStarted field's value. 23444 func (s *DescribeResizeOutput) SetImportTablesNotStarted(v []*string) *DescribeResizeOutput { 23445 s.ImportTablesNotStarted = v 23446 return s 23447 } 23448 23449 // SetMessage sets the Message field's value. 23450 func (s *DescribeResizeOutput) SetMessage(v string) *DescribeResizeOutput { 23451 s.Message = &v 23452 return s 23453 } 23454 23455 // SetProgressInMegaBytes sets the ProgressInMegaBytes field's value. 23456 func (s *DescribeResizeOutput) SetProgressInMegaBytes(v int64) *DescribeResizeOutput { 23457 s.ProgressInMegaBytes = &v 23458 return s 23459 } 23460 23461 // SetResizeType sets the ResizeType field's value. 23462 func (s *DescribeResizeOutput) SetResizeType(v string) *DescribeResizeOutput { 23463 s.ResizeType = &v 23464 return s 23465 } 23466 23467 // SetStatus sets the Status field's value. 23468 func (s *DescribeResizeOutput) SetStatus(v string) *DescribeResizeOutput { 23469 s.Status = &v 23470 return s 23471 } 23472 23473 // SetTargetClusterType sets the TargetClusterType field's value. 23474 func (s *DescribeResizeOutput) SetTargetClusterType(v string) *DescribeResizeOutput { 23475 s.TargetClusterType = &v 23476 return s 23477 } 23478 23479 // SetTargetEncryptionType sets the TargetEncryptionType field's value. 23480 func (s *DescribeResizeOutput) SetTargetEncryptionType(v string) *DescribeResizeOutput { 23481 s.TargetEncryptionType = &v 23482 return s 23483 } 23484 23485 // SetTargetNodeType sets the TargetNodeType field's value. 23486 func (s *DescribeResizeOutput) SetTargetNodeType(v string) *DescribeResizeOutput { 23487 s.TargetNodeType = &v 23488 return s 23489 } 23490 23491 // SetTargetNumberOfNodes sets the TargetNumberOfNodes field's value. 23492 func (s *DescribeResizeOutput) SetTargetNumberOfNodes(v int64) *DescribeResizeOutput { 23493 s.TargetNumberOfNodes = &v 23494 return s 23495 } 23496 23497 // SetTotalResizeDataInMegaBytes sets the TotalResizeDataInMegaBytes field's value. 23498 func (s *DescribeResizeOutput) SetTotalResizeDataInMegaBytes(v int64) *DescribeResizeOutput { 23499 s.TotalResizeDataInMegaBytes = &v 23500 return s 23501 } 23502 23503 type DescribeScheduledActionsInput struct { 23504 _ struct{} `type:"structure"` 23505 23506 // If true, retrieve only active scheduled actions. If false, retrieve only 23507 // disabled scheduled actions. 23508 Active *bool `type:"boolean"` 23509 23510 // The end time in UTC of the scheduled action to retrieve. Only active scheduled 23511 // actions that have invocations before this time are retrieved. 23512 EndTime *time.Time `type:"timestamp"` 23513 23514 // List of scheduled action filters. 23515 Filters []*ScheduledActionFilter `locationNameList:"ScheduledActionFilter" type:"list"` 23516 23517 // An optional parameter that specifies the starting point to return a set of 23518 // response records. When the results of a DescribeScheduledActions request 23519 // exceed the value specified in MaxRecords, Amazon Web Services returns a value 23520 // in the Marker field of the response. You can retrieve the next set of response 23521 // records by providing the returned marker value in the Marker parameter and 23522 // retrying the request. 23523 Marker *string `type:"string"` 23524 23525 // The maximum number of response records to return in each call. If the number 23526 // of remaining response records exceeds the specified MaxRecords value, a value 23527 // is returned in a marker field of the response. You can retrieve the next 23528 // set of records by retrying the command with the returned marker value. 23529 // 23530 // Default: 100 23531 // 23532 // Constraints: minimum 20, maximum 100. 23533 MaxRecords *int64 `type:"integer"` 23534 23535 // The name of the scheduled action to retrieve. 23536 ScheduledActionName *string `type:"string"` 23537 23538 // The start time in UTC of the scheduled actions to retrieve. Only active scheduled 23539 // actions that have invocations after this time are retrieved. 23540 StartTime *time.Time `type:"timestamp"` 23541 23542 // The type of the scheduled actions to retrieve. 23543 TargetActionType *string `type:"string" enum:"ScheduledActionTypeValues"` 23544 } 23545 23546 // String returns the string representation. 23547 // 23548 // API parameter values that are decorated as "sensitive" in the API will not 23549 // be included in the string output. The member name will be present, but the 23550 // value will be replaced with "sensitive". 23551 func (s DescribeScheduledActionsInput) String() string { 23552 return awsutil.Prettify(s) 23553 } 23554 23555 // GoString returns the string representation. 23556 // 23557 // API parameter values that are decorated as "sensitive" in the API will not 23558 // be included in the string output. The member name will be present, but the 23559 // value will be replaced with "sensitive". 23560 func (s DescribeScheduledActionsInput) GoString() string { 23561 return s.String() 23562 } 23563 23564 // Validate inspects the fields of the type to determine if they are valid. 23565 func (s *DescribeScheduledActionsInput) Validate() error { 23566 invalidParams := request.ErrInvalidParams{Context: "DescribeScheduledActionsInput"} 23567 if s.Filters != nil { 23568 for i, v := range s.Filters { 23569 if v == nil { 23570 continue 23571 } 23572 if err := v.Validate(); err != nil { 23573 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) 23574 } 23575 } 23576 } 23577 23578 if invalidParams.Len() > 0 { 23579 return invalidParams 23580 } 23581 return nil 23582 } 23583 23584 // SetActive sets the Active field's value. 23585 func (s *DescribeScheduledActionsInput) SetActive(v bool) *DescribeScheduledActionsInput { 23586 s.Active = &v 23587 return s 23588 } 23589 23590 // SetEndTime sets the EndTime field's value. 23591 func (s *DescribeScheduledActionsInput) SetEndTime(v time.Time) *DescribeScheduledActionsInput { 23592 s.EndTime = &v 23593 return s 23594 } 23595 23596 // SetFilters sets the Filters field's value. 23597 func (s *DescribeScheduledActionsInput) SetFilters(v []*ScheduledActionFilter) *DescribeScheduledActionsInput { 23598 s.Filters = v 23599 return s 23600 } 23601 23602 // SetMarker sets the Marker field's value. 23603 func (s *DescribeScheduledActionsInput) SetMarker(v string) *DescribeScheduledActionsInput { 23604 s.Marker = &v 23605 return s 23606 } 23607 23608 // SetMaxRecords sets the MaxRecords field's value. 23609 func (s *DescribeScheduledActionsInput) SetMaxRecords(v int64) *DescribeScheduledActionsInput { 23610 s.MaxRecords = &v 23611 return s 23612 } 23613 23614 // SetScheduledActionName sets the ScheduledActionName field's value. 23615 func (s *DescribeScheduledActionsInput) SetScheduledActionName(v string) *DescribeScheduledActionsInput { 23616 s.ScheduledActionName = &v 23617 return s 23618 } 23619 23620 // SetStartTime sets the StartTime field's value. 23621 func (s *DescribeScheduledActionsInput) SetStartTime(v time.Time) *DescribeScheduledActionsInput { 23622 s.StartTime = &v 23623 return s 23624 } 23625 23626 // SetTargetActionType sets the TargetActionType field's value. 23627 func (s *DescribeScheduledActionsInput) SetTargetActionType(v string) *DescribeScheduledActionsInput { 23628 s.TargetActionType = &v 23629 return s 23630 } 23631 23632 type DescribeScheduledActionsOutput struct { 23633 _ struct{} `type:"structure"` 23634 23635 // An optional parameter that specifies the starting point to return a set of 23636 // response records. When the results of a DescribeScheduledActions request 23637 // exceed the value specified in MaxRecords, Amazon Web Services returns a value 23638 // in the Marker field of the response. You can retrieve the next set of response 23639 // records by providing the returned marker value in the Marker parameter and 23640 // retrying the request. 23641 Marker *string `type:"string"` 23642 23643 // List of retrieved scheduled actions. 23644 ScheduledActions []*ScheduledAction `locationNameList:"ScheduledAction" type:"list"` 23645 } 23646 23647 // String returns the string representation. 23648 // 23649 // API parameter values that are decorated as "sensitive" in the API will not 23650 // be included in the string output. The member name will be present, but the 23651 // value will be replaced with "sensitive". 23652 func (s DescribeScheduledActionsOutput) String() string { 23653 return awsutil.Prettify(s) 23654 } 23655 23656 // GoString returns the string representation. 23657 // 23658 // API parameter values that are decorated as "sensitive" in the API will not 23659 // be included in the string output. The member name will be present, but the 23660 // value will be replaced with "sensitive". 23661 func (s DescribeScheduledActionsOutput) GoString() string { 23662 return s.String() 23663 } 23664 23665 // SetMarker sets the Marker field's value. 23666 func (s *DescribeScheduledActionsOutput) SetMarker(v string) *DescribeScheduledActionsOutput { 23667 s.Marker = &v 23668 return s 23669 } 23670 23671 // SetScheduledActions sets the ScheduledActions field's value. 23672 func (s *DescribeScheduledActionsOutput) SetScheduledActions(v []*ScheduledAction) *DescribeScheduledActionsOutput { 23673 s.ScheduledActions = v 23674 return s 23675 } 23676 23677 // The result of the DescribeSnapshotCopyGrants action. 23678 type DescribeSnapshotCopyGrantsInput struct { 23679 _ struct{} `type:"structure"` 23680 23681 // An optional parameter that specifies the starting point to return a set of 23682 // response records. When the results of a DescribeSnapshotCopyGrant request 23683 // exceed the value specified in MaxRecords, Amazon Web Services returns a value 23684 // in the Marker field of the response. You can retrieve the next set of response 23685 // records by providing the returned marker value in the Marker parameter and 23686 // retrying the request. 23687 // 23688 // Constraints: You can specify either the SnapshotCopyGrantName parameter or 23689 // the Marker parameter, but not both. 23690 Marker *string `type:"string"` 23691 23692 // The maximum number of response records to return in each call. If the number 23693 // of remaining response records exceeds the specified MaxRecords value, a value 23694 // is returned in a marker field of the response. You can retrieve the next 23695 // set of records by retrying the command with the returned marker value. 23696 // 23697 // Default: 100 23698 // 23699 // Constraints: minimum 20, maximum 100. 23700 MaxRecords *int64 `type:"integer"` 23701 23702 // The name of the snapshot copy grant. 23703 SnapshotCopyGrantName *string `type:"string"` 23704 23705 // A tag key or keys for which you want to return all matching resources that 23706 // are associated with the specified key or keys. For example, suppose that 23707 // you have resources tagged with keys called owner and environment. If you 23708 // specify both of these tag keys in the request, Amazon Redshift returns a 23709 // response with all resources that have either or both of these tag keys associated 23710 // with them. 23711 TagKeys []*string `locationNameList:"TagKey" type:"list"` 23712 23713 // A tag value or values for which you want to return all matching resources 23714 // that are associated with the specified value or values. For example, suppose 23715 // that you have resources tagged with values called admin and test. If you 23716 // specify both of these tag values in the request, Amazon Redshift returns 23717 // a response with all resources that have either or both of these tag values 23718 // associated with them. 23719 TagValues []*string `locationNameList:"TagValue" type:"list"` 23720 } 23721 23722 // String returns the string representation. 23723 // 23724 // API parameter values that are decorated as "sensitive" in the API will not 23725 // be included in the string output. The member name will be present, but the 23726 // value will be replaced with "sensitive". 23727 func (s DescribeSnapshotCopyGrantsInput) String() string { 23728 return awsutil.Prettify(s) 23729 } 23730 23731 // GoString returns the string representation. 23732 // 23733 // API parameter values that are decorated as "sensitive" in the API will not 23734 // be included in the string output. The member name will be present, but the 23735 // value will be replaced with "sensitive". 23736 func (s DescribeSnapshotCopyGrantsInput) GoString() string { 23737 return s.String() 23738 } 23739 23740 // SetMarker sets the Marker field's value. 23741 func (s *DescribeSnapshotCopyGrantsInput) SetMarker(v string) *DescribeSnapshotCopyGrantsInput { 23742 s.Marker = &v 23743 return s 23744 } 23745 23746 // SetMaxRecords sets the MaxRecords field's value. 23747 func (s *DescribeSnapshotCopyGrantsInput) SetMaxRecords(v int64) *DescribeSnapshotCopyGrantsInput { 23748 s.MaxRecords = &v 23749 return s 23750 } 23751 23752 // SetSnapshotCopyGrantName sets the SnapshotCopyGrantName field's value. 23753 func (s *DescribeSnapshotCopyGrantsInput) SetSnapshotCopyGrantName(v string) *DescribeSnapshotCopyGrantsInput { 23754 s.SnapshotCopyGrantName = &v 23755 return s 23756 } 23757 23758 // SetTagKeys sets the TagKeys field's value. 23759 func (s *DescribeSnapshotCopyGrantsInput) SetTagKeys(v []*string) *DescribeSnapshotCopyGrantsInput { 23760 s.TagKeys = v 23761 return s 23762 } 23763 23764 // SetTagValues sets the TagValues field's value. 23765 func (s *DescribeSnapshotCopyGrantsInput) SetTagValues(v []*string) *DescribeSnapshotCopyGrantsInput { 23766 s.TagValues = v 23767 return s 23768 } 23769 23770 type DescribeSnapshotCopyGrantsOutput struct { 23771 _ struct{} `type:"structure"` 23772 23773 // An optional parameter that specifies the starting point to return a set of 23774 // response records. When the results of a DescribeSnapshotCopyGrant request 23775 // exceed the value specified in MaxRecords, Amazon Web Services returns a value 23776 // in the Marker field of the response. You can retrieve the next set of response 23777 // records by providing the returned marker value in the Marker parameter and 23778 // retrying the request. 23779 // 23780 // Constraints: You can specify either the SnapshotCopyGrantName parameter or 23781 // the Marker parameter, but not both. 23782 Marker *string `type:"string"` 23783 23784 // The list of SnapshotCopyGrant objects. 23785 SnapshotCopyGrants []*SnapshotCopyGrant `locationNameList:"SnapshotCopyGrant" type:"list"` 23786 } 23787 23788 // String returns the string representation. 23789 // 23790 // API parameter values that are decorated as "sensitive" in the API will not 23791 // be included in the string output. The member name will be present, but the 23792 // value will be replaced with "sensitive". 23793 func (s DescribeSnapshotCopyGrantsOutput) String() string { 23794 return awsutil.Prettify(s) 23795 } 23796 23797 // GoString returns the string representation. 23798 // 23799 // API parameter values that are decorated as "sensitive" in the API will not 23800 // be included in the string output. The member name will be present, but the 23801 // value will be replaced with "sensitive". 23802 func (s DescribeSnapshotCopyGrantsOutput) GoString() string { 23803 return s.String() 23804 } 23805 23806 // SetMarker sets the Marker field's value. 23807 func (s *DescribeSnapshotCopyGrantsOutput) SetMarker(v string) *DescribeSnapshotCopyGrantsOutput { 23808 s.Marker = &v 23809 return s 23810 } 23811 23812 // SetSnapshotCopyGrants sets the SnapshotCopyGrants field's value. 23813 func (s *DescribeSnapshotCopyGrantsOutput) SetSnapshotCopyGrants(v []*SnapshotCopyGrant) *DescribeSnapshotCopyGrantsOutput { 23814 s.SnapshotCopyGrants = v 23815 return s 23816 } 23817 23818 type DescribeSnapshotSchedulesInput struct { 23819 _ struct{} `type:"structure"` 23820 23821 // The unique identifier for the cluster whose snapshot schedules you want to 23822 // view. 23823 ClusterIdentifier *string `type:"string"` 23824 23825 // A value that indicates the starting point for the next set of response records 23826 // in a subsequent request. If a value is returned in a response, you can retrieve 23827 // the next set of records by providing this returned marker value in the marker 23828 // parameter and retrying the command. If the marker field is empty, all response 23829 // records have been retrieved for the request. 23830 Marker *string `type:"string"` 23831 23832 // The maximum number or response records to return in each call. If the number 23833 // of remaining response records exceeds the specified MaxRecords value, a value 23834 // is returned in a marker field of the response. You can retrieve the next 23835 // set of records by retrying the command with the returned marker value. 23836 MaxRecords *int64 `type:"integer"` 23837 23838 // A unique identifier for a snapshot schedule. 23839 ScheduleIdentifier *string `type:"string"` 23840 23841 // The key value for a snapshot schedule tag. 23842 TagKeys []*string `locationNameList:"TagKey" type:"list"` 23843 23844 // The value corresponding to the key of the snapshot schedule tag. 23845 TagValues []*string `locationNameList:"TagValue" type:"list"` 23846 } 23847 23848 // String returns the string representation. 23849 // 23850 // API parameter values that are decorated as "sensitive" in the API will not 23851 // be included in the string output. The member name will be present, but the 23852 // value will be replaced with "sensitive". 23853 func (s DescribeSnapshotSchedulesInput) String() string { 23854 return awsutil.Prettify(s) 23855 } 23856 23857 // GoString returns the string representation. 23858 // 23859 // API parameter values that are decorated as "sensitive" in the API will not 23860 // be included in the string output. The member name will be present, but the 23861 // value will be replaced with "sensitive". 23862 func (s DescribeSnapshotSchedulesInput) GoString() string { 23863 return s.String() 23864 } 23865 23866 // SetClusterIdentifier sets the ClusterIdentifier field's value. 23867 func (s *DescribeSnapshotSchedulesInput) SetClusterIdentifier(v string) *DescribeSnapshotSchedulesInput { 23868 s.ClusterIdentifier = &v 23869 return s 23870 } 23871 23872 // SetMarker sets the Marker field's value. 23873 func (s *DescribeSnapshotSchedulesInput) SetMarker(v string) *DescribeSnapshotSchedulesInput { 23874 s.Marker = &v 23875 return s 23876 } 23877 23878 // SetMaxRecords sets the MaxRecords field's value. 23879 func (s *DescribeSnapshotSchedulesInput) SetMaxRecords(v int64) *DescribeSnapshotSchedulesInput { 23880 s.MaxRecords = &v 23881 return s 23882 } 23883 23884 // SetScheduleIdentifier sets the ScheduleIdentifier field's value. 23885 func (s *DescribeSnapshotSchedulesInput) SetScheduleIdentifier(v string) *DescribeSnapshotSchedulesInput { 23886 s.ScheduleIdentifier = &v 23887 return s 23888 } 23889 23890 // SetTagKeys sets the TagKeys field's value. 23891 func (s *DescribeSnapshotSchedulesInput) SetTagKeys(v []*string) *DescribeSnapshotSchedulesInput { 23892 s.TagKeys = v 23893 return s 23894 } 23895 23896 // SetTagValues sets the TagValues field's value. 23897 func (s *DescribeSnapshotSchedulesInput) SetTagValues(v []*string) *DescribeSnapshotSchedulesInput { 23898 s.TagValues = v 23899 return s 23900 } 23901 23902 type DescribeSnapshotSchedulesOutput struct { 23903 _ struct{} `type:"structure"` 23904 23905 // A value that indicates the starting point for the next set of response records 23906 // in a subsequent request. If a value is returned in a response, you can retrieve 23907 // the next set of records by providing this returned marker value in the marker 23908 // parameter and retrying the command. If the marker field is empty, all response 23909 // records have been retrieved for the request. 23910 Marker *string `type:"string"` 23911 23912 // A list of SnapshotSchedules. 23913 SnapshotSchedules []*SnapshotSchedule `locationNameList:"SnapshotSchedule" type:"list"` 23914 } 23915 23916 // String returns the string representation. 23917 // 23918 // API parameter values that are decorated as "sensitive" in the API will not 23919 // be included in the string output. The member name will be present, but the 23920 // value will be replaced with "sensitive". 23921 func (s DescribeSnapshotSchedulesOutput) String() string { 23922 return awsutil.Prettify(s) 23923 } 23924 23925 // GoString returns the string representation. 23926 // 23927 // API parameter values that are decorated as "sensitive" in the API will not 23928 // be included in the string output. The member name will be present, but the 23929 // value will be replaced with "sensitive". 23930 func (s DescribeSnapshotSchedulesOutput) GoString() string { 23931 return s.String() 23932 } 23933 23934 // SetMarker sets the Marker field's value. 23935 func (s *DescribeSnapshotSchedulesOutput) SetMarker(v string) *DescribeSnapshotSchedulesOutput { 23936 s.Marker = &v 23937 return s 23938 } 23939 23940 // SetSnapshotSchedules sets the SnapshotSchedules field's value. 23941 func (s *DescribeSnapshotSchedulesOutput) SetSnapshotSchedules(v []*SnapshotSchedule) *DescribeSnapshotSchedulesOutput { 23942 s.SnapshotSchedules = v 23943 return s 23944 } 23945 23946 type DescribeStorageInput struct { 23947 _ struct{} `type:"structure"` 23948 } 23949 23950 // String returns the string representation. 23951 // 23952 // API parameter values that are decorated as "sensitive" in the API will not 23953 // be included in the string output. The member name will be present, but the 23954 // value will be replaced with "sensitive". 23955 func (s DescribeStorageInput) String() string { 23956 return awsutil.Prettify(s) 23957 } 23958 23959 // GoString returns the string representation. 23960 // 23961 // API parameter values that are decorated as "sensitive" in the API will not 23962 // be included in the string output. The member name will be present, but the 23963 // value will be replaced with "sensitive". 23964 func (s DescribeStorageInput) GoString() string { 23965 return s.String() 23966 } 23967 23968 type DescribeStorageOutput struct { 23969 _ struct{} `type:"structure"` 23970 23971 // The total amount of storage currently used for snapshots. 23972 TotalBackupSizeInMegaBytes *float64 `type:"double"` 23973 23974 // The total amount of storage currently provisioned. 23975 TotalProvisionedStorageInMegaBytes *float64 `type:"double"` 23976 } 23977 23978 // String returns the string representation. 23979 // 23980 // API parameter values that are decorated as "sensitive" in the API will not 23981 // be included in the string output. The member name will be present, but the 23982 // value will be replaced with "sensitive". 23983 func (s DescribeStorageOutput) String() string { 23984 return awsutil.Prettify(s) 23985 } 23986 23987 // GoString returns the string representation. 23988 // 23989 // API parameter values that are decorated as "sensitive" in the API will not 23990 // be included in the string output. The member name will be present, but the 23991 // value will be replaced with "sensitive". 23992 func (s DescribeStorageOutput) GoString() string { 23993 return s.String() 23994 } 23995 23996 // SetTotalBackupSizeInMegaBytes sets the TotalBackupSizeInMegaBytes field's value. 23997 func (s *DescribeStorageOutput) SetTotalBackupSizeInMegaBytes(v float64) *DescribeStorageOutput { 23998 s.TotalBackupSizeInMegaBytes = &v 23999 return s 24000 } 24001 24002 // SetTotalProvisionedStorageInMegaBytes sets the TotalProvisionedStorageInMegaBytes field's value. 24003 func (s *DescribeStorageOutput) SetTotalProvisionedStorageInMegaBytes(v float64) *DescribeStorageOutput { 24004 s.TotalProvisionedStorageInMegaBytes = &v 24005 return s 24006 } 24007 24008 type DescribeTableRestoreStatusInput struct { 24009 _ struct{} `type:"structure"` 24010 24011 // The Amazon Redshift cluster that the table is being restored to. 24012 ClusterIdentifier *string `type:"string"` 24013 24014 // An optional pagination token provided by a previous DescribeTableRestoreStatus 24015 // request. If this parameter is specified, the response includes only records 24016 // beyond the marker, up to the value specified by the MaxRecords parameter. 24017 Marker *string `type:"string"` 24018 24019 // The maximum number of records to include in the response. If more records 24020 // exist than the specified MaxRecords value, a pagination token called a marker 24021 // is included in the response so that the remaining results can be retrieved. 24022 MaxRecords *int64 `type:"integer"` 24023 24024 // The identifier of the table restore request to return status for. If you 24025 // don't specify a TableRestoreRequestId value, then DescribeTableRestoreStatus 24026 // returns the status of all in-progress table restore requests. 24027 TableRestoreRequestId *string `type:"string"` 24028 } 24029 24030 // String returns the string representation. 24031 // 24032 // API parameter values that are decorated as "sensitive" in the API will not 24033 // be included in the string output. The member name will be present, but the 24034 // value will be replaced with "sensitive". 24035 func (s DescribeTableRestoreStatusInput) String() string { 24036 return awsutil.Prettify(s) 24037 } 24038 24039 // GoString returns the string representation. 24040 // 24041 // API parameter values that are decorated as "sensitive" in the API will not 24042 // be included in the string output. The member name will be present, but the 24043 // value will be replaced with "sensitive". 24044 func (s DescribeTableRestoreStatusInput) GoString() string { 24045 return s.String() 24046 } 24047 24048 // SetClusterIdentifier sets the ClusterIdentifier field's value. 24049 func (s *DescribeTableRestoreStatusInput) SetClusterIdentifier(v string) *DescribeTableRestoreStatusInput { 24050 s.ClusterIdentifier = &v 24051 return s 24052 } 24053 24054 // SetMarker sets the Marker field's value. 24055 func (s *DescribeTableRestoreStatusInput) SetMarker(v string) *DescribeTableRestoreStatusInput { 24056 s.Marker = &v 24057 return s 24058 } 24059 24060 // SetMaxRecords sets the MaxRecords field's value. 24061 func (s *DescribeTableRestoreStatusInput) SetMaxRecords(v int64) *DescribeTableRestoreStatusInput { 24062 s.MaxRecords = &v 24063 return s 24064 } 24065 24066 // SetTableRestoreRequestId sets the TableRestoreRequestId field's value. 24067 func (s *DescribeTableRestoreStatusInput) SetTableRestoreRequestId(v string) *DescribeTableRestoreStatusInput { 24068 s.TableRestoreRequestId = &v 24069 return s 24070 } 24071 24072 type DescribeTableRestoreStatusOutput struct { 24073 _ struct{} `type:"structure"` 24074 24075 // A pagination token that can be used in a subsequent DescribeTableRestoreStatus 24076 // request. 24077 Marker *string `type:"string"` 24078 24079 // A list of status details for one or more table restore requests. 24080 TableRestoreStatusDetails []*TableRestoreStatus `locationNameList:"TableRestoreStatus" type:"list"` 24081 } 24082 24083 // String returns the string representation. 24084 // 24085 // API parameter values that are decorated as "sensitive" in the API will not 24086 // be included in the string output. The member name will be present, but the 24087 // value will be replaced with "sensitive". 24088 func (s DescribeTableRestoreStatusOutput) String() string { 24089 return awsutil.Prettify(s) 24090 } 24091 24092 // GoString returns the string representation. 24093 // 24094 // API parameter values that are decorated as "sensitive" in the API will not 24095 // be included in the string output. The member name will be present, but the 24096 // value will be replaced with "sensitive". 24097 func (s DescribeTableRestoreStatusOutput) GoString() string { 24098 return s.String() 24099 } 24100 24101 // SetMarker sets the Marker field's value. 24102 func (s *DescribeTableRestoreStatusOutput) SetMarker(v string) *DescribeTableRestoreStatusOutput { 24103 s.Marker = &v 24104 return s 24105 } 24106 24107 // SetTableRestoreStatusDetails sets the TableRestoreStatusDetails field's value. 24108 func (s *DescribeTableRestoreStatusOutput) SetTableRestoreStatusDetails(v []*TableRestoreStatus) *DescribeTableRestoreStatusOutput { 24109 s.TableRestoreStatusDetails = v 24110 return s 24111 } 24112 24113 type DescribeTagsInput struct { 24114 _ struct{} `type:"structure"` 24115 24116 // A value that indicates the starting point for the next set of response records 24117 // in a subsequent request. If a value is returned in a response, you can retrieve 24118 // the next set of records by providing this returned marker value in the marker 24119 // parameter and retrying the command. If the marker field is empty, all response 24120 // records have been retrieved for the request. 24121 Marker *string `type:"string"` 24122 24123 // The maximum number or response records to return in each call. If the number 24124 // of remaining response records exceeds the specified MaxRecords value, a value 24125 // is returned in a marker field of the response. You can retrieve the next 24126 // set of records by retrying the command with the returned marker value. 24127 MaxRecords *int64 `type:"integer"` 24128 24129 // The Amazon Resource Name (ARN) for which you want to describe the tag or 24130 // tags. For example, arn:aws:redshift:us-east-2:123456789:cluster:t1. 24131 ResourceName *string `type:"string"` 24132 24133 // The type of resource with which you want to view tags. Valid resource types 24134 // are: 24135 // 24136 // * Cluster 24137 // 24138 // * CIDR/IP 24139 // 24140 // * EC2 security group 24141 // 24142 // * Snapshot 24143 // 24144 // * Cluster security group 24145 // 24146 // * Subnet group 24147 // 24148 // * HSM connection 24149 // 24150 // * HSM certificate 24151 // 24152 // * Parameter group 24153 // 24154 // * Snapshot copy grant 24155 // 24156 // For more information about Amazon Redshift resource types and constructing 24157 // ARNs, go to Specifying Policy Elements: Actions, Effects, Resources, and 24158 // Principals (https://docs.aws.amazon.com/redshift/latest/mgmt/redshift-iam-access-control-overview.html#redshift-iam-access-control-specify-actions) 24159 // in the Amazon Redshift Cluster Management Guide. 24160 ResourceType *string `type:"string"` 24161 24162 // A tag key or keys for which you want to return all matching resources that 24163 // are associated with the specified key or keys. For example, suppose that 24164 // you have resources tagged with keys called owner and environment. If you 24165 // specify both of these tag keys in the request, Amazon Redshift returns a 24166 // response with all resources that have either or both of these tag keys associated 24167 // with them. 24168 TagKeys []*string `locationNameList:"TagKey" type:"list"` 24169 24170 // A tag value or values for which you want to return all matching resources 24171 // that are associated with the specified value or values. For example, suppose 24172 // that you have resources tagged with values called admin and test. If you 24173 // specify both of these tag values in the request, Amazon Redshift returns 24174 // a response with all resources that have either or both of these tag values 24175 // associated with them. 24176 TagValues []*string `locationNameList:"TagValue" type:"list"` 24177 } 24178 24179 // String returns the string representation. 24180 // 24181 // API parameter values that are decorated as "sensitive" in the API will not 24182 // be included in the string output. The member name will be present, but the 24183 // value will be replaced with "sensitive". 24184 func (s DescribeTagsInput) String() string { 24185 return awsutil.Prettify(s) 24186 } 24187 24188 // GoString returns the string representation. 24189 // 24190 // API parameter values that are decorated as "sensitive" in the API will not 24191 // be included in the string output. The member name will be present, but the 24192 // value will be replaced with "sensitive". 24193 func (s DescribeTagsInput) GoString() string { 24194 return s.String() 24195 } 24196 24197 // SetMarker sets the Marker field's value. 24198 func (s *DescribeTagsInput) SetMarker(v string) *DescribeTagsInput { 24199 s.Marker = &v 24200 return s 24201 } 24202 24203 // SetMaxRecords sets the MaxRecords field's value. 24204 func (s *DescribeTagsInput) SetMaxRecords(v int64) *DescribeTagsInput { 24205 s.MaxRecords = &v 24206 return s 24207 } 24208 24209 // SetResourceName sets the ResourceName field's value. 24210 func (s *DescribeTagsInput) SetResourceName(v string) *DescribeTagsInput { 24211 s.ResourceName = &v 24212 return s 24213 } 24214 24215 // SetResourceType sets the ResourceType field's value. 24216 func (s *DescribeTagsInput) SetResourceType(v string) *DescribeTagsInput { 24217 s.ResourceType = &v 24218 return s 24219 } 24220 24221 // SetTagKeys sets the TagKeys field's value. 24222 func (s *DescribeTagsInput) SetTagKeys(v []*string) *DescribeTagsInput { 24223 s.TagKeys = v 24224 return s 24225 } 24226 24227 // SetTagValues sets the TagValues field's value. 24228 func (s *DescribeTagsInput) SetTagValues(v []*string) *DescribeTagsInput { 24229 s.TagValues = v 24230 return s 24231 } 24232 24233 type DescribeTagsOutput struct { 24234 _ struct{} `type:"structure"` 24235 24236 // A value that indicates the starting point for the next set of response records 24237 // in a subsequent request. If a value is returned in a response, you can retrieve 24238 // the next set of records by providing this returned marker value in the Marker 24239 // parameter and retrying the command. If the Marker field is empty, all response 24240 // records have been retrieved for the request. 24241 Marker *string `type:"string"` 24242 24243 // A list of tags with their associated resources. 24244 TaggedResources []*TaggedResource `locationNameList:"TaggedResource" type:"list"` 24245 } 24246 24247 // String returns the string representation. 24248 // 24249 // API parameter values that are decorated as "sensitive" in the API will not 24250 // be included in the string output. The member name will be present, but the 24251 // value will be replaced with "sensitive". 24252 func (s DescribeTagsOutput) String() string { 24253 return awsutil.Prettify(s) 24254 } 24255 24256 // GoString returns the string representation. 24257 // 24258 // API parameter values that are decorated as "sensitive" in the API will not 24259 // be included in the string output. The member name will be present, but the 24260 // value will be replaced with "sensitive". 24261 func (s DescribeTagsOutput) GoString() string { 24262 return s.String() 24263 } 24264 24265 // SetMarker sets the Marker field's value. 24266 func (s *DescribeTagsOutput) SetMarker(v string) *DescribeTagsOutput { 24267 s.Marker = &v 24268 return s 24269 } 24270 24271 // SetTaggedResources sets the TaggedResources field's value. 24272 func (s *DescribeTagsOutput) SetTaggedResources(v []*TaggedResource) *DescribeTagsOutput { 24273 s.TaggedResources = v 24274 return s 24275 } 24276 24277 type DescribeUsageLimitsInput struct { 24278 _ struct{} `type:"structure"` 24279 24280 // The identifier of the cluster for which you want to describe usage limits. 24281 ClusterIdentifier *string `type:"string"` 24282 24283 // The feature type for which you want to describe usage limits. 24284 FeatureType *string `type:"string" enum:"UsageLimitFeatureType"` 24285 24286 // An optional parameter that specifies the starting point to return a set of 24287 // response records. When the results of a DescribeUsageLimits request exceed 24288 // the value specified in MaxRecords, Amazon Web Services returns a value in 24289 // the Marker field of the response. You can retrieve the next set of response 24290 // records by providing the returned marker value in the Marker parameter and 24291 // retrying the request. 24292 Marker *string `type:"string"` 24293 24294 // The maximum number of response records to return in each call. If the number 24295 // of remaining response records exceeds the specified MaxRecords value, a value 24296 // is returned in a marker field of the response. You can retrieve the next 24297 // set of records by retrying the command with the returned marker value. 24298 // 24299 // Default: 100 24300 // 24301 // Constraints: minimum 20, maximum 100. 24302 MaxRecords *int64 `type:"integer"` 24303 24304 // A tag key or keys for which you want to return all matching usage limit objects 24305 // that are associated with the specified key or keys. For example, suppose 24306 // that you have parameter groups that are tagged with keys called owner and 24307 // environment. If you specify both of these tag keys in the request, Amazon 24308 // Redshift returns a response with the usage limit objects have either or both 24309 // of these tag keys associated with them. 24310 TagKeys []*string `locationNameList:"TagKey" type:"list"` 24311 24312 // A tag value or values for which you want to return all matching usage limit 24313 // objects that are associated with the specified tag value or values. For example, 24314 // suppose that you have parameter groups that are tagged with values called 24315 // admin and test. If you specify both of these tag values in the request, Amazon 24316 // Redshift returns a response with the usage limit objects that have either 24317 // or both of these tag values associated with them. 24318 TagValues []*string `locationNameList:"TagValue" type:"list"` 24319 24320 // The identifier of the usage limit to describe. 24321 UsageLimitId *string `type:"string"` 24322 } 24323 24324 // String returns the string representation. 24325 // 24326 // API parameter values that are decorated as "sensitive" in the API will not 24327 // be included in the string output. The member name will be present, but the 24328 // value will be replaced with "sensitive". 24329 func (s DescribeUsageLimitsInput) String() string { 24330 return awsutil.Prettify(s) 24331 } 24332 24333 // GoString returns the string representation. 24334 // 24335 // API parameter values that are decorated as "sensitive" in the API will not 24336 // be included in the string output. The member name will be present, but the 24337 // value will be replaced with "sensitive". 24338 func (s DescribeUsageLimitsInput) GoString() string { 24339 return s.String() 24340 } 24341 24342 // SetClusterIdentifier sets the ClusterIdentifier field's value. 24343 func (s *DescribeUsageLimitsInput) SetClusterIdentifier(v string) *DescribeUsageLimitsInput { 24344 s.ClusterIdentifier = &v 24345 return s 24346 } 24347 24348 // SetFeatureType sets the FeatureType field's value. 24349 func (s *DescribeUsageLimitsInput) SetFeatureType(v string) *DescribeUsageLimitsInput { 24350 s.FeatureType = &v 24351 return s 24352 } 24353 24354 // SetMarker sets the Marker field's value. 24355 func (s *DescribeUsageLimitsInput) SetMarker(v string) *DescribeUsageLimitsInput { 24356 s.Marker = &v 24357 return s 24358 } 24359 24360 // SetMaxRecords sets the MaxRecords field's value. 24361 func (s *DescribeUsageLimitsInput) SetMaxRecords(v int64) *DescribeUsageLimitsInput { 24362 s.MaxRecords = &v 24363 return s 24364 } 24365 24366 // SetTagKeys sets the TagKeys field's value. 24367 func (s *DescribeUsageLimitsInput) SetTagKeys(v []*string) *DescribeUsageLimitsInput { 24368 s.TagKeys = v 24369 return s 24370 } 24371 24372 // SetTagValues sets the TagValues field's value. 24373 func (s *DescribeUsageLimitsInput) SetTagValues(v []*string) *DescribeUsageLimitsInput { 24374 s.TagValues = v 24375 return s 24376 } 24377 24378 // SetUsageLimitId sets the UsageLimitId field's value. 24379 func (s *DescribeUsageLimitsInput) SetUsageLimitId(v string) *DescribeUsageLimitsInput { 24380 s.UsageLimitId = &v 24381 return s 24382 } 24383 24384 type DescribeUsageLimitsOutput struct { 24385 _ struct{} `type:"structure"` 24386 24387 // A value that indicates the starting point for the next set of response records 24388 // in a subsequent request. If a value is returned in a response, you can retrieve 24389 // the next set of records by providing this returned marker value in the Marker 24390 // parameter and retrying the command. If the Marker field is empty, all response 24391 // records have been retrieved for the request. 24392 Marker *string `type:"string"` 24393 24394 // Contains the output from the DescribeUsageLimits action. 24395 UsageLimits []*UsageLimit `type:"list"` 24396 } 24397 24398 // String returns the string representation. 24399 // 24400 // API parameter values that are decorated as "sensitive" in the API will not 24401 // be included in the string output. The member name will be present, but the 24402 // value will be replaced with "sensitive". 24403 func (s DescribeUsageLimitsOutput) String() string { 24404 return awsutil.Prettify(s) 24405 } 24406 24407 // GoString returns the string representation. 24408 // 24409 // API parameter values that are decorated as "sensitive" in the API will not 24410 // be included in the string output. The member name will be present, but the 24411 // value will be replaced with "sensitive". 24412 func (s DescribeUsageLimitsOutput) GoString() string { 24413 return s.String() 24414 } 24415 24416 // SetMarker sets the Marker field's value. 24417 func (s *DescribeUsageLimitsOutput) SetMarker(v string) *DescribeUsageLimitsOutput { 24418 s.Marker = &v 24419 return s 24420 } 24421 24422 // SetUsageLimits sets the UsageLimits field's value. 24423 func (s *DescribeUsageLimitsOutput) SetUsageLimits(v []*UsageLimit) *DescribeUsageLimitsOutput { 24424 s.UsageLimits = v 24425 return s 24426 } 24427 24428 type DisableLoggingInput struct { 24429 _ struct{} `type:"structure"` 24430 24431 // The identifier of the cluster on which logging is to be stopped. 24432 // 24433 // Example: examplecluster 24434 // 24435 // ClusterIdentifier is a required field 24436 ClusterIdentifier *string `type:"string" required:"true"` 24437 } 24438 24439 // String returns the string representation. 24440 // 24441 // API parameter values that are decorated as "sensitive" in the API will not 24442 // be included in the string output. The member name will be present, but the 24443 // value will be replaced with "sensitive". 24444 func (s DisableLoggingInput) String() string { 24445 return awsutil.Prettify(s) 24446 } 24447 24448 // GoString returns the string representation. 24449 // 24450 // API parameter values that are decorated as "sensitive" in the API will not 24451 // be included in the string output. The member name will be present, but the 24452 // value will be replaced with "sensitive". 24453 func (s DisableLoggingInput) GoString() string { 24454 return s.String() 24455 } 24456 24457 // Validate inspects the fields of the type to determine if they are valid. 24458 func (s *DisableLoggingInput) Validate() error { 24459 invalidParams := request.ErrInvalidParams{Context: "DisableLoggingInput"} 24460 if s.ClusterIdentifier == nil { 24461 invalidParams.Add(request.NewErrParamRequired("ClusterIdentifier")) 24462 } 24463 24464 if invalidParams.Len() > 0 { 24465 return invalidParams 24466 } 24467 return nil 24468 } 24469 24470 // SetClusterIdentifier sets the ClusterIdentifier field's value. 24471 func (s *DisableLoggingInput) SetClusterIdentifier(v string) *DisableLoggingInput { 24472 s.ClusterIdentifier = &v 24473 return s 24474 } 24475 24476 type DisableSnapshotCopyInput struct { 24477 _ struct{} `type:"structure"` 24478 24479 // The unique identifier of the source cluster that you want to disable copying 24480 // of snapshots to a destination region. 24481 // 24482 // Constraints: Must be the valid name of an existing cluster that has cross-region 24483 // snapshot copy enabled. 24484 // 24485 // ClusterIdentifier is a required field 24486 ClusterIdentifier *string `type:"string" required:"true"` 24487 } 24488 24489 // String returns the string representation. 24490 // 24491 // API parameter values that are decorated as "sensitive" in the API will not 24492 // be included in the string output. The member name will be present, but the 24493 // value will be replaced with "sensitive". 24494 func (s DisableSnapshotCopyInput) String() string { 24495 return awsutil.Prettify(s) 24496 } 24497 24498 // GoString returns the string representation. 24499 // 24500 // API parameter values that are decorated as "sensitive" in the API will not 24501 // be included in the string output. The member name will be present, but the 24502 // value will be replaced with "sensitive". 24503 func (s DisableSnapshotCopyInput) GoString() string { 24504 return s.String() 24505 } 24506 24507 // Validate inspects the fields of the type to determine if they are valid. 24508 func (s *DisableSnapshotCopyInput) Validate() error { 24509 invalidParams := request.ErrInvalidParams{Context: "DisableSnapshotCopyInput"} 24510 if s.ClusterIdentifier == nil { 24511 invalidParams.Add(request.NewErrParamRequired("ClusterIdentifier")) 24512 } 24513 24514 if invalidParams.Len() > 0 { 24515 return invalidParams 24516 } 24517 return nil 24518 } 24519 24520 // SetClusterIdentifier sets the ClusterIdentifier field's value. 24521 func (s *DisableSnapshotCopyInput) SetClusterIdentifier(v string) *DisableSnapshotCopyInput { 24522 s.ClusterIdentifier = &v 24523 return s 24524 } 24525 24526 type DisableSnapshotCopyOutput struct { 24527 _ struct{} `type:"structure"` 24528 24529 // Describes a cluster. 24530 Cluster *Cluster `type:"structure"` 24531 } 24532 24533 // String returns the string representation. 24534 // 24535 // API parameter values that are decorated as "sensitive" in the API will not 24536 // be included in the string output. The member name will be present, but the 24537 // value will be replaced with "sensitive". 24538 func (s DisableSnapshotCopyOutput) String() string { 24539 return awsutil.Prettify(s) 24540 } 24541 24542 // GoString returns the string representation. 24543 // 24544 // API parameter values that are decorated as "sensitive" in the API will not 24545 // be included in the string output. The member name will be present, but the 24546 // value will be replaced with "sensitive". 24547 func (s DisableSnapshotCopyOutput) GoString() string { 24548 return s.String() 24549 } 24550 24551 // SetCluster sets the Cluster field's value. 24552 func (s *DisableSnapshotCopyOutput) SetCluster(v *Cluster) *DisableSnapshotCopyOutput { 24553 s.Cluster = v 24554 return s 24555 } 24556 24557 type DisassociateDataShareConsumerInput struct { 24558 _ struct{} `type:"structure"` 24559 24560 // The Amazon Resource Name (ARN) of the consumer that association for the datashare 24561 // is removed from. 24562 ConsumerArn *string `type:"string"` 24563 24564 // The Amazon Resource Name (ARN) of the datashare to remove association for. 24565 // 24566 // DataShareArn is a required field 24567 DataShareArn *string `type:"string" required:"true"` 24568 24569 // A value that specifies whether association for the datashare is removed from 24570 // the entire account. 24571 DisassociateEntireAccount *bool `type:"boolean"` 24572 } 24573 24574 // String returns the string representation. 24575 // 24576 // API parameter values that are decorated as "sensitive" in the API will not 24577 // be included in the string output. The member name will be present, but the 24578 // value will be replaced with "sensitive". 24579 func (s DisassociateDataShareConsumerInput) String() string { 24580 return awsutil.Prettify(s) 24581 } 24582 24583 // GoString returns the string representation. 24584 // 24585 // API parameter values that are decorated as "sensitive" in the API will not 24586 // be included in the string output. The member name will be present, but the 24587 // value will be replaced with "sensitive". 24588 func (s DisassociateDataShareConsumerInput) GoString() string { 24589 return s.String() 24590 } 24591 24592 // Validate inspects the fields of the type to determine if they are valid. 24593 func (s *DisassociateDataShareConsumerInput) Validate() error { 24594 invalidParams := request.ErrInvalidParams{Context: "DisassociateDataShareConsumerInput"} 24595 if s.DataShareArn == nil { 24596 invalidParams.Add(request.NewErrParamRequired("DataShareArn")) 24597 } 24598 24599 if invalidParams.Len() > 0 { 24600 return invalidParams 24601 } 24602 return nil 24603 } 24604 24605 // SetConsumerArn sets the ConsumerArn field's value. 24606 func (s *DisassociateDataShareConsumerInput) SetConsumerArn(v string) *DisassociateDataShareConsumerInput { 24607 s.ConsumerArn = &v 24608 return s 24609 } 24610 24611 // SetDataShareArn sets the DataShareArn field's value. 24612 func (s *DisassociateDataShareConsumerInput) SetDataShareArn(v string) *DisassociateDataShareConsumerInput { 24613 s.DataShareArn = &v 24614 return s 24615 } 24616 24617 // SetDisassociateEntireAccount sets the DisassociateEntireAccount field's value. 24618 func (s *DisassociateDataShareConsumerInput) SetDisassociateEntireAccount(v bool) *DisassociateDataShareConsumerInput { 24619 s.DisassociateEntireAccount = &v 24620 return s 24621 } 24622 24623 type DisassociateDataShareConsumerOutput struct { 24624 _ struct{} `type:"structure"` 24625 24626 // A value that specifies whether the datashare can be shared to a publicly 24627 // accessible cluster. 24628 AllowPubliclyAccessibleConsumers *bool `type:"boolean"` 24629 24630 // An Amazon Resource Name (ARN) that references the datashare that is owned 24631 // by a specific namespace of the producer cluster. A datashare ARN is in the 24632 // arn:aws:redshift:{region}:{account-id}:{datashare}:{namespace-guid}/{datashare-name} 24633 // format. 24634 DataShareArn *string `type:"string"` 24635 24636 // A value that specifies when the datashare has an association between a producer 24637 // and data consumers. 24638 DataShareAssociations []*DataShareAssociation `type:"list"` 24639 24640 // The Amazon Resource Name (ARN) of the producer. 24641 ProducerArn *string `type:"string"` 24642 } 24643 24644 // String returns the string representation. 24645 // 24646 // API parameter values that are decorated as "sensitive" in the API will not 24647 // be included in the string output. The member name will be present, but the 24648 // value will be replaced with "sensitive". 24649 func (s DisassociateDataShareConsumerOutput) String() string { 24650 return awsutil.Prettify(s) 24651 } 24652 24653 // GoString returns the string representation. 24654 // 24655 // API parameter values that are decorated as "sensitive" in the API will not 24656 // be included in the string output. The member name will be present, but the 24657 // value will be replaced with "sensitive". 24658 func (s DisassociateDataShareConsumerOutput) GoString() string { 24659 return s.String() 24660 } 24661 24662 // SetAllowPubliclyAccessibleConsumers sets the AllowPubliclyAccessibleConsumers field's value. 24663 func (s *DisassociateDataShareConsumerOutput) SetAllowPubliclyAccessibleConsumers(v bool) *DisassociateDataShareConsumerOutput { 24664 s.AllowPubliclyAccessibleConsumers = &v 24665 return s 24666 } 24667 24668 // SetDataShareArn sets the DataShareArn field's value. 24669 func (s *DisassociateDataShareConsumerOutput) SetDataShareArn(v string) *DisassociateDataShareConsumerOutput { 24670 s.DataShareArn = &v 24671 return s 24672 } 24673 24674 // SetDataShareAssociations sets the DataShareAssociations field's value. 24675 func (s *DisassociateDataShareConsumerOutput) SetDataShareAssociations(v []*DataShareAssociation) *DisassociateDataShareConsumerOutput { 24676 s.DataShareAssociations = v 24677 return s 24678 } 24679 24680 // SetProducerArn sets the ProducerArn field's value. 24681 func (s *DisassociateDataShareConsumerOutput) SetProducerArn(v string) *DisassociateDataShareConsumerOutput { 24682 s.ProducerArn = &v 24683 return s 24684 } 24685 24686 // Describes an Amazon EC2 security group. 24687 type EC2SecurityGroup struct { 24688 _ struct{} `type:"structure"` 24689 24690 // The name of the EC2 Security Group. 24691 EC2SecurityGroupName *string `type:"string"` 24692 24693 // The Amazon Web Services account ID of the owner of the EC2 security group 24694 // specified in the EC2SecurityGroupName field. 24695 EC2SecurityGroupOwnerId *string `type:"string"` 24696 24697 // The status of the EC2 security group. 24698 Status *string `type:"string"` 24699 24700 // The list of tags for the EC2 security group. 24701 Tags []*Tag `locationNameList:"Tag" type:"list"` 24702 } 24703 24704 // String returns the string representation. 24705 // 24706 // API parameter values that are decorated as "sensitive" in the API will not 24707 // be included in the string output. The member name will be present, but the 24708 // value will be replaced with "sensitive". 24709 func (s EC2SecurityGroup) String() string { 24710 return awsutil.Prettify(s) 24711 } 24712 24713 // GoString returns the string representation. 24714 // 24715 // API parameter values that are decorated as "sensitive" in the API will not 24716 // be included in the string output. The member name will be present, but the 24717 // value will be replaced with "sensitive". 24718 func (s EC2SecurityGroup) GoString() string { 24719 return s.String() 24720 } 24721 24722 // SetEC2SecurityGroupName sets the EC2SecurityGroupName field's value. 24723 func (s *EC2SecurityGroup) SetEC2SecurityGroupName(v string) *EC2SecurityGroup { 24724 s.EC2SecurityGroupName = &v 24725 return s 24726 } 24727 24728 // SetEC2SecurityGroupOwnerId sets the EC2SecurityGroupOwnerId field's value. 24729 func (s *EC2SecurityGroup) SetEC2SecurityGroupOwnerId(v string) *EC2SecurityGroup { 24730 s.EC2SecurityGroupOwnerId = &v 24731 return s 24732 } 24733 24734 // SetStatus sets the Status field's value. 24735 func (s *EC2SecurityGroup) SetStatus(v string) *EC2SecurityGroup { 24736 s.Status = &v 24737 return s 24738 } 24739 24740 // SetTags sets the Tags field's value. 24741 func (s *EC2SecurityGroup) SetTags(v []*Tag) *EC2SecurityGroup { 24742 s.Tags = v 24743 return s 24744 } 24745 24746 // Describes the status of the elastic IP (EIP) address. 24747 type ElasticIpStatus struct { 24748 _ struct{} `type:"structure"` 24749 24750 // The elastic IP (EIP) address for the cluster. 24751 ElasticIp *string `type:"string"` 24752 24753 // The status of the elastic IP (EIP) address. 24754 Status *string `type:"string"` 24755 } 24756 24757 // String returns the string representation. 24758 // 24759 // API parameter values that are decorated as "sensitive" in the API will not 24760 // be included in the string output. The member name will be present, but the 24761 // value will be replaced with "sensitive". 24762 func (s ElasticIpStatus) String() string { 24763 return awsutil.Prettify(s) 24764 } 24765 24766 // GoString returns the string representation. 24767 // 24768 // API parameter values that are decorated as "sensitive" in the API will not 24769 // be included in the string output. The member name will be present, but the 24770 // value will be replaced with "sensitive". 24771 func (s ElasticIpStatus) GoString() string { 24772 return s.String() 24773 } 24774 24775 // SetElasticIp sets the ElasticIp field's value. 24776 func (s *ElasticIpStatus) SetElasticIp(v string) *ElasticIpStatus { 24777 s.ElasticIp = &v 24778 return s 24779 } 24780 24781 // SetStatus sets the Status field's value. 24782 func (s *ElasticIpStatus) SetStatus(v string) *ElasticIpStatus { 24783 s.Status = &v 24784 return s 24785 } 24786 24787 type EnableLoggingInput struct { 24788 _ struct{} `type:"structure"` 24789 24790 // The name of an existing S3 bucket where the log files are to be stored. 24791 // 24792 // Constraints: 24793 // 24794 // * Must be in the same region as the cluster 24795 // 24796 // * The cluster must have read bucket and put object permissions 24797 // 24798 // BucketName is a required field 24799 BucketName *string `type:"string" required:"true"` 24800 24801 // The identifier of the cluster on which logging is to be started. 24802 // 24803 // Example: examplecluster 24804 // 24805 // ClusterIdentifier is a required field 24806 ClusterIdentifier *string `type:"string" required:"true"` 24807 24808 // The prefix applied to the log file names. 24809 // 24810 // Constraints: 24811 // 24812 // * Cannot exceed 512 characters 24813 // 24814 // * Cannot contain spaces( ), double quotes ("), single quotes ('), a backslash 24815 // (\), or control characters. The hexadecimal codes for invalid characters 24816 // are: x00 to x20 x22 x27 x5c x7f or larger 24817 S3KeyPrefix *string `type:"string"` 24818 } 24819 24820 // String returns the string representation. 24821 // 24822 // API parameter values that are decorated as "sensitive" in the API will not 24823 // be included in the string output. The member name will be present, but the 24824 // value will be replaced with "sensitive". 24825 func (s EnableLoggingInput) String() string { 24826 return awsutil.Prettify(s) 24827 } 24828 24829 // GoString returns the string representation. 24830 // 24831 // API parameter values that are decorated as "sensitive" in the API will not 24832 // be included in the string output. The member name will be present, but the 24833 // value will be replaced with "sensitive". 24834 func (s EnableLoggingInput) GoString() string { 24835 return s.String() 24836 } 24837 24838 // Validate inspects the fields of the type to determine if they are valid. 24839 func (s *EnableLoggingInput) Validate() error { 24840 invalidParams := request.ErrInvalidParams{Context: "EnableLoggingInput"} 24841 if s.BucketName == nil { 24842 invalidParams.Add(request.NewErrParamRequired("BucketName")) 24843 } 24844 if s.ClusterIdentifier == nil { 24845 invalidParams.Add(request.NewErrParamRequired("ClusterIdentifier")) 24846 } 24847 24848 if invalidParams.Len() > 0 { 24849 return invalidParams 24850 } 24851 return nil 24852 } 24853 24854 // SetBucketName sets the BucketName field's value. 24855 func (s *EnableLoggingInput) SetBucketName(v string) *EnableLoggingInput { 24856 s.BucketName = &v 24857 return s 24858 } 24859 24860 // SetClusterIdentifier sets the ClusterIdentifier field's value. 24861 func (s *EnableLoggingInput) SetClusterIdentifier(v string) *EnableLoggingInput { 24862 s.ClusterIdentifier = &v 24863 return s 24864 } 24865 24866 // SetS3KeyPrefix sets the S3KeyPrefix field's value. 24867 func (s *EnableLoggingInput) SetS3KeyPrefix(v string) *EnableLoggingInput { 24868 s.S3KeyPrefix = &v 24869 return s 24870 } 24871 24872 type EnableSnapshotCopyInput struct { 24873 _ struct{} `type:"structure"` 24874 24875 // The unique identifier of the source cluster to copy snapshots from. 24876 // 24877 // Constraints: Must be the valid name of an existing cluster that does not 24878 // already have cross-region snapshot copy enabled. 24879 // 24880 // ClusterIdentifier is a required field 24881 ClusterIdentifier *string `type:"string" required:"true"` 24882 24883 // The destination Amazon Web Services Region that you want to copy snapshots 24884 // to. 24885 // 24886 // Constraints: Must be the name of a valid Amazon Web Services Region. For 24887 // more information, see Regions and Endpoints (https://docs.aws.amazon.com/general/latest/gr/rande.html#redshift_region) 24888 // in the Amazon Web Services General Reference. 24889 // 24890 // DestinationRegion is a required field 24891 DestinationRegion *string `type:"string" required:"true"` 24892 24893 // The number of days to retain newly copied snapshots in the destination Amazon 24894 // Web Services Region after they are copied from the source Amazon Web Services 24895 // Region. If the value is -1, the manual snapshot is retained indefinitely. 24896 // 24897 // The value must be either -1 or an integer between 1 and 3,653. 24898 ManualSnapshotRetentionPeriod *int64 `type:"integer"` 24899 24900 // The number of days to retain automated snapshots in the destination region 24901 // after they are copied from the source region. 24902 // 24903 // Default: 7. 24904 // 24905 // Constraints: Must be at least 1 and no more than 35. 24906 RetentionPeriod *int64 `type:"integer"` 24907 24908 // The name of the snapshot copy grant to use when snapshots of an Amazon Web 24909 // Services KMS-encrypted cluster are copied to the destination region. 24910 SnapshotCopyGrantName *string `type:"string"` 24911 } 24912 24913 // String returns the string representation. 24914 // 24915 // API parameter values that are decorated as "sensitive" in the API will not 24916 // be included in the string output. The member name will be present, but the 24917 // value will be replaced with "sensitive". 24918 func (s EnableSnapshotCopyInput) String() string { 24919 return awsutil.Prettify(s) 24920 } 24921 24922 // GoString returns the string representation. 24923 // 24924 // API parameter values that are decorated as "sensitive" in the API will not 24925 // be included in the string output. The member name will be present, but the 24926 // value will be replaced with "sensitive". 24927 func (s EnableSnapshotCopyInput) GoString() string { 24928 return s.String() 24929 } 24930 24931 // Validate inspects the fields of the type to determine if they are valid. 24932 func (s *EnableSnapshotCopyInput) Validate() error { 24933 invalidParams := request.ErrInvalidParams{Context: "EnableSnapshotCopyInput"} 24934 if s.ClusterIdentifier == nil { 24935 invalidParams.Add(request.NewErrParamRequired("ClusterIdentifier")) 24936 } 24937 if s.DestinationRegion == nil { 24938 invalidParams.Add(request.NewErrParamRequired("DestinationRegion")) 24939 } 24940 24941 if invalidParams.Len() > 0 { 24942 return invalidParams 24943 } 24944 return nil 24945 } 24946 24947 // SetClusterIdentifier sets the ClusterIdentifier field's value. 24948 func (s *EnableSnapshotCopyInput) SetClusterIdentifier(v string) *EnableSnapshotCopyInput { 24949 s.ClusterIdentifier = &v 24950 return s 24951 } 24952 24953 // SetDestinationRegion sets the DestinationRegion field's value. 24954 func (s *EnableSnapshotCopyInput) SetDestinationRegion(v string) *EnableSnapshotCopyInput { 24955 s.DestinationRegion = &v 24956 return s 24957 } 24958 24959 // SetManualSnapshotRetentionPeriod sets the ManualSnapshotRetentionPeriod field's value. 24960 func (s *EnableSnapshotCopyInput) SetManualSnapshotRetentionPeriod(v int64) *EnableSnapshotCopyInput { 24961 s.ManualSnapshotRetentionPeriod = &v 24962 return s 24963 } 24964 24965 // SetRetentionPeriod sets the RetentionPeriod field's value. 24966 func (s *EnableSnapshotCopyInput) SetRetentionPeriod(v int64) *EnableSnapshotCopyInput { 24967 s.RetentionPeriod = &v 24968 return s 24969 } 24970 24971 // SetSnapshotCopyGrantName sets the SnapshotCopyGrantName field's value. 24972 func (s *EnableSnapshotCopyInput) SetSnapshotCopyGrantName(v string) *EnableSnapshotCopyInput { 24973 s.SnapshotCopyGrantName = &v 24974 return s 24975 } 24976 24977 type EnableSnapshotCopyOutput struct { 24978 _ struct{} `type:"structure"` 24979 24980 // Describes a cluster. 24981 Cluster *Cluster `type:"structure"` 24982 } 24983 24984 // String returns the string representation. 24985 // 24986 // API parameter values that are decorated as "sensitive" in the API will not 24987 // be included in the string output. The member name will be present, but the 24988 // value will be replaced with "sensitive". 24989 func (s EnableSnapshotCopyOutput) String() string { 24990 return awsutil.Prettify(s) 24991 } 24992 24993 // GoString returns the string representation. 24994 // 24995 // API parameter values that are decorated as "sensitive" in the API will not 24996 // be included in the string output. The member name will be present, but the 24997 // value will be replaced with "sensitive". 24998 func (s EnableSnapshotCopyOutput) GoString() string { 24999 return s.String() 25000 } 25001 25002 // SetCluster sets the Cluster field's value. 25003 func (s *EnableSnapshotCopyOutput) SetCluster(v *Cluster) *EnableSnapshotCopyOutput { 25004 s.Cluster = v 25005 return s 25006 } 25007 25008 // Describes a connection endpoint. 25009 type Endpoint struct { 25010 _ struct{} `type:"structure"` 25011 25012 // The DNS address of the Cluster. 25013 Address *string `type:"string"` 25014 25015 // The port that the database engine is listening on. 25016 Port *int64 `type:"integer"` 25017 25018 // Describes a connection endpoint. 25019 VpcEndpoints []*VpcEndpoint `locationNameList:"VpcEndpoint" type:"list"` 25020 } 25021 25022 // String returns the string representation. 25023 // 25024 // API parameter values that are decorated as "sensitive" in the API will not 25025 // be included in the string output. The member name will be present, but the 25026 // value will be replaced with "sensitive". 25027 func (s Endpoint) String() string { 25028 return awsutil.Prettify(s) 25029 } 25030 25031 // GoString returns the string representation. 25032 // 25033 // API parameter values that are decorated as "sensitive" in the API will not 25034 // be included in the string output. The member name will be present, but the 25035 // value will be replaced with "sensitive". 25036 func (s Endpoint) GoString() string { 25037 return s.String() 25038 } 25039 25040 // SetAddress sets the Address field's value. 25041 func (s *Endpoint) SetAddress(v string) *Endpoint { 25042 s.Address = &v 25043 return s 25044 } 25045 25046 // SetPort sets the Port field's value. 25047 func (s *Endpoint) SetPort(v int64) *Endpoint { 25048 s.Port = &v 25049 return s 25050 } 25051 25052 // SetVpcEndpoints sets the VpcEndpoints field's value. 25053 func (s *Endpoint) SetVpcEndpoints(v []*VpcEndpoint) *Endpoint { 25054 s.VpcEndpoints = v 25055 return s 25056 } 25057 25058 // Describes a Redshift-managed VPC endpoint. 25059 type EndpointAccess struct { 25060 _ struct{} `type:"structure"` 25061 25062 // The DNS address of the endpoint. 25063 Address *string `type:"string"` 25064 25065 // The cluster identifier of the cluster associated with the endpoint. 25066 ClusterIdentifier *string `type:"string"` 25067 25068 // The time (UTC) that the endpoint was created. 25069 EndpointCreateTime *time.Time `type:"timestamp"` 25070 25071 // The name of the endpoint. 25072 EndpointName *string `type:"string"` 25073 25074 // The status of the endpoint. 25075 EndpointStatus *string `type:"string"` 25076 25077 // The port number on which the cluster accepts incoming connections. 25078 Port *int64 `type:"integer"` 25079 25080 // The Amazon Web Services account ID of the owner of the cluster. 25081 ResourceOwner *string `type:"string"` 25082 25083 // The subnet group name where Amazon Redshift chooses to deploy the endpoint. 25084 SubnetGroupName *string `type:"string"` 25085 25086 // The connection endpoint for connecting to an Amazon Redshift cluster through 25087 // the proxy. 25088 VpcEndpoint *VpcEndpoint `type:"structure"` 25089 25090 // The security groups associated with the endpoint. 25091 VpcSecurityGroups []*VpcSecurityGroupMembership `locationNameList:"VpcSecurityGroup" type:"list"` 25092 } 25093 25094 // String returns the string representation. 25095 // 25096 // API parameter values that are decorated as "sensitive" in the API will not 25097 // be included in the string output. The member name will be present, but the 25098 // value will be replaced with "sensitive". 25099 func (s EndpointAccess) String() string { 25100 return awsutil.Prettify(s) 25101 } 25102 25103 // GoString returns the string representation. 25104 // 25105 // API parameter values that are decorated as "sensitive" in the API will not 25106 // be included in the string output. The member name will be present, but the 25107 // value will be replaced with "sensitive". 25108 func (s EndpointAccess) GoString() string { 25109 return s.String() 25110 } 25111 25112 // SetAddress sets the Address field's value. 25113 func (s *EndpointAccess) SetAddress(v string) *EndpointAccess { 25114 s.Address = &v 25115 return s 25116 } 25117 25118 // SetClusterIdentifier sets the ClusterIdentifier field's value. 25119 func (s *EndpointAccess) SetClusterIdentifier(v string) *EndpointAccess { 25120 s.ClusterIdentifier = &v 25121 return s 25122 } 25123 25124 // SetEndpointCreateTime sets the EndpointCreateTime field's value. 25125 func (s *EndpointAccess) SetEndpointCreateTime(v time.Time) *EndpointAccess { 25126 s.EndpointCreateTime = &v 25127 return s 25128 } 25129 25130 // SetEndpointName sets the EndpointName field's value. 25131 func (s *EndpointAccess) SetEndpointName(v string) *EndpointAccess { 25132 s.EndpointName = &v 25133 return s 25134 } 25135 25136 // SetEndpointStatus sets the EndpointStatus field's value. 25137 func (s *EndpointAccess) SetEndpointStatus(v string) *EndpointAccess { 25138 s.EndpointStatus = &v 25139 return s 25140 } 25141 25142 // SetPort sets the Port field's value. 25143 func (s *EndpointAccess) SetPort(v int64) *EndpointAccess { 25144 s.Port = &v 25145 return s 25146 } 25147 25148 // SetResourceOwner sets the ResourceOwner field's value. 25149 func (s *EndpointAccess) SetResourceOwner(v string) *EndpointAccess { 25150 s.ResourceOwner = &v 25151 return s 25152 } 25153 25154 // SetSubnetGroupName sets the SubnetGroupName field's value. 25155 func (s *EndpointAccess) SetSubnetGroupName(v string) *EndpointAccess { 25156 s.SubnetGroupName = &v 25157 return s 25158 } 25159 25160 // SetVpcEndpoint sets the VpcEndpoint field's value. 25161 func (s *EndpointAccess) SetVpcEndpoint(v *VpcEndpoint) *EndpointAccess { 25162 s.VpcEndpoint = v 25163 return s 25164 } 25165 25166 // SetVpcSecurityGroups sets the VpcSecurityGroups field's value. 25167 func (s *EndpointAccess) SetVpcSecurityGroups(v []*VpcSecurityGroupMembership) *EndpointAccess { 25168 s.VpcSecurityGroups = v 25169 return s 25170 } 25171 25172 // Describes an endpoint authorization for authorizing Redshift-managed VPC 25173 // endpoint access to a cluster across Amazon Web Services accounts. 25174 type EndpointAuthorization struct { 25175 _ struct{} `type:"structure"` 25176 25177 // Indicates whether all VPCs in the grantee account are allowed access to the 25178 // cluster. 25179 AllowedAllVPCs *bool `type:"boolean"` 25180 25181 // The VPCs allowed access to the cluster. 25182 AllowedVPCs []*string `locationNameList:"VpcIdentifier" type:"list"` 25183 25184 // The time (UTC) when the authorization was created. 25185 AuthorizeTime *time.Time `type:"timestamp"` 25186 25187 // The cluster identifier. 25188 ClusterIdentifier *string `type:"string"` 25189 25190 // The status of the cluster. 25191 ClusterStatus *string `type:"string"` 25192 25193 // The number of Redshift-managed VPC endpoints created for the authorization. 25194 EndpointCount *int64 `type:"integer"` 25195 25196 // The Amazon Web Services account ID of the grantee of the cluster. 25197 Grantee *string `type:"string"` 25198 25199 // The Amazon Web Services account ID of the cluster owner. 25200 Grantor *string `type:"string"` 25201 25202 // The status of the authorization action. 25203 Status *string `type:"string" enum:"AuthorizationStatus"` 25204 } 25205 25206 // String returns the string representation. 25207 // 25208 // API parameter values that are decorated as "sensitive" in the API will not 25209 // be included in the string output. The member name will be present, but the 25210 // value will be replaced with "sensitive". 25211 func (s EndpointAuthorization) String() string { 25212 return awsutil.Prettify(s) 25213 } 25214 25215 // GoString returns the string representation. 25216 // 25217 // API parameter values that are decorated as "sensitive" in the API will not 25218 // be included in the string output. The member name will be present, but the 25219 // value will be replaced with "sensitive". 25220 func (s EndpointAuthorization) GoString() string { 25221 return s.String() 25222 } 25223 25224 // SetAllowedAllVPCs sets the AllowedAllVPCs field's value. 25225 func (s *EndpointAuthorization) SetAllowedAllVPCs(v bool) *EndpointAuthorization { 25226 s.AllowedAllVPCs = &v 25227 return s 25228 } 25229 25230 // SetAllowedVPCs sets the AllowedVPCs field's value. 25231 func (s *EndpointAuthorization) SetAllowedVPCs(v []*string) *EndpointAuthorization { 25232 s.AllowedVPCs = v 25233 return s 25234 } 25235 25236 // SetAuthorizeTime sets the AuthorizeTime field's value. 25237 func (s *EndpointAuthorization) SetAuthorizeTime(v time.Time) *EndpointAuthorization { 25238 s.AuthorizeTime = &v 25239 return s 25240 } 25241 25242 // SetClusterIdentifier sets the ClusterIdentifier field's value. 25243 func (s *EndpointAuthorization) SetClusterIdentifier(v string) *EndpointAuthorization { 25244 s.ClusterIdentifier = &v 25245 return s 25246 } 25247 25248 // SetClusterStatus sets the ClusterStatus field's value. 25249 func (s *EndpointAuthorization) SetClusterStatus(v string) *EndpointAuthorization { 25250 s.ClusterStatus = &v 25251 return s 25252 } 25253 25254 // SetEndpointCount sets the EndpointCount field's value. 25255 func (s *EndpointAuthorization) SetEndpointCount(v int64) *EndpointAuthorization { 25256 s.EndpointCount = &v 25257 return s 25258 } 25259 25260 // SetGrantee sets the Grantee field's value. 25261 func (s *EndpointAuthorization) SetGrantee(v string) *EndpointAuthorization { 25262 s.Grantee = &v 25263 return s 25264 } 25265 25266 // SetGrantor sets the Grantor field's value. 25267 func (s *EndpointAuthorization) SetGrantor(v string) *EndpointAuthorization { 25268 s.Grantor = &v 25269 return s 25270 } 25271 25272 // SetStatus sets the Status field's value. 25273 func (s *EndpointAuthorization) SetStatus(v string) *EndpointAuthorization { 25274 s.Status = &v 25275 return s 25276 } 25277 25278 // Describes an event. 25279 type Event struct { 25280 _ struct{} `type:"structure"` 25281 25282 // The date and time of the event. 25283 Date *time.Time `type:"timestamp"` 25284 25285 // A list of the event categories. 25286 // 25287 // Values: Configuration, Management, Monitoring, Security, Pending 25288 EventCategories []*string `locationNameList:"EventCategory" type:"list"` 25289 25290 // The identifier of the event. 25291 EventId *string `type:"string"` 25292 25293 // The text of this event. 25294 Message *string `type:"string"` 25295 25296 // The severity of the event. 25297 // 25298 // Values: ERROR, INFO 25299 Severity *string `type:"string"` 25300 25301 // The identifier for the source of the event. 25302 SourceIdentifier *string `type:"string"` 25303 25304 // The source type for this event. 25305 SourceType *string `type:"string" enum:"SourceType"` 25306 } 25307 25308 // String returns the string representation. 25309 // 25310 // API parameter values that are decorated as "sensitive" in the API will not 25311 // be included in the string output. The member name will be present, but the 25312 // value will be replaced with "sensitive". 25313 func (s Event) String() string { 25314 return awsutil.Prettify(s) 25315 } 25316 25317 // GoString returns the string representation. 25318 // 25319 // API parameter values that are decorated as "sensitive" in the API will not 25320 // be included in the string output. The member name will be present, but the 25321 // value will be replaced with "sensitive". 25322 func (s Event) GoString() string { 25323 return s.String() 25324 } 25325 25326 // SetDate sets the Date field's value. 25327 func (s *Event) SetDate(v time.Time) *Event { 25328 s.Date = &v 25329 return s 25330 } 25331 25332 // SetEventCategories sets the EventCategories field's value. 25333 func (s *Event) SetEventCategories(v []*string) *Event { 25334 s.EventCategories = v 25335 return s 25336 } 25337 25338 // SetEventId sets the EventId field's value. 25339 func (s *Event) SetEventId(v string) *Event { 25340 s.EventId = &v 25341 return s 25342 } 25343 25344 // SetMessage sets the Message field's value. 25345 func (s *Event) SetMessage(v string) *Event { 25346 s.Message = &v 25347 return s 25348 } 25349 25350 // SetSeverity sets the Severity field's value. 25351 func (s *Event) SetSeverity(v string) *Event { 25352 s.Severity = &v 25353 return s 25354 } 25355 25356 // SetSourceIdentifier sets the SourceIdentifier field's value. 25357 func (s *Event) SetSourceIdentifier(v string) *Event { 25358 s.SourceIdentifier = &v 25359 return s 25360 } 25361 25362 // SetSourceType sets the SourceType field's value. 25363 func (s *Event) SetSourceType(v string) *Event { 25364 s.SourceType = &v 25365 return s 25366 } 25367 25368 // Describes event categories. 25369 type EventCategoriesMap struct { 25370 _ struct{} `type:"structure"` 25371 25372 // The events in the event category. 25373 Events []*EventInfoMap `locationNameList:"EventInfoMap" type:"list"` 25374 25375 // The source type, such as cluster or cluster-snapshot, that the returned categories 25376 // belong to. 25377 SourceType *string `type:"string"` 25378 } 25379 25380 // String returns the string representation. 25381 // 25382 // API parameter values that are decorated as "sensitive" in the API will not 25383 // be included in the string output. The member name will be present, but the 25384 // value will be replaced with "sensitive". 25385 func (s EventCategoriesMap) String() string { 25386 return awsutil.Prettify(s) 25387 } 25388 25389 // GoString returns the string representation. 25390 // 25391 // API parameter values that are decorated as "sensitive" in the API will not 25392 // be included in the string output. The member name will be present, but the 25393 // value will be replaced with "sensitive". 25394 func (s EventCategoriesMap) GoString() string { 25395 return s.String() 25396 } 25397 25398 // SetEvents sets the Events field's value. 25399 func (s *EventCategoriesMap) SetEvents(v []*EventInfoMap) *EventCategoriesMap { 25400 s.Events = v 25401 return s 25402 } 25403 25404 // SetSourceType sets the SourceType field's value. 25405 func (s *EventCategoriesMap) SetSourceType(v string) *EventCategoriesMap { 25406 s.SourceType = &v 25407 return s 25408 } 25409 25410 // Describes event information. 25411 type EventInfoMap struct { 25412 _ struct{} `type:"structure"` 25413 25414 // The category of an Amazon Redshift event. 25415 EventCategories []*string `locationNameList:"EventCategory" type:"list"` 25416 25417 // The description of an Amazon Redshift event. 25418 EventDescription *string `type:"string"` 25419 25420 // The identifier of an Amazon Redshift event. 25421 EventId *string `type:"string"` 25422 25423 // The severity of the event. 25424 // 25425 // Values: ERROR, INFO 25426 Severity *string `type:"string"` 25427 } 25428 25429 // String returns the string representation. 25430 // 25431 // API parameter values that are decorated as "sensitive" in the API will not 25432 // be included in the string output. The member name will be present, but the 25433 // value will be replaced with "sensitive". 25434 func (s EventInfoMap) String() string { 25435 return awsutil.Prettify(s) 25436 } 25437 25438 // GoString returns the string representation. 25439 // 25440 // API parameter values that are decorated as "sensitive" in the API will not 25441 // be included in the string output. The member name will be present, but the 25442 // value will be replaced with "sensitive". 25443 func (s EventInfoMap) GoString() string { 25444 return s.String() 25445 } 25446 25447 // SetEventCategories sets the EventCategories field's value. 25448 func (s *EventInfoMap) SetEventCategories(v []*string) *EventInfoMap { 25449 s.EventCategories = v 25450 return s 25451 } 25452 25453 // SetEventDescription sets the EventDescription field's value. 25454 func (s *EventInfoMap) SetEventDescription(v string) *EventInfoMap { 25455 s.EventDescription = &v 25456 return s 25457 } 25458 25459 // SetEventId sets the EventId field's value. 25460 func (s *EventInfoMap) SetEventId(v string) *EventInfoMap { 25461 s.EventId = &v 25462 return s 25463 } 25464 25465 // SetSeverity sets the Severity field's value. 25466 func (s *EventInfoMap) SetSeverity(v string) *EventInfoMap { 25467 s.Severity = &v 25468 return s 25469 } 25470 25471 // Describes event subscriptions. 25472 type EventSubscription struct { 25473 _ struct{} `type:"structure"` 25474 25475 // The name of the Amazon Redshift event notification subscription. 25476 CustSubscriptionId *string `type:"string"` 25477 25478 // The Amazon Web Services account associated with the Amazon Redshift event 25479 // notification subscription. 25480 CustomerAwsId *string `type:"string"` 25481 25482 // A boolean value indicating whether the subscription is enabled; true indicates 25483 // that the subscription is enabled. 25484 Enabled *bool `type:"boolean"` 25485 25486 // The list of Amazon Redshift event categories specified in the event notification 25487 // subscription. 25488 // 25489 // Values: Configuration, Management, Monitoring, Security, Pending 25490 EventCategoriesList []*string `locationNameList:"EventCategory" type:"list"` 25491 25492 // The event severity specified in the Amazon Redshift event notification subscription. 25493 // 25494 // Values: ERROR, INFO 25495 Severity *string `type:"string"` 25496 25497 // The Amazon Resource Name (ARN) of the Amazon SNS topic used by the event 25498 // notification subscription. 25499 SnsTopicArn *string `type:"string"` 25500 25501 // A list of the sources that publish events to the Amazon Redshift event notification 25502 // subscription. 25503 SourceIdsList []*string `locationNameList:"SourceId" type:"list"` 25504 25505 // The source type of the events returned by the Amazon Redshift event notification, 25506 // such as cluster, cluster-snapshot, cluster-parameter-group, cluster-security-group, 25507 // or scheduled-action. 25508 SourceType *string `type:"string"` 25509 25510 // The status of the Amazon Redshift event notification subscription. 25511 // 25512 // Constraints: 25513 // 25514 // * Can be one of the following: active | no-permission | topic-not-exist 25515 // 25516 // * The status "no-permission" indicates that Amazon Redshift no longer 25517 // has permission to post to the Amazon SNS topic. The status "topic-not-exist" 25518 // indicates that the topic was deleted after the subscription was created. 25519 Status *string `type:"string"` 25520 25521 // The date and time the Amazon Redshift event notification subscription was 25522 // created. 25523 SubscriptionCreationTime *time.Time `type:"timestamp"` 25524 25525 // The list of tags for the event subscription. 25526 Tags []*Tag `locationNameList:"Tag" type:"list"` 25527 } 25528 25529 // String returns the string representation. 25530 // 25531 // API parameter values that are decorated as "sensitive" in the API will not 25532 // be included in the string output. The member name will be present, but the 25533 // value will be replaced with "sensitive". 25534 func (s EventSubscription) String() string { 25535 return awsutil.Prettify(s) 25536 } 25537 25538 // GoString returns the string representation. 25539 // 25540 // API parameter values that are decorated as "sensitive" in the API will not 25541 // be included in the string output. The member name will be present, but the 25542 // value will be replaced with "sensitive". 25543 func (s EventSubscription) GoString() string { 25544 return s.String() 25545 } 25546 25547 // SetCustSubscriptionId sets the CustSubscriptionId field's value. 25548 func (s *EventSubscription) SetCustSubscriptionId(v string) *EventSubscription { 25549 s.CustSubscriptionId = &v 25550 return s 25551 } 25552 25553 // SetCustomerAwsId sets the CustomerAwsId field's value. 25554 func (s *EventSubscription) SetCustomerAwsId(v string) *EventSubscription { 25555 s.CustomerAwsId = &v 25556 return s 25557 } 25558 25559 // SetEnabled sets the Enabled field's value. 25560 func (s *EventSubscription) SetEnabled(v bool) *EventSubscription { 25561 s.Enabled = &v 25562 return s 25563 } 25564 25565 // SetEventCategoriesList sets the EventCategoriesList field's value. 25566 func (s *EventSubscription) SetEventCategoriesList(v []*string) *EventSubscription { 25567 s.EventCategoriesList = v 25568 return s 25569 } 25570 25571 // SetSeverity sets the Severity field's value. 25572 func (s *EventSubscription) SetSeverity(v string) *EventSubscription { 25573 s.Severity = &v 25574 return s 25575 } 25576 25577 // SetSnsTopicArn sets the SnsTopicArn field's value. 25578 func (s *EventSubscription) SetSnsTopicArn(v string) *EventSubscription { 25579 s.SnsTopicArn = &v 25580 return s 25581 } 25582 25583 // SetSourceIdsList sets the SourceIdsList field's value. 25584 func (s *EventSubscription) SetSourceIdsList(v []*string) *EventSubscription { 25585 s.SourceIdsList = v 25586 return s 25587 } 25588 25589 // SetSourceType sets the SourceType field's value. 25590 func (s *EventSubscription) SetSourceType(v string) *EventSubscription { 25591 s.SourceType = &v 25592 return s 25593 } 25594 25595 // SetStatus sets the Status field's value. 25596 func (s *EventSubscription) SetStatus(v string) *EventSubscription { 25597 s.Status = &v 25598 return s 25599 } 25600 25601 // SetSubscriptionCreationTime sets the SubscriptionCreationTime field's value. 25602 func (s *EventSubscription) SetSubscriptionCreationTime(v time.Time) *EventSubscription { 25603 s.SubscriptionCreationTime = &v 25604 return s 25605 } 25606 25607 // SetTags sets the Tags field's value. 25608 func (s *EventSubscription) SetTags(v []*Tag) *EventSubscription { 25609 s.Tags = v 25610 return s 25611 } 25612 25613 // The request parameters to get cluster credentials. 25614 type GetClusterCredentialsInput struct { 25615 _ struct{} `type:"structure"` 25616 25617 // Create a database user with the name specified for the user named in DbUser 25618 // if one does not exist. 25619 AutoCreate *bool `type:"boolean"` 25620 25621 // The unique identifier of the cluster that contains the database for which 25622 // your are requesting credentials. This parameter is case sensitive. 25623 // 25624 // ClusterIdentifier is a required field 25625 ClusterIdentifier *string `type:"string" required:"true"` 25626 25627 // A list of the names of existing database groups that the user named in DbUser 25628 // will join for the current session, in addition to any group memberships for 25629 // an existing user. If not specified, a new user is added only to PUBLIC. 25630 // 25631 // Database group name constraints 25632 // 25633 // * Must be 1 to 64 alphanumeric characters or hyphens 25634 // 25635 // * Must contain only lowercase letters, numbers, underscore, plus sign, 25636 // period (dot), at symbol (@), or hyphen. 25637 // 25638 // * First character must be a letter. 25639 // 25640 // * Must not contain a colon ( : ) or slash ( / ). 25641 // 25642 // * Cannot be a reserved word. A list of reserved words can be found in 25643 // Reserved Words (http://docs.aws.amazon.com/redshift/latest/dg/r_pg_keywords.html) 25644 // in the Amazon Redshift Database Developer Guide. 25645 DbGroups []*string `locationNameList:"DbGroup" type:"list"` 25646 25647 // The name of a database that DbUser is authorized to log on to. If DbName 25648 // is not specified, DbUser can log on to any existing database. 25649 // 25650 // Constraints: 25651 // 25652 // * Must be 1 to 64 alphanumeric characters or hyphens 25653 // 25654 // * Must contain only lowercase letters, numbers, underscore, plus sign, 25655 // period (dot), at symbol (@), or hyphen. 25656 // 25657 // * First character must be a letter. 25658 // 25659 // * Must not contain a colon ( : ) or slash ( / ). 25660 // 25661 // * Cannot be a reserved word. A list of reserved words can be found in 25662 // Reserved Words (http://docs.aws.amazon.com/redshift/latest/dg/r_pg_keywords.html) 25663 // in the Amazon Redshift Database Developer Guide. 25664 DbName *string `type:"string"` 25665 25666 // The name of a database user. If a user name matching DbUser exists in the 25667 // database, the temporary user credentials have the same permissions as the 25668 // existing user. If DbUser doesn't exist in the database and Autocreate is 25669 // True, a new user is created using the value for DbUser with PUBLIC permissions. 25670 // If a database user matching the value for DbUser doesn't exist and Autocreate 25671 // is False, then the command succeeds but the connection attempt will fail 25672 // because the user doesn't exist in the database. 25673 // 25674 // For more information, see CREATE USER (https://docs.aws.amazon.com/redshift/latest/dg/r_CREATE_USER.html) 25675 // in the Amazon Redshift Database Developer Guide. 25676 // 25677 // Constraints: 25678 // 25679 // * Must be 1 to 64 alphanumeric characters or hyphens. The user name can't 25680 // be PUBLIC. 25681 // 25682 // * Must contain only lowercase letters, numbers, underscore, plus sign, 25683 // period (dot), at symbol (@), or hyphen. 25684 // 25685 // * First character must be a letter. 25686 // 25687 // * Must not contain a colon ( : ) or slash ( / ). 25688 // 25689 // * Cannot be a reserved word. A list of reserved words can be found in 25690 // Reserved Words (http://docs.aws.amazon.com/redshift/latest/dg/r_pg_keywords.html) 25691 // in the Amazon Redshift Database Developer Guide. 25692 // 25693 // DbUser is a required field 25694 DbUser *string `type:"string" required:"true"` 25695 25696 // The number of seconds until the returned temporary password expires. 25697 // 25698 // Constraint: minimum 900, maximum 3600. 25699 // 25700 // Default: 900 25701 DurationSeconds *int64 `type:"integer"` 25702 } 25703 25704 // String returns the string representation. 25705 // 25706 // API parameter values that are decorated as "sensitive" in the API will not 25707 // be included in the string output. The member name will be present, but the 25708 // value will be replaced with "sensitive". 25709 func (s GetClusterCredentialsInput) String() string { 25710 return awsutil.Prettify(s) 25711 } 25712 25713 // GoString returns the string representation. 25714 // 25715 // API parameter values that are decorated as "sensitive" in the API will not 25716 // be included in the string output. The member name will be present, but the 25717 // value will be replaced with "sensitive". 25718 func (s GetClusterCredentialsInput) GoString() string { 25719 return s.String() 25720 } 25721 25722 // Validate inspects the fields of the type to determine if they are valid. 25723 func (s *GetClusterCredentialsInput) Validate() error { 25724 invalidParams := request.ErrInvalidParams{Context: "GetClusterCredentialsInput"} 25725 if s.ClusterIdentifier == nil { 25726 invalidParams.Add(request.NewErrParamRequired("ClusterIdentifier")) 25727 } 25728 if s.DbUser == nil { 25729 invalidParams.Add(request.NewErrParamRequired("DbUser")) 25730 } 25731 25732 if invalidParams.Len() > 0 { 25733 return invalidParams 25734 } 25735 return nil 25736 } 25737 25738 // SetAutoCreate sets the AutoCreate field's value. 25739 func (s *GetClusterCredentialsInput) SetAutoCreate(v bool) *GetClusterCredentialsInput { 25740 s.AutoCreate = &v 25741 return s 25742 } 25743 25744 // SetClusterIdentifier sets the ClusterIdentifier field's value. 25745 func (s *GetClusterCredentialsInput) SetClusterIdentifier(v string) *GetClusterCredentialsInput { 25746 s.ClusterIdentifier = &v 25747 return s 25748 } 25749 25750 // SetDbGroups sets the DbGroups field's value. 25751 func (s *GetClusterCredentialsInput) SetDbGroups(v []*string) *GetClusterCredentialsInput { 25752 s.DbGroups = v 25753 return s 25754 } 25755 25756 // SetDbName sets the DbName field's value. 25757 func (s *GetClusterCredentialsInput) SetDbName(v string) *GetClusterCredentialsInput { 25758 s.DbName = &v 25759 return s 25760 } 25761 25762 // SetDbUser sets the DbUser field's value. 25763 func (s *GetClusterCredentialsInput) SetDbUser(v string) *GetClusterCredentialsInput { 25764 s.DbUser = &v 25765 return s 25766 } 25767 25768 // SetDurationSeconds sets the DurationSeconds field's value. 25769 func (s *GetClusterCredentialsInput) SetDurationSeconds(v int64) *GetClusterCredentialsInput { 25770 s.DurationSeconds = &v 25771 return s 25772 } 25773 25774 // Temporary credentials with authorization to log on to an Amazon Redshift 25775 // database. 25776 type GetClusterCredentialsOutput struct { 25777 _ struct{} `type:"structure"` 25778 25779 // A temporary password that authorizes the user name returned by DbUser to 25780 // log on to the database DbName. 25781 // 25782 // DbPassword is a sensitive parameter and its value will be 25783 // replaced with "sensitive" in string returned by GetClusterCredentialsOutput's 25784 // String and GoString methods. 25785 DbPassword *string `type:"string" sensitive:"true"` 25786 25787 // A database user name that is authorized to log on to the database DbName 25788 // using the password DbPassword. If the specified DbUser exists in the database, 25789 // the new user name has the same database privileges as the the user named 25790 // in DbUser. By default, the user is added to PUBLIC. If the DbGroups parameter 25791 // is specifed, DbUser is added to the listed groups for any sessions created 25792 // using these credentials. 25793 DbUser *string `type:"string"` 25794 25795 // The date and time the password in DbPassword expires. 25796 Expiration *time.Time `type:"timestamp"` 25797 } 25798 25799 // String returns the string representation. 25800 // 25801 // API parameter values that are decorated as "sensitive" in the API will not 25802 // be included in the string output. The member name will be present, but the 25803 // value will be replaced with "sensitive". 25804 func (s GetClusterCredentialsOutput) String() string { 25805 return awsutil.Prettify(s) 25806 } 25807 25808 // GoString returns the string representation. 25809 // 25810 // API parameter values that are decorated as "sensitive" in the API will not 25811 // be included in the string output. The member name will be present, but the 25812 // value will be replaced with "sensitive". 25813 func (s GetClusterCredentialsOutput) GoString() string { 25814 return s.String() 25815 } 25816 25817 // SetDbPassword sets the DbPassword field's value. 25818 func (s *GetClusterCredentialsOutput) SetDbPassword(v string) *GetClusterCredentialsOutput { 25819 s.DbPassword = &v 25820 return s 25821 } 25822 25823 // SetDbUser sets the DbUser field's value. 25824 func (s *GetClusterCredentialsOutput) SetDbUser(v string) *GetClusterCredentialsOutput { 25825 s.DbUser = &v 25826 return s 25827 } 25828 25829 // SetExpiration sets the Expiration field's value. 25830 func (s *GetClusterCredentialsOutput) SetExpiration(v time.Time) *GetClusterCredentialsOutput { 25831 s.Expiration = &v 25832 return s 25833 } 25834 25835 type GetReservedNodeExchangeOfferingsInput struct { 25836 _ struct{} `type:"structure"` 25837 25838 // A value that indicates the starting point for the next set of ReservedNodeOfferings. 25839 Marker *string `type:"string"` 25840 25841 // An integer setting the maximum number of ReservedNodeOfferings to retrieve. 25842 MaxRecords *int64 `type:"integer"` 25843 25844 // A string representing the node identifier for the DC1 Reserved Node to be 25845 // exchanged. 25846 // 25847 // ReservedNodeId is a required field 25848 ReservedNodeId *string `type:"string" required:"true"` 25849 } 25850 25851 // String returns the string representation. 25852 // 25853 // API parameter values that are decorated as "sensitive" in the API will not 25854 // be included in the string output. The member name will be present, but the 25855 // value will be replaced with "sensitive". 25856 func (s GetReservedNodeExchangeOfferingsInput) String() string { 25857 return awsutil.Prettify(s) 25858 } 25859 25860 // GoString returns the string representation. 25861 // 25862 // API parameter values that are decorated as "sensitive" in the API will not 25863 // be included in the string output. The member name will be present, but the 25864 // value will be replaced with "sensitive". 25865 func (s GetReservedNodeExchangeOfferingsInput) GoString() string { 25866 return s.String() 25867 } 25868 25869 // Validate inspects the fields of the type to determine if they are valid. 25870 func (s *GetReservedNodeExchangeOfferingsInput) Validate() error { 25871 invalidParams := request.ErrInvalidParams{Context: "GetReservedNodeExchangeOfferingsInput"} 25872 if s.ReservedNodeId == nil { 25873 invalidParams.Add(request.NewErrParamRequired("ReservedNodeId")) 25874 } 25875 25876 if invalidParams.Len() > 0 { 25877 return invalidParams 25878 } 25879 return nil 25880 } 25881 25882 // SetMarker sets the Marker field's value. 25883 func (s *GetReservedNodeExchangeOfferingsInput) SetMarker(v string) *GetReservedNodeExchangeOfferingsInput { 25884 s.Marker = &v 25885 return s 25886 } 25887 25888 // SetMaxRecords sets the MaxRecords field's value. 25889 func (s *GetReservedNodeExchangeOfferingsInput) SetMaxRecords(v int64) *GetReservedNodeExchangeOfferingsInput { 25890 s.MaxRecords = &v 25891 return s 25892 } 25893 25894 // SetReservedNodeId sets the ReservedNodeId field's value. 25895 func (s *GetReservedNodeExchangeOfferingsInput) SetReservedNodeId(v string) *GetReservedNodeExchangeOfferingsInput { 25896 s.ReservedNodeId = &v 25897 return s 25898 } 25899 25900 type GetReservedNodeExchangeOfferingsOutput struct { 25901 _ struct{} `type:"structure"` 25902 25903 // An optional parameter that specifies the starting point for returning a set 25904 // of response records. When the results of a GetReservedNodeExchangeOfferings 25905 // request exceed the value specified in MaxRecords, Amazon Redshift returns 25906 // a value in the marker field of the response. You can retrieve the next set 25907 // of response records by providing the returned marker value in the marker 25908 // parameter and retrying the request. 25909 Marker *string `type:"string"` 25910 25911 // Returns an array of ReservedNodeOffering objects. 25912 ReservedNodeOfferings []*ReservedNodeOffering `locationNameList:"ReservedNodeOffering" type:"list"` 25913 } 25914 25915 // String returns the string representation. 25916 // 25917 // API parameter values that are decorated as "sensitive" in the API will not 25918 // be included in the string output. The member name will be present, but the 25919 // value will be replaced with "sensitive". 25920 func (s GetReservedNodeExchangeOfferingsOutput) String() string { 25921 return awsutil.Prettify(s) 25922 } 25923 25924 // GoString returns the string representation. 25925 // 25926 // API parameter values that are decorated as "sensitive" in the API will not 25927 // be included in the string output. The member name will be present, but the 25928 // value will be replaced with "sensitive". 25929 func (s GetReservedNodeExchangeOfferingsOutput) GoString() string { 25930 return s.String() 25931 } 25932 25933 // SetMarker sets the Marker field's value. 25934 func (s *GetReservedNodeExchangeOfferingsOutput) SetMarker(v string) *GetReservedNodeExchangeOfferingsOutput { 25935 s.Marker = &v 25936 return s 25937 } 25938 25939 // SetReservedNodeOfferings sets the ReservedNodeOfferings field's value. 25940 func (s *GetReservedNodeExchangeOfferingsOutput) SetReservedNodeOfferings(v []*ReservedNodeOffering) *GetReservedNodeExchangeOfferingsOutput { 25941 s.ReservedNodeOfferings = v 25942 return s 25943 } 25944 25945 // Returns information about an HSM client certificate. The certificate is stored 25946 // in a secure Hardware Storage Module (HSM), and used by the Amazon Redshift 25947 // cluster to encrypt data files. 25948 type HsmClientCertificate struct { 25949 _ struct{} `type:"structure"` 25950 25951 // The identifier of the HSM client certificate. 25952 HsmClientCertificateIdentifier *string `type:"string"` 25953 25954 // The public key that the Amazon Redshift cluster will use to connect to the 25955 // HSM. You must register the public key in the HSM. 25956 HsmClientCertificatePublicKey *string `type:"string"` 25957 25958 // The list of tags for the HSM client certificate. 25959 Tags []*Tag `locationNameList:"Tag" type:"list"` 25960 } 25961 25962 // String returns the string representation. 25963 // 25964 // API parameter values that are decorated as "sensitive" in the API will not 25965 // be included in the string output. The member name will be present, but the 25966 // value will be replaced with "sensitive". 25967 func (s HsmClientCertificate) String() string { 25968 return awsutil.Prettify(s) 25969 } 25970 25971 // GoString returns the string representation. 25972 // 25973 // API parameter values that are decorated as "sensitive" in the API will not 25974 // be included in the string output. The member name will be present, but the 25975 // value will be replaced with "sensitive". 25976 func (s HsmClientCertificate) GoString() string { 25977 return s.String() 25978 } 25979 25980 // SetHsmClientCertificateIdentifier sets the HsmClientCertificateIdentifier field's value. 25981 func (s *HsmClientCertificate) SetHsmClientCertificateIdentifier(v string) *HsmClientCertificate { 25982 s.HsmClientCertificateIdentifier = &v 25983 return s 25984 } 25985 25986 // SetHsmClientCertificatePublicKey sets the HsmClientCertificatePublicKey field's value. 25987 func (s *HsmClientCertificate) SetHsmClientCertificatePublicKey(v string) *HsmClientCertificate { 25988 s.HsmClientCertificatePublicKey = &v 25989 return s 25990 } 25991 25992 // SetTags sets the Tags field's value. 25993 func (s *HsmClientCertificate) SetTags(v []*Tag) *HsmClientCertificate { 25994 s.Tags = v 25995 return s 25996 } 25997 25998 // Returns information about an HSM configuration, which is an object that describes 25999 // to Amazon Redshift clusters the information they require to connect to an 26000 // HSM where they can store database encryption keys. 26001 type HsmConfiguration struct { 26002 _ struct{} `type:"structure"` 26003 26004 // A text description of the HSM configuration. 26005 Description *string `type:"string"` 26006 26007 // The name of the Amazon Redshift HSM configuration. 26008 HsmConfigurationIdentifier *string `type:"string"` 26009 26010 // The IP address that the Amazon Redshift cluster must use to access the HSM. 26011 HsmIpAddress *string `type:"string"` 26012 26013 // The name of the partition in the HSM where the Amazon Redshift clusters will 26014 // store their database encryption keys. 26015 HsmPartitionName *string `type:"string"` 26016 26017 // The list of tags for the HSM configuration. 26018 Tags []*Tag `locationNameList:"Tag" type:"list"` 26019 } 26020 26021 // String returns the string representation. 26022 // 26023 // API parameter values that are decorated as "sensitive" in the API will not 26024 // be included in the string output. The member name will be present, but the 26025 // value will be replaced with "sensitive". 26026 func (s HsmConfiguration) String() string { 26027 return awsutil.Prettify(s) 26028 } 26029 26030 // GoString returns the string representation. 26031 // 26032 // API parameter values that are decorated as "sensitive" in the API will not 26033 // be included in the string output. The member name will be present, but the 26034 // value will be replaced with "sensitive". 26035 func (s HsmConfiguration) GoString() string { 26036 return s.String() 26037 } 26038 26039 // SetDescription sets the Description field's value. 26040 func (s *HsmConfiguration) SetDescription(v string) *HsmConfiguration { 26041 s.Description = &v 26042 return s 26043 } 26044 26045 // SetHsmConfigurationIdentifier sets the HsmConfigurationIdentifier field's value. 26046 func (s *HsmConfiguration) SetHsmConfigurationIdentifier(v string) *HsmConfiguration { 26047 s.HsmConfigurationIdentifier = &v 26048 return s 26049 } 26050 26051 // SetHsmIpAddress sets the HsmIpAddress field's value. 26052 func (s *HsmConfiguration) SetHsmIpAddress(v string) *HsmConfiguration { 26053 s.HsmIpAddress = &v 26054 return s 26055 } 26056 26057 // SetHsmPartitionName sets the HsmPartitionName field's value. 26058 func (s *HsmConfiguration) SetHsmPartitionName(v string) *HsmConfiguration { 26059 s.HsmPartitionName = &v 26060 return s 26061 } 26062 26063 // SetTags sets the Tags field's value. 26064 func (s *HsmConfiguration) SetTags(v []*Tag) *HsmConfiguration { 26065 s.Tags = v 26066 return s 26067 } 26068 26069 // Describes the status of changes to HSM settings. 26070 type HsmStatus struct { 26071 _ struct{} `type:"structure"` 26072 26073 // Specifies the name of the HSM client certificate the Amazon Redshift cluster 26074 // uses to retrieve the data encryption keys stored in an HSM. 26075 HsmClientCertificateIdentifier *string `type:"string"` 26076 26077 // Specifies the name of the HSM configuration that contains the information 26078 // the Amazon Redshift cluster can use to retrieve and store keys in an HSM. 26079 HsmConfigurationIdentifier *string `type:"string"` 26080 26081 // Reports whether the Amazon Redshift cluster has finished applying any HSM 26082 // settings changes specified in a modify cluster command. 26083 // 26084 // Values: active, applying 26085 Status *string `type:"string"` 26086 } 26087 26088 // String returns the string representation. 26089 // 26090 // API parameter values that are decorated as "sensitive" in the API will not 26091 // be included in the string output. The member name will be present, but the 26092 // value will be replaced with "sensitive". 26093 func (s HsmStatus) String() string { 26094 return awsutil.Prettify(s) 26095 } 26096 26097 // GoString returns the string representation. 26098 // 26099 // API parameter values that are decorated as "sensitive" in the API will not 26100 // be included in the string output. The member name will be present, but the 26101 // value will be replaced with "sensitive". 26102 func (s HsmStatus) GoString() string { 26103 return s.String() 26104 } 26105 26106 // SetHsmClientCertificateIdentifier sets the HsmClientCertificateIdentifier field's value. 26107 func (s *HsmStatus) SetHsmClientCertificateIdentifier(v string) *HsmStatus { 26108 s.HsmClientCertificateIdentifier = &v 26109 return s 26110 } 26111 26112 // SetHsmConfigurationIdentifier sets the HsmConfigurationIdentifier field's value. 26113 func (s *HsmStatus) SetHsmConfigurationIdentifier(v string) *HsmStatus { 26114 s.HsmConfigurationIdentifier = &v 26115 return s 26116 } 26117 26118 // SetStatus sets the Status field's value. 26119 func (s *HsmStatus) SetStatus(v string) *HsmStatus { 26120 s.Status = &v 26121 return s 26122 } 26123 26124 // Describes an IP range used in a security group. 26125 type IPRange struct { 26126 _ struct{} `type:"structure"` 26127 26128 // The IP range in Classless Inter-Domain Routing (CIDR) notation. 26129 CIDRIP *string `type:"string"` 26130 26131 // The status of the IP range, for example, "authorized". 26132 Status *string `type:"string"` 26133 26134 // The list of tags for the IP range. 26135 Tags []*Tag `locationNameList:"Tag" type:"list"` 26136 } 26137 26138 // String returns the string representation. 26139 // 26140 // API parameter values that are decorated as "sensitive" in the API will not 26141 // be included in the string output. The member name will be present, but the 26142 // value will be replaced with "sensitive". 26143 func (s IPRange) String() string { 26144 return awsutil.Prettify(s) 26145 } 26146 26147 // GoString returns the string representation. 26148 // 26149 // API parameter values that are decorated as "sensitive" in the API will not 26150 // be included in the string output. The member name will be present, but the 26151 // value will be replaced with "sensitive". 26152 func (s IPRange) GoString() string { 26153 return s.String() 26154 } 26155 26156 // SetCIDRIP sets the CIDRIP field's value. 26157 func (s *IPRange) SetCIDRIP(v string) *IPRange { 26158 s.CIDRIP = &v 26159 return s 26160 } 26161 26162 // SetStatus sets the Status field's value. 26163 func (s *IPRange) SetStatus(v string) *IPRange { 26164 s.Status = &v 26165 return s 26166 } 26167 26168 // SetTags sets the Tags field's value. 26169 func (s *IPRange) SetTags(v []*Tag) *IPRange { 26170 s.Tags = v 26171 return s 26172 } 26173 26174 // Describes the status of logging for a cluster. 26175 type LoggingStatus struct { 26176 _ struct{} `type:"structure"` 26177 26178 // The name of the S3 bucket where the log files are stored. 26179 BucketName *string `type:"string"` 26180 26181 // The message indicating that logs failed to be delivered. 26182 LastFailureMessage *string `type:"string"` 26183 26184 // The last time when logs failed to be delivered. 26185 LastFailureTime *time.Time `type:"timestamp"` 26186 26187 // The last time that logs were delivered. 26188 LastSuccessfulDeliveryTime *time.Time `type:"timestamp"` 26189 26190 // true if logging is on, false if logging is off. 26191 LoggingEnabled *bool `type:"boolean"` 26192 26193 // The prefix applied to the log file names. 26194 S3KeyPrefix *string `type:"string"` 26195 } 26196 26197 // String returns the string representation. 26198 // 26199 // API parameter values that are decorated as "sensitive" in the API will not 26200 // be included in the string output. The member name will be present, but the 26201 // value will be replaced with "sensitive". 26202 func (s LoggingStatus) String() string { 26203 return awsutil.Prettify(s) 26204 } 26205 26206 // GoString returns the string representation. 26207 // 26208 // API parameter values that are decorated as "sensitive" in the API will not 26209 // be included in the string output. The member name will be present, but the 26210 // value will be replaced with "sensitive". 26211 func (s LoggingStatus) GoString() string { 26212 return s.String() 26213 } 26214 26215 // SetBucketName sets the BucketName field's value. 26216 func (s *LoggingStatus) SetBucketName(v string) *LoggingStatus { 26217 s.BucketName = &v 26218 return s 26219 } 26220 26221 // SetLastFailureMessage sets the LastFailureMessage field's value. 26222 func (s *LoggingStatus) SetLastFailureMessage(v string) *LoggingStatus { 26223 s.LastFailureMessage = &v 26224 return s 26225 } 26226 26227 // SetLastFailureTime sets the LastFailureTime field's value. 26228 func (s *LoggingStatus) SetLastFailureTime(v time.Time) *LoggingStatus { 26229 s.LastFailureTime = &v 26230 return s 26231 } 26232 26233 // SetLastSuccessfulDeliveryTime sets the LastSuccessfulDeliveryTime field's value. 26234 func (s *LoggingStatus) SetLastSuccessfulDeliveryTime(v time.Time) *LoggingStatus { 26235 s.LastSuccessfulDeliveryTime = &v 26236 return s 26237 } 26238 26239 // SetLoggingEnabled sets the LoggingEnabled field's value. 26240 func (s *LoggingStatus) SetLoggingEnabled(v bool) *LoggingStatus { 26241 s.LoggingEnabled = &v 26242 return s 26243 } 26244 26245 // SetS3KeyPrefix sets the S3KeyPrefix field's value. 26246 func (s *LoggingStatus) SetS3KeyPrefix(v string) *LoggingStatus { 26247 s.S3KeyPrefix = &v 26248 return s 26249 } 26250 26251 // Defines a maintenance track that determines which Amazon Redshift version 26252 // to apply during a maintenance window. If the value for MaintenanceTrack is 26253 // current, the cluster is updated to the most recently certified maintenance 26254 // release. If the value is trailing, the cluster is updated to the previously 26255 // certified maintenance release. 26256 type MaintenanceTrack struct { 26257 _ struct{} `type:"structure"` 26258 26259 // The version number for the cluster release. 26260 DatabaseVersion *string `type:"string"` 26261 26262 // The name of the maintenance track. Possible values are current and trailing. 26263 MaintenanceTrackName *string `type:"string"` 26264 26265 // An array of UpdateTarget objects to update with the maintenance track. 26266 UpdateTargets []*UpdateTarget `locationNameList:"UpdateTarget" type:"list"` 26267 } 26268 26269 // String returns the string representation. 26270 // 26271 // API parameter values that are decorated as "sensitive" in the API will not 26272 // be included in the string output. The member name will be present, but the 26273 // value will be replaced with "sensitive". 26274 func (s MaintenanceTrack) String() string { 26275 return awsutil.Prettify(s) 26276 } 26277 26278 // GoString returns the string representation. 26279 // 26280 // API parameter values that are decorated as "sensitive" in the API will not 26281 // be included in the string output. The member name will be present, but the 26282 // value will be replaced with "sensitive". 26283 func (s MaintenanceTrack) GoString() string { 26284 return s.String() 26285 } 26286 26287 // SetDatabaseVersion sets the DatabaseVersion field's value. 26288 func (s *MaintenanceTrack) SetDatabaseVersion(v string) *MaintenanceTrack { 26289 s.DatabaseVersion = &v 26290 return s 26291 } 26292 26293 // SetMaintenanceTrackName sets the MaintenanceTrackName field's value. 26294 func (s *MaintenanceTrack) SetMaintenanceTrackName(v string) *MaintenanceTrack { 26295 s.MaintenanceTrackName = &v 26296 return s 26297 } 26298 26299 // SetUpdateTargets sets the UpdateTargets field's value. 26300 func (s *MaintenanceTrack) SetUpdateTargets(v []*UpdateTarget) *MaintenanceTrack { 26301 s.UpdateTargets = v 26302 return s 26303 } 26304 26305 type ModifyAquaConfigurationInput struct { 26306 _ struct{} `type:"structure"` 26307 26308 // The new value of AQUA configuration status. Possible values include the following. 26309 // 26310 // * enabled - Use AQUA if it is available for the current Amazon Web Services 26311 // Region and Amazon Redshift node type. 26312 // 26313 // * disabled - Don't use AQUA. 26314 // 26315 // * auto - Amazon Redshift determines whether to use AQUA. 26316 AquaConfigurationStatus *string `type:"string" enum:"AquaConfigurationStatus"` 26317 26318 // The identifier of the cluster to be modified. 26319 // 26320 // ClusterIdentifier is a required field 26321 ClusterIdentifier *string `type:"string" required:"true"` 26322 } 26323 26324 // String returns the string representation. 26325 // 26326 // API parameter values that are decorated as "sensitive" in the API will not 26327 // be included in the string output. The member name will be present, but the 26328 // value will be replaced with "sensitive". 26329 func (s ModifyAquaConfigurationInput) String() string { 26330 return awsutil.Prettify(s) 26331 } 26332 26333 // GoString returns the string representation. 26334 // 26335 // API parameter values that are decorated as "sensitive" in the API will not 26336 // be included in the string output. The member name will be present, but the 26337 // value will be replaced with "sensitive". 26338 func (s ModifyAquaConfigurationInput) GoString() string { 26339 return s.String() 26340 } 26341 26342 // Validate inspects the fields of the type to determine if they are valid. 26343 func (s *ModifyAquaConfigurationInput) Validate() error { 26344 invalidParams := request.ErrInvalidParams{Context: "ModifyAquaConfigurationInput"} 26345 if s.ClusterIdentifier == nil { 26346 invalidParams.Add(request.NewErrParamRequired("ClusterIdentifier")) 26347 } 26348 26349 if invalidParams.Len() > 0 { 26350 return invalidParams 26351 } 26352 return nil 26353 } 26354 26355 // SetAquaConfigurationStatus sets the AquaConfigurationStatus field's value. 26356 func (s *ModifyAquaConfigurationInput) SetAquaConfigurationStatus(v string) *ModifyAquaConfigurationInput { 26357 s.AquaConfigurationStatus = &v 26358 return s 26359 } 26360 26361 // SetClusterIdentifier sets the ClusterIdentifier field's value. 26362 func (s *ModifyAquaConfigurationInput) SetClusterIdentifier(v string) *ModifyAquaConfigurationInput { 26363 s.ClusterIdentifier = &v 26364 return s 26365 } 26366 26367 type ModifyAquaConfigurationOutput struct { 26368 _ struct{} `type:"structure"` 26369 26370 // The updated AQUA configuration of the cluster. 26371 AquaConfiguration *AquaConfiguration `type:"structure"` 26372 } 26373 26374 // String returns the string representation. 26375 // 26376 // API parameter values that are decorated as "sensitive" in the API will not 26377 // be included in the string output. The member name will be present, but the 26378 // value will be replaced with "sensitive". 26379 func (s ModifyAquaConfigurationOutput) String() string { 26380 return awsutil.Prettify(s) 26381 } 26382 26383 // GoString returns the string representation. 26384 // 26385 // API parameter values that are decorated as "sensitive" in the API will not 26386 // be included in the string output. The member name will be present, but the 26387 // value will be replaced with "sensitive". 26388 func (s ModifyAquaConfigurationOutput) GoString() string { 26389 return s.String() 26390 } 26391 26392 // SetAquaConfiguration sets the AquaConfiguration field's value. 26393 func (s *ModifyAquaConfigurationOutput) SetAquaConfiguration(v *AquaConfiguration) *ModifyAquaConfigurationOutput { 26394 s.AquaConfiguration = v 26395 return s 26396 } 26397 26398 type ModifyAuthenticationProfileInput struct { 26399 _ struct{} `type:"structure"` 26400 26401 // The new content of the authentication profile in JSON format. The maximum 26402 // length of the JSON string is determined by a quota for your account. 26403 // 26404 // AuthenticationProfileContent is a required field 26405 AuthenticationProfileContent *string `type:"string" required:"true"` 26406 26407 // The name of the authentication profile to replace. 26408 // 26409 // AuthenticationProfileName is a required field 26410 AuthenticationProfileName *string `type:"string" required:"true"` 26411 } 26412 26413 // String returns the string representation. 26414 // 26415 // API parameter values that are decorated as "sensitive" in the API will not 26416 // be included in the string output. The member name will be present, but the 26417 // value will be replaced with "sensitive". 26418 func (s ModifyAuthenticationProfileInput) String() string { 26419 return awsutil.Prettify(s) 26420 } 26421 26422 // GoString returns the string representation. 26423 // 26424 // API parameter values that are decorated as "sensitive" in the API will not 26425 // be included in the string output. The member name will be present, but the 26426 // value will be replaced with "sensitive". 26427 func (s ModifyAuthenticationProfileInput) GoString() string { 26428 return s.String() 26429 } 26430 26431 // Validate inspects the fields of the type to determine if they are valid. 26432 func (s *ModifyAuthenticationProfileInput) Validate() error { 26433 invalidParams := request.ErrInvalidParams{Context: "ModifyAuthenticationProfileInput"} 26434 if s.AuthenticationProfileContent == nil { 26435 invalidParams.Add(request.NewErrParamRequired("AuthenticationProfileContent")) 26436 } 26437 if s.AuthenticationProfileName == nil { 26438 invalidParams.Add(request.NewErrParamRequired("AuthenticationProfileName")) 26439 } 26440 26441 if invalidParams.Len() > 0 { 26442 return invalidParams 26443 } 26444 return nil 26445 } 26446 26447 // SetAuthenticationProfileContent sets the AuthenticationProfileContent field's value. 26448 func (s *ModifyAuthenticationProfileInput) SetAuthenticationProfileContent(v string) *ModifyAuthenticationProfileInput { 26449 s.AuthenticationProfileContent = &v 26450 return s 26451 } 26452 26453 // SetAuthenticationProfileName sets the AuthenticationProfileName field's value. 26454 func (s *ModifyAuthenticationProfileInput) SetAuthenticationProfileName(v string) *ModifyAuthenticationProfileInput { 26455 s.AuthenticationProfileName = &v 26456 return s 26457 } 26458 26459 type ModifyAuthenticationProfileOutput struct { 26460 _ struct{} `type:"structure"` 26461 26462 // The updated content of the authentication profile in JSON format. 26463 AuthenticationProfileContent *string `type:"string"` 26464 26465 // The name of the authentication profile that was replaced. 26466 AuthenticationProfileName *string `type:"string"` 26467 } 26468 26469 // String returns the string representation. 26470 // 26471 // API parameter values that are decorated as "sensitive" in the API will not 26472 // be included in the string output. The member name will be present, but the 26473 // value will be replaced with "sensitive". 26474 func (s ModifyAuthenticationProfileOutput) String() string { 26475 return awsutil.Prettify(s) 26476 } 26477 26478 // GoString returns the string representation. 26479 // 26480 // API parameter values that are decorated as "sensitive" in the API will not 26481 // be included in the string output. The member name will be present, but the 26482 // value will be replaced with "sensitive". 26483 func (s ModifyAuthenticationProfileOutput) GoString() string { 26484 return s.String() 26485 } 26486 26487 // SetAuthenticationProfileContent sets the AuthenticationProfileContent field's value. 26488 func (s *ModifyAuthenticationProfileOutput) SetAuthenticationProfileContent(v string) *ModifyAuthenticationProfileOutput { 26489 s.AuthenticationProfileContent = &v 26490 return s 26491 } 26492 26493 // SetAuthenticationProfileName sets the AuthenticationProfileName field's value. 26494 func (s *ModifyAuthenticationProfileOutput) SetAuthenticationProfileName(v string) *ModifyAuthenticationProfileOutput { 26495 s.AuthenticationProfileName = &v 26496 return s 26497 } 26498 26499 type ModifyClusterDbRevisionInput struct { 26500 _ struct{} `type:"structure"` 26501 26502 // The unique identifier of a cluster whose database revision you want to modify. 26503 // 26504 // Example: examplecluster 26505 // 26506 // ClusterIdentifier is a required field 26507 ClusterIdentifier *string `type:"string" required:"true"` 26508 26509 // The identifier of the database revision. You can retrieve this value from 26510 // the response to the DescribeClusterDbRevisions request. 26511 // 26512 // RevisionTarget is a required field 26513 RevisionTarget *string `type:"string" required:"true"` 26514 } 26515 26516 // String returns the string representation. 26517 // 26518 // API parameter values that are decorated as "sensitive" in the API will not 26519 // be included in the string output. The member name will be present, but the 26520 // value will be replaced with "sensitive". 26521 func (s ModifyClusterDbRevisionInput) String() string { 26522 return awsutil.Prettify(s) 26523 } 26524 26525 // GoString returns the string representation. 26526 // 26527 // API parameter values that are decorated as "sensitive" in the API will not 26528 // be included in the string output. The member name will be present, but the 26529 // value will be replaced with "sensitive". 26530 func (s ModifyClusterDbRevisionInput) GoString() string { 26531 return s.String() 26532 } 26533 26534 // Validate inspects the fields of the type to determine if they are valid. 26535 func (s *ModifyClusterDbRevisionInput) Validate() error { 26536 invalidParams := request.ErrInvalidParams{Context: "ModifyClusterDbRevisionInput"} 26537 if s.ClusterIdentifier == nil { 26538 invalidParams.Add(request.NewErrParamRequired("ClusterIdentifier")) 26539 } 26540 if s.RevisionTarget == nil { 26541 invalidParams.Add(request.NewErrParamRequired("RevisionTarget")) 26542 } 26543 26544 if invalidParams.Len() > 0 { 26545 return invalidParams 26546 } 26547 return nil 26548 } 26549 26550 // SetClusterIdentifier sets the ClusterIdentifier field's value. 26551 func (s *ModifyClusterDbRevisionInput) SetClusterIdentifier(v string) *ModifyClusterDbRevisionInput { 26552 s.ClusterIdentifier = &v 26553 return s 26554 } 26555 26556 // SetRevisionTarget sets the RevisionTarget field's value. 26557 func (s *ModifyClusterDbRevisionInput) SetRevisionTarget(v string) *ModifyClusterDbRevisionInput { 26558 s.RevisionTarget = &v 26559 return s 26560 } 26561 26562 type ModifyClusterDbRevisionOutput struct { 26563 _ struct{} `type:"structure"` 26564 26565 // Describes a cluster. 26566 Cluster *Cluster `type:"structure"` 26567 } 26568 26569 // String returns the string representation. 26570 // 26571 // API parameter values that are decorated as "sensitive" in the API will not 26572 // be included in the string output. The member name will be present, but the 26573 // value will be replaced with "sensitive". 26574 func (s ModifyClusterDbRevisionOutput) String() string { 26575 return awsutil.Prettify(s) 26576 } 26577 26578 // GoString returns the string representation. 26579 // 26580 // API parameter values that are decorated as "sensitive" in the API will not 26581 // be included in the string output. The member name will be present, but the 26582 // value will be replaced with "sensitive". 26583 func (s ModifyClusterDbRevisionOutput) GoString() string { 26584 return s.String() 26585 } 26586 26587 // SetCluster sets the Cluster field's value. 26588 func (s *ModifyClusterDbRevisionOutput) SetCluster(v *Cluster) *ModifyClusterDbRevisionOutput { 26589 s.Cluster = v 26590 return s 26591 } 26592 26593 type ModifyClusterIamRolesInput struct { 26594 _ struct{} `type:"structure"` 26595 26596 // Zero or more IAM roles to associate with the cluster. The roles must be in 26597 // their Amazon Resource Name (ARN) format. You can associate up to 10 IAM roles 26598 // with a single cluster in a single request. 26599 AddIamRoles []*string `locationNameList:"IamRoleArn" type:"list"` 26600 26601 // The unique identifier of the cluster for which you want to associate or disassociate 26602 // IAM roles. 26603 // 26604 // ClusterIdentifier is a required field 26605 ClusterIdentifier *string `type:"string" required:"true"` 26606 26607 // Zero or more IAM roles in ARN format to disassociate from the cluster. You 26608 // can disassociate up to 10 IAM roles from a single cluster in a single request. 26609 RemoveIamRoles []*string `locationNameList:"IamRoleArn" type:"list"` 26610 } 26611 26612 // String returns the string representation. 26613 // 26614 // API parameter values that are decorated as "sensitive" in the API will not 26615 // be included in the string output. The member name will be present, but the 26616 // value will be replaced with "sensitive". 26617 func (s ModifyClusterIamRolesInput) String() string { 26618 return awsutil.Prettify(s) 26619 } 26620 26621 // GoString returns the string representation. 26622 // 26623 // API parameter values that are decorated as "sensitive" in the API will not 26624 // be included in the string output. The member name will be present, but the 26625 // value will be replaced with "sensitive". 26626 func (s ModifyClusterIamRolesInput) GoString() string { 26627 return s.String() 26628 } 26629 26630 // Validate inspects the fields of the type to determine if they are valid. 26631 func (s *ModifyClusterIamRolesInput) Validate() error { 26632 invalidParams := request.ErrInvalidParams{Context: "ModifyClusterIamRolesInput"} 26633 if s.ClusterIdentifier == nil { 26634 invalidParams.Add(request.NewErrParamRequired("ClusterIdentifier")) 26635 } 26636 26637 if invalidParams.Len() > 0 { 26638 return invalidParams 26639 } 26640 return nil 26641 } 26642 26643 // SetAddIamRoles sets the AddIamRoles field's value. 26644 func (s *ModifyClusterIamRolesInput) SetAddIamRoles(v []*string) *ModifyClusterIamRolesInput { 26645 s.AddIamRoles = v 26646 return s 26647 } 26648 26649 // SetClusterIdentifier sets the ClusterIdentifier field's value. 26650 func (s *ModifyClusterIamRolesInput) SetClusterIdentifier(v string) *ModifyClusterIamRolesInput { 26651 s.ClusterIdentifier = &v 26652 return s 26653 } 26654 26655 // SetRemoveIamRoles sets the RemoveIamRoles field's value. 26656 func (s *ModifyClusterIamRolesInput) SetRemoveIamRoles(v []*string) *ModifyClusterIamRolesInput { 26657 s.RemoveIamRoles = v 26658 return s 26659 } 26660 26661 type ModifyClusterIamRolesOutput struct { 26662 _ struct{} `type:"structure"` 26663 26664 // Describes a cluster. 26665 Cluster *Cluster `type:"structure"` 26666 } 26667 26668 // String returns the string representation. 26669 // 26670 // API parameter values that are decorated as "sensitive" in the API will not 26671 // be included in the string output. The member name will be present, but the 26672 // value will be replaced with "sensitive". 26673 func (s ModifyClusterIamRolesOutput) String() string { 26674 return awsutil.Prettify(s) 26675 } 26676 26677 // GoString returns the string representation. 26678 // 26679 // API parameter values that are decorated as "sensitive" in the API will not 26680 // be included in the string output. The member name will be present, but the 26681 // value will be replaced with "sensitive". 26682 func (s ModifyClusterIamRolesOutput) GoString() string { 26683 return s.String() 26684 } 26685 26686 // SetCluster sets the Cluster field's value. 26687 func (s *ModifyClusterIamRolesOutput) SetCluster(v *Cluster) *ModifyClusterIamRolesOutput { 26688 s.Cluster = v 26689 return s 26690 } 26691 26692 type ModifyClusterInput struct { 26693 _ struct{} `type:"structure"` 26694 26695 // If true, major version upgrades will be applied automatically to the cluster 26696 // during the maintenance window. 26697 // 26698 // Default: false 26699 AllowVersionUpgrade *bool `type:"boolean"` 26700 26701 // The number of days that automated snapshots are retained. If the value is 26702 // 0, automated snapshots are disabled. Even if automated snapshots are disabled, 26703 // you can still create manual snapshots when you want with CreateClusterSnapshot. 26704 // 26705 // If you decrease the automated snapshot retention period from its current 26706 // value, existing automated snapshots that fall outside of the new retention 26707 // period will be immediately deleted. 26708 // 26709 // You can't disable automated snapshots for RA3 node types. Set the automated 26710 // retention period from 1-35 days. 26711 // 26712 // Default: Uses existing setting. 26713 // 26714 // Constraints: Must be a value from 0 to 35. 26715 AutomatedSnapshotRetentionPeriod *int64 `type:"integer"` 26716 26717 // The option to initiate relocation for an Amazon Redshift cluster to the target 26718 // Availability Zone. 26719 AvailabilityZone *string `type:"string"` 26720 26721 // The option to enable relocation for an Amazon Redshift cluster between Availability 26722 // Zones after the cluster modification is complete. 26723 AvailabilityZoneRelocation *bool `type:"boolean"` 26724 26725 // The unique identifier of the cluster to be modified. 26726 // 26727 // Example: examplecluster 26728 // 26729 // ClusterIdentifier is a required field 26730 ClusterIdentifier *string `type:"string" required:"true"` 26731 26732 // The name of the cluster parameter group to apply to this cluster. This change 26733 // is applied only after the cluster is rebooted. To reboot a cluster use RebootCluster. 26734 // 26735 // Default: Uses existing setting. 26736 // 26737 // Constraints: The cluster parameter group must be in the same parameter group 26738 // family that matches the cluster version. 26739 ClusterParameterGroupName *string `type:"string"` 26740 26741 // A list of cluster security groups to be authorized on this cluster. This 26742 // change is asynchronously applied as soon as possible. 26743 // 26744 // Security groups currently associated with the cluster, and not in the list 26745 // of groups to apply, will be revoked from the cluster. 26746 // 26747 // Constraints: 26748 // 26749 // * Must be 1 to 255 alphanumeric characters or hyphens 26750 // 26751 // * First character must be a letter 26752 // 26753 // * Cannot end with a hyphen or contain two consecutive hyphens 26754 ClusterSecurityGroups []*string `locationNameList:"ClusterSecurityGroupName" type:"list"` 26755 26756 // The new cluster type. 26757 // 26758 // When you submit your cluster resize request, your existing cluster goes into 26759 // a read-only mode. After Amazon Redshift provisions a new cluster based on 26760 // your resize requirements, there will be outage for a period while the old 26761 // cluster is deleted and your connection is switched to the new cluster. You 26762 // can use DescribeResize to track the progress of the resize request. 26763 // 26764 // Valid Values: multi-node | single-node 26765 ClusterType *string `type:"string"` 26766 26767 // The new version number of the Amazon Redshift engine to upgrade to. 26768 // 26769 // For major version upgrades, if a non-default cluster parameter group is currently 26770 // in use, a new cluster parameter group in the cluster parameter group family 26771 // for the new version must be specified. The new cluster parameter group can 26772 // be the default for that cluster parameter group family. For more information 26773 // about parameters and parameter groups, go to Amazon Redshift Parameter Groups 26774 // (https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-parameter-groups.html) 26775 // in the Amazon Redshift Cluster Management Guide. 26776 // 26777 // Example: 1.0 26778 ClusterVersion *string `type:"string"` 26779 26780 // The Elastic IP (EIP) address for the cluster. 26781 // 26782 // Constraints: The cluster must be provisioned in EC2-VPC and publicly-accessible 26783 // through an Internet gateway. For more information about provisioning clusters 26784 // in EC2-VPC, go to Supported Platforms to Launch Your Cluster (https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-clusters.html#cluster-platforms) 26785 // in the Amazon Redshift Cluster Management Guide. 26786 ElasticIp *string `type:"string"` 26787 26788 // Indicates whether the cluster is encrypted. If the value is encrypted (true) 26789 // and you provide a value for the KmsKeyId parameter, we encrypt the cluster 26790 // with the provided KmsKeyId. If you don't provide a KmsKeyId, we encrypt with 26791 // the default key. 26792 // 26793 // If the value is not encrypted (false), then the cluster is decrypted. 26794 Encrypted *bool `type:"boolean"` 26795 26796 // An option that specifies whether to create the cluster with enhanced VPC 26797 // routing enabled. To create a cluster that uses enhanced VPC routing, the 26798 // cluster must be in a VPC. For more information, see Enhanced VPC Routing 26799 // (https://docs.aws.amazon.com/redshift/latest/mgmt/enhanced-vpc-routing.html) 26800 // in the Amazon Redshift Cluster Management Guide. 26801 // 26802 // If this option is true, enhanced VPC routing is enabled. 26803 // 26804 // Default: false 26805 EnhancedVpcRouting *bool `type:"boolean"` 26806 26807 // Specifies the name of the HSM client certificate the Amazon Redshift cluster 26808 // uses to retrieve the data encryption keys stored in an HSM. 26809 HsmClientCertificateIdentifier *string `type:"string"` 26810 26811 // Specifies the name of the HSM configuration that contains the information 26812 // the Amazon Redshift cluster can use to retrieve and store keys in an HSM. 26813 HsmConfigurationIdentifier *string `type:"string"` 26814 26815 // The Key Management Service (KMS) key ID of the encryption key that you want 26816 // to use to encrypt data in the cluster. 26817 KmsKeyId *string `type:"string"` 26818 26819 // The name for the maintenance track that you want to assign for the cluster. 26820 // This name change is asynchronous. The new track name stays in the PendingModifiedValues 26821 // for the cluster until the next maintenance window. When the maintenance track 26822 // changes, the cluster is switched to the latest cluster release available 26823 // for the maintenance track. At this point, the maintenance track name is applied. 26824 MaintenanceTrackName *string `type:"string"` 26825 26826 // The default for number of days that a newly created manual snapshot is retained. 26827 // If the value is -1, the manual snapshot is retained indefinitely. This value 26828 // doesn't retroactively change the retention periods of existing manual snapshots. 26829 // 26830 // The value must be either -1 or an integer between 1 and 3,653. 26831 // 26832 // The default value is -1. 26833 ManualSnapshotRetentionPeriod *int64 `type:"integer"` 26834 26835 // The new password for the cluster admin user. This change is asynchronously 26836 // applied as soon as possible. Between the time of the request and the completion 26837 // of the request, the MasterUserPassword element exists in the PendingModifiedValues 26838 // element of the operation response. 26839 // 26840 // Operations never return the password, so this operation provides a way to 26841 // regain access to the admin user account for a cluster if the password is 26842 // lost. 26843 // 26844 // Default: Uses existing setting. 26845 // 26846 // Constraints: 26847 // 26848 // * Must be between 8 and 64 characters in length. 26849 // 26850 // * Must contain at least one uppercase letter. 26851 // 26852 // * Must contain at least one lowercase letter. 26853 // 26854 // * Must contain one number. 26855 // 26856 // * Can be any printable ASCII character (ASCII code 33 to 126) except ' 26857 // (single quote), " (double quote), \, /, @, or space. 26858 MasterUserPassword *string `type:"string"` 26859 26860 // The new identifier for the cluster. 26861 // 26862 // Constraints: 26863 // 26864 // * Must contain from 1 to 63 alphanumeric characters or hyphens. 26865 // 26866 // * Alphabetic characters must be lowercase. 26867 // 26868 // * First character must be a letter. 26869 // 26870 // * Cannot end with a hyphen or contain two consecutive hyphens. 26871 // 26872 // * Must be unique for all clusters within an Amazon Web Services account. 26873 // 26874 // Example: examplecluster 26875 NewClusterIdentifier *string `type:"string"` 26876 26877 // The new node type of the cluster. If you specify a new node type, you must 26878 // also specify the number of nodes parameter. 26879 // 26880 // For more information about resizing clusters, go to Resizing Clusters in 26881 // Amazon Redshift (https://docs.aws.amazon.com/redshift/latest/mgmt/rs-resize-tutorial.html) 26882 // in the Amazon Redshift Cluster Management Guide. 26883 // 26884 // Valid Values: ds2.xlarge | ds2.8xlarge | dc1.large | dc1.8xlarge | dc2.large 26885 // | dc2.8xlarge | ra3.xlplus | ra3.4xlarge | ra3.16xlarge 26886 NodeType *string `type:"string"` 26887 26888 // The new number of nodes of the cluster. If you specify a new number of nodes, 26889 // you must also specify the node type parameter. 26890 // 26891 // For more information about resizing clusters, go to Resizing Clusters in 26892 // Amazon Redshift (https://docs.aws.amazon.com/redshift/latest/mgmt/rs-resize-tutorial.html) 26893 // in the Amazon Redshift Cluster Management Guide. 26894 // 26895 // Valid Values: Integer greater than 0. 26896 NumberOfNodes *int64 `type:"integer"` 26897 26898 // The option to change the port of an Amazon Redshift cluster. 26899 Port *int64 `type:"integer"` 26900 26901 // The weekly time range (in UTC) during which system maintenance can occur, 26902 // if necessary. If system maintenance is necessary during the window, it may 26903 // result in an outage. 26904 // 26905 // This maintenance window change is made immediately. If the new maintenance 26906 // window indicates the current time, there must be at least 120 minutes between 26907 // the current time and end of the window in order to ensure that pending changes 26908 // are applied. 26909 // 26910 // Default: Uses existing setting. 26911 // 26912 // Format: ddd:hh24:mi-ddd:hh24:mi, for example wed:07:30-wed:08:00. 26913 // 26914 // Valid Days: Mon | Tue | Wed | Thu | Fri | Sat | Sun 26915 // 26916 // Constraints: Must be at least 30 minutes. 26917 PreferredMaintenanceWindow *string `type:"string"` 26918 26919 // If true, the cluster can be accessed from a public network. Only clusters 26920 // in VPCs can be set to be publicly available. 26921 PubliclyAccessible *bool `type:"boolean"` 26922 26923 // A list of virtual private cloud (VPC) security groups to be associated with 26924 // the cluster. This change is asynchronously applied as soon as possible. 26925 VpcSecurityGroupIds []*string `locationNameList:"VpcSecurityGroupId" type:"list"` 26926 } 26927 26928 // String returns the string representation. 26929 // 26930 // API parameter values that are decorated as "sensitive" in the API will not 26931 // be included in the string output. The member name will be present, but the 26932 // value will be replaced with "sensitive". 26933 func (s ModifyClusterInput) String() string { 26934 return awsutil.Prettify(s) 26935 } 26936 26937 // GoString returns the string representation. 26938 // 26939 // API parameter values that are decorated as "sensitive" in the API will not 26940 // be included in the string output. The member name will be present, but the 26941 // value will be replaced with "sensitive". 26942 func (s ModifyClusterInput) GoString() string { 26943 return s.String() 26944 } 26945 26946 // Validate inspects the fields of the type to determine if they are valid. 26947 func (s *ModifyClusterInput) Validate() error { 26948 invalidParams := request.ErrInvalidParams{Context: "ModifyClusterInput"} 26949 if s.ClusterIdentifier == nil { 26950 invalidParams.Add(request.NewErrParamRequired("ClusterIdentifier")) 26951 } 26952 26953 if invalidParams.Len() > 0 { 26954 return invalidParams 26955 } 26956 return nil 26957 } 26958 26959 // SetAllowVersionUpgrade sets the AllowVersionUpgrade field's value. 26960 func (s *ModifyClusterInput) SetAllowVersionUpgrade(v bool) *ModifyClusterInput { 26961 s.AllowVersionUpgrade = &v 26962 return s 26963 } 26964 26965 // SetAutomatedSnapshotRetentionPeriod sets the AutomatedSnapshotRetentionPeriod field's value. 26966 func (s *ModifyClusterInput) SetAutomatedSnapshotRetentionPeriod(v int64) *ModifyClusterInput { 26967 s.AutomatedSnapshotRetentionPeriod = &v 26968 return s 26969 } 26970 26971 // SetAvailabilityZone sets the AvailabilityZone field's value. 26972 func (s *ModifyClusterInput) SetAvailabilityZone(v string) *ModifyClusterInput { 26973 s.AvailabilityZone = &v 26974 return s 26975 } 26976 26977 // SetAvailabilityZoneRelocation sets the AvailabilityZoneRelocation field's value. 26978 func (s *ModifyClusterInput) SetAvailabilityZoneRelocation(v bool) *ModifyClusterInput { 26979 s.AvailabilityZoneRelocation = &v 26980 return s 26981 } 26982 26983 // SetClusterIdentifier sets the ClusterIdentifier field's value. 26984 func (s *ModifyClusterInput) SetClusterIdentifier(v string) *ModifyClusterInput { 26985 s.ClusterIdentifier = &v 26986 return s 26987 } 26988 26989 // SetClusterParameterGroupName sets the ClusterParameterGroupName field's value. 26990 func (s *ModifyClusterInput) SetClusterParameterGroupName(v string) *ModifyClusterInput { 26991 s.ClusterParameterGroupName = &v 26992 return s 26993 } 26994 26995 // SetClusterSecurityGroups sets the ClusterSecurityGroups field's value. 26996 func (s *ModifyClusterInput) SetClusterSecurityGroups(v []*string) *ModifyClusterInput { 26997 s.ClusterSecurityGroups = v 26998 return s 26999 } 27000 27001 // SetClusterType sets the ClusterType field's value. 27002 func (s *ModifyClusterInput) SetClusterType(v string) *ModifyClusterInput { 27003 s.ClusterType = &v 27004 return s 27005 } 27006 27007 // SetClusterVersion sets the ClusterVersion field's value. 27008 func (s *ModifyClusterInput) SetClusterVersion(v string) *ModifyClusterInput { 27009 s.ClusterVersion = &v 27010 return s 27011 } 27012 27013 // SetElasticIp sets the ElasticIp field's value. 27014 func (s *ModifyClusterInput) SetElasticIp(v string) *ModifyClusterInput { 27015 s.ElasticIp = &v 27016 return s 27017 } 27018 27019 // SetEncrypted sets the Encrypted field's value. 27020 func (s *ModifyClusterInput) SetEncrypted(v bool) *ModifyClusterInput { 27021 s.Encrypted = &v 27022 return s 27023 } 27024 27025 // SetEnhancedVpcRouting sets the EnhancedVpcRouting field's value. 27026 func (s *ModifyClusterInput) SetEnhancedVpcRouting(v bool) *ModifyClusterInput { 27027 s.EnhancedVpcRouting = &v 27028 return s 27029 } 27030 27031 // SetHsmClientCertificateIdentifier sets the HsmClientCertificateIdentifier field's value. 27032 func (s *ModifyClusterInput) SetHsmClientCertificateIdentifier(v string) *ModifyClusterInput { 27033 s.HsmClientCertificateIdentifier = &v 27034 return s 27035 } 27036 27037 // SetHsmConfigurationIdentifier sets the HsmConfigurationIdentifier field's value. 27038 func (s *ModifyClusterInput) SetHsmConfigurationIdentifier(v string) *ModifyClusterInput { 27039 s.HsmConfigurationIdentifier = &v 27040 return s 27041 } 27042 27043 // SetKmsKeyId sets the KmsKeyId field's value. 27044 func (s *ModifyClusterInput) SetKmsKeyId(v string) *ModifyClusterInput { 27045 s.KmsKeyId = &v 27046 return s 27047 } 27048 27049 // SetMaintenanceTrackName sets the MaintenanceTrackName field's value. 27050 func (s *ModifyClusterInput) SetMaintenanceTrackName(v string) *ModifyClusterInput { 27051 s.MaintenanceTrackName = &v 27052 return s 27053 } 27054 27055 // SetManualSnapshotRetentionPeriod sets the ManualSnapshotRetentionPeriod field's value. 27056 func (s *ModifyClusterInput) SetManualSnapshotRetentionPeriod(v int64) *ModifyClusterInput { 27057 s.ManualSnapshotRetentionPeriod = &v 27058 return s 27059 } 27060 27061 // SetMasterUserPassword sets the MasterUserPassword field's value. 27062 func (s *ModifyClusterInput) SetMasterUserPassword(v string) *ModifyClusterInput { 27063 s.MasterUserPassword = &v 27064 return s 27065 } 27066 27067 // SetNewClusterIdentifier sets the NewClusterIdentifier field's value. 27068 func (s *ModifyClusterInput) SetNewClusterIdentifier(v string) *ModifyClusterInput { 27069 s.NewClusterIdentifier = &v 27070 return s 27071 } 27072 27073 // SetNodeType sets the NodeType field's value. 27074 func (s *ModifyClusterInput) SetNodeType(v string) *ModifyClusterInput { 27075 s.NodeType = &v 27076 return s 27077 } 27078 27079 // SetNumberOfNodes sets the NumberOfNodes field's value. 27080 func (s *ModifyClusterInput) SetNumberOfNodes(v int64) *ModifyClusterInput { 27081 s.NumberOfNodes = &v 27082 return s 27083 } 27084 27085 // SetPort sets the Port field's value. 27086 func (s *ModifyClusterInput) SetPort(v int64) *ModifyClusterInput { 27087 s.Port = &v 27088 return s 27089 } 27090 27091 // SetPreferredMaintenanceWindow sets the PreferredMaintenanceWindow field's value. 27092 func (s *ModifyClusterInput) SetPreferredMaintenanceWindow(v string) *ModifyClusterInput { 27093 s.PreferredMaintenanceWindow = &v 27094 return s 27095 } 27096 27097 // SetPubliclyAccessible sets the PubliclyAccessible field's value. 27098 func (s *ModifyClusterInput) SetPubliclyAccessible(v bool) *ModifyClusterInput { 27099 s.PubliclyAccessible = &v 27100 return s 27101 } 27102 27103 // SetVpcSecurityGroupIds sets the VpcSecurityGroupIds field's value. 27104 func (s *ModifyClusterInput) SetVpcSecurityGroupIds(v []*string) *ModifyClusterInput { 27105 s.VpcSecurityGroupIds = v 27106 return s 27107 } 27108 27109 type ModifyClusterMaintenanceInput struct { 27110 _ struct{} `type:"structure"` 27111 27112 // A unique identifier for the cluster. 27113 // 27114 // ClusterIdentifier is a required field 27115 ClusterIdentifier *string `type:"string" required:"true"` 27116 27117 // A boolean indicating whether to enable the deferred maintenance window. 27118 DeferMaintenance *bool `type:"boolean"` 27119 27120 // An integer indicating the duration of the maintenance window in days. If 27121 // you specify a duration, you can't specify an end time. The duration must 27122 // be 45 days or less. 27123 DeferMaintenanceDuration *int64 `type:"integer"` 27124 27125 // A timestamp indicating end time for the deferred maintenance window. If you 27126 // specify an end time, you can't specify a duration. 27127 DeferMaintenanceEndTime *time.Time `type:"timestamp"` 27128 27129 // A unique identifier for the deferred maintenance window. 27130 DeferMaintenanceIdentifier *string `type:"string"` 27131 27132 // A timestamp indicating the start time for the deferred maintenance window. 27133 DeferMaintenanceStartTime *time.Time `type:"timestamp"` 27134 } 27135 27136 // String returns the string representation. 27137 // 27138 // API parameter values that are decorated as "sensitive" in the API will not 27139 // be included in the string output. The member name will be present, but the 27140 // value will be replaced with "sensitive". 27141 func (s ModifyClusterMaintenanceInput) String() string { 27142 return awsutil.Prettify(s) 27143 } 27144 27145 // GoString returns the string representation. 27146 // 27147 // API parameter values that are decorated as "sensitive" in the API will not 27148 // be included in the string output. The member name will be present, but the 27149 // value will be replaced with "sensitive". 27150 func (s ModifyClusterMaintenanceInput) GoString() string { 27151 return s.String() 27152 } 27153 27154 // Validate inspects the fields of the type to determine if they are valid. 27155 func (s *ModifyClusterMaintenanceInput) Validate() error { 27156 invalidParams := request.ErrInvalidParams{Context: "ModifyClusterMaintenanceInput"} 27157 if s.ClusterIdentifier == nil { 27158 invalidParams.Add(request.NewErrParamRequired("ClusterIdentifier")) 27159 } 27160 27161 if invalidParams.Len() > 0 { 27162 return invalidParams 27163 } 27164 return nil 27165 } 27166 27167 // SetClusterIdentifier sets the ClusterIdentifier field's value. 27168 func (s *ModifyClusterMaintenanceInput) SetClusterIdentifier(v string) *ModifyClusterMaintenanceInput { 27169 s.ClusterIdentifier = &v 27170 return s 27171 } 27172 27173 // SetDeferMaintenance sets the DeferMaintenance field's value. 27174 func (s *ModifyClusterMaintenanceInput) SetDeferMaintenance(v bool) *ModifyClusterMaintenanceInput { 27175 s.DeferMaintenance = &v 27176 return s 27177 } 27178 27179 // SetDeferMaintenanceDuration sets the DeferMaintenanceDuration field's value. 27180 func (s *ModifyClusterMaintenanceInput) SetDeferMaintenanceDuration(v int64) *ModifyClusterMaintenanceInput { 27181 s.DeferMaintenanceDuration = &v 27182 return s 27183 } 27184 27185 // SetDeferMaintenanceEndTime sets the DeferMaintenanceEndTime field's value. 27186 func (s *ModifyClusterMaintenanceInput) SetDeferMaintenanceEndTime(v time.Time) *ModifyClusterMaintenanceInput { 27187 s.DeferMaintenanceEndTime = &v 27188 return s 27189 } 27190 27191 // SetDeferMaintenanceIdentifier sets the DeferMaintenanceIdentifier field's value. 27192 func (s *ModifyClusterMaintenanceInput) SetDeferMaintenanceIdentifier(v string) *ModifyClusterMaintenanceInput { 27193 s.DeferMaintenanceIdentifier = &v 27194 return s 27195 } 27196 27197 // SetDeferMaintenanceStartTime sets the DeferMaintenanceStartTime field's value. 27198 func (s *ModifyClusterMaintenanceInput) SetDeferMaintenanceStartTime(v time.Time) *ModifyClusterMaintenanceInput { 27199 s.DeferMaintenanceStartTime = &v 27200 return s 27201 } 27202 27203 type ModifyClusterMaintenanceOutput struct { 27204 _ struct{} `type:"structure"` 27205 27206 // Describes a cluster. 27207 Cluster *Cluster `type:"structure"` 27208 } 27209 27210 // String returns the string representation. 27211 // 27212 // API parameter values that are decorated as "sensitive" in the API will not 27213 // be included in the string output. The member name will be present, but the 27214 // value will be replaced with "sensitive". 27215 func (s ModifyClusterMaintenanceOutput) String() string { 27216 return awsutil.Prettify(s) 27217 } 27218 27219 // GoString returns the string representation. 27220 // 27221 // API parameter values that are decorated as "sensitive" in the API will not 27222 // be included in the string output. The member name will be present, but the 27223 // value will be replaced with "sensitive". 27224 func (s ModifyClusterMaintenanceOutput) GoString() string { 27225 return s.String() 27226 } 27227 27228 // SetCluster sets the Cluster field's value. 27229 func (s *ModifyClusterMaintenanceOutput) SetCluster(v *Cluster) *ModifyClusterMaintenanceOutput { 27230 s.Cluster = v 27231 return s 27232 } 27233 27234 type ModifyClusterOutput struct { 27235 _ struct{} `type:"structure"` 27236 27237 // Describes a cluster. 27238 Cluster *Cluster `type:"structure"` 27239 } 27240 27241 // String returns the string representation. 27242 // 27243 // API parameter values that are decorated as "sensitive" in the API will not 27244 // be included in the string output. The member name will be present, but the 27245 // value will be replaced with "sensitive". 27246 func (s ModifyClusterOutput) String() string { 27247 return awsutil.Prettify(s) 27248 } 27249 27250 // GoString returns the string representation. 27251 // 27252 // API parameter values that are decorated as "sensitive" in the API will not 27253 // be included in the string output. The member name will be present, but the 27254 // value will be replaced with "sensitive". 27255 func (s ModifyClusterOutput) GoString() string { 27256 return s.String() 27257 } 27258 27259 // SetCluster sets the Cluster field's value. 27260 func (s *ModifyClusterOutput) SetCluster(v *Cluster) *ModifyClusterOutput { 27261 s.Cluster = v 27262 return s 27263 } 27264 27265 // Describes a modify cluster parameter group operation. 27266 type ModifyClusterParameterGroupInput struct { 27267 _ struct{} `type:"structure"` 27268 27269 // The name of the parameter group to be modified. 27270 // 27271 // ParameterGroupName is a required field 27272 ParameterGroupName *string `type:"string" required:"true"` 27273 27274 // An array of parameters to be modified. A maximum of 20 parameters can be 27275 // modified in a single request. 27276 // 27277 // For each parameter to be modified, you must supply at least the parameter 27278 // name and parameter value; other name-value pairs of the parameter are optional. 27279 // 27280 // For the workload management (WLM) configuration, you must supply all the 27281 // name-value pairs in the wlm_json_configuration parameter. 27282 // 27283 // Parameters is a required field 27284 Parameters []*Parameter `locationNameList:"Parameter" type:"list" required:"true"` 27285 } 27286 27287 // String returns the string representation. 27288 // 27289 // API parameter values that are decorated as "sensitive" in the API will not 27290 // be included in the string output. The member name will be present, but the 27291 // value will be replaced with "sensitive". 27292 func (s ModifyClusterParameterGroupInput) String() string { 27293 return awsutil.Prettify(s) 27294 } 27295 27296 // GoString returns the string representation. 27297 // 27298 // API parameter values that are decorated as "sensitive" in the API will not 27299 // be included in the string output. The member name will be present, but the 27300 // value will be replaced with "sensitive". 27301 func (s ModifyClusterParameterGroupInput) GoString() string { 27302 return s.String() 27303 } 27304 27305 // Validate inspects the fields of the type to determine if they are valid. 27306 func (s *ModifyClusterParameterGroupInput) Validate() error { 27307 invalidParams := request.ErrInvalidParams{Context: "ModifyClusterParameterGroupInput"} 27308 if s.ParameterGroupName == nil { 27309 invalidParams.Add(request.NewErrParamRequired("ParameterGroupName")) 27310 } 27311 if s.Parameters == nil { 27312 invalidParams.Add(request.NewErrParamRequired("Parameters")) 27313 } 27314 27315 if invalidParams.Len() > 0 { 27316 return invalidParams 27317 } 27318 return nil 27319 } 27320 27321 // SetParameterGroupName sets the ParameterGroupName field's value. 27322 func (s *ModifyClusterParameterGroupInput) SetParameterGroupName(v string) *ModifyClusterParameterGroupInput { 27323 s.ParameterGroupName = &v 27324 return s 27325 } 27326 27327 // SetParameters sets the Parameters field's value. 27328 func (s *ModifyClusterParameterGroupInput) SetParameters(v []*Parameter) *ModifyClusterParameterGroupInput { 27329 s.Parameters = v 27330 return s 27331 } 27332 27333 type ModifyClusterSnapshotInput struct { 27334 _ struct{} `type:"structure"` 27335 27336 // A Boolean option to override an exception if the retention period has already 27337 // passed. 27338 Force *bool `type:"boolean"` 27339 27340 // The number of days that a manual snapshot is retained. If the value is -1, 27341 // the manual snapshot is retained indefinitely. 27342 // 27343 // If the manual snapshot falls outside of the new retention period, you can 27344 // specify the force option to immediately delete the snapshot. 27345 // 27346 // The value must be either -1 or an integer between 1 and 3,653. 27347 ManualSnapshotRetentionPeriod *int64 `type:"integer"` 27348 27349 // The identifier of the snapshot whose setting you want to modify. 27350 // 27351 // SnapshotIdentifier is a required field 27352 SnapshotIdentifier *string `type:"string" required:"true"` 27353 } 27354 27355 // String returns the string representation. 27356 // 27357 // API parameter values that are decorated as "sensitive" in the API will not 27358 // be included in the string output. The member name will be present, but the 27359 // value will be replaced with "sensitive". 27360 func (s ModifyClusterSnapshotInput) String() string { 27361 return awsutil.Prettify(s) 27362 } 27363 27364 // GoString returns the string representation. 27365 // 27366 // API parameter values that are decorated as "sensitive" in the API will not 27367 // be included in the string output. The member name will be present, but the 27368 // value will be replaced with "sensitive". 27369 func (s ModifyClusterSnapshotInput) GoString() string { 27370 return s.String() 27371 } 27372 27373 // Validate inspects the fields of the type to determine if they are valid. 27374 func (s *ModifyClusterSnapshotInput) Validate() error { 27375 invalidParams := request.ErrInvalidParams{Context: "ModifyClusterSnapshotInput"} 27376 if s.SnapshotIdentifier == nil { 27377 invalidParams.Add(request.NewErrParamRequired("SnapshotIdentifier")) 27378 } 27379 27380 if invalidParams.Len() > 0 { 27381 return invalidParams 27382 } 27383 return nil 27384 } 27385 27386 // SetForce sets the Force field's value. 27387 func (s *ModifyClusterSnapshotInput) SetForce(v bool) *ModifyClusterSnapshotInput { 27388 s.Force = &v 27389 return s 27390 } 27391 27392 // SetManualSnapshotRetentionPeriod sets the ManualSnapshotRetentionPeriod field's value. 27393 func (s *ModifyClusterSnapshotInput) SetManualSnapshotRetentionPeriod(v int64) *ModifyClusterSnapshotInput { 27394 s.ManualSnapshotRetentionPeriod = &v 27395 return s 27396 } 27397 27398 // SetSnapshotIdentifier sets the SnapshotIdentifier field's value. 27399 func (s *ModifyClusterSnapshotInput) SetSnapshotIdentifier(v string) *ModifyClusterSnapshotInput { 27400 s.SnapshotIdentifier = &v 27401 return s 27402 } 27403 27404 type ModifyClusterSnapshotOutput struct { 27405 _ struct{} `type:"structure"` 27406 27407 // Describes a snapshot. 27408 Snapshot *Snapshot `type:"structure"` 27409 } 27410 27411 // String returns the string representation. 27412 // 27413 // API parameter values that are decorated as "sensitive" in the API will not 27414 // be included in the string output. The member name will be present, but the 27415 // value will be replaced with "sensitive". 27416 func (s ModifyClusterSnapshotOutput) String() string { 27417 return awsutil.Prettify(s) 27418 } 27419 27420 // GoString returns the string representation. 27421 // 27422 // API parameter values that are decorated as "sensitive" in the API will not 27423 // be included in the string output. The member name will be present, but the 27424 // value will be replaced with "sensitive". 27425 func (s ModifyClusterSnapshotOutput) GoString() string { 27426 return s.String() 27427 } 27428 27429 // SetSnapshot sets the Snapshot field's value. 27430 func (s *ModifyClusterSnapshotOutput) SetSnapshot(v *Snapshot) *ModifyClusterSnapshotOutput { 27431 s.Snapshot = v 27432 return s 27433 } 27434 27435 type ModifyClusterSnapshotScheduleInput struct { 27436 _ struct{} `type:"structure"` 27437 27438 // A unique identifier for the cluster whose snapshot schedule you want to modify. 27439 // 27440 // ClusterIdentifier is a required field 27441 ClusterIdentifier *string `type:"string" required:"true"` 27442 27443 // A boolean to indicate whether to remove the assoiciation between the cluster 27444 // and the schedule. 27445 DisassociateSchedule *bool `type:"boolean"` 27446 27447 // A unique alphanumeric identifier for the schedule that you want to associate 27448 // with the cluster. 27449 ScheduleIdentifier *string `type:"string"` 27450 } 27451 27452 // String returns the string representation. 27453 // 27454 // API parameter values that are decorated as "sensitive" in the API will not 27455 // be included in the string output. The member name will be present, but the 27456 // value will be replaced with "sensitive". 27457 func (s ModifyClusterSnapshotScheduleInput) String() string { 27458 return awsutil.Prettify(s) 27459 } 27460 27461 // GoString returns the string representation. 27462 // 27463 // API parameter values that are decorated as "sensitive" in the API will not 27464 // be included in the string output. The member name will be present, but the 27465 // value will be replaced with "sensitive". 27466 func (s ModifyClusterSnapshotScheduleInput) GoString() string { 27467 return s.String() 27468 } 27469 27470 // Validate inspects the fields of the type to determine if they are valid. 27471 func (s *ModifyClusterSnapshotScheduleInput) Validate() error { 27472 invalidParams := request.ErrInvalidParams{Context: "ModifyClusterSnapshotScheduleInput"} 27473 if s.ClusterIdentifier == nil { 27474 invalidParams.Add(request.NewErrParamRequired("ClusterIdentifier")) 27475 } 27476 27477 if invalidParams.Len() > 0 { 27478 return invalidParams 27479 } 27480 return nil 27481 } 27482 27483 // SetClusterIdentifier sets the ClusterIdentifier field's value. 27484 func (s *ModifyClusterSnapshotScheduleInput) SetClusterIdentifier(v string) *ModifyClusterSnapshotScheduleInput { 27485 s.ClusterIdentifier = &v 27486 return s 27487 } 27488 27489 // SetDisassociateSchedule sets the DisassociateSchedule field's value. 27490 func (s *ModifyClusterSnapshotScheduleInput) SetDisassociateSchedule(v bool) *ModifyClusterSnapshotScheduleInput { 27491 s.DisassociateSchedule = &v 27492 return s 27493 } 27494 27495 // SetScheduleIdentifier sets the ScheduleIdentifier field's value. 27496 func (s *ModifyClusterSnapshotScheduleInput) SetScheduleIdentifier(v string) *ModifyClusterSnapshotScheduleInput { 27497 s.ScheduleIdentifier = &v 27498 return s 27499 } 27500 27501 type ModifyClusterSnapshotScheduleOutput struct { 27502 _ struct{} `type:"structure"` 27503 } 27504 27505 // String returns the string representation. 27506 // 27507 // API parameter values that are decorated as "sensitive" in the API will not 27508 // be included in the string output. The member name will be present, but the 27509 // value will be replaced with "sensitive". 27510 func (s ModifyClusterSnapshotScheduleOutput) String() string { 27511 return awsutil.Prettify(s) 27512 } 27513 27514 // GoString returns the string representation. 27515 // 27516 // API parameter values that are decorated as "sensitive" in the API will not 27517 // be included in the string output. The member name will be present, but the 27518 // value will be replaced with "sensitive". 27519 func (s ModifyClusterSnapshotScheduleOutput) GoString() string { 27520 return s.String() 27521 } 27522 27523 type ModifyClusterSubnetGroupInput struct { 27524 _ struct{} `type:"structure"` 27525 27526 // The name of the subnet group to be modified. 27527 // 27528 // ClusterSubnetGroupName is a required field 27529 ClusterSubnetGroupName *string `type:"string" required:"true"` 27530 27531 // A text description of the subnet group to be modified. 27532 Description *string `type:"string"` 27533 27534 // An array of VPC subnet IDs. A maximum of 20 subnets can be modified in a 27535 // single request. 27536 // 27537 // SubnetIds is a required field 27538 SubnetIds []*string `locationNameList:"SubnetIdentifier" type:"list" required:"true"` 27539 } 27540 27541 // String returns the string representation. 27542 // 27543 // API parameter values that are decorated as "sensitive" in the API will not 27544 // be included in the string output. The member name will be present, but the 27545 // value will be replaced with "sensitive". 27546 func (s ModifyClusterSubnetGroupInput) String() string { 27547 return awsutil.Prettify(s) 27548 } 27549 27550 // GoString returns the string representation. 27551 // 27552 // API parameter values that are decorated as "sensitive" in the API will not 27553 // be included in the string output. The member name will be present, but the 27554 // value will be replaced with "sensitive". 27555 func (s ModifyClusterSubnetGroupInput) GoString() string { 27556 return s.String() 27557 } 27558 27559 // Validate inspects the fields of the type to determine if they are valid. 27560 func (s *ModifyClusterSubnetGroupInput) Validate() error { 27561 invalidParams := request.ErrInvalidParams{Context: "ModifyClusterSubnetGroupInput"} 27562 if s.ClusterSubnetGroupName == nil { 27563 invalidParams.Add(request.NewErrParamRequired("ClusterSubnetGroupName")) 27564 } 27565 if s.SubnetIds == nil { 27566 invalidParams.Add(request.NewErrParamRequired("SubnetIds")) 27567 } 27568 27569 if invalidParams.Len() > 0 { 27570 return invalidParams 27571 } 27572 return nil 27573 } 27574 27575 // SetClusterSubnetGroupName sets the ClusterSubnetGroupName field's value. 27576 func (s *ModifyClusterSubnetGroupInput) SetClusterSubnetGroupName(v string) *ModifyClusterSubnetGroupInput { 27577 s.ClusterSubnetGroupName = &v 27578 return s 27579 } 27580 27581 // SetDescription sets the Description field's value. 27582 func (s *ModifyClusterSubnetGroupInput) SetDescription(v string) *ModifyClusterSubnetGroupInput { 27583 s.Description = &v 27584 return s 27585 } 27586 27587 // SetSubnetIds sets the SubnetIds field's value. 27588 func (s *ModifyClusterSubnetGroupInput) SetSubnetIds(v []*string) *ModifyClusterSubnetGroupInput { 27589 s.SubnetIds = v 27590 return s 27591 } 27592 27593 type ModifyClusterSubnetGroupOutput struct { 27594 _ struct{} `type:"structure"` 27595 27596 // Describes a subnet group. 27597 ClusterSubnetGroup *ClusterSubnetGroup `type:"structure"` 27598 } 27599 27600 // String returns the string representation. 27601 // 27602 // API parameter values that are decorated as "sensitive" in the API will not 27603 // be included in the string output. The member name will be present, but the 27604 // value will be replaced with "sensitive". 27605 func (s ModifyClusterSubnetGroupOutput) String() string { 27606 return awsutil.Prettify(s) 27607 } 27608 27609 // GoString returns the string representation. 27610 // 27611 // API parameter values that are decorated as "sensitive" in the API will not 27612 // be included in the string output. The member name will be present, but the 27613 // value will be replaced with "sensitive". 27614 func (s ModifyClusterSubnetGroupOutput) GoString() string { 27615 return s.String() 27616 } 27617 27618 // SetClusterSubnetGroup sets the ClusterSubnetGroup field's value. 27619 func (s *ModifyClusterSubnetGroupOutput) SetClusterSubnetGroup(v *ClusterSubnetGroup) *ModifyClusterSubnetGroupOutput { 27620 s.ClusterSubnetGroup = v 27621 return s 27622 } 27623 27624 type ModifyEndpointAccessInput struct { 27625 _ struct{} `type:"structure"` 27626 27627 // The endpoint to be modified. 27628 // 27629 // EndpointName is a required field 27630 EndpointName *string `type:"string" required:"true"` 27631 27632 // The complete list of VPC security groups associated with the endpoint after 27633 // the endpoint is modified. 27634 VpcSecurityGroupIds []*string `locationNameList:"VpcSecurityGroupId" type:"list"` 27635 } 27636 27637 // String returns the string representation. 27638 // 27639 // API parameter values that are decorated as "sensitive" in the API will not 27640 // be included in the string output. The member name will be present, but the 27641 // value will be replaced with "sensitive". 27642 func (s ModifyEndpointAccessInput) String() string { 27643 return awsutil.Prettify(s) 27644 } 27645 27646 // GoString returns the string representation. 27647 // 27648 // API parameter values that are decorated as "sensitive" in the API will not 27649 // be included in the string output. The member name will be present, but the 27650 // value will be replaced with "sensitive". 27651 func (s ModifyEndpointAccessInput) GoString() string { 27652 return s.String() 27653 } 27654 27655 // Validate inspects the fields of the type to determine if they are valid. 27656 func (s *ModifyEndpointAccessInput) Validate() error { 27657 invalidParams := request.ErrInvalidParams{Context: "ModifyEndpointAccessInput"} 27658 if s.EndpointName == nil { 27659 invalidParams.Add(request.NewErrParamRequired("EndpointName")) 27660 } 27661 27662 if invalidParams.Len() > 0 { 27663 return invalidParams 27664 } 27665 return nil 27666 } 27667 27668 // SetEndpointName sets the EndpointName field's value. 27669 func (s *ModifyEndpointAccessInput) SetEndpointName(v string) *ModifyEndpointAccessInput { 27670 s.EndpointName = &v 27671 return s 27672 } 27673 27674 // SetVpcSecurityGroupIds sets the VpcSecurityGroupIds field's value. 27675 func (s *ModifyEndpointAccessInput) SetVpcSecurityGroupIds(v []*string) *ModifyEndpointAccessInput { 27676 s.VpcSecurityGroupIds = v 27677 return s 27678 } 27679 27680 // Describes a Redshift-managed VPC endpoint. 27681 type ModifyEndpointAccessOutput struct { 27682 _ struct{} `type:"structure"` 27683 27684 // The DNS address of the endpoint. 27685 Address *string `type:"string"` 27686 27687 // The cluster identifier of the cluster associated with the endpoint. 27688 ClusterIdentifier *string `type:"string"` 27689 27690 // The time (UTC) that the endpoint was created. 27691 EndpointCreateTime *time.Time `type:"timestamp"` 27692 27693 // The name of the endpoint. 27694 EndpointName *string `type:"string"` 27695 27696 // The status of the endpoint. 27697 EndpointStatus *string `type:"string"` 27698 27699 // The port number on which the cluster accepts incoming connections. 27700 Port *int64 `type:"integer"` 27701 27702 // The Amazon Web Services account ID of the owner of the cluster. 27703 ResourceOwner *string `type:"string"` 27704 27705 // The subnet group name where Amazon Redshift chooses to deploy the endpoint. 27706 SubnetGroupName *string `type:"string"` 27707 27708 // The connection endpoint for connecting to an Amazon Redshift cluster through 27709 // the proxy. 27710 VpcEndpoint *VpcEndpoint `type:"structure"` 27711 27712 // The security groups associated with the endpoint. 27713 VpcSecurityGroups []*VpcSecurityGroupMembership `locationNameList:"VpcSecurityGroup" type:"list"` 27714 } 27715 27716 // String returns the string representation. 27717 // 27718 // API parameter values that are decorated as "sensitive" in the API will not 27719 // be included in the string output. The member name will be present, but the 27720 // value will be replaced with "sensitive". 27721 func (s ModifyEndpointAccessOutput) String() string { 27722 return awsutil.Prettify(s) 27723 } 27724 27725 // GoString returns the string representation. 27726 // 27727 // API parameter values that are decorated as "sensitive" in the API will not 27728 // be included in the string output. The member name will be present, but the 27729 // value will be replaced with "sensitive". 27730 func (s ModifyEndpointAccessOutput) GoString() string { 27731 return s.String() 27732 } 27733 27734 // SetAddress sets the Address field's value. 27735 func (s *ModifyEndpointAccessOutput) SetAddress(v string) *ModifyEndpointAccessOutput { 27736 s.Address = &v 27737 return s 27738 } 27739 27740 // SetClusterIdentifier sets the ClusterIdentifier field's value. 27741 func (s *ModifyEndpointAccessOutput) SetClusterIdentifier(v string) *ModifyEndpointAccessOutput { 27742 s.ClusterIdentifier = &v 27743 return s 27744 } 27745 27746 // SetEndpointCreateTime sets the EndpointCreateTime field's value. 27747 func (s *ModifyEndpointAccessOutput) SetEndpointCreateTime(v time.Time) *ModifyEndpointAccessOutput { 27748 s.EndpointCreateTime = &v 27749 return s 27750 } 27751 27752 // SetEndpointName sets the EndpointName field's value. 27753 func (s *ModifyEndpointAccessOutput) SetEndpointName(v string) *ModifyEndpointAccessOutput { 27754 s.EndpointName = &v 27755 return s 27756 } 27757 27758 // SetEndpointStatus sets the EndpointStatus field's value. 27759 func (s *ModifyEndpointAccessOutput) SetEndpointStatus(v string) *ModifyEndpointAccessOutput { 27760 s.EndpointStatus = &v 27761 return s 27762 } 27763 27764 // SetPort sets the Port field's value. 27765 func (s *ModifyEndpointAccessOutput) SetPort(v int64) *ModifyEndpointAccessOutput { 27766 s.Port = &v 27767 return s 27768 } 27769 27770 // SetResourceOwner sets the ResourceOwner field's value. 27771 func (s *ModifyEndpointAccessOutput) SetResourceOwner(v string) *ModifyEndpointAccessOutput { 27772 s.ResourceOwner = &v 27773 return s 27774 } 27775 27776 // SetSubnetGroupName sets the SubnetGroupName field's value. 27777 func (s *ModifyEndpointAccessOutput) SetSubnetGroupName(v string) *ModifyEndpointAccessOutput { 27778 s.SubnetGroupName = &v 27779 return s 27780 } 27781 27782 // SetVpcEndpoint sets the VpcEndpoint field's value. 27783 func (s *ModifyEndpointAccessOutput) SetVpcEndpoint(v *VpcEndpoint) *ModifyEndpointAccessOutput { 27784 s.VpcEndpoint = v 27785 return s 27786 } 27787 27788 // SetVpcSecurityGroups sets the VpcSecurityGroups field's value. 27789 func (s *ModifyEndpointAccessOutput) SetVpcSecurityGroups(v []*VpcSecurityGroupMembership) *ModifyEndpointAccessOutput { 27790 s.VpcSecurityGroups = v 27791 return s 27792 } 27793 27794 type ModifyEventSubscriptionInput struct { 27795 _ struct{} `type:"structure"` 27796 27797 // A Boolean value indicating if the subscription is enabled. true indicates 27798 // the subscription is enabled 27799 Enabled *bool `type:"boolean"` 27800 27801 // Specifies the Amazon Redshift event categories to be published by the event 27802 // notification subscription. 27803 // 27804 // Values: configuration, management, monitoring, security, pending 27805 EventCategories []*string `locationNameList:"EventCategory" type:"list"` 27806 27807 // Specifies the Amazon Redshift event severity to be published by the event 27808 // notification subscription. 27809 // 27810 // Values: ERROR, INFO 27811 Severity *string `type:"string"` 27812 27813 // The Amazon Resource Name (ARN) of the SNS topic to be used by the event notification 27814 // subscription. 27815 SnsTopicArn *string `type:"string"` 27816 27817 // A list of one or more identifiers of Amazon Redshift source objects. All 27818 // of the objects must be of the same type as was specified in the source type 27819 // parameter. The event subscription will return only events generated by the 27820 // specified objects. If not specified, then events are returned for all objects 27821 // within the source type specified. 27822 // 27823 // Example: my-cluster-1, my-cluster-2 27824 // 27825 // Example: my-snapshot-20131010 27826 SourceIds []*string `locationNameList:"SourceId" type:"list"` 27827 27828 // The type of source that will be generating the events. For example, if you 27829 // want to be notified of events generated by a cluster, you would set this 27830 // parameter to cluster. If this value is not specified, events are returned 27831 // for all Amazon Redshift objects in your Amazon Web Services account. You 27832 // must specify a source type in order to specify source IDs. 27833 // 27834 // Valid values: cluster, cluster-parameter-group, cluster-security-group, cluster-snapshot, 27835 // and scheduled-action. 27836 SourceType *string `type:"string"` 27837 27838 // The name of the modified Amazon Redshift event notification subscription. 27839 // 27840 // SubscriptionName is a required field 27841 SubscriptionName *string `type:"string" required:"true"` 27842 } 27843 27844 // String returns the string representation. 27845 // 27846 // API parameter values that are decorated as "sensitive" in the API will not 27847 // be included in the string output. The member name will be present, but the 27848 // value will be replaced with "sensitive". 27849 func (s ModifyEventSubscriptionInput) String() string { 27850 return awsutil.Prettify(s) 27851 } 27852 27853 // GoString returns the string representation. 27854 // 27855 // API parameter values that are decorated as "sensitive" in the API will not 27856 // be included in the string output. The member name will be present, but the 27857 // value will be replaced with "sensitive". 27858 func (s ModifyEventSubscriptionInput) GoString() string { 27859 return s.String() 27860 } 27861 27862 // Validate inspects the fields of the type to determine if they are valid. 27863 func (s *ModifyEventSubscriptionInput) Validate() error { 27864 invalidParams := request.ErrInvalidParams{Context: "ModifyEventSubscriptionInput"} 27865 if s.SubscriptionName == nil { 27866 invalidParams.Add(request.NewErrParamRequired("SubscriptionName")) 27867 } 27868 27869 if invalidParams.Len() > 0 { 27870 return invalidParams 27871 } 27872 return nil 27873 } 27874 27875 // SetEnabled sets the Enabled field's value. 27876 func (s *ModifyEventSubscriptionInput) SetEnabled(v bool) *ModifyEventSubscriptionInput { 27877 s.Enabled = &v 27878 return s 27879 } 27880 27881 // SetEventCategories sets the EventCategories field's value. 27882 func (s *ModifyEventSubscriptionInput) SetEventCategories(v []*string) *ModifyEventSubscriptionInput { 27883 s.EventCategories = v 27884 return s 27885 } 27886 27887 // SetSeverity sets the Severity field's value. 27888 func (s *ModifyEventSubscriptionInput) SetSeverity(v string) *ModifyEventSubscriptionInput { 27889 s.Severity = &v 27890 return s 27891 } 27892 27893 // SetSnsTopicArn sets the SnsTopicArn field's value. 27894 func (s *ModifyEventSubscriptionInput) SetSnsTopicArn(v string) *ModifyEventSubscriptionInput { 27895 s.SnsTopicArn = &v 27896 return s 27897 } 27898 27899 // SetSourceIds sets the SourceIds field's value. 27900 func (s *ModifyEventSubscriptionInput) SetSourceIds(v []*string) *ModifyEventSubscriptionInput { 27901 s.SourceIds = v 27902 return s 27903 } 27904 27905 // SetSourceType sets the SourceType field's value. 27906 func (s *ModifyEventSubscriptionInput) SetSourceType(v string) *ModifyEventSubscriptionInput { 27907 s.SourceType = &v 27908 return s 27909 } 27910 27911 // SetSubscriptionName sets the SubscriptionName field's value. 27912 func (s *ModifyEventSubscriptionInput) SetSubscriptionName(v string) *ModifyEventSubscriptionInput { 27913 s.SubscriptionName = &v 27914 return s 27915 } 27916 27917 type ModifyEventSubscriptionOutput struct { 27918 _ struct{} `type:"structure"` 27919 27920 // Describes event subscriptions. 27921 EventSubscription *EventSubscription `type:"structure"` 27922 } 27923 27924 // String returns the string representation. 27925 // 27926 // API parameter values that are decorated as "sensitive" in the API will not 27927 // be included in the string output. The member name will be present, but the 27928 // value will be replaced with "sensitive". 27929 func (s ModifyEventSubscriptionOutput) String() string { 27930 return awsutil.Prettify(s) 27931 } 27932 27933 // GoString returns the string representation. 27934 // 27935 // API parameter values that are decorated as "sensitive" in the API will not 27936 // be included in the string output. The member name will be present, but the 27937 // value will be replaced with "sensitive". 27938 func (s ModifyEventSubscriptionOutput) GoString() string { 27939 return s.String() 27940 } 27941 27942 // SetEventSubscription sets the EventSubscription field's value. 27943 func (s *ModifyEventSubscriptionOutput) SetEventSubscription(v *EventSubscription) *ModifyEventSubscriptionOutput { 27944 s.EventSubscription = v 27945 return s 27946 } 27947 27948 type ModifyScheduledActionInput struct { 27949 _ struct{} `type:"structure"` 27950 27951 // A modified enable flag of the scheduled action. If true, the scheduled action 27952 // is active. If false, the scheduled action is disabled. 27953 Enable *bool `type:"boolean"` 27954 27955 // A modified end time of the scheduled action. For more information about this 27956 // parameter, see ScheduledAction. 27957 EndTime *time.Time `type:"timestamp"` 27958 27959 // A different IAM role to assume to run the target action. For more information 27960 // about this parameter, see ScheduledAction. 27961 IamRole *string `type:"string"` 27962 27963 // A modified schedule in either at( ) or cron( ) format. For more information 27964 // about this parameter, see ScheduledAction. 27965 Schedule *string `type:"string"` 27966 27967 // A modified description of the scheduled action. 27968 ScheduledActionDescription *string `type:"string"` 27969 27970 // The name of the scheduled action to modify. 27971 // 27972 // ScheduledActionName is a required field 27973 ScheduledActionName *string `type:"string" required:"true"` 27974 27975 // A modified start time of the scheduled action. For more information about 27976 // this parameter, see ScheduledAction. 27977 StartTime *time.Time `type:"timestamp"` 27978 27979 // A modified JSON format of the scheduled action. For more information about 27980 // this parameter, see ScheduledAction. 27981 TargetAction *ScheduledActionType `type:"structure"` 27982 } 27983 27984 // String returns the string representation. 27985 // 27986 // API parameter values that are decorated as "sensitive" in the API will not 27987 // be included in the string output. The member name will be present, but the 27988 // value will be replaced with "sensitive". 27989 func (s ModifyScheduledActionInput) String() string { 27990 return awsutil.Prettify(s) 27991 } 27992 27993 // GoString returns the string representation. 27994 // 27995 // API parameter values that are decorated as "sensitive" in the API will not 27996 // be included in the string output. The member name will be present, but the 27997 // value will be replaced with "sensitive". 27998 func (s ModifyScheduledActionInput) GoString() string { 27999 return s.String() 28000 } 28001 28002 // Validate inspects the fields of the type to determine if they are valid. 28003 func (s *ModifyScheduledActionInput) Validate() error { 28004 invalidParams := request.ErrInvalidParams{Context: "ModifyScheduledActionInput"} 28005 if s.ScheduledActionName == nil { 28006 invalidParams.Add(request.NewErrParamRequired("ScheduledActionName")) 28007 } 28008 if s.TargetAction != nil { 28009 if err := s.TargetAction.Validate(); err != nil { 28010 invalidParams.AddNested("TargetAction", err.(request.ErrInvalidParams)) 28011 } 28012 } 28013 28014 if invalidParams.Len() > 0 { 28015 return invalidParams 28016 } 28017 return nil 28018 } 28019 28020 // SetEnable sets the Enable field's value. 28021 func (s *ModifyScheduledActionInput) SetEnable(v bool) *ModifyScheduledActionInput { 28022 s.Enable = &v 28023 return s 28024 } 28025 28026 // SetEndTime sets the EndTime field's value. 28027 func (s *ModifyScheduledActionInput) SetEndTime(v time.Time) *ModifyScheduledActionInput { 28028 s.EndTime = &v 28029 return s 28030 } 28031 28032 // SetIamRole sets the IamRole field's value. 28033 func (s *ModifyScheduledActionInput) SetIamRole(v string) *ModifyScheduledActionInput { 28034 s.IamRole = &v 28035 return s 28036 } 28037 28038 // SetSchedule sets the Schedule field's value. 28039 func (s *ModifyScheduledActionInput) SetSchedule(v string) *ModifyScheduledActionInput { 28040 s.Schedule = &v 28041 return s 28042 } 28043 28044 // SetScheduledActionDescription sets the ScheduledActionDescription field's value. 28045 func (s *ModifyScheduledActionInput) SetScheduledActionDescription(v string) *ModifyScheduledActionInput { 28046 s.ScheduledActionDescription = &v 28047 return s 28048 } 28049 28050 // SetScheduledActionName sets the ScheduledActionName field's value. 28051 func (s *ModifyScheduledActionInput) SetScheduledActionName(v string) *ModifyScheduledActionInput { 28052 s.ScheduledActionName = &v 28053 return s 28054 } 28055 28056 // SetStartTime sets the StartTime field's value. 28057 func (s *ModifyScheduledActionInput) SetStartTime(v time.Time) *ModifyScheduledActionInput { 28058 s.StartTime = &v 28059 return s 28060 } 28061 28062 // SetTargetAction sets the TargetAction field's value. 28063 func (s *ModifyScheduledActionInput) SetTargetAction(v *ScheduledActionType) *ModifyScheduledActionInput { 28064 s.TargetAction = v 28065 return s 28066 } 28067 28068 // Describes a scheduled action. You can use a scheduled action to trigger some 28069 // Amazon Redshift API operations on a schedule. For information about which 28070 // API operations can be scheduled, see ScheduledActionType. 28071 type ModifyScheduledActionOutput struct { 28072 _ struct{} `type:"structure"` 28073 28074 // The end time in UTC when the schedule is no longer active. After this time, 28075 // the scheduled action does not trigger. 28076 EndTime *time.Time `type:"timestamp"` 28077 28078 // The IAM role to assume to run the scheduled action. This IAM role must have 28079 // permission to run the Amazon Redshift API operation in the scheduled action. 28080 // This IAM role must allow the Amazon Redshift scheduler (Principal scheduler.redshift.amazonaws.com) 28081 // to assume permissions on your behalf. For more information about the IAM 28082 // role to use with the Amazon Redshift scheduler, see Using Identity-Based 28083 // Policies for Amazon Redshift (https://docs.aws.amazon.com/redshift/latest/mgmt/redshift-iam-access-control-identity-based.html) 28084 // in the Amazon Redshift Cluster Management Guide. 28085 IamRole *string `type:"string"` 28086 28087 // List of times when the scheduled action will run. 28088 NextInvocations []*time.Time `locationNameList:"ScheduledActionTime" type:"list"` 28089 28090 // The schedule for a one-time (at format) or recurring (cron format) scheduled 28091 // action. Schedule invocations must be separated by at least one hour. 28092 // 28093 // Format of at expressions is "at(yyyy-mm-ddThh:mm:ss)". For example, "at(2016-03-04T17:27:00)". 28094 // 28095 // Format of cron expressions is "cron(Minutes Hours Day-of-month Month Day-of-week 28096 // Year)". For example, "cron(0 10 ? * MON *)". For more information, see Cron 28097 // Expressions (https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/ScheduledEvents.html#CronExpressions) 28098 // in the Amazon CloudWatch Events User Guide. 28099 Schedule *string `type:"string"` 28100 28101 // The description of the scheduled action. 28102 ScheduledActionDescription *string `type:"string"` 28103 28104 // The name of the scheduled action. 28105 ScheduledActionName *string `type:"string"` 28106 28107 // The start time in UTC when the schedule is active. Before this time, the 28108 // scheduled action does not trigger. 28109 StartTime *time.Time `type:"timestamp"` 28110 28111 // The state of the scheduled action. For example, DISABLED. 28112 State *string `type:"string" enum:"ScheduledActionState"` 28113 28114 // A JSON format string of the Amazon Redshift API operation with input parameters. 28115 // 28116 // "{\"ResizeCluster\":{\"NodeType\":\"ds2.8xlarge\",\"ClusterIdentifier\":\"my-test-cluster\",\"NumberOfNodes\":3}}". 28117 TargetAction *ScheduledActionType `type:"structure"` 28118 } 28119 28120 // String returns the string representation. 28121 // 28122 // API parameter values that are decorated as "sensitive" in the API will not 28123 // be included in the string output. The member name will be present, but the 28124 // value will be replaced with "sensitive". 28125 func (s ModifyScheduledActionOutput) String() string { 28126 return awsutil.Prettify(s) 28127 } 28128 28129 // GoString returns the string representation. 28130 // 28131 // API parameter values that are decorated as "sensitive" in the API will not 28132 // be included in the string output. The member name will be present, but the 28133 // value will be replaced with "sensitive". 28134 func (s ModifyScheduledActionOutput) GoString() string { 28135 return s.String() 28136 } 28137 28138 // SetEndTime sets the EndTime field's value. 28139 func (s *ModifyScheduledActionOutput) SetEndTime(v time.Time) *ModifyScheduledActionOutput { 28140 s.EndTime = &v 28141 return s 28142 } 28143 28144 // SetIamRole sets the IamRole field's value. 28145 func (s *ModifyScheduledActionOutput) SetIamRole(v string) *ModifyScheduledActionOutput { 28146 s.IamRole = &v 28147 return s 28148 } 28149 28150 // SetNextInvocations sets the NextInvocations field's value. 28151 func (s *ModifyScheduledActionOutput) SetNextInvocations(v []*time.Time) *ModifyScheduledActionOutput { 28152 s.NextInvocations = v 28153 return s 28154 } 28155 28156 // SetSchedule sets the Schedule field's value. 28157 func (s *ModifyScheduledActionOutput) SetSchedule(v string) *ModifyScheduledActionOutput { 28158 s.Schedule = &v 28159 return s 28160 } 28161 28162 // SetScheduledActionDescription sets the ScheduledActionDescription field's value. 28163 func (s *ModifyScheduledActionOutput) SetScheduledActionDescription(v string) *ModifyScheduledActionOutput { 28164 s.ScheduledActionDescription = &v 28165 return s 28166 } 28167 28168 // SetScheduledActionName sets the ScheduledActionName field's value. 28169 func (s *ModifyScheduledActionOutput) SetScheduledActionName(v string) *ModifyScheduledActionOutput { 28170 s.ScheduledActionName = &v 28171 return s 28172 } 28173 28174 // SetStartTime sets the StartTime field's value. 28175 func (s *ModifyScheduledActionOutput) SetStartTime(v time.Time) *ModifyScheduledActionOutput { 28176 s.StartTime = &v 28177 return s 28178 } 28179 28180 // SetState sets the State field's value. 28181 func (s *ModifyScheduledActionOutput) SetState(v string) *ModifyScheduledActionOutput { 28182 s.State = &v 28183 return s 28184 } 28185 28186 // SetTargetAction sets the TargetAction field's value. 28187 func (s *ModifyScheduledActionOutput) SetTargetAction(v *ScheduledActionType) *ModifyScheduledActionOutput { 28188 s.TargetAction = v 28189 return s 28190 } 28191 28192 type ModifySnapshotCopyRetentionPeriodInput struct { 28193 _ struct{} `type:"structure"` 28194 28195 // The unique identifier of the cluster for which you want to change the retention 28196 // period for either automated or manual snapshots that are copied to a destination 28197 // Amazon Web Services Region. 28198 // 28199 // Constraints: Must be the valid name of an existing cluster that has cross-region 28200 // snapshot copy enabled. 28201 // 28202 // ClusterIdentifier is a required field 28203 ClusterIdentifier *string `type:"string" required:"true"` 28204 28205 // Indicates whether to apply the snapshot retention period to newly copied 28206 // manual snapshots instead of automated snapshots. 28207 Manual *bool `type:"boolean"` 28208 28209 // The number of days to retain automated snapshots in the destination Amazon 28210 // Web Services Region after they are copied from the source Amazon Web Services 28211 // Region. 28212 // 28213 // By default, this only changes the retention period of copied automated snapshots. 28214 // 28215 // If you decrease the retention period for automated snapshots that are copied 28216 // to a destination Amazon Web Services Region, Amazon Redshift deletes any 28217 // existing automated snapshots that were copied to the destination Amazon Web 28218 // Services Region and that fall outside of the new retention period. 28219 // 28220 // Constraints: Must be at least 1 and no more than 35 for automated snapshots. 28221 // 28222 // If you specify the manual option, only newly copied manual snapshots will 28223 // have the new retention period. 28224 // 28225 // If you specify the value of -1 newly copied manual snapshots are retained 28226 // indefinitely. 28227 // 28228 // Constraints: The number of days must be either -1 or an integer between 1 28229 // and 3,653 for manual snapshots. 28230 // 28231 // RetentionPeriod is a required field 28232 RetentionPeriod *int64 `type:"integer" required:"true"` 28233 } 28234 28235 // String returns the string representation. 28236 // 28237 // API parameter values that are decorated as "sensitive" in the API will not 28238 // be included in the string output. The member name will be present, but the 28239 // value will be replaced with "sensitive". 28240 func (s ModifySnapshotCopyRetentionPeriodInput) String() string { 28241 return awsutil.Prettify(s) 28242 } 28243 28244 // GoString returns the string representation. 28245 // 28246 // API parameter values that are decorated as "sensitive" in the API will not 28247 // be included in the string output. The member name will be present, but the 28248 // value will be replaced with "sensitive". 28249 func (s ModifySnapshotCopyRetentionPeriodInput) GoString() string { 28250 return s.String() 28251 } 28252 28253 // Validate inspects the fields of the type to determine if they are valid. 28254 func (s *ModifySnapshotCopyRetentionPeriodInput) Validate() error { 28255 invalidParams := request.ErrInvalidParams{Context: "ModifySnapshotCopyRetentionPeriodInput"} 28256 if s.ClusterIdentifier == nil { 28257 invalidParams.Add(request.NewErrParamRequired("ClusterIdentifier")) 28258 } 28259 if s.RetentionPeriod == nil { 28260 invalidParams.Add(request.NewErrParamRequired("RetentionPeriod")) 28261 } 28262 28263 if invalidParams.Len() > 0 { 28264 return invalidParams 28265 } 28266 return nil 28267 } 28268 28269 // SetClusterIdentifier sets the ClusterIdentifier field's value. 28270 func (s *ModifySnapshotCopyRetentionPeriodInput) SetClusterIdentifier(v string) *ModifySnapshotCopyRetentionPeriodInput { 28271 s.ClusterIdentifier = &v 28272 return s 28273 } 28274 28275 // SetManual sets the Manual field's value. 28276 func (s *ModifySnapshotCopyRetentionPeriodInput) SetManual(v bool) *ModifySnapshotCopyRetentionPeriodInput { 28277 s.Manual = &v 28278 return s 28279 } 28280 28281 // SetRetentionPeriod sets the RetentionPeriod field's value. 28282 func (s *ModifySnapshotCopyRetentionPeriodInput) SetRetentionPeriod(v int64) *ModifySnapshotCopyRetentionPeriodInput { 28283 s.RetentionPeriod = &v 28284 return s 28285 } 28286 28287 type ModifySnapshotCopyRetentionPeriodOutput struct { 28288 _ struct{} `type:"structure"` 28289 28290 // Describes a cluster. 28291 Cluster *Cluster `type:"structure"` 28292 } 28293 28294 // String returns the string representation. 28295 // 28296 // API parameter values that are decorated as "sensitive" in the API will not 28297 // be included in the string output. The member name will be present, but the 28298 // value will be replaced with "sensitive". 28299 func (s ModifySnapshotCopyRetentionPeriodOutput) String() string { 28300 return awsutil.Prettify(s) 28301 } 28302 28303 // GoString returns the string representation. 28304 // 28305 // API parameter values that are decorated as "sensitive" in the API will not 28306 // be included in the string output. The member name will be present, but the 28307 // value will be replaced with "sensitive". 28308 func (s ModifySnapshotCopyRetentionPeriodOutput) GoString() string { 28309 return s.String() 28310 } 28311 28312 // SetCluster sets the Cluster field's value. 28313 func (s *ModifySnapshotCopyRetentionPeriodOutput) SetCluster(v *Cluster) *ModifySnapshotCopyRetentionPeriodOutput { 28314 s.Cluster = v 28315 return s 28316 } 28317 28318 type ModifySnapshotScheduleInput struct { 28319 _ struct{} `type:"structure"` 28320 28321 // An updated list of schedule definitions. A schedule definition is made up 28322 // of schedule expressions, for example, "cron(30 12 *)" or "rate(12 hours)". 28323 // 28324 // ScheduleDefinitions is a required field 28325 ScheduleDefinitions []*string `locationNameList:"ScheduleDefinition" type:"list" required:"true"` 28326 28327 // A unique alphanumeric identifier of the schedule to modify. 28328 // 28329 // ScheduleIdentifier is a required field 28330 ScheduleIdentifier *string `type:"string" required:"true"` 28331 } 28332 28333 // String returns the string representation. 28334 // 28335 // API parameter values that are decorated as "sensitive" in the API will not 28336 // be included in the string output. The member name will be present, but the 28337 // value will be replaced with "sensitive". 28338 func (s ModifySnapshotScheduleInput) String() string { 28339 return awsutil.Prettify(s) 28340 } 28341 28342 // GoString returns the string representation. 28343 // 28344 // API parameter values that are decorated as "sensitive" in the API will not 28345 // be included in the string output. The member name will be present, but the 28346 // value will be replaced with "sensitive". 28347 func (s ModifySnapshotScheduleInput) GoString() string { 28348 return s.String() 28349 } 28350 28351 // Validate inspects the fields of the type to determine if they are valid. 28352 func (s *ModifySnapshotScheduleInput) Validate() error { 28353 invalidParams := request.ErrInvalidParams{Context: "ModifySnapshotScheduleInput"} 28354 if s.ScheduleDefinitions == nil { 28355 invalidParams.Add(request.NewErrParamRequired("ScheduleDefinitions")) 28356 } 28357 if s.ScheduleIdentifier == nil { 28358 invalidParams.Add(request.NewErrParamRequired("ScheduleIdentifier")) 28359 } 28360 28361 if invalidParams.Len() > 0 { 28362 return invalidParams 28363 } 28364 return nil 28365 } 28366 28367 // SetScheduleDefinitions sets the ScheduleDefinitions field's value. 28368 func (s *ModifySnapshotScheduleInput) SetScheduleDefinitions(v []*string) *ModifySnapshotScheduleInput { 28369 s.ScheduleDefinitions = v 28370 return s 28371 } 28372 28373 // SetScheduleIdentifier sets the ScheduleIdentifier field's value. 28374 func (s *ModifySnapshotScheduleInput) SetScheduleIdentifier(v string) *ModifySnapshotScheduleInput { 28375 s.ScheduleIdentifier = &v 28376 return s 28377 } 28378 28379 // Describes a snapshot schedule. You can set a regular interval for creating 28380 // snapshots of a cluster. You can also schedule snapshots for specific dates. 28381 type ModifySnapshotScheduleOutput struct { 28382 _ struct{} `type:"structure"` 28383 28384 // The number of clusters associated with the schedule. 28385 AssociatedClusterCount *int64 `type:"integer"` 28386 28387 // A list of clusters associated with the schedule. A maximum of 100 clusters 28388 // is returned. 28389 AssociatedClusters []*ClusterAssociatedToSchedule `locationNameList:"ClusterAssociatedToSchedule" type:"list"` 28390 28391 NextInvocations []*time.Time `locationNameList:"SnapshotTime" type:"list"` 28392 28393 // A list of ScheduleDefinitions. 28394 ScheduleDefinitions []*string `locationNameList:"ScheduleDefinition" type:"list"` 28395 28396 // The description of the schedule. 28397 ScheduleDescription *string `type:"string"` 28398 28399 // A unique identifier for the schedule. 28400 ScheduleIdentifier *string `type:"string"` 28401 28402 // An optional set of tags describing the schedule. 28403 Tags []*Tag `locationNameList:"Tag" type:"list"` 28404 } 28405 28406 // String returns the string representation. 28407 // 28408 // API parameter values that are decorated as "sensitive" in the API will not 28409 // be included in the string output. The member name will be present, but the 28410 // value will be replaced with "sensitive". 28411 func (s ModifySnapshotScheduleOutput) String() string { 28412 return awsutil.Prettify(s) 28413 } 28414 28415 // GoString returns the string representation. 28416 // 28417 // API parameter values that are decorated as "sensitive" in the API will not 28418 // be included in the string output. The member name will be present, but the 28419 // value will be replaced with "sensitive". 28420 func (s ModifySnapshotScheduleOutput) GoString() string { 28421 return s.String() 28422 } 28423 28424 // SetAssociatedClusterCount sets the AssociatedClusterCount field's value. 28425 func (s *ModifySnapshotScheduleOutput) SetAssociatedClusterCount(v int64) *ModifySnapshotScheduleOutput { 28426 s.AssociatedClusterCount = &v 28427 return s 28428 } 28429 28430 // SetAssociatedClusters sets the AssociatedClusters field's value. 28431 func (s *ModifySnapshotScheduleOutput) SetAssociatedClusters(v []*ClusterAssociatedToSchedule) *ModifySnapshotScheduleOutput { 28432 s.AssociatedClusters = v 28433 return s 28434 } 28435 28436 // SetNextInvocations sets the NextInvocations field's value. 28437 func (s *ModifySnapshotScheduleOutput) SetNextInvocations(v []*time.Time) *ModifySnapshotScheduleOutput { 28438 s.NextInvocations = v 28439 return s 28440 } 28441 28442 // SetScheduleDefinitions sets the ScheduleDefinitions field's value. 28443 func (s *ModifySnapshotScheduleOutput) SetScheduleDefinitions(v []*string) *ModifySnapshotScheduleOutput { 28444 s.ScheduleDefinitions = v 28445 return s 28446 } 28447 28448 // SetScheduleDescription sets the ScheduleDescription field's value. 28449 func (s *ModifySnapshotScheduleOutput) SetScheduleDescription(v string) *ModifySnapshotScheduleOutput { 28450 s.ScheduleDescription = &v 28451 return s 28452 } 28453 28454 // SetScheduleIdentifier sets the ScheduleIdentifier field's value. 28455 func (s *ModifySnapshotScheduleOutput) SetScheduleIdentifier(v string) *ModifySnapshotScheduleOutput { 28456 s.ScheduleIdentifier = &v 28457 return s 28458 } 28459 28460 // SetTags sets the Tags field's value. 28461 func (s *ModifySnapshotScheduleOutput) SetTags(v []*Tag) *ModifySnapshotScheduleOutput { 28462 s.Tags = v 28463 return s 28464 } 28465 28466 type ModifyUsageLimitInput struct { 28467 _ struct{} `type:"structure"` 28468 28469 // The new limit amount. For more information about this parameter, see UsageLimit. 28470 Amount *int64 `type:"long"` 28471 28472 // The new action that Amazon Redshift takes when the limit is reached. For 28473 // more information about this parameter, see UsageLimit. 28474 BreachAction *string `type:"string" enum:"UsageLimitBreachAction"` 28475 28476 // The identifier of the usage limit to modify. 28477 // 28478 // UsageLimitId is a required field 28479 UsageLimitId *string `type:"string" required:"true"` 28480 } 28481 28482 // String returns the string representation. 28483 // 28484 // API parameter values that are decorated as "sensitive" in the API will not 28485 // be included in the string output. The member name will be present, but the 28486 // value will be replaced with "sensitive". 28487 func (s ModifyUsageLimitInput) String() string { 28488 return awsutil.Prettify(s) 28489 } 28490 28491 // GoString returns the string representation. 28492 // 28493 // API parameter values that are decorated as "sensitive" in the API will not 28494 // be included in the string output. The member name will be present, but the 28495 // value will be replaced with "sensitive". 28496 func (s ModifyUsageLimitInput) GoString() string { 28497 return s.String() 28498 } 28499 28500 // Validate inspects the fields of the type to determine if they are valid. 28501 func (s *ModifyUsageLimitInput) Validate() error { 28502 invalidParams := request.ErrInvalidParams{Context: "ModifyUsageLimitInput"} 28503 if s.UsageLimitId == nil { 28504 invalidParams.Add(request.NewErrParamRequired("UsageLimitId")) 28505 } 28506 28507 if invalidParams.Len() > 0 { 28508 return invalidParams 28509 } 28510 return nil 28511 } 28512 28513 // SetAmount sets the Amount field's value. 28514 func (s *ModifyUsageLimitInput) SetAmount(v int64) *ModifyUsageLimitInput { 28515 s.Amount = &v 28516 return s 28517 } 28518 28519 // SetBreachAction sets the BreachAction field's value. 28520 func (s *ModifyUsageLimitInput) SetBreachAction(v string) *ModifyUsageLimitInput { 28521 s.BreachAction = &v 28522 return s 28523 } 28524 28525 // SetUsageLimitId sets the UsageLimitId field's value. 28526 func (s *ModifyUsageLimitInput) SetUsageLimitId(v string) *ModifyUsageLimitInput { 28527 s.UsageLimitId = &v 28528 return s 28529 } 28530 28531 // Describes a usage limit object for a cluster. 28532 type ModifyUsageLimitOutput struct { 28533 _ struct{} `type:"structure"` 28534 28535 // The limit amount. If time-based, this amount is in minutes. If data-based, 28536 // this amount is in terabytes (TB). 28537 Amount *int64 `type:"long"` 28538 28539 // The action that Amazon Redshift takes when the limit is reached. Possible 28540 // values are: 28541 // 28542 // * log - To log an event in a system table. The default is log. 28543 // 28544 // * emit-metric - To emit CloudWatch metrics. 28545 // 28546 // * disable - To disable the feature until the next usage period begins. 28547 BreachAction *string `type:"string" enum:"UsageLimitBreachAction"` 28548 28549 // The identifier of the cluster with a usage limit. 28550 ClusterIdentifier *string `type:"string"` 28551 28552 // The Amazon Redshift feature to which the limit applies. 28553 FeatureType *string `type:"string" enum:"UsageLimitFeatureType"` 28554 28555 // The type of limit. Depending on the feature type, this can be based on a 28556 // time duration or data size. 28557 LimitType *string `type:"string" enum:"UsageLimitLimitType"` 28558 28559 // The time period that the amount applies to. A weekly period begins on Sunday. 28560 // The default is monthly. 28561 Period *string `type:"string" enum:"UsageLimitPeriod"` 28562 28563 // A list of tag instances. 28564 Tags []*Tag `locationNameList:"Tag" type:"list"` 28565 28566 // The identifier of the usage limit. 28567 UsageLimitId *string `type:"string"` 28568 } 28569 28570 // String returns the string representation. 28571 // 28572 // API parameter values that are decorated as "sensitive" in the API will not 28573 // be included in the string output. The member name will be present, but the 28574 // value will be replaced with "sensitive". 28575 func (s ModifyUsageLimitOutput) String() string { 28576 return awsutil.Prettify(s) 28577 } 28578 28579 // GoString returns the string representation. 28580 // 28581 // API parameter values that are decorated as "sensitive" in the API will not 28582 // be included in the string output. The member name will be present, but the 28583 // value will be replaced with "sensitive". 28584 func (s ModifyUsageLimitOutput) GoString() string { 28585 return s.String() 28586 } 28587 28588 // SetAmount sets the Amount field's value. 28589 func (s *ModifyUsageLimitOutput) SetAmount(v int64) *ModifyUsageLimitOutput { 28590 s.Amount = &v 28591 return s 28592 } 28593 28594 // SetBreachAction sets the BreachAction field's value. 28595 func (s *ModifyUsageLimitOutput) SetBreachAction(v string) *ModifyUsageLimitOutput { 28596 s.BreachAction = &v 28597 return s 28598 } 28599 28600 // SetClusterIdentifier sets the ClusterIdentifier field's value. 28601 func (s *ModifyUsageLimitOutput) SetClusterIdentifier(v string) *ModifyUsageLimitOutput { 28602 s.ClusterIdentifier = &v 28603 return s 28604 } 28605 28606 // SetFeatureType sets the FeatureType field's value. 28607 func (s *ModifyUsageLimitOutput) SetFeatureType(v string) *ModifyUsageLimitOutput { 28608 s.FeatureType = &v 28609 return s 28610 } 28611 28612 // SetLimitType sets the LimitType field's value. 28613 func (s *ModifyUsageLimitOutput) SetLimitType(v string) *ModifyUsageLimitOutput { 28614 s.LimitType = &v 28615 return s 28616 } 28617 28618 // SetPeriod sets the Period field's value. 28619 func (s *ModifyUsageLimitOutput) SetPeriod(v string) *ModifyUsageLimitOutput { 28620 s.Period = &v 28621 return s 28622 } 28623 28624 // SetTags sets the Tags field's value. 28625 func (s *ModifyUsageLimitOutput) SetTags(v []*Tag) *ModifyUsageLimitOutput { 28626 s.Tags = v 28627 return s 28628 } 28629 28630 // SetUsageLimitId sets the UsageLimitId field's value. 28631 func (s *ModifyUsageLimitOutput) SetUsageLimitId(v string) *ModifyUsageLimitOutput { 28632 s.UsageLimitId = &v 28633 return s 28634 } 28635 28636 // Describes a network interface. 28637 type NetworkInterface struct { 28638 _ struct{} `type:"structure"` 28639 28640 // The Availability Zone. 28641 AvailabilityZone *string `type:"string"` 28642 28643 // The network interface identifier. 28644 NetworkInterfaceId *string `type:"string"` 28645 28646 // The IPv4 address of the network interface within the subnet. 28647 PrivateIpAddress *string `type:"string"` 28648 28649 // The subnet identifier. 28650 SubnetId *string `type:"string"` 28651 } 28652 28653 // String returns the string representation. 28654 // 28655 // API parameter values that are decorated as "sensitive" in the API will not 28656 // be included in the string output. The member name will be present, but the 28657 // value will be replaced with "sensitive". 28658 func (s NetworkInterface) String() string { 28659 return awsutil.Prettify(s) 28660 } 28661 28662 // GoString returns the string representation. 28663 // 28664 // API parameter values that are decorated as "sensitive" in the API will not 28665 // be included in the string output. The member name will be present, but the 28666 // value will be replaced with "sensitive". 28667 func (s NetworkInterface) GoString() string { 28668 return s.String() 28669 } 28670 28671 // SetAvailabilityZone sets the AvailabilityZone field's value. 28672 func (s *NetworkInterface) SetAvailabilityZone(v string) *NetworkInterface { 28673 s.AvailabilityZone = &v 28674 return s 28675 } 28676 28677 // SetNetworkInterfaceId sets the NetworkInterfaceId field's value. 28678 func (s *NetworkInterface) SetNetworkInterfaceId(v string) *NetworkInterface { 28679 s.NetworkInterfaceId = &v 28680 return s 28681 } 28682 28683 // SetPrivateIpAddress sets the PrivateIpAddress field's value. 28684 func (s *NetworkInterface) SetPrivateIpAddress(v string) *NetworkInterface { 28685 s.PrivateIpAddress = &v 28686 return s 28687 } 28688 28689 // SetSubnetId sets the SubnetId field's value. 28690 func (s *NetworkInterface) SetSubnetId(v string) *NetworkInterface { 28691 s.SubnetId = &v 28692 return s 28693 } 28694 28695 // A list of node configurations. 28696 type NodeConfigurationOption struct { 28697 _ struct{} `type:"structure"` 28698 28699 // The estimated disk utilizaton percentage. 28700 EstimatedDiskUtilizationPercent *float64 `type:"double"` 28701 28702 // The category of the node configuration recommendation. 28703 Mode *string `type:"string" enum:"Mode"` 28704 28705 // The node type, such as, "ds2.8xlarge". 28706 NodeType *string `type:"string"` 28707 28708 // The number of nodes. 28709 NumberOfNodes *int64 `type:"integer"` 28710 } 28711 28712 // String returns the string representation. 28713 // 28714 // API parameter values that are decorated as "sensitive" in the API will not 28715 // be included in the string output. The member name will be present, but the 28716 // value will be replaced with "sensitive". 28717 func (s NodeConfigurationOption) String() string { 28718 return awsutil.Prettify(s) 28719 } 28720 28721 // GoString returns the string representation. 28722 // 28723 // API parameter values that are decorated as "sensitive" in the API will not 28724 // be included in the string output. The member name will be present, but the 28725 // value will be replaced with "sensitive". 28726 func (s NodeConfigurationOption) GoString() string { 28727 return s.String() 28728 } 28729 28730 // SetEstimatedDiskUtilizationPercent sets the EstimatedDiskUtilizationPercent field's value. 28731 func (s *NodeConfigurationOption) SetEstimatedDiskUtilizationPercent(v float64) *NodeConfigurationOption { 28732 s.EstimatedDiskUtilizationPercent = &v 28733 return s 28734 } 28735 28736 // SetMode sets the Mode field's value. 28737 func (s *NodeConfigurationOption) SetMode(v string) *NodeConfigurationOption { 28738 s.Mode = &v 28739 return s 28740 } 28741 28742 // SetNodeType sets the NodeType field's value. 28743 func (s *NodeConfigurationOption) SetNodeType(v string) *NodeConfigurationOption { 28744 s.NodeType = &v 28745 return s 28746 } 28747 28748 // SetNumberOfNodes sets the NumberOfNodes field's value. 28749 func (s *NodeConfigurationOption) SetNumberOfNodes(v int64) *NodeConfigurationOption { 28750 s.NumberOfNodes = &v 28751 return s 28752 } 28753 28754 // A set of elements to filter the returned node configurations. 28755 type NodeConfigurationOptionsFilter struct { 28756 _ struct{} `type:"structure"` 28757 28758 // The name of the element to filter. 28759 Name *string `type:"string" enum:"NodeConfigurationOptionsFilterName"` 28760 28761 // The filter operator. If filter Name is NodeType only the 'in' operator is 28762 // supported. Provide one value to evaluate for 'eq', 'lt', 'le', 'gt', and 28763 // 'ge'. Provide two values to evaluate for 'between'. Provide a list of values 28764 // for 'in'. 28765 Operator *string `type:"string" enum:"OperatorType"` 28766 28767 // List of values. Compare Name using Operator to Values. If filter Name is 28768 // NumberOfNodes, then values can range from 0 to 200. If filter Name is EstimatedDiskUtilizationPercent, 28769 // then values can range from 0 to 100. For example, filter NumberOfNodes (name) 28770 // GT (operator) 3 (values). 28771 Values []*string `locationName:"Value" locationNameList:"item" type:"list"` 28772 } 28773 28774 // String returns the string representation. 28775 // 28776 // API parameter values that are decorated as "sensitive" in the API will not 28777 // be included in the string output. The member name will be present, but the 28778 // value will be replaced with "sensitive". 28779 func (s NodeConfigurationOptionsFilter) String() string { 28780 return awsutil.Prettify(s) 28781 } 28782 28783 // GoString returns the string representation. 28784 // 28785 // API parameter values that are decorated as "sensitive" in the API will not 28786 // be included in the string output. The member name will be present, but the 28787 // value will be replaced with "sensitive". 28788 func (s NodeConfigurationOptionsFilter) GoString() string { 28789 return s.String() 28790 } 28791 28792 // SetName sets the Name field's value. 28793 func (s *NodeConfigurationOptionsFilter) SetName(v string) *NodeConfigurationOptionsFilter { 28794 s.Name = &v 28795 return s 28796 } 28797 28798 // SetOperator sets the Operator field's value. 28799 func (s *NodeConfigurationOptionsFilter) SetOperator(v string) *NodeConfigurationOptionsFilter { 28800 s.Operator = &v 28801 return s 28802 } 28803 28804 // SetValues sets the Values field's value. 28805 func (s *NodeConfigurationOptionsFilter) SetValues(v []*string) *NodeConfigurationOptionsFilter { 28806 s.Values = v 28807 return s 28808 } 28809 28810 // Describes an orderable cluster option. 28811 type OrderableClusterOption struct { 28812 _ struct{} `type:"structure"` 28813 28814 // A list of availability zones for the orderable cluster. 28815 AvailabilityZones []*AvailabilityZone `locationNameList:"AvailabilityZone" type:"list"` 28816 28817 // The cluster type, for example multi-node. 28818 ClusterType *string `type:"string"` 28819 28820 // The version of the orderable cluster. 28821 ClusterVersion *string `type:"string"` 28822 28823 // The node type for the orderable cluster. 28824 NodeType *string `type:"string"` 28825 } 28826 28827 // String returns the string representation. 28828 // 28829 // API parameter values that are decorated as "sensitive" in the API will not 28830 // be included in the string output. The member name will be present, but the 28831 // value will be replaced with "sensitive". 28832 func (s OrderableClusterOption) String() string { 28833 return awsutil.Prettify(s) 28834 } 28835 28836 // GoString returns the string representation. 28837 // 28838 // API parameter values that are decorated as "sensitive" in the API will not 28839 // be included in the string output. The member name will be present, but the 28840 // value will be replaced with "sensitive". 28841 func (s OrderableClusterOption) GoString() string { 28842 return s.String() 28843 } 28844 28845 // SetAvailabilityZones sets the AvailabilityZones field's value. 28846 func (s *OrderableClusterOption) SetAvailabilityZones(v []*AvailabilityZone) *OrderableClusterOption { 28847 s.AvailabilityZones = v 28848 return s 28849 } 28850 28851 // SetClusterType sets the ClusterType field's value. 28852 func (s *OrderableClusterOption) SetClusterType(v string) *OrderableClusterOption { 28853 s.ClusterType = &v 28854 return s 28855 } 28856 28857 // SetClusterVersion sets the ClusterVersion field's value. 28858 func (s *OrderableClusterOption) SetClusterVersion(v string) *OrderableClusterOption { 28859 s.ClusterVersion = &v 28860 return s 28861 } 28862 28863 // SetNodeType sets the NodeType field's value. 28864 func (s *OrderableClusterOption) SetNodeType(v string) *OrderableClusterOption { 28865 s.NodeType = &v 28866 return s 28867 } 28868 28869 // Describes a parameter in a cluster parameter group. 28870 type Parameter struct { 28871 _ struct{} `type:"structure"` 28872 28873 // The valid range of values for the parameter. 28874 AllowedValues *string `type:"string"` 28875 28876 // Specifies how to apply the WLM configuration parameter. Some properties can 28877 // be applied dynamically, while other properties require that any associated 28878 // clusters be rebooted for the configuration changes to be applied. For more 28879 // information about parameters and parameter groups, go to Amazon Redshift 28880 // Parameter Groups (https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-parameter-groups.html) 28881 // in the Amazon Redshift Cluster Management Guide. 28882 ApplyType *string `type:"string" enum:"ParameterApplyType"` 28883 28884 // The data type of the parameter. 28885 DataType *string `type:"string"` 28886 28887 // A description of the parameter. 28888 Description *string `type:"string"` 28889 28890 // If true, the parameter can be modified. Some parameters have security or 28891 // operational implications that prevent them from being changed. 28892 IsModifiable *bool `type:"boolean"` 28893 28894 // The earliest engine version to which the parameter can apply. 28895 MinimumEngineVersion *string `type:"string"` 28896 28897 // The name of the parameter. 28898 ParameterName *string `type:"string"` 28899 28900 // The value of the parameter. If ParameterName is wlm_json_configuration, then 28901 // the maximum size of ParameterValue is 8000 characters. 28902 ParameterValue *string `type:"string"` 28903 28904 // The source of the parameter value, such as "engine-default" or "user". 28905 Source *string `type:"string"` 28906 } 28907 28908 // String returns the string representation. 28909 // 28910 // API parameter values that are decorated as "sensitive" in the API will not 28911 // be included in the string output. The member name will be present, but the 28912 // value will be replaced with "sensitive". 28913 func (s Parameter) String() string { 28914 return awsutil.Prettify(s) 28915 } 28916 28917 // GoString returns the string representation. 28918 // 28919 // API parameter values that are decorated as "sensitive" in the API will not 28920 // be included in the string output. The member name will be present, but the 28921 // value will be replaced with "sensitive". 28922 func (s Parameter) GoString() string { 28923 return s.String() 28924 } 28925 28926 // SetAllowedValues sets the AllowedValues field's value. 28927 func (s *Parameter) SetAllowedValues(v string) *Parameter { 28928 s.AllowedValues = &v 28929 return s 28930 } 28931 28932 // SetApplyType sets the ApplyType field's value. 28933 func (s *Parameter) SetApplyType(v string) *Parameter { 28934 s.ApplyType = &v 28935 return s 28936 } 28937 28938 // SetDataType sets the DataType field's value. 28939 func (s *Parameter) SetDataType(v string) *Parameter { 28940 s.DataType = &v 28941 return s 28942 } 28943 28944 // SetDescription sets the Description field's value. 28945 func (s *Parameter) SetDescription(v string) *Parameter { 28946 s.Description = &v 28947 return s 28948 } 28949 28950 // SetIsModifiable sets the IsModifiable field's value. 28951 func (s *Parameter) SetIsModifiable(v bool) *Parameter { 28952 s.IsModifiable = &v 28953 return s 28954 } 28955 28956 // SetMinimumEngineVersion sets the MinimumEngineVersion field's value. 28957 func (s *Parameter) SetMinimumEngineVersion(v string) *Parameter { 28958 s.MinimumEngineVersion = &v 28959 return s 28960 } 28961 28962 // SetParameterName sets the ParameterName field's value. 28963 func (s *Parameter) SetParameterName(v string) *Parameter { 28964 s.ParameterName = &v 28965 return s 28966 } 28967 28968 // SetParameterValue sets the ParameterValue field's value. 28969 func (s *Parameter) SetParameterValue(v string) *Parameter { 28970 s.ParameterValue = &v 28971 return s 28972 } 28973 28974 // SetSource sets the Source field's value. 28975 func (s *Parameter) SetSource(v string) *Parameter { 28976 s.Source = &v 28977 return s 28978 } 28979 28980 // Describes a partner integration. 28981 type PartnerIntegrationInfo struct { 28982 _ struct{} `type:"structure"` 28983 28984 // The date (UTC) that the partner integration was created. 28985 CreatedAt *time.Time `type:"timestamp"` 28986 28987 // The name of the database that receives data from a partner. 28988 DatabaseName *string `type:"string"` 28989 28990 // The name of the partner. 28991 PartnerName *string `type:"string"` 28992 28993 // The partner integration status. 28994 Status *string `type:"string" enum:"PartnerIntegrationStatus"` 28995 28996 // The status message provided by the partner. 28997 StatusMessage *string `type:"string"` 28998 28999 // The date (UTC) that the partner integration status was last updated by the 29000 // partner. 29001 UpdatedAt *time.Time `type:"timestamp"` 29002 } 29003 29004 // String returns the string representation. 29005 // 29006 // API parameter values that are decorated as "sensitive" in the API will not 29007 // be included in the string output. The member name will be present, but the 29008 // value will be replaced with "sensitive". 29009 func (s PartnerIntegrationInfo) String() string { 29010 return awsutil.Prettify(s) 29011 } 29012 29013 // GoString returns the string representation. 29014 // 29015 // API parameter values that are decorated as "sensitive" in the API will not 29016 // be included in the string output. The member name will be present, but the 29017 // value will be replaced with "sensitive". 29018 func (s PartnerIntegrationInfo) GoString() string { 29019 return s.String() 29020 } 29021 29022 // SetCreatedAt sets the CreatedAt field's value. 29023 func (s *PartnerIntegrationInfo) SetCreatedAt(v time.Time) *PartnerIntegrationInfo { 29024 s.CreatedAt = &v 29025 return s 29026 } 29027 29028 // SetDatabaseName sets the DatabaseName field's value. 29029 func (s *PartnerIntegrationInfo) SetDatabaseName(v string) *PartnerIntegrationInfo { 29030 s.DatabaseName = &v 29031 return s 29032 } 29033 29034 // SetPartnerName sets the PartnerName field's value. 29035 func (s *PartnerIntegrationInfo) SetPartnerName(v string) *PartnerIntegrationInfo { 29036 s.PartnerName = &v 29037 return s 29038 } 29039 29040 // SetStatus sets the Status field's value. 29041 func (s *PartnerIntegrationInfo) SetStatus(v string) *PartnerIntegrationInfo { 29042 s.Status = &v 29043 return s 29044 } 29045 29046 // SetStatusMessage sets the StatusMessage field's value. 29047 func (s *PartnerIntegrationInfo) SetStatusMessage(v string) *PartnerIntegrationInfo { 29048 s.StatusMessage = &v 29049 return s 29050 } 29051 29052 // SetUpdatedAt sets the UpdatedAt field's value. 29053 func (s *PartnerIntegrationInfo) SetUpdatedAt(v time.Time) *PartnerIntegrationInfo { 29054 s.UpdatedAt = &v 29055 return s 29056 } 29057 29058 // Describes a pause cluster operation. For example, a scheduled action to run 29059 // the PauseCluster API operation. 29060 type PauseClusterInput struct { 29061 _ struct{} `type:"structure"` 29062 29063 // The identifier of the cluster to be paused. 29064 // 29065 // ClusterIdentifier is a required field 29066 ClusterIdentifier *string `type:"string" required:"true"` 29067 } 29068 29069 // String returns the string representation. 29070 // 29071 // API parameter values that are decorated as "sensitive" in the API will not 29072 // be included in the string output. The member name will be present, but the 29073 // value will be replaced with "sensitive". 29074 func (s PauseClusterInput) String() string { 29075 return awsutil.Prettify(s) 29076 } 29077 29078 // GoString returns the string representation. 29079 // 29080 // API parameter values that are decorated as "sensitive" in the API will not 29081 // be included in the string output. The member name will be present, but the 29082 // value will be replaced with "sensitive". 29083 func (s PauseClusterInput) GoString() string { 29084 return s.String() 29085 } 29086 29087 // Validate inspects the fields of the type to determine if they are valid. 29088 func (s *PauseClusterInput) Validate() error { 29089 invalidParams := request.ErrInvalidParams{Context: "PauseClusterInput"} 29090 if s.ClusterIdentifier == nil { 29091 invalidParams.Add(request.NewErrParamRequired("ClusterIdentifier")) 29092 } 29093 29094 if invalidParams.Len() > 0 { 29095 return invalidParams 29096 } 29097 return nil 29098 } 29099 29100 // SetClusterIdentifier sets the ClusterIdentifier field's value. 29101 func (s *PauseClusterInput) SetClusterIdentifier(v string) *PauseClusterInput { 29102 s.ClusterIdentifier = &v 29103 return s 29104 } 29105 29106 // Describes a pause cluster operation. For example, a scheduled action to run 29107 // the PauseCluster API operation. 29108 type PauseClusterMessage struct { 29109 _ struct{} `type:"structure"` 29110 29111 // The identifier of the cluster to be paused. 29112 // 29113 // ClusterIdentifier is a required field 29114 ClusterIdentifier *string `type:"string" required:"true"` 29115 } 29116 29117 // String returns the string representation. 29118 // 29119 // API parameter values that are decorated as "sensitive" in the API will not 29120 // be included in the string output. The member name will be present, but the 29121 // value will be replaced with "sensitive". 29122 func (s PauseClusterMessage) String() string { 29123 return awsutil.Prettify(s) 29124 } 29125 29126 // GoString returns the string representation. 29127 // 29128 // API parameter values that are decorated as "sensitive" in the API will not 29129 // be included in the string output. The member name will be present, but the 29130 // value will be replaced with "sensitive". 29131 func (s PauseClusterMessage) GoString() string { 29132 return s.String() 29133 } 29134 29135 // Validate inspects the fields of the type to determine if they are valid. 29136 func (s *PauseClusterMessage) Validate() error { 29137 invalidParams := request.ErrInvalidParams{Context: "PauseClusterMessage"} 29138 if s.ClusterIdentifier == nil { 29139 invalidParams.Add(request.NewErrParamRequired("ClusterIdentifier")) 29140 } 29141 29142 if invalidParams.Len() > 0 { 29143 return invalidParams 29144 } 29145 return nil 29146 } 29147 29148 // SetClusterIdentifier sets the ClusterIdentifier field's value. 29149 func (s *PauseClusterMessage) SetClusterIdentifier(v string) *PauseClusterMessage { 29150 s.ClusterIdentifier = &v 29151 return s 29152 } 29153 29154 type PauseClusterOutput struct { 29155 _ struct{} `type:"structure"` 29156 29157 // Describes a cluster. 29158 Cluster *Cluster `type:"structure"` 29159 } 29160 29161 // String returns the string representation. 29162 // 29163 // API parameter values that are decorated as "sensitive" in the API will not 29164 // be included in the string output. The member name will be present, but the 29165 // value will be replaced with "sensitive". 29166 func (s PauseClusterOutput) String() string { 29167 return awsutil.Prettify(s) 29168 } 29169 29170 // GoString returns the string representation. 29171 // 29172 // API parameter values that are decorated as "sensitive" in the API will not 29173 // be included in the string output. The member name will be present, but the 29174 // value will be replaced with "sensitive". 29175 func (s PauseClusterOutput) GoString() string { 29176 return s.String() 29177 } 29178 29179 // SetCluster sets the Cluster field's value. 29180 func (s *PauseClusterOutput) SetCluster(v *Cluster) *PauseClusterOutput { 29181 s.Cluster = v 29182 return s 29183 } 29184 29185 // Describes cluster attributes that are in a pending state. A change to one 29186 // or more the attributes was requested and is in progress or will be applied. 29187 type PendingModifiedValues struct { 29188 _ struct{} `type:"structure"` 29189 29190 // The pending or in-progress change of the automated snapshot retention period. 29191 AutomatedSnapshotRetentionPeriod *int64 `type:"integer"` 29192 29193 // The pending or in-progress change of the new identifier for the cluster. 29194 ClusterIdentifier *string `type:"string"` 29195 29196 // The pending or in-progress change of the cluster type. 29197 ClusterType *string `type:"string"` 29198 29199 // The pending or in-progress change of the service version. 29200 ClusterVersion *string `type:"string"` 29201 29202 // The encryption type for a cluster. Possible values are: KMS and None. 29203 EncryptionType *string `type:"string"` 29204 29205 // An option that specifies whether to create the cluster with enhanced VPC 29206 // routing enabled. To create a cluster that uses enhanced VPC routing, the 29207 // cluster must be in a VPC. For more information, see Enhanced VPC Routing 29208 // (https://docs.aws.amazon.com/redshift/latest/mgmt/enhanced-vpc-routing.html) 29209 // in the Amazon Redshift Cluster Management Guide. 29210 // 29211 // If this option is true, enhanced VPC routing is enabled. 29212 // 29213 // Default: false 29214 EnhancedVpcRouting *bool `type:"boolean"` 29215 29216 // The name of the maintenance track that the cluster will change to during 29217 // the next maintenance window. 29218 MaintenanceTrackName *string `type:"string"` 29219 29220 // The pending or in-progress change of the admin user password for the cluster. 29221 MasterUserPassword *string `type:"string"` 29222 29223 // The pending or in-progress change of the cluster's node type. 29224 NodeType *string `type:"string"` 29225 29226 // The pending or in-progress change of the number of nodes in the cluster. 29227 NumberOfNodes *int64 `type:"integer"` 29228 29229 // The pending or in-progress change of the ability to connect to the cluster 29230 // from the public network. 29231 PubliclyAccessible *bool `type:"boolean"` 29232 } 29233 29234 // String returns the string representation. 29235 // 29236 // API parameter values that are decorated as "sensitive" in the API will not 29237 // be included in the string output. The member name will be present, but the 29238 // value will be replaced with "sensitive". 29239 func (s PendingModifiedValues) String() string { 29240 return awsutil.Prettify(s) 29241 } 29242 29243 // GoString returns the string representation. 29244 // 29245 // API parameter values that are decorated as "sensitive" in the API will not 29246 // be included in the string output. The member name will be present, but the 29247 // value will be replaced with "sensitive". 29248 func (s PendingModifiedValues) GoString() string { 29249 return s.String() 29250 } 29251 29252 // SetAutomatedSnapshotRetentionPeriod sets the AutomatedSnapshotRetentionPeriod field's value. 29253 func (s *PendingModifiedValues) SetAutomatedSnapshotRetentionPeriod(v int64) *PendingModifiedValues { 29254 s.AutomatedSnapshotRetentionPeriod = &v 29255 return s 29256 } 29257 29258 // SetClusterIdentifier sets the ClusterIdentifier field's value. 29259 func (s *PendingModifiedValues) SetClusterIdentifier(v string) *PendingModifiedValues { 29260 s.ClusterIdentifier = &v 29261 return s 29262 } 29263 29264 // SetClusterType sets the ClusterType field's value. 29265 func (s *PendingModifiedValues) SetClusterType(v string) *PendingModifiedValues { 29266 s.ClusterType = &v 29267 return s 29268 } 29269 29270 // SetClusterVersion sets the ClusterVersion field's value. 29271 func (s *PendingModifiedValues) SetClusterVersion(v string) *PendingModifiedValues { 29272 s.ClusterVersion = &v 29273 return s 29274 } 29275 29276 // SetEncryptionType sets the EncryptionType field's value. 29277 func (s *PendingModifiedValues) SetEncryptionType(v string) *PendingModifiedValues { 29278 s.EncryptionType = &v 29279 return s 29280 } 29281 29282 // SetEnhancedVpcRouting sets the EnhancedVpcRouting field's value. 29283 func (s *PendingModifiedValues) SetEnhancedVpcRouting(v bool) *PendingModifiedValues { 29284 s.EnhancedVpcRouting = &v 29285 return s 29286 } 29287 29288 // SetMaintenanceTrackName sets the MaintenanceTrackName field's value. 29289 func (s *PendingModifiedValues) SetMaintenanceTrackName(v string) *PendingModifiedValues { 29290 s.MaintenanceTrackName = &v 29291 return s 29292 } 29293 29294 // SetMasterUserPassword sets the MasterUserPassword field's value. 29295 func (s *PendingModifiedValues) SetMasterUserPassword(v string) *PendingModifiedValues { 29296 s.MasterUserPassword = &v 29297 return s 29298 } 29299 29300 // SetNodeType sets the NodeType field's value. 29301 func (s *PendingModifiedValues) SetNodeType(v string) *PendingModifiedValues { 29302 s.NodeType = &v 29303 return s 29304 } 29305 29306 // SetNumberOfNodes sets the NumberOfNodes field's value. 29307 func (s *PendingModifiedValues) SetNumberOfNodes(v int64) *PendingModifiedValues { 29308 s.NumberOfNodes = &v 29309 return s 29310 } 29311 29312 // SetPubliclyAccessible sets the PubliclyAccessible field's value. 29313 func (s *PendingModifiedValues) SetPubliclyAccessible(v bool) *PendingModifiedValues { 29314 s.PubliclyAccessible = &v 29315 return s 29316 } 29317 29318 type PurchaseReservedNodeOfferingInput struct { 29319 _ struct{} `type:"structure"` 29320 29321 // The number of reserved nodes that you want to purchase. 29322 // 29323 // Default: 1 29324 NodeCount *int64 `type:"integer"` 29325 29326 // The unique identifier of the reserved node offering you want to purchase. 29327 // 29328 // ReservedNodeOfferingId is a required field 29329 ReservedNodeOfferingId *string `type:"string" required:"true"` 29330 } 29331 29332 // String returns the string representation. 29333 // 29334 // API parameter values that are decorated as "sensitive" in the API will not 29335 // be included in the string output. The member name will be present, but the 29336 // value will be replaced with "sensitive". 29337 func (s PurchaseReservedNodeOfferingInput) String() string { 29338 return awsutil.Prettify(s) 29339 } 29340 29341 // GoString returns the string representation. 29342 // 29343 // API parameter values that are decorated as "sensitive" in the API will not 29344 // be included in the string output. The member name will be present, but the 29345 // value will be replaced with "sensitive". 29346 func (s PurchaseReservedNodeOfferingInput) GoString() string { 29347 return s.String() 29348 } 29349 29350 // Validate inspects the fields of the type to determine if they are valid. 29351 func (s *PurchaseReservedNodeOfferingInput) Validate() error { 29352 invalidParams := request.ErrInvalidParams{Context: "PurchaseReservedNodeOfferingInput"} 29353 if s.ReservedNodeOfferingId == nil { 29354 invalidParams.Add(request.NewErrParamRequired("ReservedNodeOfferingId")) 29355 } 29356 29357 if invalidParams.Len() > 0 { 29358 return invalidParams 29359 } 29360 return nil 29361 } 29362 29363 // SetNodeCount sets the NodeCount field's value. 29364 func (s *PurchaseReservedNodeOfferingInput) SetNodeCount(v int64) *PurchaseReservedNodeOfferingInput { 29365 s.NodeCount = &v 29366 return s 29367 } 29368 29369 // SetReservedNodeOfferingId sets the ReservedNodeOfferingId field's value. 29370 func (s *PurchaseReservedNodeOfferingInput) SetReservedNodeOfferingId(v string) *PurchaseReservedNodeOfferingInput { 29371 s.ReservedNodeOfferingId = &v 29372 return s 29373 } 29374 29375 type PurchaseReservedNodeOfferingOutput struct { 29376 _ struct{} `type:"structure"` 29377 29378 // Describes a reserved node. You can call the DescribeReservedNodeOfferings 29379 // API to obtain the available reserved node offerings. 29380 ReservedNode *ReservedNode `type:"structure"` 29381 } 29382 29383 // String returns the string representation. 29384 // 29385 // API parameter values that are decorated as "sensitive" in the API will not 29386 // be included in the string output. The member name will be present, but the 29387 // value will be replaced with "sensitive". 29388 func (s PurchaseReservedNodeOfferingOutput) String() string { 29389 return awsutil.Prettify(s) 29390 } 29391 29392 // GoString returns the string representation. 29393 // 29394 // API parameter values that are decorated as "sensitive" in the API will not 29395 // be included in the string output. The member name will be present, but the 29396 // value will be replaced with "sensitive". 29397 func (s PurchaseReservedNodeOfferingOutput) GoString() string { 29398 return s.String() 29399 } 29400 29401 // SetReservedNode sets the ReservedNode field's value. 29402 func (s *PurchaseReservedNodeOfferingOutput) SetReservedNode(v *ReservedNode) *PurchaseReservedNodeOfferingOutput { 29403 s.ReservedNode = v 29404 return s 29405 } 29406 29407 type RebootClusterInput struct { 29408 _ struct{} `type:"structure"` 29409 29410 // The cluster identifier. 29411 // 29412 // ClusterIdentifier is a required field 29413 ClusterIdentifier *string `type:"string" required:"true"` 29414 } 29415 29416 // String returns the string representation. 29417 // 29418 // API parameter values that are decorated as "sensitive" in the API will not 29419 // be included in the string output. The member name will be present, but the 29420 // value will be replaced with "sensitive". 29421 func (s RebootClusterInput) String() string { 29422 return awsutil.Prettify(s) 29423 } 29424 29425 // GoString returns the string representation. 29426 // 29427 // API parameter values that are decorated as "sensitive" in the API will not 29428 // be included in the string output. The member name will be present, but the 29429 // value will be replaced with "sensitive". 29430 func (s RebootClusterInput) GoString() string { 29431 return s.String() 29432 } 29433 29434 // Validate inspects the fields of the type to determine if they are valid. 29435 func (s *RebootClusterInput) Validate() error { 29436 invalidParams := request.ErrInvalidParams{Context: "RebootClusterInput"} 29437 if s.ClusterIdentifier == nil { 29438 invalidParams.Add(request.NewErrParamRequired("ClusterIdentifier")) 29439 } 29440 29441 if invalidParams.Len() > 0 { 29442 return invalidParams 29443 } 29444 return nil 29445 } 29446 29447 // SetClusterIdentifier sets the ClusterIdentifier field's value. 29448 func (s *RebootClusterInput) SetClusterIdentifier(v string) *RebootClusterInput { 29449 s.ClusterIdentifier = &v 29450 return s 29451 } 29452 29453 type RebootClusterOutput struct { 29454 _ struct{} `type:"structure"` 29455 29456 // Describes a cluster. 29457 Cluster *Cluster `type:"structure"` 29458 } 29459 29460 // String returns the string representation. 29461 // 29462 // API parameter values that are decorated as "sensitive" in the API will not 29463 // be included in the string output. The member name will be present, but the 29464 // value will be replaced with "sensitive". 29465 func (s RebootClusterOutput) String() string { 29466 return awsutil.Prettify(s) 29467 } 29468 29469 // GoString returns the string representation. 29470 // 29471 // API parameter values that are decorated as "sensitive" in the API will not 29472 // be included in the string output. The member name will be present, but the 29473 // value will be replaced with "sensitive". 29474 func (s RebootClusterOutput) GoString() string { 29475 return s.String() 29476 } 29477 29478 // SetCluster sets the Cluster field's value. 29479 func (s *RebootClusterOutput) SetCluster(v *Cluster) *RebootClusterOutput { 29480 s.Cluster = v 29481 return s 29482 } 29483 29484 // Describes a recurring charge. 29485 type RecurringCharge struct { 29486 _ struct{} `type:"structure"` 29487 29488 // The amount charged per the period of time specified by the recurring charge 29489 // frequency. 29490 RecurringChargeAmount *float64 `type:"double"` 29491 29492 // The frequency at which the recurring charge amount is applied. 29493 RecurringChargeFrequency *string `type:"string"` 29494 } 29495 29496 // String returns the string representation. 29497 // 29498 // API parameter values that are decorated as "sensitive" in the API will not 29499 // be included in the string output. The member name will be present, but the 29500 // value will be replaced with "sensitive". 29501 func (s RecurringCharge) String() string { 29502 return awsutil.Prettify(s) 29503 } 29504 29505 // GoString returns the string representation. 29506 // 29507 // API parameter values that are decorated as "sensitive" in the API will not 29508 // be included in the string output. The member name will be present, but the 29509 // value will be replaced with "sensitive". 29510 func (s RecurringCharge) GoString() string { 29511 return s.String() 29512 } 29513 29514 // SetRecurringChargeAmount sets the RecurringChargeAmount field's value. 29515 func (s *RecurringCharge) SetRecurringChargeAmount(v float64) *RecurringCharge { 29516 s.RecurringChargeAmount = &v 29517 return s 29518 } 29519 29520 // SetRecurringChargeFrequency sets the RecurringChargeFrequency field's value. 29521 func (s *RecurringCharge) SetRecurringChargeFrequency(v string) *RecurringCharge { 29522 s.RecurringChargeFrequency = &v 29523 return s 29524 } 29525 29526 type RejectDataShareInput struct { 29527 _ struct{} `type:"structure"` 29528 29529 // The Amazon Resource Name (ARN) of the datashare to reject. 29530 // 29531 // DataShareArn is a required field 29532 DataShareArn *string `type:"string" required:"true"` 29533 } 29534 29535 // String returns the string representation. 29536 // 29537 // API parameter values that are decorated as "sensitive" in the API will not 29538 // be included in the string output. The member name will be present, but the 29539 // value will be replaced with "sensitive". 29540 func (s RejectDataShareInput) String() string { 29541 return awsutil.Prettify(s) 29542 } 29543 29544 // GoString returns the string representation. 29545 // 29546 // API parameter values that are decorated as "sensitive" in the API will not 29547 // be included in the string output. The member name will be present, but the 29548 // value will be replaced with "sensitive". 29549 func (s RejectDataShareInput) GoString() string { 29550 return s.String() 29551 } 29552 29553 // Validate inspects the fields of the type to determine if they are valid. 29554 func (s *RejectDataShareInput) Validate() error { 29555 invalidParams := request.ErrInvalidParams{Context: "RejectDataShareInput"} 29556 if s.DataShareArn == nil { 29557 invalidParams.Add(request.NewErrParamRequired("DataShareArn")) 29558 } 29559 29560 if invalidParams.Len() > 0 { 29561 return invalidParams 29562 } 29563 return nil 29564 } 29565 29566 // SetDataShareArn sets the DataShareArn field's value. 29567 func (s *RejectDataShareInput) SetDataShareArn(v string) *RejectDataShareInput { 29568 s.DataShareArn = &v 29569 return s 29570 } 29571 29572 type RejectDataShareOutput struct { 29573 _ struct{} `type:"structure"` 29574 29575 // A value that specifies whether the datashare can be shared to a publicly 29576 // accessible cluster. 29577 AllowPubliclyAccessibleConsumers *bool `type:"boolean"` 29578 29579 // An Amazon Resource Name (ARN) that references the datashare that is owned 29580 // by a specific namespace of the producer cluster. A datashare ARN is in the 29581 // arn:aws:redshift:{region}:{account-id}:{datashare}:{namespace-guid}/{datashare-name} 29582 // format. 29583 DataShareArn *string `type:"string"` 29584 29585 // A value that specifies when the datashare has an association between a producer 29586 // and data consumers. 29587 DataShareAssociations []*DataShareAssociation `type:"list"` 29588 29589 // The Amazon Resource Name (ARN) of the producer. 29590 ProducerArn *string `type:"string"` 29591 } 29592 29593 // String returns the string representation. 29594 // 29595 // API parameter values that are decorated as "sensitive" in the API will not 29596 // be included in the string output. The member name will be present, but the 29597 // value will be replaced with "sensitive". 29598 func (s RejectDataShareOutput) String() string { 29599 return awsutil.Prettify(s) 29600 } 29601 29602 // GoString returns the string representation. 29603 // 29604 // API parameter values that are decorated as "sensitive" in the API will not 29605 // be included in the string output. The member name will be present, but the 29606 // value will be replaced with "sensitive". 29607 func (s RejectDataShareOutput) GoString() string { 29608 return s.String() 29609 } 29610 29611 // SetAllowPubliclyAccessibleConsumers sets the AllowPubliclyAccessibleConsumers field's value. 29612 func (s *RejectDataShareOutput) SetAllowPubliclyAccessibleConsumers(v bool) *RejectDataShareOutput { 29613 s.AllowPubliclyAccessibleConsumers = &v 29614 return s 29615 } 29616 29617 // SetDataShareArn sets the DataShareArn field's value. 29618 func (s *RejectDataShareOutput) SetDataShareArn(v string) *RejectDataShareOutput { 29619 s.DataShareArn = &v 29620 return s 29621 } 29622 29623 // SetDataShareAssociations sets the DataShareAssociations field's value. 29624 func (s *RejectDataShareOutput) SetDataShareAssociations(v []*DataShareAssociation) *RejectDataShareOutput { 29625 s.DataShareAssociations = v 29626 return s 29627 } 29628 29629 // SetProducerArn sets the ProducerArn field's value. 29630 func (s *RejectDataShareOutput) SetProducerArn(v string) *RejectDataShareOutput { 29631 s.ProducerArn = &v 29632 return s 29633 } 29634 29635 // Describes a reserved node. You can call the DescribeReservedNodeOfferings 29636 // API to obtain the available reserved node offerings. 29637 type ReservedNode struct { 29638 _ struct{} `type:"structure"` 29639 29640 // The currency code for the reserved cluster. 29641 CurrencyCode *string `type:"string"` 29642 29643 // The duration of the node reservation in seconds. 29644 Duration *int64 `type:"integer"` 29645 29646 // The fixed cost Amazon Redshift charges you for this reserved node. 29647 FixedPrice *float64 `type:"double"` 29648 29649 // The number of reserved compute nodes. 29650 NodeCount *int64 `type:"integer"` 29651 29652 // The node type of the reserved node. 29653 NodeType *string `type:"string"` 29654 29655 // The anticipated utilization of the reserved node, as defined in the reserved 29656 // node offering. 29657 OfferingType *string `type:"string"` 29658 29659 // The recurring charges for the reserved node. 29660 RecurringCharges []*RecurringCharge `locationNameList:"RecurringCharge" type:"list"` 29661 29662 // The unique identifier for the reservation. 29663 ReservedNodeId *string `type:"string"` 29664 29665 // The identifier for the reserved node offering. 29666 ReservedNodeOfferingId *string `type:"string"` 29667 29668 ReservedNodeOfferingType *string `type:"string" enum:"ReservedNodeOfferingType"` 29669 29670 // The time the reservation started. You purchase a reserved node offering for 29671 // a duration. This is the start time of that duration. 29672 StartTime *time.Time `type:"timestamp"` 29673 29674 // The state of the reserved compute node. 29675 // 29676 // Possible Values: 29677 // 29678 // * pending-payment-This reserved node has recently been purchased, and 29679 // the sale has been approved, but payment has not yet been confirmed. 29680 // 29681 // * active-This reserved node is owned by the caller and is available for 29682 // use. 29683 // 29684 // * payment-failed-Payment failed for the purchase attempt. 29685 // 29686 // * retired-The reserved node is no longer available. 29687 // 29688 // * exchanging-The owner is exchanging the reserved node for another reserved 29689 // node. 29690 State *string `type:"string"` 29691 29692 // The hourly rate Amazon Redshift charges you for this reserved node. 29693 UsagePrice *float64 `type:"double"` 29694 } 29695 29696 // String returns the string representation. 29697 // 29698 // API parameter values that are decorated as "sensitive" in the API will not 29699 // be included in the string output. The member name will be present, but the 29700 // value will be replaced with "sensitive". 29701 func (s ReservedNode) String() string { 29702 return awsutil.Prettify(s) 29703 } 29704 29705 // GoString returns the string representation. 29706 // 29707 // API parameter values that are decorated as "sensitive" in the API will not 29708 // be included in the string output. The member name will be present, but the 29709 // value will be replaced with "sensitive". 29710 func (s ReservedNode) GoString() string { 29711 return s.String() 29712 } 29713 29714 // SetCurrencyCode sets the CurrencyCode field's value. 29715 func (s *ReservedNode) SetCurrencyCode(v string) *ReservedNode { 29716 s.CurrencyCode = &v 29717 return s 29718 } 29719 29720 // SetDuration sets the Duration field's value. 29721 func (s *ReservedNode) SetDuration(v int64) *ReservedNode { 29722 s.Duration = &v 29723 return s 29724 } 29725 29726 // SetFixedPrice sets the FixedPrice field's value. 29727 func (s *ReservedNode) SetFixedPrice(v float64) *ReservedNode { 29728 s.FixedPrice = &v 29729 return s 29730 } 29731 29732 // SetNodeCount sets the NodeCount field's value. 29733 func (s *ReservedNode) SetNodeCount(v int64) *ReservedNode { 29734 s.NodeCount = &v 29735 return s 29736 } 29737 29738 // SetNodeType sets the NodeType field's value. 29739 func (s *ReservedNode) SetNodeType(v string) *ReservedNode { 29740 s.NodeType = &v 29741 return s 29742 } 29743 29744 // SetOfferingType sets the OfferingType field's value. 29745 func (s *ReservedNode) SetOfferingType(v string) *ReservedNode { 29746 s.OfferingType = &v 29747 return s 29748 } 29749 29750 // SetRecurringCharges sets the RecurringCharges field's value. 29751 func (s *ReservedNode) SetRecurringCharges(v []*RecurringCharge) *ReservedNode { 29752 s.RecurringCharges = v 29753 return s 29754 } 29755 29756 // SetReservedNodeId sets the ReservedNodeId field's value. 29757 func (s *ReservedNode) SetReservedNodeId(v string) *ReservedNode { 29758 s.ReservedNodeId = &v 29759 return s 29760 } 29761 29762 // SetReservedNodeOfferingId sets the ReservedNodeOfferingId field's value. 29763 func (s *ReservedNode) SetReservedNodeOfferingId(v string) *ReservedNode { 29764 s.ReservedNodeOfferingId = &v 29765 return s 29766 } 29767 29768 // SetReservedNodeOfferingType sets the ReservedNodeOfferingType field's value. 29769 func (s *ReservedNode) SetReservedNodeOfferingType(v string) *ReservedNode { 29770 s.ReservedNodeOfferingType = &v 29771 return s 29772 } 29773 29774 // SetStartTime sets the StartTime field's value. 29775 func (s *ReservedNode) SetStartTime(v time.Time) *ReservedNode { 29776 s.StartTime = &v 29777 return s 29778 } 29779 29780 // SetState sets the State field's value. 29781 func (s *ReservedNode) SetState(v string) *ReservedNode { 29782 s.State = &v 29783 return s 29784 } 29785 29786 // SetUsagePrice sets the UsagePrice field's value. 29787 func (s *ReservedNode) SetUsagePrice(v float64) *ReservedNode { 29788 s.UsagePrice = &v 29789 return s 29790 } 29791 29792 // Describes a reserved node offering. 29793 type ReservedNodeOffering struct { 29794 _ struct{} `type:"structure"` 29795 29796 // The currency code for the compute nodes offering. 29797 CurrencyCode *string `type:"string"` 29798 29799 // The duration, in seconds, for which the offering will reserve the node. 29800 Duration *int64 `type:"integer"` 29801 29802 // The upfront fixed charge you will pay to purchase the specific reserved node 29803 // offering. 29804 FixedPrice *float64 `type:"double"` 29805 29806 // The node type offered by the reserved node offering. 29807 NodeType *string `type:"string"` 29808 29809 // The anticipated utilization of the reserved node, as defined in the reserved 29810 // node offering. 29811 OfferingType *string `type:"string"` 29812 29813 // The charge to your account regardless of whether you are creating any clusters 29814 // using the node offering. Recurring charges are only in effect for heavy-utilization 29815 // reserved nodes. 29816 RecurringCharges []*RecurringCharge `locationNameList:"RecurringCharge" type:"list"` 29817 29818 // The offering identifier. 29819 ReservedNodeOfferingId *string `type:"string"` 29820 29821 ReservedNodeOfferingType *string `type:"string" enum:"ReservedNodeOfferingType"` 29822 29823 // The rate you are charged for each hour the cluster that is using the offering 29824 // is running. 29825 UsagePrice *float64 `type:"double"` 29826 } 29827 29828 // String returns the string representation. 29829 // 29830 // API parameter values that are decorated as "sensitive" in the API will not 29831 // be included in the string output. The member name will be present, but the 29832 // value will be replaced with "sensitive". 29833 func (s ReservedNodeOffering) String() string { 29834 return awsutil.Prettify(s) 29835 } 29836 29837 // GoString returns the string representation. 29838 // 29839 // API parameter values that are decorated as "sensitive" in the API will not 29840 // be included in the string output. The member name will be present, but the 29841 // value will be replaced with "sensitive". 29842 func (s ReservedNodeOffering) GoString() string { 29843 return s.String() 29844 } 29845 29846 // SetCurrencyCode sets the CurrencyCode field's value. 29847 func (s *ReservedNodeOffering) SetCurrencyCode(v string) *ReservedNodeOffering { 29848 s.CurrencyCode = &v 29849 return s 29850 } 29851 29852 // SetDuration sets the Duration field's value. 29853 func (s *ReservedNodeOffering) SetDuration(v int64) *ReservedNodeOffering { 29854 s.Duration = &v 29855 return s 29856 } 29857 29858 // SetFixedPrice sets the FixedPrice field's value. 29859 func (s *ReservedNodeOffering) SetFixedPrice(v float64) *ReservedNodeOffering { 29860 s.FixedPrice = &v 29861 return s 29862 } 29863 29864 // SetNodeType sets the NodeType field's value. 29865 func (s *ReservedNodeOffering) SetNodeType(v string) *ReservedNodeOffering { 29866 s.NodeType = &v 29867 return s 29868 } 29869 29870 // SetOfferingType sets the OfferingType field's value. 29871 func (s *ReservedNodeOffering) SetOfferingType(v string) *ReservedNodeOffering { 29872 s.OfferingType = &v 29873 return s 29874 } 29875 29876 // SetRecurringCharges sets the RecurringCharges field's value. 29877 func (s *ReservedNodeOffering) SetRecurringCharges(v []*RecurringCharge) *ReservedNodeOffering { 29878 s.RecurringCharges = v 29879 return s 29880 } 29881 29882 // SetReservedNodeOfferingId sets the ReservedNodeOfferingId field's value. 29883 func (s *ReservedNodeOffering) SetReservedNodeOfferingId(v string) *ReservedNodeOffering { 29884 s.ReservedNodeOfferingId = &v 29885 return s 29886 } 29887 29888 // SetReservedNodeOfferingType sets the ReservedNodeOfferingType field's value. 29889 func (s *ReservedNodeOffering) SetReservedNodeOfferingType(v string) *ReservedNodeOffering { 29890 s.ReservedNodeOfferingType = &v 29891 return s 29892 } 29893 29894 // SetUsagePrice sets the UsagePrice field's value. 29895 func (s *ReservedNodeOffering) SetUsagePrice(v float64) *ReservedNodeOffering { 29896 s.UsagePrice = &v 29897 return s 29898 } 29899 29900 type ResetClusterParameterGroupInput struct { 29901 _ struct{} `type:"structure"` 29902 29903 // The name of the cluster parameter group to be reset. 29904 // 29905 // ParameterGroupName is a required field 29906 ParameterGroupName *string `type:"string" required:"true"` 29907 29908 // An array of names of parameters to be reset. If ResetAllParameters option 29909 // is not used, then at least one parameter name must be supplied. 29910 // 29911 // Constraints: A maximum of 20 parameters can be reset in a single request. 29912 Parameters []*Parameter `locationNameList:"Parameter" type:"list"` 29913 29914 // If true, all parameters in the specified parameter group will be reset to 29915 // their default values. 29916 // 29917 // Default: true 29918 ResetAllParameters *bool `type:"boolean"` 29919 } 29920 29921 // String returns the string representation. 29922 // 29923 // API parameter values that are decorated as "sensitive" in the API will not 29924 // be included in the string output. The member name will be present, but the 29925 // value will be replaced with "sensitive". 29926 func (s ResetClusterParameterGroupInput) String() string { 29927 return awsutil.Prettify(s) 29928 } 29929 29930 // GoString returns the string representation. 29931 // 29932 // API parameter values that are decorated as "sensitive" in the API will not 29933 // be included in the string output. The member name will be present, but the 29934 // value will be replaced with "sensitive". 29935 func (s ResetClusterParameterGroupInput) GoString() string { 29936 return s.String() 29937 } 29938 29939 // Validate inspects the fields of the type to determine if they are valid. 29940 func (s *ResetClusterParameterGroupInput) Validate() error { 29941 invalidParams := request.ErrInvalidParams{Context: "ResetClusterParameterGroupInput"} 29942 if s.ParameterGroupName == nil { 29943 invalidParams.Add(request.NewErrParamRequired("ParameterGroupName")) 29944 } 29945 29946 if invalidParams.Len() > 0 { 29947 return invalidParams 29948 } 29949 return nil 29950 } 29951 29952 // SetParameterGroupName sets the ParameterGroupName field's value. 29953 func (s *ResetClusterParameterGroupInput) SetParameterGroupName(v string) *ResetClusterParameterGroupInput { 29954 s.ParameterGroupName = &v 29955 return s 29956 } 29957 29958 // SetParameters sets the Parameters field's value. 29959 func (s *ResetClusterParameterGroupInput) SetParameters(v []*Parameter) *ResetClusterParameterGroupInput { 29960 s.Parameters = v 29961 return s 29962 } 29963 29964 // SetResetAllParameters sets the ResetAllParameters field's value. 29965 func (s *ResetClusterParameterGroupInput) SetResetAllParameters(v bool) *ResetClusterParameterGroupInput { 29966 s.ResetAllParameters = &v 29967 return s 29968 } 29969 29970 // Describes a resize cluster operation. For example, a scheduled action to 29971 // run the ResizeCluster API operation. 29972 type ResizeClusterInput struct { 29973 _ struct{} `type:"structure"` 29974 29975 // A boolean value indicating whether the resize operation is using the classic 29976 // resize process. If you don't provide this parameter or set the value to false, 29977 // the resize type is elastic. 29978 Classic *bool `type:"boolean"` 29979 29980 // The unique identifier for the cluster to resize. 29981 // 29982 // ClusterIdentifier is a required field 29983 ClusterIdentifier *string `type:"string" required:"true"` 29984 29985 // The new cluster type for the specified cluster. 29986 ClusterType *string `type:"string"` 29987 29988 // The new node type for the nodes you are adding. If not specified, the cluster's 29989 // current node type is used. 29990 NodeType *string `type:"string"` 29991 29992 // The new number of nodes for the cluster. If not specified, the cluster's 29993 // current number of nodes is used. 29994 NumberOfNodes *int64 `type:"integer"` 29995 } 29996 29997 // String returns the string representation. 29998 // 29999 // API parameter values that are decorated as "sensitive" in the API will not 30000 // be included in the string output. The member name will be present, but the 30001 // value will be replaced with "sensitive". 30002 func (s ResizeClusterInput) String() string { 30003 return awsutil.Prettify(s) 30004 } 30005 30006 // GoString returns the string representation. 30007 // 30008 // API parameter values that are decorated as "sensitive" in the API will not 30009 // be included in the string output. The member name will be present, but the 30010 // value will be replaced with "sensitive". 30011 func (s ResizeClusterInput) GoString() string { 30012 return s.String() 30013 } 30014 30015 // Validate inspects the fields of the type to determine if they are valid. 30016 func (s *ResizeClusterInput) Validate() error { 30017 invalidParams := request.ErrInvalidParams{Context: "ResizeClusterInput"} 30018 if s.ClusterIdentifier == nil { 30019 invalidParams.Add(request.NewErrParamRequired("ClusterIdentifier")) 30020 } 30021 30022 if invalidParams.Len() > 0 { 30023 return invalidParams 30024 } 30025 return nil 30026 } 30027 30028 // SetClassic sets the Classic field's value. 30029 func (s *ResizeClusterInput) SetClassic(v bool) *ResizeClusterInput { 30030 s.Classic = &v 30031 return s 30032 } 30033 30034 // SetClusterIdentifier sets the ClusterIdentifier field's value. 30035 func (s *ResizeClusterInput) SetClusterIdentifier(v string) *ResizeClusterInput { 30036 s.ClusterIdentifier = &v 30037 return s 30038 } 30039 30040 // SetClusterType sets the ClusterType field's value. 30041 func (s *ResizeClusterInput) SetClusterType(v string) *ResizeClusterInput { 30042 s.ClusterType = &v 30043 return s 30044 } 30045 30046 // SetNodeType sets the NodeType field's value. 30047 func (s *ResizeClusterInput) SetNodeType(v string) *ResizeClusterInput { 30048 s.NodeType = &v 30049 return s 30050 } 30051 30052 // SetNumberOfNodes sets the NumberOfNodes field's value. 30053 func (s *ResizeClusterInput) SetNumberOfNodes(v int64) *ResizeClusterInput { 30054 s.NumberOfNodes = &v 30055 return s 30056 } 30057 30058 // Describes a resize cluster operation. For example, a scheduled action to 30059 // run the ResizeCluster API operation. 30060 type ResizeClusterMessage struct { 30061 _ struct{} `type:"structure"` 30062 30063 // A boolean value indicating whether the resize operation is using the classic 30064 // resize process. If you don't provide this parameter or set the value to false, 30065 // the resize type is elastic. 30066 Classic *bool `type:"boolean"` 30067 30068 // The unique identifier for the cluster to resize. 30069 // 30070 // ClusterIdentifier is a required field 30071 ClusterIdentifier *string `type:"string" required:"true"` 30072 30073 // The new cluster type for the specified cluster. 30074 ClusterType *string `type:"string"` 30075 30076 // The new node type for the nodes you are adding. If not specified, the cluster's 30077 // current node type is used. 30078 NodeType *string `type:"string"` 30079 30080 // The new number of nodes for the cluster. If not specified, the cluster's 30081 // current number of nodes is used. 30082 NumberOfNodes *int64 `type:"integer"` 30083 } 30084 30085 // String returns the string representation. 30086 // 30087 // API parameter values that are decorated as "sensitive" in the API will not 30088 // be included in the string output. The member name will be present, but the 30089 // value will be replaced with "sensitive". 30090 func (s ResizeClusterMessage) String() string { 30091 return awsutil.Prettify(s) 30092 } 30093 30094 // GoString returns the string representation. 30095 // 30096 // API parameter values that are decorated as "sensitive" in the API will not 30097 // be included in the string output. The member name will be present, but the 30098 // value will be replaced with "sensitive". 30099 func (s ResizeClusterMessage) GoString() string { 30100 return s.String() 30101 } 30102 30103 // Validate inspects the fields of the type to determine if they are valid. 30104 func (s *ResizeClusterMessage) Validate() error { 30105 invalidParams := request.ErrInvalidParams{Context: "ResizeClusterMessage"} 30106 if s.ClusterIdentifier == nil { 30107 invalidParams.Add(request.NewErrParamRequired("ClusterIdentifier")) 30108 } 30109 30110 if invalidParams.Len() > 0 { 30111 return invalidParams 30112 } 30113 return nil 30114 } 30115 30116 // SetClassic sets the Classic field's value. 30117 func (s *ResizeClusterMessage) SetClassic(v bool) *ResizeClusterMessage { 30118 s.Classic = &v 30119 return s 30120 } 30121 30122 // SetClusterIdentifier sets the ClusterIdentifier field's value. 30123 func (s *ResizeClusterMessage) SetClusterIdentifier(v string) *ResizeClusterMessage { 30124 s.ClusterIdentifier = &v 30125 return s 30126 } 30127 30128 // SetClusterType sets the ClusterType field's value. 30129 func (s *ResizeClusterMessage) SetClusterType(v string) *ResizeClusterMessage { 30130 s.ClusterType = &v 30131 return s 30132 } 30133 30134 // SetNodeType sets the NodeType field's value. 30135 func (s *ResizeClusterMessage) SetNodeType(v string) *ResizeClusterMessage { 30136 s.NodeType = &v 30137 return s 30138 } 30139 30140 // SetNumberOfNodes sets the NumberOfNodes field's value. 30141 func (s *ResizeClusterMessage) SetNumberOfNodes(v int64) *ResizeClusterMessage { 30142 s.NumberOfNodes = &v 30143 return s 30144 } 30145 30146 type ResizeClusterOutput struct { 30147 _ struct{} `type:"structure"` 30148 30149 // Describes a cluster. 30150 Cluster *Cluster `type:"structure"` 30151 } 30152 30153 // String returns the string representation. 30154 // 30155 // API parameter values that are decorated as "sensitive" in the API will not 30156 // be included in the string output. The member name will be present, but the 30157 // value will be replaced with "sensitive". 30158 func (s ResizeClusterOutput) String() string { 30159 return awsutil.Prettify(s) 30160 } 30161 30162 // GoString returns the string representation. 30163 // 30164 // API parameter values that are decorated as "sensitive" in the API will not 30165 // be included in the string output. The member name will be present, but the 30166 // value will be replaced with "sensitive". 30167 func (s ResizeClusterOutput) GoString() string { 30168 return s.String() 30169 } 30170 30171 // SetCluster sets the Cluster field's value. 30172 func (s *ResizeClusterOutput) SetCluster(v *Cluster) *ResizeClusterOutput { 30173 s.Cluster = v 30174 return s 30175 } 30176 30177 // Describes a resize operation. 30178 type ResizeInfo struct { 30179 _ struct{} `type:"structure"` 30180 30181 // A boolean value indicating if the resize operation can be cancelled. 30182 AllowCancelResize *bool `type:"boolean"` 30183 30184 // Returns the value ClassicResize. 30185 ResizeType *string `type:"string"` 30186 } 30187 30188 // String returns the string representation. 30189 // 30190 // API parameter values that are decorated as "sensitive" in the API will not 30191 // be included in the string output. The member name will be present, but the 30192 // value will be replaced with "sensitive". 30193 func (s ResizeInfo) String() string { 30194 return awsutil.Prettify(s) 30195 } 30196 30197 // GoString returns the string representation. 30198 // 30199 // API parameter values that are decorated as "sensitive" in the API will not 30200 // be included in the string output. The member name will be present, but the 30201 // value will be replaced with "sensitive". 30202 func (s ResizeInfo) GoString() string { 30203 return s.String() 30204 } 30205 30206 // SetAllowCancelResize sets the AllowCancelResize field's value. 30207 func (s *ResizeInfo) SetAllowCancelResize(v bool) *ResizeInfo { 30208 s.AllowCancelResize = &v 30209 return s 30210 } 30211 30212 // SetResizeType sets the ResizeType field's value. 30213 func (s *ResizeInfo) SetResizeType(v string) *ResizeInfo { 30214 s.ResizeType = &v 30215 return s 30216 } 30217 30218 type RestoreFromClusterSnapshotInput struct { 30219 _ struct{} `type:"structure"` 30220 30221 // Reserved. 30222 AdditionalInfo *string `type:"string"` 30223 30224 // If true, major version upgrades can be applied during the maintenance window 30225 // to the Amazon Redshift engine that is running on the cluster. 30226 // 30227 // Default: true 30228 AllowVersionUpgrade *bool `type:"boolean"` 30229 30230 // The value represents how the cluster is configured to use AQUA (Advanced 30231 // Query Accelerator) after the cluster is restored. Possible values include 30232 // the following. 30233 // 30234 // * enabled - Use AQUA if it is available for the current Amazon Web Services 30235 // Region and Amazon Redshift node type. 30236 // 30237 // * disabled - Don't use AQUA. 30238 // 30239 // * auto - Amazon Redshift determines whether to use AQUA. 30240 AquaConfigurationStatus *string `type:"string" enum:"AquaConfigurationStatus"` 30241 30242 // The number of days that automated snapshots are retained. If the value is 30243 // 0, automated snapshots are disabled. Even if automated snapshots are disabled, 30244 // you can still create manual snapshots when you want with CreateClusterSnapshot. 30245 // 30246 // You can't disable automated snapshots for RA3 node types. Set the automated 30247 // retention period from 1-35 days. 30248 // 30249 // Default: The value selected for the cluster from which the snapshot was taken. 30250 // 30251 // Constraints: Must be a value from 0 to 35. 30252 AutomatedSnapshotRetentionPeriod *int64 `type:"integer"` 30253 30254 // The Amazon EC2 Availability Zone in which to restore the cluster. 30255 // 30256 // Default: A random, system-chosen Availability Zone. 30257 // 30258 // Example: us-east-2a 30259 AvailabilityZone *string `type:"string"` 30260 30261 // The option to enable relocation for an Amazon Redshift cluster between Availability 30262 // Zones after the cluster is restored. 30263 AvailabilityZoneRelocation *bool `type:"boolean"` 30264 30265 // The identifier of the cluster that will be created from restoring the snapshot. 30266 // 30267 // Constraints: 30268 // 30269 // * Must contain from 1 to 63 alphanumeric characters or hyphens. 30270 // 30271 // * Alphabetic characters must be lowercase. 30272 // 30273 // * First character must be a letter. 30274 // 30275 // * Cannot end with a hyphen or contain two consecutive hyphens. 30276 // 30277 // * Must be unique for all clusters within an Amazon Web Services account. 30278 // 30279 // ClusterIdentifier is a required field 30280 ClusterIdentifier *string `type:"string" required:"true"` 30281 30282 // The name of the parameter group to be associated with this cluster. 30283 // 30284 // Default: The default Amazon Redshift cluster parameter group. For information 30285 // about the default parameter group, go to Working with Amazon Redshift Parameter 30286 // Groups (https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-parameter-groups.html). 30287 // 30288 // Constraints: 30289 // 30290 // * Must be 1 to 255 alphanumeric characters or hyphens. 30291 // 30292 // * First character must be a letter. 30293 // 30294 // * Cannot end with a hyphen or contain two consecutive hyphens. 30295 ClusterParameterGroupName *string `type:"string"` 30296 30297 // A list of security groups to be associated with this cluster. 30298 // 30299 // Default: The default cluster security group for Amazon Redshift. 30300 // 30301 // Cluster security groups only apply to clusters outside of VPCs. 30302 ClusterSecurityGroups []*string `locationNameList:"ClusterSecurityGroupName" type:"list"` 30303 30304 // The name of the subnet group where you want to cluster restored. 30305 // 30306 // A snapshot of cluster in VPC can be restored only in VPC. Therefore, you 30307 // must provide subnet group name where you want the cluster restored. 30308 ClusterSubnetGroupName *string `type:"string"` 30309 30310 // The elastic IP (EIP) address for the cluster. 30311 ElasticIp *string `type:"string"` 30312 30313 // An option that specifies whether to create the cluster with enhanced VPC 30314 // routing enabled. To create a cluster that uses enhanced VPC routing, the 30315 // cluster must be in a VPC. For more information, see Enhanced VPC Routing 30316 // (https://docs.aws.amazon.com/redshift/latest/mgmt/enhanced-vpc-routing.html) 30317 // in the Amazon Redshift Cluster Management Guide. 30318 // 30319 // If this option is true, enhanced VPC routing is enabled. 30320 // 30321 // Default: false 30322 EnhancedVpcRouting *bool `type:"boolean"` 30323 30324 // Specifies the name of the HSM client certificate the Amazon Redshift cluster 30325 // uses to retrieve the data encryption keys stored in an HSM. 30326 HsmClientCertificateIdentifier *string `type:"string"` 30327 30328 // Specifies the name of the HSM configuration that contains the information 30329 // the Amazon Redshift cluster can use to retrieve and store keys in an HSM. 30330 HsmConfigurationIdentifier *string `type:"string"` 30331 30332 // A list of Identity and Access Management (IAM) roles that can be used by 30333 // the cluster to access other Amazon Web Services services. You must supply 30334 // the IAM roles in their Amazon Resource Name (ARN) format. You can supply 30335 // up to 10 IAM roles in a single request. 30336 // 30337 // A cluster can have up to 10 IAM roles associated at any time. 30338 IamRoles []*string `locationNameList:"IamRoleArn" type:"list"` 30339 30340 // The Key Management Service (KMS) key ID of the encryption key that you want 30341 // to use to encrypt data in the cluster that you restore from a shared snapshot. 30342 KmsKeyId *string `type:"string"` 30343 30344 // The name of the maintenance track for the restored cluster. When you take 30345 // a snapshot, the snapshot inherits the MaintenanceTrack value from the cluster. 30346 // The snapshot might be on a different track than the cluster that was the 30347 // source for the snapshot. For example, suppose that you take a snapshot of 30348 // a cluster that is on the current track and then change the cluster to be 30349 // on the trailing track. In this case, the snapshot and the source cluster 30350 // are on different tracks. 30351 MaintenanceTrackName *string `type:"string"` 30352 30353 // The default number of days to retain a manual snapshot. If the value is -1, 30354 // the snapshot is retained indefinitely. This setting doesn't change the retention 30355 // period of existing snapshots. 30356 // 30357 // The value must be either -1 or an integer between 1 and 3,653. 30358 ManualSnapshotRetentionPeriod *int64 `type:"integer"` 30359 30360 // The node type that the restored cluster will be provisioned with. 30361 // 30362 // Default: The node type of the cluster from which the snapshot was taken. 30363 // You can modify this if you are using any DS node type. In that case, you 30364 // can choose to restore into another DS node type of the same size. For example, 30365 // you can restore ds1.8xlarge into ds2.8xlarge, or ds1.xlarge into ds2.xlarge. 30366 // If you have a DC instance type, you must restore into that same instance 30367 // type and size. In other words, you can only restore a dc1.large instance 30368 // type into another dc1.large instance type or dc2.large instance type. You 30369 // can't restore dc1.8xlarge to dc2.8xlarge. First restore to a dc1.8xlarge 30370 // cluster, then resize to a dc2.8large cluster. For more information about 30371 // node types, see About Clusters and Nodes (https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-clusters.html#rs-about-clusters-and-nodes) 30372 // in the Amazon Redshift Cluster Management Guide. 30373 NodeType *string `type:"string"` 30374 30375 // The number of nodes specified when provisioning the restored cluster. 30376 NumberOfNodes *int64 `type:"integer"` 30377 30378 // The Amazon Web Services account used to create or copy the snapshot. Required 30379 // if you are restoring a snapshot you do not own, optional if you own the snapshot. 30380 OwnerAccount *string `type:"string"` 30381 30382 // The port number on which the cluster accepts connections. 30383 // 30384 // Default: The same port as the original cluster. 30385 // 30386 // Constraints: Must be between 1115 and 65535. 30387 Port *int64 `type:"integer"` 30388 30389 // The weekly time range (in UTC) during which automated cluster maintenance 30390 // can occur. 30391 // 30392 // Format: ddd:hh24:mi-ddd:hh24:mi 30393 // 30394 // Default: The value selected for the cluster from which the snapshot was taken. 30395 // For more information about the time blocks for each region, see Maintenance 30396 // Windows (https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-clusters.html#rs-maintenance-windows) 30397 // in Amazon Redshift Cluster Management Guide. 30398 // 30399 // Valid Days: Mon | Tue | Wed | Thu | Fri | Sat | Sun 30400 // 30401 // Constraints: Minimum 30-minute window. 30402 PreferredMaintenanceWindow *string `type:"string"` 30403 30404 // If true, the cluster can be accessed from a public network. 30405 PubliclyAccessible *bool `type:"boolean"` 30406 30407 // The name of the cluster the source snapshot was created from. This parameter 30408 // is required if your IAM user has a policy containing a snapshot resource 30409 // element that specifies anything other than * for the cluster name. 30410 SnapshotClusterIdentifier *string `type:"string"` 30411 30412 // The name of the snapshot from which to create the new cluster. This parameter 30413 // isn't case sensitive. 30414 // 30415 // Example: my-snapshot-id 30416 // 30417 // SnapshotIdentifier is a required field 30418 SnapshotIdentifier *string `type:"string" required:"true"` 30419 30420 // A unique identifier for the snapshot schedule. 30421 SnapshotScheduleIdentifier *string `type:"string"` 30422 30423 // A list of Virtual Private Cloud (VPC) security groups to be associated with 30424 // the cluster. 30425 // 30426 // Default: The default VPC security group is associated with the cluster. 30427 // 30428 // VPC security groups only apply to clusters in VPCs. 30429 VpcSecurityGroupIds []*string `locationNameList:"VpcSecurityGroupId" type:"list"` 30430 } 30431 30432 // String returns the string representation. 30433 // 30434 // API parameter values that are decorated as "sensitive" in the API will not 30435 // be included in the string output. The member name will be present, but the 30436 // value will be replaced with "sensitive". 30437 func (s RestoreFromClusterSnapshotInput) String() string { 30438 return awsutil.Prettify(s) 30439 } 30440 30441 // GoString returns the string representation. 30442 // 30443 // API parameter values that are decorated as "sensitive" in the API will not 30444 // be included in the string output. The member name will be present, but the 30445 // value will be replaced with "sensitive". 30446 func (s RestoreFromClusterSnapshotInput) GoString() string { 30447 return s.String() 30448 } 30449 30450 // Validate inspects the fields of the type to determine if they are valid. 30451 func (s *RestoreFromClusterSnapshotInput) Validate() error { 30452 invalidParams := request.ErrInvalidParams{Context: "RestoreFromClusterSnapshotInput"} 30453 if s.ClusterIdentifier == nil { 30454 invalidParams.Add(request.NewErrParamRequired("ClusterIdentifier")) 30455 } 30456 if s.SnapshotIdentifier == nil { 30457 invalidParams.Add(request.NewErrParamRequired("SnapshotIdentifier")) 30458 } 30459 30460 if invalidParams.Len() > 0 { 30461 return invalidParams 30462 } 30463 return nil 30464 } 30465 30466 // SetAdditionalInfo sets the AdditionalInfo field's value. 30467 func (s *RestoreFromClusterSnapshotInput) SetAdditionalInfo(v string) *RestoreFromClusterSnapshotInput { 30468 s.AdditionalInfo = &v 30469 return s 30470 } 30471 30472 // SetAllowVersionUpgrade sets the AllowVersionUpgrade field's value. 30473 func (s *RestoreFromClusterSnapshotInput) SetAllowVersionUpgrade(v bool) *RestoreFromClusterSnapshotInput { 30474 s.AllowVersionUpgrade = &v 30475 return s 30476 } 30477 30478 // SetAquaConfigurationStatus sets the AquaConfigurationStatus field's value. 30479 func (s *RestoreFromClusterSnapshotInput) SetAquaConfigurationStatus(v string) *RestoreFromClusterSnapshotInput { 30480 s.AquaConfigurationStatus = &v 30481 return s 30482 } 30483 30484 // SetAutomatedSnapshotRetentionPeriod sets the AutomatedSnapshotRetentionPeriod field's value. 30485 func (s *RestoreFromClusterSnapshotInput) SetAutomatedSnapshotRetentionPeriod(v int64) *RestoreFromClusterSnapshotInput { 30486 s.AutomatedSnapshotRetentionPeriod = &v 30487 return s 30488 } 30489 30490 // SetAvailabilityZone sets the AvailabilityZone field's value. 30491 func (s *RestoreFromClusterSnapshotInput) SetAvailabilityZone(v string) *RestoreFromClusterSnapshotInput { 30492 s.AvailabilityZone = &v 30493 return s 30494 } 30495 30496 // SetAvailabilityZoneRelocation sets the AvailabilityZoneRelocation field's value. 30497 func (s *RestoreFromClusterSnapshotInput) SetAvailabilityZoneRelocation(v bool) *RestoreFromClusterSnapshotInput { 30498 s.AvailabilityZoneRelocation = &v 30499 return s 30500 } 30501 30502 // SetClusterIdentifier sets the ClusterIdentifier field's value. 30503 func (s *RestoreFromClusterSnapshotInput) SetClusterIdentifier(v string) *RestoreFromClusterSnapshotInput { 30504 s.ClusterIdentifier = &v 30505 return s 30506 } 30507 30508 // SetClusterParameterGroupName sets the ClusterParameterGroupName field's value. 30509 func (s *RestoreFromClusterSnapshotInput) SetClusterParameterGroupName(v string) *RestoreFromClusterSnapshotInput { 30510 s.ClusterParameterGroupName = &v 30511 return s 30512 } 30513 30514 // SetClusterSecurityGroups sets the ClusterSecurityGroups field's value. 30515 func (s *RestoreFromClusterSnapshotInput) SetClusterSecurityGroups(v []*string) *RestoreFromClusterSnapshotInput { 30516 s.ClusterSecurityGroups = v 30517 return s 30518 } 30519 30520 // SetClusterSubnetGroupName sets the ClusterSubnetGroupName field's value. 30521 func (s *RestoreFromClusterSnapshotInput) SetClusterSubnetGroupName(v string) *RestoreFromClusterSnapshotInput { 30522 s.ClusterSubnetGroupName = &v 30523 return s 30524 } 30525 30526 // SetElasticIp sets the ElasticIp field's value. 30527 func (s *RestoreFromClusterSnapshotInput) SetElasticIp(v string) *RestoreFromClusterSnapshotInput { 30528 s.ElasticIp = &v 30529 return s 30530 } 30531 30532 // SetEnhancedVpcRouting sets the EnhancedVpcRouting field's value. 30533 func (s *RestoreFromClusterSnapshotInput) SetEnhancedVpcRouting(v bool) *RestoreFromClusterSnapshotInput { 30534 s.EnhancedVpcRouting = &v 30535 return s 30536 } 30537 30538 // SetHsmClientCertificateIdentifier sets the HsmClientCertificateIdentifier field's value. 30539 func (s *RestoreFromClusterSnapshotInput) SetHsmClientCertificateIdentifier(v string) *RestoreFromClusterSnapshotInput { 30540 s.HsmClientCertificateIdentifier = &v 30541 return s 30542 } 30543 30544 // SetHsmConfigurationIdentifier sets the HsmConfigurationIdentifier field's value. 30545 func (s *RestoreFromClusterSnapshotInput) SetHsmConfigurationIdentifier(v string) *RestoreFromClusterSnapshotInput { 30546 s.HsmConfigurationIdentifier = &v 30547 return s 30548 } 30549 30550 // SetIamRoles sets the IamRoles field's value. 30551 func (s *RestoreFromClusterSnapshotInput) SetIamRoles(v []*string) *RestoreFromClusterSnapshotInput { 30552 s.IamRoles = v 30553 return s 30554 } 30555 30556 // SetKmsKeyId sets the KmsKeyId field's value. 30557 func (s *RestoreFromClusterSnapshotInput) SetKmsKeyId(v string) *RestoreFromClusterSnapshotInput { 30558 s.KmsKeyId = &v 30559 return s 30560 } 30561 30562 // SetMaintenanceTrackName sets the MaintenanceTrackName field's value. 30563 func (s *RestoreFromClusterSnapshotInput) SetMaintenanceTrackName(v string) *RestoreFromClusterSnapshotInput { 30564 s.MaintenanceTrackName = &v 30565 return s 30566 } 30567 30568 // SetManualSnapshotRetentionPeriod sets the ManualSnapshotRetentionPeriod field's value. 30569 func (s *RestoreFromClusterSnapshotInput) SetManualSnapshotRetentionPeriod(v int64) *RestoreFromClusterSnapshotInput { 30570 s.ManualSnapshotRetentionPeriod = &v 30571 return s 30572 } 30573 30574 // SetNodeType sets the NodeType field's value. 30575 func (s *RestoreFromClusterSnapshotInput) SetNodeType(v string) *RestoreFromClusterSnapshotInput { 30576 s.NodeType = &v 30577 return s 30578 } 30579 30580 // SetNumberOfNodes sets the NumberOfNodes field's value. 30581 func (s *RestoreFromClusterSnapshotInput) SetNumberOfNodes(v int64) *RestoreFromClusterSnapshotInput { 30582 s.NumberOfNodes = &v 30583 return s 30584 } 30585 30586 // SetOwnerAccount sets the OwnerAccount field's value. 30587 func (s *RestoreFromClusterSnapshotInput) SetOwnerAccount(v string) *RestoreFromClusterSnapshotInput { 30588 s.OwnerAccount = &v 30589 return s 30590 } 30591 30592 // SetPort sets the Port field's value. 30593 func (s *RestoreFromClusterSnapshotInput) SetPort(v int64) *RestoreFromClusterSnapshotInput { 30594 s.Port = &v 30595 return s 30596 } 30597 30598 // SetPreferredMaintenanceWindow sets the PreferredMaintenanceWindow field's value. 30599 func (s *RestoreFromClusterSnapshotInput) SetPreferredMaintenanceWindow(v string) *RestoreFromClusterSnapshotInput { 30600 s.PreferredMaintenanceWindow = &v 30601 return s 30602 } 30603 30604 // SetPubliclyAccessible sets the PubliclyAccessible field's value. 30605 func (s *RestoreFromClusterSnapshotInput) SetPubliclyAccessible(v bool) *RestoreFromClusterSnapshotInput { 30606 s.PubliclyAccessible = &v 30607 return s 30608 } 30609 30610 // SetSnapshotClusterIdentifier sets the SnapshotClusterIdentifier field's value. 30611 func (s *RestoreFromClusterSnapshotInput) SetSnapshotClusterIdentifier(v string) *RestoreFromClusterSnapshotInput { 30612 s.SnapshotClusterIdentifier = &v 30613 return s 30614 } 30615 30616 // SetSnapshotIdentifier sets the SnapshotIdentifier field's value. 30617 func (s *RestoreFromClusterSnapshotInput) SetSnapshotIdentifier(v string) *RestoreFromClusterSnapshotInput { 30618 s.SnapshotIdentifier = &v 30619 return s 30620 } 30621 30622 // SetSnapshotScheduleIdentifier sets the SnapshotScheduleIdentifier field's value. 30623 func (s *RestoreFromClusterSnapshotInput) SetSnapshotScheduleIdentifier(v string) *RestoreFromClusterSnapshotInput { 30624 s.SnapshotScheduleIdentifier = &v 30625 return s 30626 } 30627 30628 // SetVpcSecurityGroupIds sets the VpcSecurityGroupIds field's value. 30629 func (s *RestoreFromClusterSnapshotInput) SetVpcSecurityGroupIds(v []*string) *RestoreFromClusterSnapshotInput { 30630 s.VpcSecurityGroupIds = v 30631 return s 30632 } 30633 30634 type RestoreFromClusterSnapshotOutput struct { 30635 _ struct{} `type:"structure"` 30636 30637 // Describes a cluster. 30638 Cluster *Cluster `type:"structure"` 30639 } 30640 30641 // String returns the string representation. 30642 // 30643 // API parameter values that are decorated as "sensitive" in the API will not 30644 // be included in the string output. The member name will be present, but the 30645 // value will be replaced with "sensitive". 30646 func (s RestoreFromClusterSnapshotOutput) String() string { 30647 return awsutil.Prettify(s) 30648 } 30649 30650 // GoString returns the string representation. 30651 // 30652 // API parameter values that are decorated as "sensitive" in the API will not 30653 // be included in the string output. The member name will be present, but the 30654 // value will be replaced with "sensitive". 30655 func (s RestoreFromClusterSnapshotOutput) GoString() string { 30656 return s.String() 30657 } 30658 30659 // SetCluster sets the Cluster field's value. 30660 func (s *RestoreFromClusterSnapshotOutput) SetCluster(v *Cluster) *RestoreFromClusterSnapshotOutput { 30661 s.Cluster = v 30662 return s 30663 } 30664 30665 // Describes the status of a cluster restore action. Returns null if the cluster 30666 // was not created by restoring a snapshot. 30667 type RestoreStatus struct { 30668 _ struct{} `type:"structure"` 30669 30670 // The number of megabytes per second being transferred from the backup storage. 30671 // Returns the average rate for a completed backup. This field is only updated 30672 // when you restore to DC2 and DS2 node types. 30673 CurrentRestoreRateInMegaBytesPerSecond *float64 `type:"double"` 30674 30675 // The amount of time an in-progress restore has been running, or the amount 30676 // of time it took a completed restore to finish. This field is only updated 30677 // when you restore to DC2 and DS2 node types. 30678 ElapsedTimeInSeconds *int64 `type:"long"` 30679 30680 // The estimate of the time remaining before the restore will complete. Returns 30681 // 0 for a completed restore. This field is only updated when you restore to 30682 // DC2 and DS2 node types. 30683 EstimatedTimeToCompletionInSeconds *int64 `type:"long"` 30684 30685 // The number of megabytes that have been transferred from snapshot storage. 30686 // This field is only updated when you restore to DC2 and DS2 node types. 30687 ProgressInMegaBytes *int64 `type:"long"` 30688 30689 // The size of the set of snapshot data used to restore the cluster. This field 30690 // is only updated when you restore to DC2 and DS2 node types. 30691 SnapshotSizeInMegaBytes *int64 `type:"long"` 30692 30693 // The status of the restore action. Returns starting, restoring, completed, 30694 // or failed. 30695 Status *string `type:"string"` 30696 } 30697 30698 // String returns the string representation. 30699 // 30700 // API parameter values that are decorated as "sensitive" in the API will not 30701 // be included in the string output. The member name will be present, but the 30702 // value will be replaced with "sensitive". 30703 func (s RestoreStatus) String() string { 30704 return awsutil.Prettify(s) 30705 } 30706 30707 // GoString returns the string representation. 30708 // 30709 // API parameter values that are decorated as "sensitive" in the API will not 30710 // be included in the string output. The member name will be present, but the 30711 // value will be replaced with "sensitive". 30712 func (s RestoreStatus) GoString() string { 30713 return s.String() 30714 } 30715 30716 // SetCurrentRestoreRateInMegaBytesPerSecond sets the CurrentRestoreRateInMegaBytesPerSecond field's value. 30717 func (s *RestoreStatus) SetCurrentRestoreRateInMegaBytesPerSecond(v float64) *RestoreStatus { 30718 s.CurrentRestoreRateInMegaBytesPerSecond = &v 30719 return s 30720 } 30721 30722 // SetElapsedTimeInSeconds sets the ElapsedTimeInSeconds field's value. 30723 func (s *RestoreStatus) SetElapsedTimeInSeconds(v int64) *RestoreStatus { 30724 s.ElapsedTimeInSeconds = &v 30725 return s 30726 } 30727 30728 // SetEstimatedTimeToCompletionInSeconds sets the EstimatedTimeToCompletionInSeconds field's value. 30729 func (s *RestoreStatus) SetEstimatedTimeToCompletionInSeconds(v int64) *RestoreStatus { 30730 s.EstimatedTimeToCompletionInSeconds = &v 30731 return s 30732 } 30733 30734 // SetProgressInMegaBytes sets the ProgressInMegaBytes field's value. 30735 func (s *RestoreStatus) SetProgressInMegaBytes(v int64) *RestoreStatus { 30736 s.ProgressInMegaBytes = &v 30737 return s 30738 } 30739 30740 // SetSnapshotSizeInMegaBytes sets the SnapshotSizeInMegaBytes field's value. 30741 func (s *RestoreStatus) SetSnapshotSizeInMegaBytes(v int64) *RestoreStatus { 30742 s.SnapshotSizeInMegaBytes = &v 30743 return s 30744 } 30745 30746 // SetStatus sets the Status field's value. 30747 func (s *RestoreStatus) SetStatus(v string) *RestoreStatus { 30748 s.Status = &v 30749 return s 30750 } 30751 30752 type RestoreTableFromClusterSnapshotInput struct { 30753 _ struct{} `type:"structure"` 30754 30755 // The identifier of the Amazon Redshift cluster to restore the table to. 30756 // 30757 // ClusterIdentifier is a required field 30758 ClusterIdentifier *string `type:"string" required:"true"` 30759 30760 // Indicates whether name identifiers for database, schema, and table are case 30761 // sensitive. If true, the names are case sensitive. If false (default), the 30762 // names are not case sensitive. 30763 EnableCaseSensitiveIdentifier *bool `type:"boolean"` 30764 30765 // The name of the table to create as a result of the current request. 30766 // 30767 // NewTableName is a required field 30768 NewTableName *string `type:"string" required:"true"` 30769 30770 // The identifier of the snapshot to restore the table from. This snapshot must 30771 // have been created from the Amazon Redshift cluster specified by the ClusterIdentifier 30772 // parameter. 30773 // 30774 // SnapshotIdentifier is a required field 30775 SnapshotIdentifier *string `type:"string" required:"true"` 30776 30777 // The name of the source database that contains the table to restore from. 30778 // 30779 // SourceDatabaseName is a required field 30780 SourceDatabaseName *string `type:"string" required:"true"` 30781 30782 // The name of the source schema that contains the table to restore from. If 30783 // you do not specify a SourceSchemaName value, the default is public. 30784 SourceSchemaName *string `type:"string"` 30785 30786 // The name of the source table to restore from. 30787 // 30788 // SourceTableName is a required field 30789 SourceTableName *string `type:"string" required:"true"` 30790 30791 // The name of the database to restore the table to. 30792 TargetDatabaseName *string `type:"string"` 30793 30794 // The name of the schema to restore the table to. 30795 TargetSchemaName *string `type:"string"` 30796 } 30797 30798 // String returns the string representation. 30799 // 30800 // API parameter values that are decorated as "sensitive" in the API will not 30801 // be included in the string output. The member name will be present, but the 30802 // value will be replaced with "sensitive". 30803 func (s RestoreTableFromClusterSnapshotInput) String() string { 30804 return awsutil.Prettify(s) 30805 } 30806 30807 // GoString returns the string representation. 30808 // 30809 // API parameter values that are decorated as "sensitive" in the API will not 30810 // be included in the string output. The member name will be present, but the 30811 // value will be replaced with "sensitive". 30812 func (s RestoreTableFromClusterSnapshotInput) GoString() string { 30813 return s.String() 30814 } 30815 30816 // Validate inspects the fields of the type to determine if they are valid. 30817 func (s *RestoreTableFromClusterSnapshotInput) Validate() error { 30818 invalidParams := request.ErrInvalidParams{Context: "RestoreTableFromClusterSnapshotInput"} 30819 if s.ClusterIdentifier == nil { 30820 invalidParams.Add(request.NewErrParamRequired("ClusterIdentifier")) 30821 } 30822 if s.NewTableName == nil { 30823 invalidParams.Add(request.NewErrParamRequired("NewTableName")) 30824 } 30825 if s.SnapshotIdentifier == nil { 30826 invalidParams.Add(request.NewErrParamRequired("SnapshotIdentifier")) 30827 } 30828 if s.SourceDatabaseName == nil { 30829 invalidParams.Add(request.NewErrParamRequired("SourceDatabaseName")) 30830 } 30831 if s.SourceTableName == nil { 30832 invalidParams.Add(request.NewErrParamRequired("SourceTableName")) 30833 } 30834 30835 if invalidParams.Len() > 0 { 30836 return invalidParams 30837 } 30838 return nil 30839 } 30840 30841 // SetClusterIdentifier sets the ClusterIdentifier field's value. 30842 func (s *RestoreTableFromClusterSnapshotInput) SetClusterIdentifier(v string) *RestoreTableFromClusterSnapshotInput { 30843 s.ClusterIdentifier = &v 30844 return s 30845 } 30846 30847 // SetEnableCaseSensitiveIdentifier sets the EnableCaseSensitiveIdentifier field's value. 30848 func (s *RestoreTableFromClusterSnapshotInput) SetEnableCaseSensitiveIdentifier(v bool) *RestoreTableFromClusterSnapshotInput { 30849 s.EnableCaseSensitiveIdentifier = &v 30850 return s 30851 } 30852 30853 // SetNewTableName sets the NewTableName field's value. 30854 func (s *RestoreTableFromClusterSnapshotInput) SetNewTableName(v string) *RestoreTableFromClusterSnapshotInput { 30855 s.NewTableName = &v 30856 return s 30857 } 30858 30859 // SetSnapshotIdentifier sets the SnapshotIdentifier field's value. 30860 func (s *RestoreTableFromClusterSnapshotInput) SetSnapshotIdentifier(v string) *RestoreTableFromClusterSnapshotInput { 30861 s.SnapshotIdentifier = &v 30862 return s 30863 } 30864 30865 // SetSourceDatabaseName sets the SourceDatabaseName field's value. 30866 func (s *RestoreTableFromClusterSnapshotInput) SetSourceDatabaseName(v string) *RestoreTableFromClusterSnapshotInput { 30867 s.SourceDatabaseName = &v 30868 return s 30869 } 30870 30871 // SetSourceSchemaName sets the SourceSchemaName field's value. 30872 func (s *RestoreTableFromClusterSnapshotInput) SetSourceSchemaName(v string) *RestoreTableFromClusterSnapshotInput { 30873 s.SourceSchemaName = &v 30874 return s 30875 } 30876 30877 // SetSourceTableName sets the SourceTableName field's value. 30878 func (s *RestoreTableFromClusterSnapshotInput) SetSourceTableName(v string) *RestoreTableFromClusterSnapshotInput { 30879 s.SourceTableName = &v 30880 return s 30881 } 30882 30883 // SetTargetDatabaseName sets the TargetDatabaseName field's value. 30884 func (s *RestoreTableFromClusterSnapshotInput) SetTargetDatabaseName(v string) *RestoreTableFromClusterSnapshotInput { 30885 s.TargetDatabaseName = &v 30886 return s 30887 } 30888 30889 // SetTargetSchemaName sets the TargetSchemaName field's value. 30890 func (s *RestoreTableFromClusterSnapshotInput) SetTargetSchemaName(v string) *RestoreTableFromClusterSnapshotInput { 30891 s.TargetSchemaName = &v 30892 return s 30893 } 30894 30895 type RestoreTableFromClusterSnapshotOutput struct { 30896 _ struct{} `type:"structure"` 30897 30898 // Describes the status of a RestoreTableFromClusterSnapshot operation. 30899 TableRestoreStatus *TableRestoreStatus `type:"structure"` 30900 } 30901 30902 // String returns the string representation. 30903 // 30904 // API parameter values that are decorated as "sensitive" in the API will not 30905 // be included in the string output. The member name will be present, but the 30906 // value will be replaced with "sensitive". 30907 func (s RestoreTableFromClusterSnapshotOutput) String() string { 30908 return awsutil.Prettify(s) 30909 } 30910 30911 // GoString returns the string representation. 30912 // 30913 // API parameter values that are decorated as "sensitive" in the API will not 30914 // be included in the string output. The member name will be present, but the 30915 // value will be replaced with "sensitive". 30916 func (s RestoreTableFromClusterSnapshotOutput) GoString() string { 30917 return s.String() 30918 } 30919 30920 // SetTableRestoreStatus sets the TableRestoreStatus field's value. 30921 func (s *RestoreTableFromClusterSnapshotOutput) SetTableRestoreStatus(v *TableRestoreStatus) *RestoreTableFromClusterSnapshotOutput { 30922 s.TableRestoreStatus = v 30923 return s 30924 } 30925 30926 // Describes a resume cluster operation. For example, a scheduled action to 30927 // run the ResumeCluster API operation. 30928 type ResumeClusterInput struct { 30929 _ struct{} `type:"structure"` 30930 30931 // The identifier of the cluster to be resumed. 30932 // 30933 // ClusterIdentifier is a required field 30934 ClusterIdentifier *string `type:"string" required:"true"` 30935 } 30936 30937 // String returns the string representation. 30938 // 30939 // API parameter values that are decorated as "sensitive" in the API will not 30940 // be included in the string output. The member name will be present, but the 30941 // value will be replaced with "sensitive". 30942 func (s ResumeClusterInput) String() string { 30943 return awsutil.Prettify(s) 30944 } 30945 30946 // GoString returns the string representation. 30947 // 30948 // API parameter values that are decorated as "sensitive" in the API will not 30949 // be included in the string output. The member name will be present, but the 30950 // value will be replaced with "sensitive". 30951 func (s ResumeClusterInput) GoString() string { 30952 return s.String() 30953 } 30954 30955 // Validate inspects the fields of the type to determine if they are valid. 30956 func (s *ResumeClusterInput) Validate() error { 30957 invalidParams := request.ErrInvalidParams{Context: "ResumeClusterInput"} 30958 if s.ClusterIdentifier == nil { 30959 invalidParams.Add(request.NewErrParamRequired("ClusterIdentifier")) 30960 } 30961 30962 if invalidParams.Len() > 0 { 30963 return invalidParams 30964 } 30965 return nil 30966 } 30967 30968 // SetClusterIdentifier sets the ClusterIdentifier field's value. 30969 func (s *ResumeClusterInput) SetClusterIdentifier(v string) *ResumeClusterInput { 30970 s.ClusterIdentifier = &v 30971 return s 30972 } 30973 30974 // Describes a resume cluster operation. For example, a scheduled action to 30975 // run the ResumeCluster API operation. 30976 type ResumeClusterMessage struct { 30977 _ struct{} `type:"structure"` 30978 30979 // The identifier of the cluster to be resumed. 30980 // 30981 // ClusterIdentifier is a required field 30982 ClusterIdentifier *string `type:"string" required:"true"` 30983 } 30984 30985 // String returns the string representation. 30986 // 30987 // API parameter values that are decorated as "sensitive" in the API will not 30988 // be included in the string output. The member name will be present, but the 30989 // value will be replaced with "sensitive". 30990 func (s ResumeClusterMessage) String() string { 30991 return awsutil.Prettify(s) 30992 } 30993 30994 // GoString returns the string representation. 30995 // 30996 // API parameter values that are decorated as "sensitive" in the API will not 30997 // be included in the string output. The member name will be present, but the 30998 // value will be replaced with "sensitive". 30999 func (s ResumeClusterMessage) GoString() string { 31000 return s.String() 31001 } 31002 31003 // Validate inspects the fields of the type to determine if they are valid. 31004 func (s *ResumeClusterMessage) Validate() error { 31005 invalidParams := request.ErrInvalidParams{Context: "ResumeClusterMessage"} 31006 if s.ClusterIdentifier == nil { 31007 invalidParams.Add(request.NewErrParamRequired("ClusterIdentifier")) 31008 } 31009 31010 if invalidParams.Len() > 0 { 31011 return invalidParams 31012 } 31013 return nil 31014 } 31015 31016 // SetClusterIdentifier sets the ClusterIdentifier field's value. 31017 func (s *ResumeClusterMessage) SetClusterIdentifier(v string) *ResumeClusterMessage { 31018 s.ClusterIdentifier = &v 31019 return s 31020 } 31021 31022 type ResumeClusterOutput struct { 31023 _ struct{} `type:"structure"` 31024 31025 // Describes a cluster. 31026 Cluster *Cluster `type:"structure"` 31027 } 31028 31029 // String returns the string representation. 31030 // 31031 // API parameter values that are decorated as "sensitive" in the API will not 31032 // be included in the string output. The member name will be present, but the 31033 // value will be replaced with "sensitive". 31034 func (s ResumeClusterOutput) String() string { 31035 return awsutil.Prettify(s) 31036 } 31037 31038 // GoString returns the string representation. 31039 // 31040 // API parameter values that are decorated as "sensitive" in the API will not 31041 // be included in the string output. The member name will be present, but the 31042 // value will be replaced with "sensitive". 31043 func (s ResumeClusterOutput) GoString() string { 31044 return s.String() 31045 } 31046 31047 // SetCluster sets the Cluster field's value. 31048 func (s *ResumeClusterOutput) SetCluster(v *Cluster) *ResumeClusterOutput { 31049 s.Cluster = v 31050 return s 31051 } 31052 31053 // Describes a RevisionTarget. 31054 type RevisionTarget struct { 31055 _ struct{} `type:"structure"` 31056 31057 // A unique string that identifies the version to update the cluster to. You 31058 // can use this value in ModifyClusterDbRevision. 31059 DatabaseRevision *string `type:"string"` 31060 31061 // The date on which the database revision was released. 31062 DatabaseRevisionReleaseDate *time.Time `type:"timestamp"` 31063 31064 // A string that describes the changes and features that will be applied to 31065 // the cluster when it is updated to the corresponding ClusterDbRevision. 31066 Description *string `type:"string"` 31067 } 31068 31069 // String returns the string representation. 31070 // 31071 // API parameter values that are decorated as "sensitive" in the API will not 31072 // be included in the string output. The member name will be present, but the 31073 // value will be replaced with "sensitive". 31074 func (s RevisionTarget) String() string { 31075 return awsutil.Prettify(s) 31076 } 31077 31078 // GoString returns the string representation. 31079 // 31080 // API parameter values that are decorated as "sensitive" in the API will not 31081 // be included in the string output. The member name will be present, but the 31082 // value will be replaced with "sensitive". 31083 func (s RevisionTarget) GoString() string { 31084 return s.String() 31085 } 31086 31087 // SetDatabaseRevision sets the DatabaseRevision field's value. 31088 func (s *RevisionTarget) SetDatabaseRevision(v string) *RevisionTarget { 31089 s.DatabaseRevision = &v 31090 return s 31091 } 31092 31093 // SetDatabaseRevisionReleaseDate sets the DatabaseRevisionReleaseDate field's value. 31094 func (s *RevisionTarget) SetDatabaseRevisionReleaseDate(v time.Time) *RevisionTarget { 31095 s.DatabaseRevisionReleaseDate = &v 31096 return s 31097 } 31098 31099 // SetDescription sets the Description field's value. 31100 func (s *RevisionTarget) SetDescription(v string) *RevisionTarget { 31101 s.Description = &v 31102 return s 31103 } 31104 31105 type RevokeClusterSecurityGroupIngressInput struct { 31106 _ struct{} `type:"structure"` 31107 31108 // The IP range for which to revoke access. This range must be a valid Classless 31109 // Inter-Domain Routing (CIDR) block of IP addresses. If CIDRIP is specified, 31110 // EC2SecurityGroupName and EC2SecurityGroupOwnerId cannot be provided. 31111 CIDRIP *string `type:"string"` 31112 31113 // The name of the security Group from which to revoke the ingress rule. 31114 // 31115 // ClusterSecurityGroupName is a required field 31116 ClusterSecurityGroupName *string `type:"string" required:"true"` 31117 31118 // The name of the EC2 Security Group whose access is to be revoked. If EC2SecurityGroupName 31119 // is specified, EC2SecurityGroupOwnerId must also be provided and CIDRIP cannot 31120 // be provided. 31121 EC2SecurityGroupName *string `type:"string"` 31122 31123 // The Amazon Web Services account number of the owner of the security group 31124 // specified in the EC2SecurityGroupName parameter. The Amazon Web Services 31125 // access key ID is not an acceptable value. If EC2SecurityGroupOwnerId is specified, 31126 // EC2SecurityGroupName must also be provided. and CIDRIP cannot be provided. 31127 // 31128 // Example: 111122223333 31129 EC2SecurityGroupOwnerId *string `type:"string"` 31130 } 31131 31132 // String returns the string representation. 31133 // 31134 // API parameter values that are decorated as "sensitive" in the API will not 31135 // be included in the string output. The member name will be present, but the 31136 // value will be replaced with "sensitive". 31137 func (s RevokeClusterSecurityGroupIngressInput) String() string { 31138 return awsutil.Prettify(s) 31139 } 31140 31141 // GoString returns the string representation. 31142 // 31143 // API parameter values that are decorated as "sensitive" in the API will not 31144 // be included in the string output. The member name will be present, but the 31145 // value will be replaced with "sensitive". 31146 func (s RevokeClusterSecurityGroupIngressInput) GoString() string { 31147 return s.String() 31148 } 31149 31150 // Validate inspects the fields of the type to determine if they are valid. 31151 func (s *RevokeClusterSecurityGroupIngressInput) Validate() error { 31152 invalidParams := request.ErrInvalidParams{Context: "RevokeClusterSecurityGroupIngressInput"} 31153 if s.ClusterSecurityGroupName == nil { 31154 invalidParams.Add(request.NewErrParamRequired("ClusterSecurityGroupName")) 31155 } 31156 31157 if invalidParams.Len() > 0 { 31158 return invalidParams 31159 } 31160 return nil 31161 } 31162 31163 // SetCIDRIP sets the CIDRIP field's value. 31164 func (s *RevokeClusterSecurityGroupIngressInput) SetCIDRIP(v string) *RevokeClusterSecurityGroupIngressInput { 31165 s.CIDRIP = &v 31166 return s 31167 } 31168 31169 // SetClusterSecurityGroupName sets the ClusterSecurityGroupName field's value. 31170 func (s *RevokeClusterSecurityGroupIngressInput) SetClusterSecurityGroupName(v string) *RevokeClusterSecurityGroupIngressInput { 31171 s.ClusterSecurityGroupName = &v 31172 return s 31173 } 31174 31175 // SetEC2SecurityGroupName sets the EC2SecurityGroupName field's value. 31176 func (s *RevokeClusterSecurityGroupIngressInput) SetEC2SecurityGroupName(v string) *RevokeClusterSecurityGroupIngressInput { 31177 s.EC2SecurityGroupName = &v 31178 return s 31179 } 31180 31181 // SetEC2SecurityGroupOwnerId sets the EC2SecurityGroupOwnerId field's value. 31182 func (s *RevokeClusterSecurityGroupIngressInput) SetEC2SecurityGroupOwnerId(v string) *RevokeClusterSecurityGroupIngressInput { 31183 s.EC2SecurityGroupOwnerId = &v 31184 return s 31185 } 31186 31187 type RevokeClusterSecurityGroupIngressOutput struct { 31188 _ struct{} `type:"structure"` 31189 31190 // Describes a security group. 31191 ClusterSecurityGroup *ClusterSecurityGroup `type:"structure"` 31192 } 31193 31194 // String returns the string representation. 31195 // 31196 // API parameter values that are decorated as "sensitive" in the API will not 31197 // be included in the string output. The member name will be present, but the 31198 // value will be replaced with "sensitive". 31199 func (s RevokeClusterSecurityGroupIngressOutput) String() string { 31200 return awsutil.Prettify(s) 31201 } 31202 31203 // GoString returns the string representation. 31204 // 31205 // API parameter values that are decorated as "sensitive" in the API will not 31206 // be included in the string output. The member name will be present, but the 31207 // value will be replaced with "sensitive". 31208 func (s RevokeClusterSecurityGroupIngressOutput) GoString() string { 31209 return s.String() 31210 } 31211 31212 // SetClusterSecurityGroup sets the ClusterSecurityGroup field's value. 31213 func (s *RevokeClusterSecurityGroupIngressOutput) SetClusterSecurityGroup(v *ClusterSecurityGroup) *RevokeClusterSecurityGroupIngressOutput { 31214 s.ClusterSecurityGroup = v 31215 return s 31216 } 31217 31218 type RevokeEndpointAccessInput struct { 31219 _ struct{} `type:"structure"` 31220 31221 // The Amazon Web Services account ID whose access is to be revoked. 31222 Account *string `type:"string"` 31223 31224 // The cluster to revoke access from. 31225 ClusterIdentifier *string `type:"string"` 31226 31227 // Indicates whether to force the revoke action. If true, the Redshift-managed 31228 // VPC endpoints associated with the endpoint authorization are also deleted. 31229 Force *bool `type:"boolean"` 31230 31231 // The virtual private cloud (VPC) identifiers for which access is to be revoked. 31232 VpcIds []*string `locationNameList:"VpcIdentifier" type:"list"` 31233 } 31234 31235 // String returns the string representation. 31236 // 31237 // API parameter values that are decorated as "sensitive" in the API will not 31238 // be included in the string output. The member name will be present, but the 31239 // value will be replaced with "sensitive". 31240 func (s RevokeEndpointAccessInput) String() string { 31241 return awsutil.Prettify(s) 31242 } 31243 31244 // GoString returns the string representation. 31245 // 31246 // API parameter values that are decorated as "sensitive" in the API will not 31247 // be included in the string output. The member name will be present, but the 31248 // value will be replaced with "sensitive". 31249 func (s RevokeEndpointAccessInput) GoString() string { 31250 return s.String() 31251 } 31252 31253 // SetAccount sets the Account field's value. 31254 func (s *RevokeEndpointAccessInput) SetAccount(v string) *RevokeEndpointAccessInput { 31255 s.Account = &v 31256 return s 31257 } 31258 31259 // SetClusterIdentifier sets the ClusterIdentifier field's value. 31260 func (s *RevokeEndpointAccessInput) SetClusterIdentifier(v string) *RevokeEndpointAccessInput { 31261 s.ClusterIdentifier = &v 31262 return s 31263 } 31264 31265 // SetForce sets the Force field's value. 31266 func (s *RevokeEndpointAccessInput) SetForce(v bool) *RevokeEndpointAccessInput { 31267 s.Force = &v 31268 return s 31269 } 31270 31271 // SetVpcIds sets the VpcIds field's value. 31272 func (s *RevokeEndpointAccessInput) SetVpcIds(v []*string) *RevokeEndpointAccessInput { 31273 s.VpcIds = v 31274 return s 31275 } 31276 31277 // Describes an endpoint authorization for authorizing Redshift-managed VPC 31278 // endpoint access to a cluster across Amazon Web Services accounts. 31279 type RevokeEndpointAccessOutput struct { 31280 _ struct{} `type:"structure"` 31281 31282 // Indicates whether all VPCs in the grantee account are allowed access to the 31283 // cluster. 31284 AllowedAllVPCs *bool `type:"boolean"` 31285 31286 // The VPCs allowed access to the cluster. 31287 AllowedVPCs []*string `locationNameList:"VpcIdentifier" type:"list"` 31288 31289 // The time (UTC) when the authorization was created. 31290 AuthorizeTime *time.Time `type:"timestamp"` 31291 31292 // The cluster identifier. 31293 ClusterIdentifier *string `type:"string"` 31294 31295 // The status of the cluster. 31296 ClusterStatus *string `type:"string"` 31297 31298 // The number of Redshift-managed VPC endpoints created for the authorization. 31299 EndpointCount *int64 `type:"integer"` 31300 31301 // The Amazon Web Services account ID of the grantee of the cluster. 31302 Grantee *string `type:"string"` 31303 31304 // The Amazon Web Services account ID of the cluster owner. 31305 Grantor *string `type:"string"` 31306 31307 // The status of the authorization action. 31308 Status *string `type:"string" enum:"AuthorizationStatus"` 31309 } 31310 31311 // String returns the string representation. 31312 // 31313 // API parameter values that are decorated as "sensitive" in the API will not 31314 // be included in the string output. The member name will be present, but the 31315 // value will be replaced with "sensitive". 31316 func (s RevokeEndpointAccessOutput) String() string { 31317 return awsutil.Prettify(s) 31318 } 31319 31320 // GoString returns the string representation. 31321 // 31322 // API parameter values that are decorated as "sensitive" in the API will not 31323 // be included in the string output. The member name will be present, but the 31324 // value will be replaced with "sensitive". 31325 func (s RevokeEndpointAccessOutput) GoString() string { 31326 return s.String() 31327 } 31328 31329 // SetAllowedAllVPCs sets the AllowedAllVPCs field's value. 31330 func (s *RevokeEndpointAccessOutput) SetAllowedAllVPCs(v bool) *RevokeEndpointAccessOutput { 31331 s.AllowedAllVPCs = &v 31332 return s 31333 } 31334 31335 // SetAllowedVPCs sets the AllowedVPCs field's value. 31336 func (s *RevokeEndpointAccessOutput) SetAllowedVPCs(v []*string) *RevokeEndpointAccessOutput { 31337 s.AllowedVPCs = v 31338 return s 31339 } 31340 31341 // SetAuthorizeTime sets the AuthorizeTime field's value. 31342 func (s *RevokeEndpointAccessOutput) SetAuthorizeTime(v time.Time) *RevokeEndpointAccessOutput { 31343 s.AuthorizeTime = &v 31344 return s 31345 } 31346 31347 // SetClusterIdentifier sets the ClusterIdentifier field's value. 31348 func (s *RevokeEndpointAccessOutput) SetClusterIdentifier(v string) *RevokeEndpointAccessOutput { 31349 s.ClusterIdentifier = &v 31350 return s 31351 } 31352 31353 // SetClusterStatus sets the ClusterStatus field's value. 31354 func (s *RevokeEndpointAccessOutput) SetClusterStatus(v string) *RevokeEndpointAccessOutput { 31355 s.ClusterStatus = &v 31356 return s 31357 } 31358 31359 // SetEndpointCount sets the EndpointCount field's value. 31360 func (s *RevokeEndpointAccessOutput) SetEndpointCount(v int64) *RevokeEndpointAccessOutput { 31361 s.EndpointCount = &v 31362 return s 31363 } 31364 31365 // SetGrantee sets the Grantee field's value. 31366 func (s *RevokeEndpointAccessOutput) SetGrantee(v string) *RevokeEndpointAccessOutput { 31367 s.Grantee = &v 31368 return s 31369 } 31370 31371 // SetGrantor sets the Grantor field's value. 31372 func (s *RevokeEndpointAccessOutput) SetGrantor(v string) *RevokeEndpointAccessOutput { 31373 s.Grantor = &v 31374 return s 31375 } 31376 31377 // SetStatus sets the Status field's value. 31378 func (s *RevokeEndpointAccessOutput) SetStatus(v string) *RevokeEndpointAccessOutput { 31379 s.Status = &v 31380 return s 31381 } 31382 31383 type RevokeSnapshotAccessInput struct { 31384 _ struct{} `type:"structure"` 31385 31386 // The identifier of the Amazon Web Services account that can no longer restore 31387 // the specified snapshot. 31388 // 31389 // AccountWithRestoreAccess is a required field 31390 AccountWithRestoreAccess *string `type:"string" required:"true"` 31391 31392 // The identifier of the cluster the snapshot was created from. This parameter 31393 // is required if your IAM user has a policy containing a snapshot resource 31394 // element that specifies anything other than * for the cluster name. 31395 SnapshotClusterIdentifier *string `type:"string"` 31396 31397 // The identifier of the snapshot that the account can no longer access. 31398 // 31399 // SnapshotIdentifier is a required field 31400 SnapshotIdentifier *string `type:"string" required:"true"` 31401 } 31402 31403 // String returns the string representation. 31404 // 31405 // API parameter values that are decorated as "sensitive" in the API will not 31406 // be included in the string output. The member name will be present, but the 31407 // value will be replaced with "sensitive". 31408 func (s RevokeSnapshotAccessInput) String() string { 31409 return awsutil.Prettify(s) 31410 } 31411 31412 // GoString returns the string representation. 31413 // 31414 // API parameter values that are decorated as "sensitive" in the API will not 31415 // be included in the string output. The member name will be present, but the 31416 // value will be replaced with "sensitive". 31417 func (s RevokeSnapshotAccessInput) GoString() string { 31418 return s.String() 31419 } 31420 31421 // Validate inspects the fields of the type to determine if they are valid. 31422 func (s *RevokeSnapshotAccessInput) Validate() error { 31423 invalidParams := request.ErrInvalidParams{Context: "RevokeSnapshotAccessInput"} 31424 if s.AccountWithRestoreAccess == nil { 31425 invalidParams.Add(request.NewErrParamRequired("AccountWithRestoreAccess")) 31426 } 31427 if s.SnapshotIdentifier == nil { 31428 invalidParams.Add(request.NewErrParamRequired("SnapshotIdentifier")) 31429 } 31430 31431 if invalidParams.Len() > 0 { 31432 return invalidParams 31433 } 31434 return nil 31435 } 31436 31437 // SetAccountWithRestoreAccess sets the AccountWithRestoreAccess field's value. 31438 func (s *RevokeSnapshotAccessInput) SetAccountWithRestoreAccess(v string) *RevokeSnapshotAccessInput { 31439 s.AccountWithRestoreAccess = &v 31440 return s 31441 } 31442 31443 // SetSnapshotClusterIdentifier sets the SnapshotClusterIdentifier field's value. 31444 func (s *RevokeSnapshotAccessInput) SetSnapshotClusterIdentifier(v string) *RevokeSnapshotAccessInput { 31445 s.SnapshotClusterIdentifier = &v 31446 return s 31447 } 31448 31449 // SetSnapshotIdentifier sets the SnapshotIdentifier field's value. 31450 func (s *RevokeSnapshotAccessInput) SetSnapshotIdentifier(v string) *RevokeSnapshotAccessInput { 31451 s.SnapshotIdentifier = &v 31452 return s 31453 } 31454 31455 type RevokeSnapshotAccessOutput struct { 31456 _ struct{} `type:"structure"` 31457 31458 // Describes a snapshot. 31459 Snapshot *Snapshot `type:"structure"` 31460 } 31461 31462 // String returns the string representation. 31463 // 31464 // API parameter values that are decorated as "sensitive" in the API will not 31465 // be included in the string output. The member name will be present, but the 31466 // value will be replaced with "sensitive". 31467 func (s RevokeSnapshotAccessOutput) String() string { 31468 return awsutil.Prettify(s) 31469 } 31470 31471 // GoString returns the string representation. 31472 // 31473 // API parameter values that are decorated as "sensitive" in the API will not 31474 // be included in the string output. The member name will be present, but the 31475 // value will be replaced with "sensitive". 31476 func (s RevokeSnapshotAccessOutput) GoString() string { 31477 return s.String() 31478 } 31479 31480 // SetSnapshot sets the Snapshot field's value. 31481 func (s *RevokeSnapshotAccessOutput) SetSnapshot(v *Snapshot) *RevokeSnapshotAccessOutput { 31482 s.Snapshot = v 31483 return s 31484 } 31485 31486 type RotateEncryptionKeyInput struct { 31487 _ struct{} `type:"structure"` 31488 31489 // The unique identifier of the cluster that you want to rotate the encryption 31490 // keys for. 31491 // 31492 // Constraints: Must be the name of valid cluster that has encryption enabled. 31493 // 31494 // ClusterIdentifier is a required field 31495 ClusterIdentifier *string `type:"string" required:"true"` 31496 } 31497 31498 // String returns the string representation. 31499 // 31500 // API parameter values that are decorated as "sensitive" in the API will not 31501 // be included in the string output. The member name will be present, but the 31502 // value will be replaced with "sensitive". 31503 func (s RotateEncryptionKeyInput) String() string { 31504 return awsutil.Prettify(s) 31505 } 31506 31507 // GoString returns the string representation. 31508 // 31509 // API parameter values that are decorated as "sensitive" in the API will not 31510 // be included in the string output. The member name will be present, but the 31511 // value will be replaced with "sensitive". 31512 func (s RotateEncryptionKeyInput) GoString() string { 31513 return s.String() 31514 } 31515 31516 // Validate inspects the fields of the type to determine if they are valid. 31517 func (s *RotateEncryptionKeyInput) Validate() error { 31518 invalidParams := request.ErrInvalidParams{Context: "RotateEncryptionKeyInput"} 31519 if s.ClusterIdentifier == nil { 31520 invalidParams.Add(request.NewErrParamRequired("ClusterIdentifier")) 31521 } 31522 31523 if invalidParams.Len() > 0 { 31524 return invalidParams 31525 } 31526 return nil 31527 } 31528 31529 // SetClusterIdentifier sets the ClusterIdentifier field's value. 31530 func (s *RotateEncryptionKeyInput) SetClusterIdentifier(v string) *RotateEncryptionKeyInput { 31531 s.ClusterIdentifier = &v 31532 return s 31533 } 31534 31535 type RotateEncryptionKeyOutput struct { 31536 _ struct{} `type:"structure"` 31537 31538 // Describes a cluster. 31539 Cluster *Cluster `type:"structure"` 31540 } 31541 31542 // String returns the string representation. 31543 // 31544 // API parameter values that are decorated as "sensitive" in the API will not 31545 // be included in the string output. The member name will be present, but the 31546 // value will be replaced with "sensitive". 31547 func (s RotateEncryptionKeyOutput) String() string { 31548 return awsutil.Prettify(s) 31549 } 31550 31551 // GoString returns the string representation. 31552 // 31553 // API parameter values that are decorated as "sensitive" in the API will not 31554 // be included in the string output. The member name will be present, but the 31555 // value will be replaced with "sensitive". 31556 func (s RotateEncryptionKeyOutput) GoString() string { 31557 return s.String() 31558 } 31559 31560 // SetCluster sets the Cluster field's value. 31561 func (s *RotateEncryptionKeyOutput) SetCluster(v *Cluster) *RotateEncryptionKeyOutput { 31562 s.Cluster = v 31563 return s 31564 } 31565 31566 // Describes a scheduled action. You can use a scheduled action to trigger some 31567 // Amazon Redshift API operations on a schedule. For information about which 31568 // API operations can be scheduled, see ScheduledActionType. 31569 type ScheduledAction struct { 31570 _ struct{} `type:"structure"` 31571 31572 // The end time in UTC when the schedule is no longer active. After this time, 31573 // the scheduled action does not trigger. 31574 EndTime *time.Time `type:"timestamp"` 31575 31576 // The IAM role to assume to run the scheduled action. This IAM role must have 31577 // permission to run the Amazon Redshift API operation in the scheduled action. 31578 // This IAM role must allow the Amazon Redshift scheduler (Principal scheduler.redshift.amazonaws.com) 31579 // to assume permissions on your behalf. For more information about the IAM 31580 // role to use with the Amazon Redshift scheduler, see Using Identity-Based 31581 // Policies for Amazon Redshift (https://docs.aws.amazon.com/redshift/latest/mgmt/redshift-iam-access-control-identity-based.html) 31582 // in the Amazon Redshift Cluster Management Guide. 31583 IamRole *string `type:"string"` 31584 31585 // List of times when the scheduled action will run. 31586 NextInvocations []*time.Time `locationNameList:"ScheduledActionTime" type:"list"` 31587 31588 // The schedule for a one-time (at format) or recurring (cron format) scheduled 31589 // action. Schedule invocations must be separated by at least one hour. 31590 // 31591 // Format of at expressions is "at(yyyy-mm-ddThh:mm:ss)". For example, "at(2016-03-04T17:27:00)". 31592 // 31593 // Format of cron expressions is "cron(Minutes Hours Day-of-month Month Day-of-week 31594 // Year)". For example, "cron(0 10 ? * MON *)". For more information, see Cron 31595 // Expressions (https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/ScheduledEvents.html#CronExpressions) 31596 // in the Amazon CloudWatch Events User Guide. 31597 Schedule *string `type:"string"` 31598 31599 // The description of the scheduled action. 31600 ScheduledActionDescription *string `type:"string"` 31601 31602 // The name of the scheduled action. 31603 ScheduledActionName *string `type:"string"` 31604 31605 // The start time in UTC when the schedule is active. Before this time, the 31606 // scheduled action does not trigger. 31607 StartTime *time.Time `type:"timestamp"` 31608 31609 // The state of the scheduled action. For example, DISABLED. 31610 State *string `type:"string" enum:"ScheduledActionState"` 31611 31612 // A JSON format string of the Amazon Redshift API operation with input parameters. 31613 // 31614 // "{\"ResizeCluster\":{\"NodeType\":\"ds2.8xlarge\",\"ClusterIdentifier\":\"my-test-cluster\",\"NumberOfNodes\":3}}". 31615 TargetAction *ScheduledActionType `type:"structure"` 31616 } 31617 31618 // String returns the string representation. 31619 // 31620 // API parameter values that are decorated as "sensitive" in the API will not 31621 // be included in the string output. The member name will be present, but the 31622 // value will be replaced with "sensitive". 31623 func (s ScheduledAction) String() string { 31624 return awsutil.Prettify(s) 31625 } 31626 31627 // GoString returns the string representation. 31628 // 31629 // API parameter values that are decorated as "sensitive" in the API will not 31630 // be included in the string output. The member name will be present, but the 31631 // value will be replaced with "sensitive". 31632 func (s ScheduledAction) GoString() string { 31633 return s.String() 31634 } 31635 31636 // SetEndTime sets the EndTime field's value. 31637 func (s *ScheduledAction) SetEndTime(v time.Time) *ScheduledAction { 31638 s.EndTime = &v 31639 return s 31640 } 31641 31642 // SetIamRole sets the IamRole field's value. 31643 func (s *ScheduledAction) SetIamRole(v string) *ScheduledAction { 31644 s.IamRole = &v 31645 return s 31646 } 31647 31648 // SetNextInvocations sets the NextInvocations field's value. 31649 func (s *ScheduledAction) SetNextInvocations(v []*time.Time) *ScheduledAction { 31650 s.NextInvocations = v 31651 return s 31652 } 31653 31654 // SetSchedule sets the Schedule field's value. 31655 func (s *ScheduledAction) SetSchedule(v string) *ScheduledAction { 31656 s.Schedule = &v 31657 return s 31658 } 31659 31660 // SetScheduledActionDescription sets the ScheduledActionDescription field's value. 31661 func (s *ScheduledAction) SetScheduledActionDescription(v string) *ScheduledAction { 31662 s.ScheduledActionDescription = &v 31663 return s 31664 } 31665 31666 // SetScheduledActionName sets the ScheduledActionName field's value. 31667 func (s *ScheduledAction) SetScheduledActionName(v string) *ScheduledAction { 31668 s.ScheduledActionName = &v 31669 return s 31670 } 31671 31672 // SetStartTime sets the StartTime field's value. 31673 func (s *ScheduledAction) SetStartTime(v time.Time) *ScheduledAction { 31674 s.StartTime = &v 31675 return s 31676 } 31677 31678 // SetState sets the State field's value. 31679 func (s *ScheduledAction) SetState(v string) *ScheduledAction { 31680 s.State = &v 31681 return s 31682 } 31683 31684 // SetTargetAction sets the TargetAction field's value. 31685 func (s *ScheduledAction) SetTargetAction(v *ScheduledActionType) *ScheduledAction { 31686 s.TargetAction = v 31687 return s 31688 } 31689 31690 // A set of elements to filter the returned scheduled actions. 31691 type ScheduledActionFilter struct { 31692 _ struct{} `type:"structure"` 31693 31694 // The type of element to filter. 31695 // 31696 // Name is a required field 31697 Name *string `type:"string" required:"true" enum:"ScheduledActionFilterName"` 31698 31699 // List of values. Compare if the value (of type defined by Name) equals an 31700 // item in the list of scheduled actions. 31701 // 31702 // Values is a required field 31703 Values []*string `locationNameList:"item" type:"list" required:"true"` 31704 } 31705 31706 // String returns the string representation. 31707 // 31708 // API parameter values that are decorated as "sensitive" in the API will not 31709 // be included in the string output. The member name will be present, but the 31710 // value will be replaced with "sensitive". 31711 func (s ScheduledActionFilter) String() string { 31712 return awsutil.Prettify(s) 31713 } 31714 31715 // GoString returns the string representation. 31716 // 31717 // API parameter values that are decorated as "sensitive" in the API will not 31718 // be included in the string output. The member name will be present, but the 31719 // value will be replaced with "sensitive". 31720 func (s ScheduledActionFilter) GoString() string { 31721 return s.String() 31722 } 31723 31724 // Validate inspects the fields of the type to determine if they are valid. 31725 func (s *ScheduledActionFilter) Validate() error { 31726 invalidParams := request.ErrInvalidParams{Context: "ScheduledActionFilter"} 31727 if s.Name == nil { 31728 invalidParams.Add(request.NewErrParamRequired("Name")) 31729 } 31730 if s.Values == nil { 31731 invalidParams.Add(request.NewErrParamRequired("Values")) 31732 } 31733 31734 if invalidParams.Len() > 0 { 31735 return invalidParams 31736 } 31737 return nil 31738 } 31739 31740 // SetName sets the Name field's value. 31741 func (s *ScheduledActionFilter) SetName(v string) *ScheduledActionFilter { 31742 s.Name = &v 31743 return s 31744 } 31745 31746 // SetValues sets the Values field's value. 31747 func (s *ScheduledActionFilter) SetValues(v []*string) *ScheduledActionFilter { 31748 s.Values = v 31749 return s 31750 } 31751 31752 // The action type that specifies an Amazon Redshift API operation that is supported 31753 // by the Amazon Redshift scheduler. 31754 type ScheduledActionType struct { 31755 _ struct{} `type:"structure"` 31756 31757 // An action that runs a PauseCluster API operation. 31758 PauseCluster *PauseClusterMessage `type:"structure"` 31759 31760 // An action that runs a ResizeCluster API operation. 31761 ResizeCluster *ResizeClusterMessage `type:"structure"` 31762 31763 // An action that runs a ResumeCluster API operation. 31764 ResumeCluster *ResumeClusterMessage `type:"structure"` 31765 } 31766 31767 // String returns the string representation. 31768 // 31769 // API parameter values that are decorated as "sensitive" in the API will not 31770 // be included in the string output. The member name will be present, but the 31771 // value will be replaced with "sensitive". 31772 func (s ScheduledActionType) String() string { 31773 return awsutil.Prettify(s) 31774 } 31775 31776 // GoString returns the string representation. 31777 // 31778 // API parameter values that are decorated as "sensitive" in the API will not 31779 // be included in the string output. The member name will be present, but the 31780 // value will be replaced with "sensitive". 31781 func (s ScheduledActionType) GoString() string { 31782 return s.String() 31783 } 31784 31785 // Validate inspects the fields of the type to determine if they are valid. 31786 func (s *ScheduledActionType) Validate() error { 31787 invalidParams := request.ErrInvalidParams{Context: "ScheduledActionType"} 31788 if s.PauseCluster != nil { 31789 if err := s.PauseCluster.Validate(); err != nil { 31790 invalidParams.AddNested("PauseCluster", err.(request.ErrInvalidParams)) 31791 } 31792 } 31793 if s.ResizeCluster != nil { 31794 if err := s.ResizeCluster.Validate(); err != nil { 31795 invalidParams.AddNested("ResizeCluster", err.(request.ErrInvalidParams)) 31796 } 31797 } 31798 if s.ResumeCluster != nil { 31799 if err := s.ResumeCluster.Validate(); err != nil { 31800 invalidParams.AddNested("ResumeCluster", err.(request.ErrInvalidParams)) 31801 } 31802 } 31803 31804 if invalidParams.Len() > 0 { 31805 return invalidParams 31806 } 31807 return nil 31808 } 31809 31810 // SetPauseCluster sets the PauseCluster field's value. 31811 func (s *ScheduledActionType) SetPauseCluster(v *PauseClusterMessage) *ScheduledActionType { 31812 s.PauseCluster = v 31813 return s 31814 } 31815 31816 // SetResizeCluster sets the ResizeCluster field's value. 31817 func (s *ScheduledActionType) SetResizeCluster(v *ResizeClusterMessage) *ScheduledActionType { 31818 s.ResizeCluster = v 31819 return s 31820 } 31821 31822 // SetResumeCluster sets the ResumeCluster field's value. 31823 func (s *ScheduledActionType) SetResumeCluster(v *ResumeClusterMessage) *ScheduledActionType { 31824 s.ResumeCluster = v 31825 return s 31826 } 31827 31828 // Describes a snapshot. 31829 type Snapshot struct { 31830 _ struct{} `type:"structure"` 31831 31832 // A list of the Amazon Web Services accounts authorized to restore the snapshot. 31833 // Returns null if no accounts are authorized. Visible only to the snapshot 31834 // owner. 31835 AccountsWithRestoreAccess []*AccountWithRestoreAccess `locationNameList:"AccountWithRestoreAccess" type:"list"` 31836 31837 // The size of the incremental backup. 31838 ActualIncrementalBackupSizeInMegaBytes *float64 `type:"double"` 31839 31840 // The Availability Zone in which the cluster was created. 31841 AvailabilityZone *string `type:"string"` 31842 31843 // The number of megabytes that have been transferred to the snapshot backup. 31844 BackupProgressInMegaBytes *float64 `type:"double"` 31845 31846 // The time (UTC) when the cluster was originally created. 31847 ClusterCreateTime *time.Time `type:"timestamp"` 31848 31849 // The identifier of the cluster for which the snapshot was taken. 31850 ClusterIdentifier *string `type:"string"` 31851 31852 // The version ID of the Amazon Redshift engine that is running on the cluster. 31853 ClusterVersion *string `type:"string"` 31854 31855 // The number of megabytes per second being transferred to the snapshot backup. 31856 // Returns 0 for a completed backup. 31857 CurrentBackupRateInMegaBytesPerSecond *float64 `type:"double"` 31858 31859 // The name of the database that was created when the cluster was created. 31860 DBName *string `type:"string"` 31861 31862 // The amount of time an in-progress snapshot backup has been running, or the 31863 // amount of time it took a completed backup to finish. 31864 ElapsedTimeInSeconds *int64 `type:"long"` 31865 31866 // If true, the data in the snapshot is encrypted at rest. 31867 Encrypted *bool `type:"boolean"` 31868 31869 // A boolean that indicates whether the snapshot data is encrypted using the 31870 // HSM keys of the source cluster. true indicates that the data is encrypted 31871 // using HSM keys. 31872 EncryptedWithHSM *bool `type:"boolean"` 31873 31874 // The cluster version of the cluster used to create the snapshot. For example, 31875 // 1.0.15503. 31876 EngineFullVersion *string `type:"string"` 31877 31878 // An option that specifies whether to create the cluster with enhanced VPC 31879 // routing enabled. To create a cluster that uses enhanced VPC routing, the 31880 // cluster must be in a VPC. For more information, see Enhanced VPC Routing 31881 // (https://docs.aws.amazon.com/redshift/latest/mgmt/enhanced-vpc-routing.html) 31882 // in the Amazon Redshift Cluster Management Guide. 31883 // 31884 // If this option is true, enhanced VPC routing is enabled. 31885 // 31886 // Default: false 31887 EnhancedVpcRouting *bool `type:"boolean"` 31888 31889 // The estimate of the time remaining before the snapshot backup will complete. 31890 // Returns 0 for a completed backup. 31891 EstimatedSecondsToCompletion *int64 `type:"long"` 31892 31893 // The Key Management Service (KMS) key ID of the encryption key that was used 31894 // to encrypt data in the cluster from which the snapshot was taken. 31895 KmsKeyId *string `type:"string"` 31896 31897 // The name of the maintenance track for the snapshot. 31898 MaintenanceTrackName *string `type:"string"` 31899 31900 // The number of days until a manual snapshot will pass its retention period. 31901 ManualSnapshotRemainingDays *int64 `type:"integer"` 31902 31903 // The number of days that a manual snapshot is retained. If the value is -1, 31904 // the manual snapshot is retained indefinitely. 31905 // 31906 // The value must be either -1 or an integer between 1 and 3,653. 31907 ManualSnapshotRetentionPeriod *int64 `type:"integer"` 31908 31909 // The admin user name for the cluster. 31910 MasterUsername *string `type:"string"` 31911 31912 // The node type of the nodes in the cluster. 31913 NodeType *string `type:"string"` 31914 31915 // The number of nodes in the cluster. 31916 NumberOfNodes *int64 `type:"integer"` 31917 31918 // For manual snapshots, the Amazon Web Services account used to create or copy 31919 // the snapshot. For automatic snapshots, the owner of the cluster. The owner 31920 // can perform all snapshot actions, such as sharing a manual snapshot. 31921 OwnerAccount *string `type:"string"` 31922 31923 // The port that the cluster is listening on. 31924 Port *int64 `type:"integer"` 31925 31926 // The list of node types that this cluster snapshot is able to restore into. 31927 RestorableNodeTypes []*string `locationNameList:"NodeType" type:"list"` 31928 31929 // The time (in UTC format) when Amazon Redshift began the snapshot. A snapshot 31930 // contains a copy of the cluster data as of this exact time. 31931 SnapshotCreateTime *time.Time `type:"timestamp"` 31932 31933 // The snapshot identifier that is provided in the request. 31934 SnapshotIdentifier *string `type:"string"` 31935 31936 // A timestamp representing the start of the retention period for the snapshot. 31937 SnapshotRetentionStartTime *time.Time `type:"timestamp"` 31938 31939 // The snapshot type. Snapshots created using CreateClusterSnapshot and CopyClusterSnapshot 31940 // are of type "manual". 31941 SnapshotType *string `type:"string"` 31942 31943 // The source region from which the snapshot was copied. 31944 SourceRegion *string `type:"string"` 31945 31946 // The snapshot status. The value of the status depends on the API operation 31947 // used: 31948 // 31949 // * CreateClusterSnapshot and CopyClusterSnapshot returns status as "creating". 31950 // 31951 // * DescribeClusterSnapshots returns status as "creating", "available", 31952 // "final snapshot", or "failed". 31953 // 31954 // * DeleteClusterSnapshot returns status as "deleted". 31955 Status *string `type:"string"` 31956 31957 // The list of tags for the cluster snapshot. 31958 Tags []*Tag `locationNameList:"Tag" type:"list"` 31959 31960 // The size of the complete set of backup data that would be used to restore 31961 // the cluster. 31962 TotalBackupSizeInMegaBytes *float64 `type:"double"` 31963 31964 // The VPC identifier of the cluster if the snapshot is from a cluster in a 31965 // VPC. Otherwise, this field is not in the output. 31966 VpcId *string `type:"string"` 31967 } 31968 31969 // String returns the string representation. 31970 // 31971 // API parameter values that are decorated as "sensitive" in the API will not 31972 // be included in the string output. The member name will be present, but the 31973 // value will be replaced with "sensitive". 31974 func (s Snapshot) String() string { 31975 return awsutil.Prettify(s) 31976 } 31977 31978 // GoString returns the string representation. 31979 // 31980 // API parameter values that are decorated as "sensitive" in the API will not 31981 // be included in the string output. The member name will be present, but the 31982 // value will be replaced with "sensitive". 31983 func (s Snapshot) GoString() string { 31984 return s.String() 31985 } 31986 31987 // SetAccountsWithRestoreAccess sets the AccountsWithRestoreAccess field's value. 31988 func (s *Snapshot) SetAccountsWithRestoreAccess(v []*AccountWithRestoreAccess) *Snapshot { 31989 s.AccountsWithRestoreAccess = v 31990 return s 31991 } 31992 31993 // SetActualIncrementalBackupSizeInMegaBytes sets the ActualIncrementalBackupSizeInMegaBytes field's value. 31994 func (s *Snapshot) SetActualIncrementalBackupSizeInMegaBytes(v float64) *Snapshot { 31995 s.ActualIncrementalBackupSizeInMegaBytes = &v 31996 return s 31997 } 31998 31999 // SetAvailabilityZone sets the AvailabilityZone field's value. 32000 func (s *Snapshot) SetAvailabilityZone(v string) *Snapshot { 32001 s.AvailabilityZone = &v 32002 return s 32003 } 32004 32005 // SetBackupProgressInMegaBytes sets the BackupProgressInMegaBytes field's value. 32006 func (s *Snapshot) SetBackupProgressInMegaBytes(v float64) *Snapshot { 32007 s.BackupProgressInMegaBytes = &v 32008 return s 32009 } 32010 32011 // SetClusterCreateTime sets the ClusterCreateTime field's value. 32012 func (s *Snapshot) SetClusterCreateTime(v time.Time) *Snapshot { 32013 s.ClusterCreateTime = &v 32014 return s 32015 } 32016 32017 // SetClusterIdentifier sets the ClusterIdentifier field's value. 32018 func (s *Snapshot) SetClusterIdentifier(v string) *Snapshot { 32019 s.ClusterIdentifier = &v 32020 return s 32021 } 32022 32023 // SetClusterVersion sets the ClusterVersion field's value. 32024 func (s *Snapshot) SetClusterVersion(v string) *Snapshot { 32025 s.ClusterVersion = &v 32026 return s 32027 } 32028 32029 // SetCurrentBackupRateInMegaBytesPerSecond sets the CurrentBackupRateInMegaBytesPerSecond field's value. 32030 func (s *Snapshot) SetCurrentBackupRateInMegaBytesPerSecond(v float64) *Snapshot { 32031 s.CurrentBackupRateInMegaBytesPerSecond = &v 32032 return s 32033 } 32034 32035 // SetDBName sets the DBName field's value. 32036 func (s *Snapshot) SetDBName(v string) *Snapshot { 32037 s.DBName = &v 32038 return s 32039 } 32040 32041 // SetElapsedTimeInSeconds sets the ElapsedTimeInSeconds field's value. 32042 func (s *Snapshot) SetElapsedTimeInSeconds(v int64) *Snapshot { 32043 s.ElapsedTimeInSeconds = &v 32044 return s 32045 } 32046 32047 // SetEncrypted sets the Encrypted field's value. 32048 func (s *Snapshot) SetEncrypted(v bool) *Snapshot { 32049 s.Encrypted = &v 32050 return s 32051 } 32052 32053 // SetEncryptedWithHSM sets the EncryptedWithHSM field's value. 32054 func (s *Snapshot) SetEncryptedWithHSM(v bool) *Snapshot { 32055 s.EncryptedWithHSM = &v 32056 return s 32057 } 32058 32059 // SetEngineFullVersion sets the EngineFullVersion field's value. 32060 func (s *Snapshot) SetEngineFullVersion(v string) *Snapshot { 32061 s.EngineFullVersion = &v 32062 return s 32063 } 32064 32065 // SetEnhancedVpcRouting sets the EnhancedVpcRouting field's value. 32066 func (s *Snapshot) SetEnhancedVpcRouting(v bool) *Snapshot { 32067 s.EnhancedVpcRouting = &v 32068 return s 32069 } 32070 32071 // SetEstimatedSecondsToCompletion sets the EstimatedSecondsToCompletion field's value. 32072 func (s *Snapshot) SetEstimatedSecondsToCompletion(v int64) *Snapshot { 32073 s.EstimatedSecondsToCompletion = &v 32074 return s 32075 } 32076 32077 // SetKmsKeyId sets the KmsKeyId field's value. 32078 func (s *Snapshot) SetKmsKeyId(v string) *Snapshot { 32079 s.KmsKeyId = &v 32080 return s 32081 } 32082 32083 // SetMaintenanceTrackName sets the MaintenanceTrackName field's value. 32084 func (s *Snapshot) SetMaintenanceTrackName(v string) *Snapshot { 32085 s.MaintenanceTrackName = &v 32086 return s 32087 } 32088 32089 // SetManualSnapshotRemainingDays sets the ManualSnapshotRemainingDays field's value. 32090 func (s *Snapshot) SetManualSnapshotRemainingDays(v int64) *Snapshot { 32091 s.ManualSnapshotRemainingDays = &v 32092 return s 32093 } 32094 32095 // SetManualSnapshotRetentionPeriod sets the ManualSnapshotRetentionPeriod field's value. 32096 func (s *Snapshot) SetManualSnapshotRetentionPeriod(v int64) *Snapshot { 32097 s.ManualSnapshotRetentionPeriod = &v 32098 return s 32099 } 32100 32101 // SetMasterUsername sets the MasterUsername field's value. 32102 func (s *Snapshot) SetMasterUsername(v string) *Snapshot { 32103 s.MasterUsername = &v 32104 return s 32105 } 32106 32107 // SetNodeType sets the NodeType field's value. 32108 func (s *Snapshot) SetNodeType(v string) *Snapshot { 32109 s.NodeType = &v 32110 return s 32111 } 32112 32113 // SetNumberOfNodes sets the NumberOfNodes field's value. 32114 func (s *Snapshot) SetNumberOfNodes(v int64) *Snapshot { 32115 s.NumberOfNodes = &v 32116 return s 32117 } 32118 32119 // SetOwnerAccount sets the OwnerAccount field's value. 32120 func (s *Snapshot) SetOwnerAccount(v string) *Snapshot { 32121 s.OwnerAccount = &v 32122 return s 32123 } 32124 32125 // SetPort sets the Port field's value. 32126 func (s *Snapshot) SetPort(v int64) *Snapshot { 32127 s.Port = &v 32128 return s 32129 } 32130 32131 // SetRestorableNodeTypes sets the RestorableNodeTypes field's value. 32132 func (s *Snapshot) SetRestorableNodeTypes(v []*string) *Snapshot { 32133 s.RestorableNodeTypes = v 32134 return s 32135 } 32136 32137 // SetSnapshotCreateTime sets the SnapshotCreateTime field's value. 32138 func (s *Snapshot) SetSnapshotCreateTime(v time.Time) *Snapshot { 32139 s.SnapshotCreateTime = &v 32140 return s 32141 } 32142 32143 // SetSnapshotIdentifier sets the SnapshotIdentifier field's value. 32144 func (s *Snapshot) SetSnapshotIdentifier(v string) *Snapshot { 32145 s.SnapshotIdentifier = &v 32146 return s 32147 } 32148 32149 // SetSnapshotRetentionStartTime sets the SnapshotRetentionStartTime field's value. 32150 func (s *Snapshot) SetSnapshotRetentionStartTime(v time.Time) *Snapshot { 32151 s.SnapshotRetentionStartTime = &v 32152 return s 32153 } 32154 32155 // SetSnapshotType sets the SnapshotType field's value. 32156 func (s *Snapshot) SetSnapshotType(v string) *Snapshot { 32157 s.SnapshotType = &v 32158 return s 32159 } 32160 32161 // SetSourceRegion sets the SourceRegion field's value. 32162 func (s *Snapshot) SetSourceRegion(v string) *Snapshot { 32163 s.SourceRegion = &v 32164 return s 32165 } 32166 32167 // SetStatus sets the Status field's value. 32168 func (s *Snapshot) SetStatus(v string) *Snapshot { 32169 s.Status = &v 32170 return s 32171 } 32172 32173 // SetTags sets the Tags field's value. 32174 func (s *Snapshot) SetTags(v []*Tag) *Snapshot { 32175 s.Tags = v 32176 return s 32177 } 32178 32179 // SetTotalBackupSizeInMegaBytes sets the TotalBackupSizeInMegaBytes field's value. 32180 func (s *Snapshot) SetTotalBackupSizeInMegaBytes(v float64) *Snapshot { 32181 s.TotalBackupSizeInMegaBytes = &v 32182 return s 32183 } 32184 32185 // SetVpcId sets the VpcId field's value. 32186 func (s *Snapshot) SetVpcId(v string) *Snapshot { 32187 s.VpcId = &v 32188 return s 32189 } 32190 32191 // The snapshot copy grant that grants Amazon Redshift permission to encrypt 32192 // copied snapshots with the specified customer master key (CMK) from Amazon 32193 // Web Services KMS in the destination region. 32194 // 32195 // For more information about managing snapshot copy grants, go to Amazon Redshift 32196 // Database Encryption (https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-db-encryption.html) 32197 // in the Amazon Redshift Cluster Management Guide. 32198 type SnapshotCopyGrant struct { 32199 _ struct{} `type:"structure"` 32200 32201 // The unique identifier of the customer master key (CMK) in Amazon Web Services 32202 // KMS to which Amazon Redshift is granted permission. 32203 KmsKeyId *string `type:"string"` 32204 32205 // The name of the snapshot copy grant. 32206 SnapshotCopyGrantName *string `type:"string"` 32207 32208 // A list of tag instances. 32209 Tags []*Tag `locationNameList:"Tag" type:"list"` 32210 } 32211 32212 // String returns the string representation. 32213 // 32214 // API parameter values that are decorated as "sensitive" in the API will not 32215 // be included in the string output. The member name will be present, but the 32216 // value will be replaced with "sensitive". 32217 func (s SnapshotCopyGrant) String() string { 32218 return awsutil.Prettify(s) 32219 } 32220 32221 // GoString returns the string representation. 32222 // 32223 // API parameter values that are decorated as "sensitive" in the API will not 32224 // be included in the string output. The member name will be present, but the 32225 // value will be replaced with "sensitive". 32226 func (s SnapshotCopyGrant) GoString() string { 32227 return s.String() 32228 } 32229 32230 // SetKmsKeyId sets the KmsKeyId field's value. 32231 func (s *SnapshotCopyGrant) SetKmsKeyId(v string) *SnapshotCopyGrant { 32232 s.KmsKeyId = &v 32233 return s 32234 } 32235 32236 // SetSnapshotCopyGrantName sets the SnapshotCopyGrantName field's value. 32237 func (s *SnapshotCopyGrant) SetSnapshotCopyGrantName(v string) *SnapshotCopyGrant { 32238 s.SnapshotCopyGrantName = &v 32239 return s 32240 } 32241 32242 // SetTags sets the Tags field's value. 32243 func (s *SnapshotCopyGrant) SetTags(v []*Tag) *SnapshotCopyGrant { 32244 s.Tags = v 32245 return s 32246 } 32247 32248 // Describes the errors returned by a snapshot. 32249 type SnapshotErrorMessage struct { 32250 _ struct{} `type:"structure"` 32251 32252 // The failure code for the error. 32253 FailureCode *string `type:"string"` 32254 32255 // The text message describing the error. 32256 FailureReason *string `type:"string"` 32257 32258 // A unique identifier for the cluster. 32259 SnapshotClusterIdentifier *string `type:"string"` 32260 32261 // A unique identifier for the snapshot returning the error. 32262 SnapshotIdentifier *string `type:"string"` 32263 } 32264 32265 // String returns the string representation. 32266 // 32267 // API parameter values that are decorated as "sensitive" in the API will not 32268 // be included in the string output. The member name will be present, but the 32269 // value will be replaced with "sensitive". 32270 func (s SnapshotErrorMessage) String() string { 32271 return awsutil.Prettify(s) 32272 } 32273 32274 // GoString returns the string representation. 32275 // 32276 // API parameter values that are decorated as "sensitive" in the API will not 32277 // be included in the string output. The member name will be present, but the 32278 // value will be replaced with "sensitive". 32279 func (s SnapshotErrorMessage) GoString() string { 32280 return s.String() 32281 } 32282 32283 // SetFailureCode sets the FailureCode field's value. 32284 func (s *SnapshotErrorMessage) SetFailureCode(v string) *SnapshotErrorMessage { 32285 s.FailureCode = &v 32286 return s 32287 } 32288 32289 // SetFailureReason sets the FailureReason field's value. 32290 func (s *SnapshotErrorMessage) SetFailureReason(v string) *SnapshotErrorMessage { 32291 s.FailureReason = &v 32292 return s 32293 } 32294 32295 // SetSnapshotClusterIdentifier sets the SnapshotClusterIdentifier field's value. 32296 func (s *SnapshotErrorMessage) SetSnapshotClusterIdentifier(v string) *SnapshotErrorMessage { 32297 s.SnapshotClusterIdentifier = &v 32298 return s 32299 } 32300 32301 // SetSnapshotIdentifier sets the SnapshotIdentifier field's value. 32302 func (s *SnapshotErrorMessage) SetSnapshotIdentifier(v string) *SnapshotErrorMessage { 32303 s.SnapshotIdentifier = &v 32304 return s 32305 } 32306 32307 // Describes a snapshot schedule. You can set a regular interval for creating 32308 // snapshots of a cluster. You can also schedule snapshots for specific dates. 32309 type SnapshotSchedule struct { 32310 _ struct{} `type:"structure"` 32311 32312 // The number of clusters associated with the schedule. 32313 AssociatedClusterCount *int64 `type:"integer"` 32314 32315 // A list of clusters associated with the schedule. A maximum of 100 clusters 32316 // is returned. 32317 AssociatedClusters []*ClusterAssociatedToSchedule `locationNameList:"ClusterAssociatedToSchedule" type:"list"` 32318 32319 NextInvocations []*time.Time `locationNameList:"SnapshotTime" type:"list"` 32320 32321 // A list of ScheduleDefinitions. 32322 ScheduleDefinitions []*string `locationNameList:"ScheduleDefinition" type:"list"` 32323 32324 // The description of the schedule. 32325 ScheduleDescription *string `type:"string"` 32326 32327 // A unique identifier for the schedule. 32328 ScheduleIdentifier *string `type:"string"` 32329 32330 // An optional set of tags describing the schedule. 32331 Tags []*Tag `locationNameList:"Tag" type:"list"` 32332 } 32333 32334 // String returns the string representation. 32335 // 32336 // API parameter values that are decorated as "sensitive" in the API will not 32337 // be included in the string output. The member name will be present, but the 32338 // value will be replaced with "sensitive". 32339 func (s SnapshotSchedule) String() string { 32340 return awsutil.Prettify(s) 32341 } 32342 32343 // GoString returns the string representation. 32344 // 32345 // API parameter values that are decorated as "sensitive" in the API will not 32346 // be included in the string output. The member name will be present, but the 32347 // value will be replaced with "sensitive". 32348 func (s SnapshotSchedule) GoString() string { 32349 return s.String() 32350 } 32351 32352 // SetAssociatedClusterCount sets the AssociatedClusterCount field's value. 32353 func (s *SnapshotSchedule) SetAssociatedClusterCount(v int64) *SnapshotSchedule { 32354 s.AssociatedClusterCount = &v 32355 return s 32356 } 32357 32358 // SetAssociatedClusters sets the AssociatedClusters field's value. 32359 func (s *SnapshotSchedule) SetAssociatedClusters(v []*ClusterAssociatedToSchedule) *SnapshotSchedule { 32360 s.AssociatedClusters = v 32361 return s 32362 } 32363 32364 // SetNextInvocations sets the NextInvocations field's value. 32365 func (s *SnapshotSchedule) SetNextInvocations(v []*time.Time) *SnapshotSchedule { 32366 s.NextInvocations = v 32367 return s 32368 } 32369 32370 // SetScheduleDefinitions sets the ScheduleDefinitions field's value. 32371 func (s *SnapshotSchedule) SetScheduleDefinitions(v []*string) *SnapshotSchedule { 32372 s.ScheduleDefinitions = v 32373 return s 32374 } 32375 32376 // SetScheduleDescription sets the ScheduleDescription field's value. 32377 func (s *SnapshotSchedule) SetScheduleDescription(v string) *SnapshotSchedule { 32378 s.ScheduleDescription = &v 32379 return s 32380 } 32381 32382 // SetScheduleIdentifier sets the ScheduleIdentifier field's value. 32383 func (s *SnapshotSchedule) SetScheduleIdentifier(v string) *SnapshotSchedule { 32384 s.ScheduleIdentifier = &v 32385 return s 32386 } 32387 32388 // SetTags sets the Tags field's value. 32389 func (s *SnapshotSchedule) SetTags(v []*Tag) *SnapshotSchedule { 32390 s.Tags = v 32391 return s 32392 } 32393 32394 // Describes a sorting entity 32395 type SnapshotSortingEntity struct { 32396 _ struct{} `type:"structure"` 32397 32398 // The category for sorting the snapshots. 32399 // 32400 // Attribute is a required field 32401 Attribute *string `type:"string" required:"true" enum:"SnapshotAttributeToSortBy"` 32402 32403 // The order for listing the attributes. 32404 SortOrder *string `type:"string" enum:"SortByOrder"` 32405 } 32406 32407 // String returns the string representation. 32408 // 32409 // API parameter values that are decorated as "sensitive" in the API will not 32410 // be included in the string output. The member name will be present, but the 32411 // value will be replaced with "sensitive". 32412 func (s SnapshotSortingEntity) String() string { 32413 return awsutil.Prettify(s) 32414 } 32415 32416 // GoString returns the string representation. 32417 // 32418 // API parameter values that are decorated as "sensitive" in the API will not 32419 // be included in the string output. The member name will be present, but the 32420 // value will be replaced with "sensitive". 32421 func (s SnapshotSortingEntity) GoString() string { 32422 return s.String() 32423 } 32424 32425 // Validate inspects the fields of the type to determine if they are valid. 32426 func (s *SnapshotSortingEntity) Validate() error { 32427 invalidParams := request.ErrInvalidParams{Context: "SnapshotSortingEntity"} 32428 if s.Attribute == nil { 32429 invalidParams.Add(request.NewErrParamRequired("Attribute")) 32430 } 32431 32432 if invalidParams.Len() > 0 { 32433 return invalidParams 32434 } 32435 return nil 32436 } 32437 32438 // SetAttribute sets the Attribute field's value. 32439 func (s *SnapshotSortingEntity) SetAttribute(v string) *SnapshotSortingEntity { 32440 s.Attribute = &v 32441 return s 32442 } 32443 32444 // SetSortOrder sets the SortOrder field's value. 32445 func (s *SnapshotSortingEntity) SetSortOrder(v string) *SnapshotSortingEntity { 32446 s.SortOrder = &v 32447 return s 32448 } 32449 32450 // Describes a subnet. 32451 type Subnet struct { 32452 _ struct{} `type:"structure"` 32453 32454 // Describes an availability zone. 32455 SubnetAvailabilityZone *AvailabilityZone `type:"structure"` 32456 32457 // The identifier of the subnet. 32458 SubnetIdentifier *string `type:"string"` 32459 32460 // The status of the subnet. 32461 SubnetStatus *string `type:"string"` 32462 } 32463 32464 // String returns the string representation. 32465 // 32466 // API parameter values that are decorated as "sensitive" in the API will not 32467 // be included in the string output. The member name will be present, but the 32468 // value will be replaced with "sensitive". 32469 func (s Subnet) String() string { 32470 return awsutil.Prettify(s) 32471 } 32472 32473 // GoString returns the string representation. 32474 // 32475 // API parameter values that are decorated as "sensitive" in the API will not 32476 // be included in the string output. The member name will be present, but the 32477 // value will be replaced with "sensitive". 32478 func (s Subnet) GoString() string { 32479 return s.String() 32480 } 32481 32482 // SetSubnetAvailabilityZone sets the SubnetAvailabilityZone field's value. 32483 func (s *Subnet) SetSubnetAvailabilityZone(v *AvailabilityZone) *Subnet { 32484 s.SubnetAvailabilityZone = v 32485 return s 32486 } 32487 32488 // SetSubnetIdentifier sets the SubnetIdentifier field's value. 32489 func (s *Subnet) SetSubnetIdentifier(v string) *Subnet { 32490 s.SubnetIdentifier = &v 32491 return s 32492 } 32493 32494 // SetSubnetStatus sets the SubnetStatus field's value. 32495 func (s *Subnet) SetSubnetStatus(v string) *Subnet { 32496 s.SubnetStatus = &v 32497 return s 32498 } 32499 32500 // Describes the operations that are allowed on a maintenance track. 32501 type SupportedOperation struct { 32502 _ struct{} `type:"structure"` 32503 32504 // A list of the supported operations. 32505 OperationName *string `type:"string"` 32506 } 32507 32508 // String returns the string representation. 32509 // 32510 // API parameter values that are decorated as "sensitive" in the API will not 32511 // be included in the string output. The member name will be present, but the 32512 // value will be replaced with "sensitive". 32513 func (s SupportedOperation) String() string { 32514 return awsutil.Prettify(s) 32515 } 32516 32517 // GoString returns the string representation. 32518 // 32519 // API parameter values that are decorated as "sensitive" in the API will not 32520 // be included in the string output. The member name will be present, but the 32521 // value will be replaced with "sensitive". 32522 func (s SupportedOperation) GoString() string { 32523 return s.String() 32524 } 32525 32526 // SetOperationName sets the OperationName field's value. 32527 func (s *SupportedOperation) SetOperationName(v string) *SupportedOperation { 32528 s.OperationName = &v 32529 return s 32530 } 32531 32532 // A list of supported platforms for orderable clusters. 32533 type SupportedPlatform struct { 32534 _ struct{} `type:"structure"` 32535 32536 Name *string `type:"string"` 32537 } 32538 32539 // String returns the string representation. 32540 // 32541 // API parameter values that are decorated as "sensitive" in the API will not 32542 // be included in the string output. The member name will be present, but the 32543 // value will be replaced with "sensitive". 32544 func (s SupportedPlatform) String() string { 32545 return awsutil.Prettify(s) 32546 } 32547 32548 // GoString returns the string representation. 32549 // 32550 // API parameter values that are decorated as "sensitive" in the API will not 32551 // be included in the string output. The member name will be present, but the 32552 // value will be replaced with "sensitive". 32553 func (s SupportedPlatform) GoString() string { 32554 return s.String() 32555 } 32556 32557 // SetName sets the Name field's value. 32558 func (s *SupportedPlatform) SetName(v string) *SupportedPlatform { 32559 s.Name = &v 32560 return s 32561 } 32562 32563 // Describes the status of a RestoreTableFromClusterSnapshot operation. 32564 type TableRestoreStatus struct { 32565 _ struct{} `type:"structure"` 32566 32567 // The identifier of the Amazon Redshift cluster that the table is being restored 32568 // to. 32569 ClusterIdentifier *string `type:"string"` 32570 32571 // A description of the status of the table restore request. Status values include 32572 // SUCCEEDED, FAILED, CANCELED, PENDING, IN_PROGRESS. 32573 Message *string `type:"string"` 32574 32575 // The name of the table to create as a result of the table restore request. 32576 NewTableName *string `type:"string"` 32577 32578 // The amount of data restored to the new table so far, in megabytes (MB). 32579 ProgressInMegaBytes *int64 `type:"long"` 32580 32581 // The time that the table restore request was made, in Universal Coordinated 32582 // Time (UTC). 32583 RequestTime *time.Time `type:"timestamp"` 32584 32585 // The identifier of the snapshot that the table is being restored from. 32586 SnapshotIdentifier *string `type:"string"` 32587 32588 // The name of the source database that contains the table being restored. 32589 SourceDatabaseName *string `type:"string"` 32590 32591 // The name of the source schema that contains the table being restored. 32592 SourceSchemaName *string `type:"string"` 32593 32594 // The name of the source table being restored. 32595 SourceTableName *string `type:"string"` 32596 32597 // A value that describes the current state of the table restore request. 32598 // 32599 // Valid Values: SUCCEEDED, FAILED, CANCELED, PENDING, IN_PROGRESS 32600 Status *string `type:"string" enum:"TableRestoreStatusType"` 32601 32602 // The unique identifier for the table restore request. 32603 TableRestoreRequestId *string `type:"string"` 32604 32605 // The name of the database to restore the table to. 32606 TargetDatabaseName *string `type:"string"` 32607 32608 // The name of the schema to restore the table to. 32609 TargetSchemaName *string `type:"string"` 32610 32611 // The total amount of data to restore to the new table, in megabytes (MB). 32612 TotalDataInMegaBytes *int64 `type:"long"` 32613 } 32614 32615 // String returns the string representation. 32616 // 32617 // API parameter values that are decorated as "sensitive" in the API will not 32618 // be included in the string output. The member name will be present, but the 32619 // value will be replaced with "sensitive". 32620 func (s TableRestoreStatus) String() string { 32621 return awsutil.Prettify(s) 32622 } 32623 32624 // GoString returns the string representation. 32625 // 32626 // API parameter values that are decorated as "sensitive" in the API will not 32627 // be included in the string output. The member name will be present, but the 32628 // value will be replaced with "sensitive". 32629 func (s TableRestoreStatus) GoString() string { 32630 return s.String() 32631 } 32632 32633 // SetClusterIdentifier sets the ClusterIdentifier field's value. 32634 func (s *TableRestoreStatus) SetClusterIdentifier(v string) *TableRestoreStatus { 32635 s.ClusterIdentifier = &v 32636 return s 32637 } 32638 32639 // SetMessage sets the Message field's value. 32640 func (s *TableRestoreStatus) SetMessage(v string) *TableRestoreStatus { 32641 s.Message = &v 32642 return s 32643 } 32644 32645 // SetNewTableName sets the NewTableName field's value. 32646 func (s *TableRestoreStatus) SetNewTableName(v string) *TableRestoreStatus { 32647 s.NewTableName = &v 32648 return s 32649 } 32650 32651 // SetProgressInMegaBytes sets the ProgressInMegaBytes field's value. 32652 func (s *TableRestoreStatus) SetProgressInMegaBytes(v int64) *TableRestoreStatus { 32653 s.ProgressInMegaBytes = &v 32654 return s 32655 } 32656 32657 // SetRequestTime sets the RequestTime field's value. 32658 func (s *TableRestoreStatus) SetRequestTime(v time.Time) *TableRestoreStatus { 32659 s.RequestTime = &v 32660 return s 32661 } 32662 32663 // SetSnapshotIdentifier sets the SnapshotIdentifier field's value. 32664 func (s *TableRestoreStatus) SetSnapshotIdentifier(v string) *TableRestoreStatus { 32665 s.SnapshotIdentifier = &v 32666 return s 32667 } 32668 32669 // SetSourceDatabaseName sets the SourceDatabaseName field's value. 32670 func (s *TableRestoreStatus) SetSourceDatabaseName(v string) *TableRestoreStatus { 32671 s.SourceDatabaseName = &v 32672 return s 32673 } 32674 32675 // SetSourceSchemaName sets the SourceSchemaName field's value. 32676 func (s *TableRestoreStatus) SetSourceSchemaName(v string) *TableRestoreStatus { 32677 s.SourceSchemaName = &v 32678 return s 32679 } 32680 32681 // SetSourceTableName sets the SourceTableName field's value. 32682 func (s *TableRestoreStatus) SetSourceTableName(v string) *TableRestoreStatus { 32683 s.SourceTableName = &v 32684 return s 32685 } 32686 32687 // SetStatus sets the Status field's value. 32688 func (s *TableRestoreStatus) SetStatus(v string) *TableRestoreStatus { 32689 s.Status = &v 32690 return s 32691 } 32692 32693 // SetTableRestoreRequestId sets the TableRestoreRequestId field's value. 32694 func (s *TableRestoreStatus) SetTableRestoreRequestId(v string) *TableRestoreStatus { 32695 s.TableRestoreRequestId = &v 32696 return s 32697 } 32698 32699 // SetTargetDatabaseName sets the TargetDatabaseName field's value. 32700 func (s *TableRestoreStatus) SetTargetDatabaseName(v string) *TableRestoreStatus { 32701 s.TargetDatabaseName = &v 32702 return s 32703 } 32704 32705 // SetTargetSchemaName sets the TargetSchemaName field's value. 32706 func (s *TableRestoreStatus) SetTargetSchemaName(v string) *TableRestoreStatus { 32707 s.TargetSchemaName = &v 32708 return s 32709 } 32710 32711 // SetTotalDataInMegaBytes sets the TotalDataInMegaBytes field's value. 32712 func (s *TableRestoreStatus) SetTotalDataInMegaBytes(v int64) *TableRestoreStatus { 32713 s.TotalDataInMegaBytes = &v 32714 return s 32715 } 32716 32717 // A tag consisting of a name/value pair for a resource. 32718 type Tag struct { 32719 _ struct{} `type:"structure"` 32720 32721 // The key, or name, for the resource tag. 32722 Key *string `type:"string"` 32723 32724 // The value for the resource tag. 32725 Value *string `type:"string"` 32726 } 32727 32728 // String returns the string representation. 32729 // 32730 // API parameter values that are decorated as "sensitive" in the API will not 32731 // be included in the string output. The member name will be present, but the 32732 // value will be replaced with "sensitive". 32733 func (s Tag) String() string { 32734 return awsutil.Prettify(s) 32735 } 32736 32737 // GoString returns the string representation. 32738 // 32739 // API parameter values that are decorated as "sensitive" in the API will not 32740 // be included in the string output. The member name will be present, but the 32741 // value will be replaced with "sensitive". 32742 func (s Tag) GoString() string { 32743 return s.String() 32744 } 32745 32746 // SetKey sets the Key field's value. 32747 func (s *Tag) SetKey(v string) *Tag { 32748 s.Key = &v 32749 return s 32750 } 32751 32752 // SetValue sets the Value field's value. 32753 func (s *Tag) SetValue(v string) *Tag { 32754 s.Value = &v 32755 return s 32756 } 32757 32758 // A tag and its associated resource. 32759 type TaggedResource struct { 32760 _ struct{} `type:"structure"` 32761 32762 // The Amazon Resource Name (ARN) with which the tag is associated, for example: 32763 // arn:aws:redshift:us-east-2:123456789:cluster:t1. 32764 ResourceName *string `type:"string"` 32765 32766 // The type of resource with which the tag is associated. Valid resource types 32767 // are: 32768 // 32769 // * Cluster 32770 // 32771 // * CIDR/IP 32772 // 32773 // * EC2 security group 32774 // 32775 // * Snapshot 32776 // 32777 // * Cluster security group 32778 // 32779 // * Subnet group 32780 // 32781 // * HSM connection 32782 // 32783 // * HSM certificate 32784 // 32785 // * Parameter group 32786 // 32787 // For more information about Amazon Redshift resource types and constructing 32788 // ARNs, go to Constructing an Amazon Redshift Amazon Resource Name (ARN) (https://docs.aws.amazon.com/redshift/latest/mgmt/redshift-iam-access-control-overview.html#redshift-iam-access-control-specify-actions) 32789 // in the Amazon Redshift Cluster Management Guide. 32790 ResourceType *string `type:"string"` 32791 32792 // The tag for the resource. 32793 Tag *Tag `type:"structure"` 32794 } 32795 32796 // String returns the string representation. 32797 // 32798 // API parameter values that are decorated as "sensitive" in the API will not 32799 // be included in the string output. The member name will be present, but the 32800 // value will be replaced with "sensitive". 32801 func (s TaggedResource) String() string { 32802 return awsutil.Prettify(s) 32803 } 32804 32805 // GoString returns the string representation. 32806 // 32807 // API parameter values that are decorated as "sensitive" in the API will not 32808 // be included in the string output. The member name will be present, but the 32809 // value will be replaced with "sensitive". 32810 func (s TaggedResource) GoString() string { 32811 return s.String() 32812 } 32813 32814 // SetResourceName sets the ResourceName field's value. 32815 func (s *TaggedResource) SetResourceName(v string) *TaggedResource { 32816 s.ResourceName = &v 32817 return s 32818 } 32819 32820 // SetResourceType sets the ResourceType field's value. 32821 func (s *TaggedResource) SetResourceType(v string) *TaggedResource { 32822 s.ResourceType = &v 32823 return s 32824 } 32825 32826 // SetTag sets the Tag field's value. 32827 func (s *TaggedResource) SetTag(v *Tag) *TaggedResource { 32828 s.Tag = v 32829 return s 32830 } 32831 32832 type UpdatePartnerStatusInput struct { 32833 _ struct{} `type:"structure"` 32834 32835 // The Amazon Web Services account ID that owns the cluster. 32836 // 32837 // AccountId is a required field 32838 AccountId *string `min:"12" type:"string" required:"true"` 32839 32840 // The cluster identifier of the cluster whose partner integration status is 32841 // being updated. 32842 // 32843 // ClusterIdentifier is a required field 32844 ClusterIdentifier *string `type:"string" required:"true"` 32845 32846 // The name of the database whose partner integration status is being updated. 32847 // 32848 // DatabaseName is a required field 32849 DatabaseName *string `type:"string" required:"true"` 32850 32851 // The name of the partner whose integration status is being updated. 32852 // 32853 // PartnerName is a required field 32854 PartnerName *string `type:"string" required:"true"` 32855 32856 // The value of the updated status. 32857 // 32858 // Status is a required field 32859 Status *string `type:"string" required:"true" enum:"PartnerIntegrationStatus"` 32860 32861 // The status message provided by the partner. 32862 StatusMessage *string `type:"string"` 32863 } 32864 32865 // String returns the string representation. 32866 // 32867 // API parameter values that are decorated as "sensitive" in the API will not 32868 // be included in the string output. The member name will be present, but the 32869 // value will be replaced with "sensitive". 32870 func (s UpdatePartnerStatusInput) String() string { 32871 return awsutil.Prettify(s) 32872 } 32873 32874 // GoString returns the string representation. 32875 // 32876 // API parameter values that are decorated as "sensitive" in the API will not 32877 // be included in the string output. The member name will be present, but the 32878 // value will be replaced with "sensitive". 32879 func (s UpdatePartnerStatusInput) GoString() string { 32880 return s.String() 32881 } 32882 32883 // Validate inspects the fields of the type to determine if they are valid. 32884 func (s *UpdatePartnerStatusInput) Validate() error { 32885 invalidParams := request.ErrInvalidParams{Context: "UpdatePartnerStatusInput"} 32886 if s.AccountId == nil { 32887 invalidParams.Add(request.NewErrParamRequired("AccountId")) 32888 } 32889 if s.AccountId != nil && len(*s.AccountId) < 12 { 32890 invalidParams.Add(request.NewErrParamMinLen("AccountId", 12)) 32891 } 32892 if s.ClusterIdentifier == nil { 32893 invalidParams.Add(request.NewErrParamRequired("ClusterIdentifier")) 32894 } 32895 if s.DatabaseName == nil { 32896 invalidParams.Add(request.NewErrParamRequired("DatabaseName")) 32897 } 32898 if s.PartnerName == nil { 32899 invalidParams.Add(request.NewErrParamRequired("PartnerName")) 32900 } 32901 if s.Status == nil { 32902 invalidParams.Add(request.NewErrParamRequired("Status")) 32903 } 32904 32905 if invalidParams.Len() > 0 { 32906 return invalidParams 32907 } 32908 return nil 32909 } 32910 32911 // SetAccountId sets the AccountId field's value. 32912 func (s *UpdatePartnerStatusInput) SetAccountId(v string) *UpdatePartnerStatusInput { 32913 s.AccountId = &v 32914 return s 32915 } 32916 32917 // SetClusterIdentifier sets the ClusterIdentifier field's value. 32918 func (s *UpdatePartnerStatusInput) SetClusterIdentifier(v string) *UpdatePartnerStatusInput { 32919 s.ClusterIdentifier = &v 32920 return s 32921 } 32922 32923 // SetDatabaseName sets the DatabaseName field's value. 32924 func (s *UpdatePartnerStatusInput) SetDatabaseName(v string) *UpdatePartnerStatusInput { 32925 s.DatabaseName = &v 32926 return s 32927 } 32928 32929 // SetPartnerName sets the PartnerName field's value. 32930 func (s *UpdatePartnerStatusInput) SetPartnerName(v string) *UpdatePartnerStatusInput { 32931 s.PartnerName = &v 32932 return s 32933 } 32934 32935 // SetStatus sets the Status field's value. 32936 func (s *UpdatePartnerStatusInput) SetStatus(v string) *UpdatePartnerStatusInput { 32937 s.Status = &v 32938 return s 32939 } 32940 32941 // SetStatusMessage sets the StatusMessage field's value. 32942 func (s *UpdatePartnerStatusInput) SetStatusMessage(v string) *UpdatePartnerStatusInput { 32943 s.StatusMessage = &v 32944 return s 32945 } 32946 32947 type UpdatePartnerStatusOutput struct { 32948 _ struct{} `type:"structure"` 32949 32950 // The name of the database that receives data from the partner. 32951 DatabaseName *string `type:"string"` 32952 32953 // The name of the partner that is authorized to send data. 32954 PartnerName *string `type:"string"` 32955 } 32956 32957 // String returns the string representation. 32958 // 32959 // API parameter values that are decorated as "sensitive" in the API will not 32960 // be included in the string output. The member name will be present, but the 32961 // value will be replaced with "sensitive". 32962 func (s UpdatePartnerStatusOutput) String() string { 32963 return awsutil.Prettify(s) 32964 } 32965 32966 // GoString returns the string representation. 32967 // 32968 // API parameter values that are decorated as "sensitive" in the API will not 32969 // be included in the string output. The member name will be present, but the 32970 // value will be replaced with "sensitive". 32971 func (s UpdatePartnerStatusOutput) GoString() string { 32972 return s.String() 32973 } 32974 32975 // SetDatabaseName sets the DatabaseName field's value. 32976 func (s *UpdatePartnerStatusOutput) SetDatabaseName(v string) *UpdatePartnerStatusOutput { 32977 s.DatabaseName = &v 32978 return s 32979 } 32980 32981 // SetPartnerName sets the PartnerName field's value. 32982 func (s *UpdatePartnerStatusOutput) SetPartnerName(v string) *UpdatePartnerStatusOutput { 32983 s.PartnerName = &v 32984 return s 32985 } 32986 32987 // A maintenance track that you can switch the current track to. 32988 type UpdateTarget struct { 32989 _ struct{} `type:"structure"` 32990 32991 // The cluster version for the new maintenance track. 32992 DatabaseVersion *string `type:"string"` 32993 32994 // The name of the new maintenance track. 32995 MaintenanceTrackName *string `type:"string"` 32996 32997 // A list of operations supported by the maintenance track. 32998 SupportedOperations []*SupportedOperation `locationNameList:"SupportedOperation" type:"list"` 32999 } 33000 33001 // String returns the string representation. 33002 // 33003 // API parameter values that are decorated as "sensitive" in the API will not 33004 // be included in the string output. The member name will be present, but the 33005 // value will be replaced with "sensitive". 33006 func (s UpdateTarget) String() string { 33007 return awsutil.Prettify(s) 33008 } 33009 33010 // GoString returns the string representation. 33011 // 33012 // API parameter values that are decorated as "sensitive" in the API will not 33013 // be included in the string output. The member name will be present, but the 33014 // value will be replaced with "sensitive". 33015 func (s UpdateTarget) GoString() string { 33016 return s.String() 33017 } 33018 33019 // SetDatabaseVersion sets the DatabaseVersion field's value. 33020 func (s *UpdateTarget) SetDatabaseVersion(v string) *UpdateTarget { 33021 s.DatabaseVersion = &v 33022 return s 33023 } 33024 33025 // SetMaintenanceTrackName sets the MaintenanceTrackName field's value. 33026 func (s *UpdateTarget) SetMaintenanceTrackName(v string) *UpdateTarget { 33027 s.MaintenanceTrackName = &v 33028 return s 33029 } 33030 33031 // SetSupportedOperations sets the SupportedOperations field's value. 33032 func (s *UpdateTarget) SetSupportedOperations(v []*SupportedOperation) *UpdateTarget { 33033 s.SupportedOperations = v 33034 return s 33035 } 33036 33037 // Describes a usage limit object for a cluster. 33038 type UsageLimit struct { 33039 _ struct{} `type:"structure"` 33040 33041 // The limit amount. If time-based, this amount is in minutes. If data-based, 33042 // this amount is in terabytes (TB). 33043 Amount *int64 `type:"long"` 33044 33045 // The action that Amazon Redshift takes when the limit is reached. Possible 33046 // values are: 33047 // 33048 // * log - To log an event in a system table. The default is log. 33049 // 33050 // * emit-metric - To emit CloudWatch metrics. 33051 // 33052 // * disable - To disable the feature until the next usage period begins. 33053 BreachAction *string `type:"string" enum:"UsageLimitBreachAction"` 33054 33055 // The identifier of the cluster with a usage limit. 33056 ClusterIdentifier *string `type:"string"` 33057 33058 // The Amazon Redshift feature to which the limit applies. 33059 FeatureType *string `type:"string" enum:"UsageLimitFeatureType"` 33060 33061 // The type of limit. Depending on the feature type, this can be based on a 33062 // time duration or data size. 33063 LimitType *string `type:"string" enum:"UsageLimitLimitType"` 33064 33065 // The time period that the amount applies to. A weekly period begins on Sunday. 33066 // The default is monthly. 33067 Period *string `type:"string" enum:"UsageLimitPeriod"` 33068 33069 // A list of tag instances. 33070 Tags []*Tag `locationNameList:"Tag" type:"list"` 33071 33072 // The identifier of the usage limit. 33073 UsageLimitId *string `type:"string"` 33074 } 33075 33076 // String returns the string representation. 33077 // 33078 // API parameter values that are decorated as "sensitive" in the API will not 33079 // be included in the string output. The member name will be present, but the 33080 // value will be replaced with "sensitive". 33081 func (s UsageLimit) String() string { 33082 return awsutil.Prettify(s) 33083 } 33084 33085 // GoString returns the string representation. 33086 // 33087 // API parameter values that are decorated as "sensitive" in the API will not 33088 // be included in the string output. The member name will be present, but the 33089 // value will be replaced with "sensitive". 33090 func (s UsageLimit) GoString() string { 33091 return s.String() 33092 } 33093 33094 // SetAmount sets the Amount field's value. 33095 func (s *UsageLimit) SetAmount(v int64) *UsageLimit { 33096 s.Amount = &v 33097 return s 33098 } 33099 33100 // SetBreachAction sets the BreachAction field's value. 33101 func (s *UsageLimit) SetBreachAction(v string) *UsageLimit { 33102 s.BreachAction = &v 33103 return s 33104 } 33105 33106 // SetClusterIdentifier sets the ClusterIdentifier field's value. 33107 func (s *UsageLimit) SetClusterIdentifier(v string) *UsageLimit { 33108 s.ClusterIdentifier = &v 33109 return s 33110 } 33111 33112 // SetFeatureType sets the FeatureType field's value. 33113 func (s *UsageLimit) SetFeatureType(v string) *UsageLimit { 33114 s.FeatureType = &v 33115 return s 33116 } 33117 33118 // SetLimitType sets the LimitType field's value. 33119 func (s *UsageLimit) SetLimitType(v string) *UsageLimit { 33120 s.LimitType = &v 33121 return s 33122 } 33123 33124 // SetPeriod sets the Period field's value. 33125 func (s *UsageLimit) SetPeriod(v string) *UsageLimit { 33126 s.Period = &v 33127 return s 33128 } 33129 33130 // SetTags sets the Tags field's value. 33131 func (s *UsageLimit) SetTags(v []*Tag) *UsageLimit { 33132 s.Tags = v 33133 return s 33134 } 33135 33136 // SetUsageLimitId sets the UsageLimitId field's value. 33137 func (s *UsageLimit) SetUsageLimitId(v string) *UsageLimit { 33138 s.UsageLimitId = &v 33139 return s 33140 } 33141 33142 // The connection endpoint for connecting to an Amazon Redshift cluster through 33143 // the proxy. 33144 type VpcEndpoint struct { 33145 _ struct{} `type:"structure"` 33146 33147 // One or more network interfaces of the endpoint. Also known as an interface 33148 // endpoint. 33149 NetworkInterfaces []*NetworkInterface `locationNameList:"NetworkInterface" type:"list"` 33150 33151 // The connection endpoint ID for connecting an Amazon Redshift cluster through 33152 // the proxy. 33153 VpcEndpointId *string `type:"string"` 33154 33155 // The VPC identifier that the endpoint is associated. 33156 VpcId *string `type:"string"` 33157 } 33158 33159 // String returns the string representation. 33160 // 33161 // API parameter values that are decorated as "sensitive" in the API will not 33162 // be included in the string output. The member name will be present, but the 33163 // value will be replaced with "sensitive". 33164 func (s VpcEndpoint) String() string { 33165 return awsutil.Prettify(s) 33166 } 33167 33168 // GoString returns the string representation. 33169 // 33170 // API parameter values that are decorated as "sensitive" in the API will not 33171 // be included in the string output. The member name will be present, but the 33172 // value will be replaced with "sensitive". 33173 func (s VpcEndpoint) GoString() string { 33174 return s.String() 33175 } 33176 33177 // SetNetworkInterfaces sets the NetworkInterfaces field's value. 33178 func (s *VpcEndpoint) SetNetworkInterfaces(v []*NetworkInterface) *VpcEndpoint { 33179 s.NetworkInterfaces = v 33180 return s 33181 } 33182 33183 // SetVpcEndpointId sets the VpcEndpointId field's value. 33184 func (s *VpcEndpoint) SetVpcEndpointId(v string) *VpcEndpoint { 33185 s.VpcEndpointId = &v 33186 return s 33187 } 33188 33189 // SetVpcId sets the VpcId field's value. 33190 func (s *VpcEndpoint) SetVpcId(v string) *VpcEndpoint { 33191 s.VpcId = &v 33192 return s 33193 } 33194 33195 // Describes the members of a VPC security group. 33196 type VpcSecurityGroupMembership struct { 33197 _ struct{} `type:"structure"` 33198 33199 // The status of the VPC security group. 33200 Status *string `type:"string"` 33201 33202 // The identifier of the VPC security group. 33203 VpcSecurityGroupId *string `type:"string"` 33204 } 33205 33206 // String returns the string representation. 33207 // 33208 // API parameter values that are decorated as "sensitive" in the API will not 33209 // be included in the string output. The member name will be present, but the 33210 // value will be replaced with "sensitive". 33211 func (s VpcSecurityGroupMembership) String() string { 33212 return awsutil.Prettify(s) 33213 } 33214 33215 // GoString returns the string representation. 33216 // 33217 // API parameter values that are decorated as "sensitive" in the API will not 33218 // be included in the string output. The member name will be present, but the 33219 // value will be replaced with "sensitive". 33220 func (s VpcSecurityGroupMembership) GoString() string { 33221 return s.String() 33222 } 33223 33224 // SetStatus sets the Status field's value. 33225 func (s *VpcSecurityGroupMembership) SetStatus(v string) *VpcSecurityGroupMembership { 33226 s.Status = &v 33227 return s 33228 } 33229 33230 // SetVpcSecurityGroupId sets the VpcSecurityGroupId field's value. 33231 func (s *VpcSecurityGroupMembership) SetVpcSecurityGroupId(v string) *VpcSecurityGroupMembership { 33232 s.VpcSecurityGroupId = &v 33233 return s 33234 } 33235 33236 const ( 33237 // ActionTypeRestoreCluster is a ActionType enum value 33238 ActionTypeRestoreCluster = "restore-cluster" 33239 33240 // ActionTypeRecommendNodeConfig is a ActionType enum value 33241 ActionTypeRecommendNodeConfig = "recommend-node-config" 33242 33243 // ActionTypeResizeCluster is a ActionType enum value 33244 ActionTypeResizeCluster = "resize-cluster" 33245 ) 33246 33247 // ActionType_Values returns all elements of the ActionType enum 33248 func ActionType_Values() []string { 33249 return []string{ 33250 ActionTypeRestoreCluster, 33251 ActionTypeRecommendNodeConfig, 33252 ActionTypeResizeCluster, 33253 } 33254 } 33255 33256 const ( 33257 // AquaConfigurationStatusEnabled is a AquaConfigurationStatus enum value 33258 AquaConfigurationStatusEnabled = "enabled" 33259 33260 // AquaConfigurationStatusDisabled is a AquaConfigurationStatus enum value 33261 AquaConfigurationStatusDisabled = "disabled" 33262 33263 // AquaConfigurationStatusAuto is a AquaConfigurationStatus enum value 33264 AquaConfigurationStatusAuto = "auto" 33265 ) 33266 33267 // AquaConfigurationStatus_Values returns all elements of the AquaConfigurationStatus enum 33268 func AquaConfigurationStatus_Values() []string { 33269 return []string{ 33270 AquaConfigurationStatusEnabled, 33271 AquaConfigurationStatusDisabled, 33272 AquaConfigurationStatusAuto, 33273 } 33274 } 33275 33276 const ( 33277 // AquaStatusEnabled is a AquaStatus enum value 33278 AquaStatusEnabled = "enabled" 33279 33280 // AquaStatusDisabled is a AquaStatus enum value 33281 AquaStatusDisabled = "disabled" 33282 33283 // AquaStatusApplying is a AquaStatus enum value 33284 AquaStatusApplying = "applying" 33285 ) 33286 33287 // AquaStatus_Values returns all elements of the AquaStatus enum 33288 func AquaStatus_Values() []string { 33289 return []string{ 33290 AquaStatusEnabled, 33291 AquaStatusDisabled, 33292 AquaStatusApplying, 33293 } 33294 } 33295 33296 const ( 33297 // AuthorizationStatusAuthorized is a AuthorizationStatus enum value 33298 AuthorizationStatusAuthorized = "Authorized" 33299 33300 // AuthorizationStatusRevoking is a AuthorizationStatus enum value 33301 AuthorizationStatusRevoking = "Revoking" 33302 ) 33303 33304 // AuthorizationStatus_Values returns all elements of the AuthorizationStatus enum 33305 func AuthorizationStatus_Values() []string { 33306 return []string{ 33307 AuthorizationStatusAuthorized, 33308 AuthorizationStatusRevoking, 33309 } 33310 } 33311 33312 const ( 33313 // DataShareStatusActive is a DataShareStatus enum value 33314 DataShareStatusActive = "ACTIVE" 33315 33316 // DataShareStatusPendingAuthorization is a DataShareStatus enum value 33317 DataShareStatusPendingAuthorization = "PENDING_AUTHORIZATION" 33318 33319 // DataShareStatusAuthorized is a DataShareStatus enum value 33320 DataShareStatusAuthorized = "AUTHORIZED" 33321 33322 // DataShareStatusDeauthorized is a DataShareStatus enum value 33323 DataShareStatusDeauthorized = "DEAUTHORIZED" 33324 33325 // DataShareStatusRejected is a DataShareStatus enum value 33326 DataShareStatusRejected = "REJECTED" 33327 33328 // DataShareStatusAvailable is a DataShareStatus enum value 33329 DataShareStatusAvailable = "AVAILABLE" 33330 ) 33331 33332 // DataShareStatus_Values returns all elements of the DataShareStatus enum 33333 func DataShareStatus_Values() []string { 33334 return []string{ 33335 DataShareStatusActive, 33336 DataShareStatusPendingAuthorization, 33337 DataShareStatusAuthorized, 33338 DataShareStatusDeauthorized, 33339 DataShareStatusRejected, 33340 DataShareStatusAvailable, 33341 } 33342 } 33343 33344 const ( 33345 // DataShareStatusForConsumerActive is a DataShareStatusForConsumer enum value 33346 DataShareStatusForConsumerActive = "ACTIVE" 33347 33348 // DataShareStatusForConsumerAvailable is a DataShareStatusForConsumer enum value 33349 DataShareStatusForConsumerAvailable = "AVAILABLE" 33350 ) 33351 33352 // DataShareStatusForConsumer_Values returns all elements of the DataShareStatusForConsumer enum 33353 func DataShareStatusForConsumer_Values() []string { 33354 return []string{ 33355 DataShareStatusForConsumerActive, 33356 DataShareStatusForConsumerAvailable, 33357 } 33358 } 33359 33360 const ( 33361 // DataShareStatusForProducerActive is a DataShareStatusForProducer enum value 33362 DataShareStatusForProducerActive = "ACTIVE" 33363 33364 // DataShareStatusForProducerAuthorized is a DataShareStatusForProducer enum value 33365 DataShareStatusForProducerAuthorized = "AUTHORIZED" 33366 33367 // DataShareStatusForProducerPendingAuthorization is a DataShareStatusForProducer enum value 33368 DataShareStatusForProducerPendingAuthorization = "PENDING_AUTHORIZATION" 33369 33370 // DataShareStatusForProducerDeauthorized is a DataShareStatusForProducer enum value 33371 DataShareStatusForProducerDeauthorized = "DEAUTHORIZED" 33372 33373 // DataShareStatusForProducerRejected is a DataShareStatusForProducer enum value 33374 DataShareStatusForProducerRejected = "REJECTED" 33375 ) 33376 33377 // DataShareStatusForProducer_Values returns all elements of the DataShareStatusForProducer enum 33378 func DataShareStatusForProducer_Values() []string { 33379 return []string{ 33380 DataShareStatusForProducerActive, 33381 DataShareStatusForProducerAuthorized, 33382 DataShareStatusForProducerPendingAuthorization, 33383 DataShareStatusForProducerDeauthorized, 33384 DataShareStatusForProducerRejected, 33385 } 33386 } 33387 33388 const ( 33389 // ModeStandard is a Mode enum value 33390 ModeStandard = "standard" 33391 33392 // ModeHighPerformance is a Mode enum value 33393 ModeHighPerformance = "high-performance" 33394 ) 33395 33396 // Mode_Values returns all elements of the Mode enum 33397 func Mode_Values() []string { 33398 return []string{ 33399 ModeStandard, 33400 ModeHighPerformance, 33401 } 33402 } 33403 33404 const ( 33405 // NodeConfigurationOptionsFilterNameNodeType is a NodeConfigurationOptionsFilterName enum value 33406 NodeConfigurationOptionsFilterNameNodeType = "NodeType" 33407 33408 // NodeConfigurationOptionsFilterNameNumberOfNodes is a NodeConfigurationOptionsFilterName enum value 33409 NodeConfigurationOptionsFilterNameNumberOfNodes = "NumberOfNodes" 33410 33411 // NodeConfigurationOptionsFilterNameEstimatedDiskUtilizationPercent is a NodeConfigurationOptionsFilterName enum value 33412 NodeConfigurationOptionsFilterNameEstimatedDiskUtilizationPercent = "EstimatedDiskUtilizationPercent" 33413 33414 // NodeConfigurationOptionsFilterNameMode is a NodeConfigurationOptionsFilterName enum value 33415 NodeConfigurationOptionsFilterNameMode = "Mode" 33416 ) 33417 33418 // NodeConfigurationOptionsFilterName_Values returns all elements of the NodeConfigurationOptionsFilterName enum 33419 func NodeConfigurationOptionsFilterName_Values() []string { 33420 return []string{ 33421 NodeConfigurationOptionsFilterNameNodeType, 33422 NodeConfigurationOptionsFilterNameNumberOfNodes, 33423 NodeConfigurationOptionsFilterNameEstimatedDiskUtilizationPercent, 33424 NodeConfigurationOptionsFilterNameMode, 33425 } 33426 } 33427 33428 const ( 33429 // OperatorTypeEq is a OperatorType enum value 33430 OperatorTypeEq = "eq" 33431 33432 // OperatorTypeLt is a OperatorType enum value 33433 OperatorTypeLt = "lt" 33434 33435 // OperatorTypeGt is a OperatorType enum value 33436 OperatorTypeGt = "gt" 33437 33438 // OperatorTypeLe is a OperatorType enum value 33439 OperatorTypeLe = "le" 33440 33441 // OperatorTypeGe is a OperatorType enum value 33442 OperatorTypeGe = "ge" 33443 33444 // OperatorTypeIn is a OperatorType enum value 33445 OperatorTypeIn = "in" 33446 33447 // OperatorTypeBetween is a OperatorType enum value 33448 OperatorTypeBetween = "between" 33449 ) 33450 33451 // OperatorType_Values returns all elements of the OperatorType enum 33452 func OperatorType_Values() []string { 33453 return []string{ 33454 OperatorTypeEq, 33455 OperatorTypeLt, 33456 OperatorTypeGt, 33457 OperatorTypeLe, 33458 OperatorTypeGe, 33459 OperatorTypeIn, 33460 OperatorTypeBetween, 33461 } 33462 } 33463 33464 const ( 33465 // ParameterApplyTypeStatic is a ParameterApplyType enum value 33466 ParameterApplyTypeStatic = "static" 33467 33468 // ParameterApplyTypeDynamic is a ParameterApplyType enum value 33469 ParameterApplyTypeDynamic = "dynamic" 33470 ) 33471 33472 // ParameterApplyType_Values returns all elements of the ParameterApplyType enum 33473 func ParameterApplyType_Values() []string { 33474 return []string{ 33475 ParameterApplyTypeStatic, 33476 ParameterApplyTypeDynamic, 33477 } 33478 } 33479 33480 const ( 33481 // PartnerIntegrationStatusActive is a PartnerIntegrationStatus enum value 33482 PartnerIntegrationStatusActive = "Active" 33483 33484 // PartnerIntegrationStatusInactive is a PartnerIntegrationStatus enum value 33485 PartnerIntegrationStatusInactive = "Inactive" 33486 33487 // PartnerIntegrationStatusRuntimeFailure is a PartnerIntegrationStatus enum value 33488 PartnerIntegrationStatusRuntimeFailure = "RuntimeFailure" 33489 33490 // PartnerIntegrationStatusConnectionFailure is a PartnerIntegrationStatus enum value 33491 PartnerIntegrationStatusConnectionFailure = "ConnectionFailure" 33492 ) 33493 33494 // PartnerIntegrationStatus_Values returns all elements of the PartnerIntegrationStatus enum 33495 func PartnerIntegrationStatus_Values() []string { 33496 return []string{ 33497 PartnerIntegrationStatusActive, 33498 PartnerIntegrationStatusInactive, 33499 PartnerIntegrationStatusRuntimeFailure, 33500 PartnerIntegrationStatusConnectionFailure, 33501 } 33502 } 33503 33504 const ( 33505 // ReservedNodeOfferingTypeRegular is a ReservedNodeOfferingType enum value 33506 ReservedNodeOfferingTypeRegular = "Regular" 33507 33508 // ReservedNodeOfferingTypeUpgradable is a ReservedNodeOfferingType enum value 33509 ReservedNodeOfferingTypeUpgradable = "Upgradable" 33510 ) 33511 33512 // ReservedNodeOfferingType_Values returns all elements of the ReservedNodeOfferingType enum 33513 func ReservedNodeOfferingType_Values() []string { 33514 return []string{ 33515 ReservedNodeOfferingTypeRegular, 33516 ReservedNodeOfferingTypeUpgradable, 33517 } 33518 } 33519 33520 const ( 33521 // ScheduleStateModifying is a ScheduleState enum value 33522 ScheduleStateModifying = "MODIFYING" 33523 33524 // ScheduleStateActive is a ScheduleState enum value 33525 ScheduleStateActive = "ACTIVE" 33526 33527 // ScheduleStateFailed is a ScheduleState enum value 33528 ScheduleStateFailed = "FAILED" 33529 ) 33530 33531 // ScheduleState_Values returns all elements of the ScheduleState enum 33532 func ScheduleState_Values() []string { 33533 return []string{ 33534 ScheduleStateModifying, 33535 ScheduleStateActive, 33536 ScheduleStateFailed, 33537 } 33538 } 33539 33540 const ( 33541 // ScheduledActionFilterNameClusterIdentifier is a ScheduledActionFilterName enum value 33542 ScheduledActionFilterNameClusterIdentifier = "cluster-identifier" 33543 33544 // ScheduledActionFilterNameIamRole is a ScheduledActionFilterName enum value 33545 ScheduledActionFilterNameIamRole = "iam-role" 33546 ) 33547 33548 // ScheduledActionFilterName_Values returns all elements of the ScheduledActionFilterName enum 33549 func ScheduledActionFilterName_Values() []string { 33550 return []string{ 33551 ScheduledActionFilterNameClusterIdentifier, 33552 ScheduledActionFilterNameIamRole, 33553 } 33554 } 33555 33556 const ( 33557 // ScheduledActionStateActive is a ScheduledActionState enum value 33558 ScheduledActionStateActive = "ACTIVE" 33559 33560 // ScheduledActionStateDisabled is a ScheduledActionState enum value 33561 ScheduledActionStateDisabled = "DISABLED" 33562 ) 33563 33564 // ScheduledActionState_Values returns all elements of the ScheduledActionState enum 33565 func ScheduledActionState_Values() []string { 33566 return []string{ 33567 ScheduledActionStateActive, 33568 ScheduledActionStateDisabled, 33569 } 33570 } 33571 33572 const ( 33573 // ScheduledActionTypeValuesResizeCluster is a ScheduledActionTypeValues enum value 33574 ScheduledActionTypeValuesResizeCluster = "ResizeCluster" 33575 33576 // ScheduledActionTypeValuesPauseCluster is a ScheduledActionTypeValues enum value 33577 ScheduledActionTypeValuesPauseCluster = "PauseCluster" 33578 33579 // ScheduledActionTypeValuesResumeCluster is a ScheduledActionTypeValues enum value 33580 ScheduledActionTypeValuesResumeCluster = "ResumeCluster" 33581 ) 33582 33583 // ScheduledActionTypeValues_Values returns all elements of the ScheduledActionTypeValues enum 33584 func ScheduledActionTypeValues_Values() []string { 33585 return []string{ 33586 ScheduledActionTypeValuesResizeCluster, 33587 ScheduledActionTypeValuesPauseCluster, 33588 ScheduledActionTypeValuesResumeCluster, 33589 } 33590 } 33591 33592 const ( 33593 // SnapshotAttributeToSortBySourceType is a SnapshotAttributeToSortBy enum value 33594 SnapshotAttributeToSortBySourceType = "SOURCE_TYPE" 33595 33596 // SnapshotAttributeToSortByTotalSize is a SnapshotAttributeToSortBy enum value 33597 SnapshotAttributeToSortByTotalSize = "TOTAL_SIZE" 33598 33599 // SnapshotAttributeToSortByCreateTime is a SnapshotAttributeToSortBy enum value 33600 SnapshotAttributeToSortByCreateTime = "CREATE_TIME" 33601 ) 33602 33603 // SnapshotAttributeToSortBy_Values returns all elements of the SnapshotAttributeToSortBy enum 33604 func SnapshotAttributeToSortBy_Values() []string { 33605 return []string{ 33606 SnapshotAttributeToSortBySourceType, 33607 SnapshotAttributeToSortByTotalSize, 33608 SnapshotAttributeToSortByCreateTime, 33609 } 33610 } 33611 33612 const ( 33613 // SortByOrderAsc is a SortByOrder enum value 33614 SortByOrderAsc = "ASC" 33615 33616 // SortByOrderDesc is a SortByOrder enum value 33617 SortByOrderDesc = "DESC" 33618 ) 33619 33620 // SortByOrder_Values returns all elements of the SortByOrder enum 33621 func SortByOrder_Values() []string { 33622 return []string{ 33623 SortByOrderAsc, 33624 SortByOrderDesc, 33625 } 33626 } 33627 33628 const ( 33629 // SourceTypeCluster is a SourceType enum value 33630 SourceTypeCluster = "cluster" 33631 33632 // SourceTypeClusterParameterGroup is a SourceType enum value 33633 SourceTypeClusterParameterGroup = "cluster-parameter-group" 33634 33635 // SourceTypeClusterSecurityGroup is a SourceType enum value 33636 SourceTypeClusterSecurityGroup = "cluster-security-group" 33637 33638 // SourceTypeClusterSnapshot is a SourceType enum value 33639 SourceTypeClusterSnapshot = "cluster-snapshot" 33640 33641 // SourceTypeScheduledAction is a SourceType enum value 33642 SourceTypeScheduledAction = "scheduled-action" 33643 ) 33644 33645 // SourceType_Values returns all elements of the SourceType enum 33646 func SourceType_Values() []string { 33647 return []string{ 33648 SourceTypeCluster, 33649 SourceTypeClusterParameterGroup, 33650 SourceTypeClusterSecurityGroup, 33651 SourceTypeClusterSnapshot, 33652 SourceTypeScheduledAction, 33653 } 33654 } 33655 33656 const ( 33657 // TableRestoreStatusTypePending is a TableRestoreStatusType enum value 33658 TableRestoreStatusTypePending = "PENDING" 33659 33660 // TableRestoreStatusTypeInProgress is a TableRestoreStatusType enum value 33661 TableRestoreStatusTypeInProgress = "IN_PROGRESS" 33662 33663 // TableRestoreStatusTypeSucceeded is a TableRestoreStatusType enum value 33664 TableRestoreStatusTypeSucceeded = "SUCCEEDED" 33665 33666 // TableRestoreStatusTypeFailed is a TableRestoreStatusType enum value 33667 TableRestoreStatusTypeFailed = "FAILED" 33668 33669 // TableRestoreStatusTypeCanceled is a TableRestoreStatusType enum value 33670 TableRestoreStatusTypeCanceled = "CANCELED" 33671 ) 33672 33673 // TableRestoreStatusType_Values returns all elements of the TableRestoreStatusType enum 33674 func TableRestoreStatusType_Values() []string { 33675 return []string{ 33676 TableRestoreStatusTypePending, 33677 TableRestoreStatusTypeInProgress, 33678 TableRestoreStatusTypeSucceeded, 33679 TableRestoreStatusTypeFailed, 33680 TableRestoreStatusTypeCanceled, 33681 } 33682 } 33683 33684 const ( 33685 // UsageLimitBreachActionLog is a UsageLimitBreachAction enum value 33686 UsageLimitBreachActionLog = "log" 33687 33688 // UsageLimitBreachActionEmitMetric is a UsageLimitBreachAction enum value 33689 UsageLimitBreachActionEmitMetric = "emit-metric" 33690 33691 // UsageLimitBreachActionDisable is a UsageLimitBreachAction enum value 33692 UsageLimitBreachActionDisable = "disable" 33693 ) 33694 33695 // UsageLimitBreachAction_Values returns all elements of the UsageLimitBreachAction enum 33696 func UsageLimitBreachAction_Values() []string { 33697 return []string{ 33698 UsageLimitBreachActionLog, 33699 UsageLimitBreachActionEmitMetric, 33700 UsageLimitBreachActionDisable, 33701 } 33702 } 33703 33704 const ( 33705 // UsageLimitFeatureTypeSpectrum is a UsageLimitFeatureType enum value 33706 UsageLimitFeatureTypeSpectrum = "spectrum" 33707 33708 // UsageLimitFeatureTypeConcurrencyScaling is a UsageLimitFeatureType enum value 33709 UsageLimitFeatureTypeConcurrencyScaling = "concurrency-scaling" 33710 ) 33711 33712 // UsageLimitFeatureType_Values returns all elements of the UsageLimitFeatureType enum 33713 func UsageLimitFeatureType_Values() []string { 33714 return []string{ 33715 UsageLimitFeatureTypeSpectrum, 33716 UsageLimitFeatureTypeConcurrencyScaling, 33717 } 33718 } 33719 33720 const ( 33721 // UsageLimitLimitTypeTime is a UsageLimitLimitType enum value 33722 UsageLimitLimitTypeTime = "time" 33723 33724 // UsageLimitLimitTypeDataScanned is a UsageLimitLimitType enum value 33725 UsageLimitLimitTypeDataScanned = "data-scanned" 33726 ) 33727 33728 // UsageLimitLimitType_Values returns all elements of the UsageLimitLimitType enum 33729 func UsageLimitLimitType_Values() []string { 33730 return []string{ 33731 UsageLimitLimitTypeTime, 33732 UsageLimitLimitTypeDataScanned, 33733 } 33734 } 33735 33736 const ( 33737 // UsageLimitPeriodDaily is a UsageLimitPeriod enum value 33738 UsageLimitPeriodDaily = "daily" 33739 33740 // UsageLimitPeriodWeekly is a UsageLimitPeriod enum value 33741 UsageLimitPeriodWeekly = "weekly" 33742 33743 // UsageLimitPeriodMonthly is a UsageLimitPeriod enum value 33744 UsageLimitPeriodMonthly = "monthly" 33745 ) 33746 33747 // UsageLimitPeriod_Values returns all elements of the UsageLimitPeriod enum 33748 func UsageLimitPeriod_Values() []string { 33749 return []string{ 33750 UsageLimitPeriodDaily, 33751 UsageLimitPeriodWeekly, 33752 UsageLimitPeriodMonthly, 33753 } 33754 }