github.com/aavshr/aws-sdk-go@v1.41.3/service/glacier/api.go (about) 1 // Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. 2 3 package glacier 4 5 import ( 6 "fmt" 7 "io" 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/restjson" 14 ) 15 16 const opAbortMultipartUpload = "AbortMultipartUpload" 17 18 // AbortMultipartUploadRequest generates a "aws/request.Request" representing the 19 // client's request for the AbortMultipartUpload 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 AbortMultipartUpload for more information on using the AbortMultipartUpload 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 AbortMultipartUploadRequest method. 34 // req, resp := client.AbortMultipartUploadRequest(params) 35 // 36 // err := req.Send() 37 // if err == nil { // resp is now filled 38 // fmt.Println(resp) 39 // } 40 func (c *Glacier) AbortMultipartUploadRequest(input *AbortMultipartUploadInput) (req *request.Request, output *AbortMultipartUploadOutput) { 41 op := &request.Operation{ 42 Name: opAbortMultipartUpload, 43 HTTPMethod: "DELETE", 44 HTTPPath: "/{accountId}/vaults/{vaultName}/multipart-uploads/{uploadId}", 45 } 46 47 if input == nil { 48 input = &AbortMultipartUploadInput{} 49 } 50 51 output = &AbortMultipartUploadOutput{} 52 req = c.newRequest(op, input, output) 53 req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 54 return 55 } 56 57 // AbortMultipartUpload API operation for Amazon Glacier. 58 // 59 // This operation aborts a multipart upload identified by the upload ID. 60 // 61 // After the Abort Multipart Upload request succeeds, you cannot upload any 62 // more parts to the multipart upload or complete the multipart upload. Aborting 63 // a completed upload fails. However, aborting an already-aborted upload will 64 // succeed, for a short time. For more information about uploading a part and 65 // completing a multipart upload, see UploadMultipartPart and CompleteMultipartUpload. 66 // 67 // This operation is idempotent. 68 // 69 // An AWS account has full permission to perform all operations (actions). However, 70 // AWS Identity and Access Management (IAM) users don't have any permissions 71 // by default. You must grant them explicit permission to perform specific actions. 72 // For more information, see Access Control Using AWS Identity and Access Management 73 // (IAM) (https://docs.aws.amazon.com/amazonglacier/latest/dev/using-iam-with-amazon-glacier.html). 74 // 75 // For conceptual information and underlying REST API, see Working with Archives 76 // in Amazon S3 Glacier (https://docs.aws.amazon.com/amazonglacier/latest/dev/working-with-archives.html) 77 // and Abort Multipart Upload (https://docs.aws.amazon.com/amazonglacier/latest/dev/api-multipart-abort-upload.html) 78 // in the Amazon Glacier Developer Guide. 79 // 80 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 81 // with awserr.Error's Code and Message methods to get detailed information about 82 // the error. 83 // 84 // See the AWS API reference guide for Amazon Glacier's 85 // API operation AbortMultipartUpload for usage and error information. 86 // 87 // Returned Error Types: 88 // * ResourceNotFoundException 89 // Returned if the specified resource (such as a vault, upload ID, or job ID) 90 // doesn't exist. 91 // 92 // * InvalidParameterValueException 93 // Returned if a parameter of the request is incorrectly specified. 94 // 95 // * MissingParameterValueException 96 // Returned if a required header or parameter is missing from the request. 97 // 98 // * ServiceUnavailableException 99 // Returned if the service cannot complete the request. 100 // 101 func (c *Glacier) AbortMultipartUpload(input *AbortMultipartUploadInput) (*AbortMultipartUploadOutput, error) { 102 req, out := c.AbortMultipartUploadRequest(input) 103 return out, req.Send() 104 } 105 106 // AbortMultipartUploadWithContext is the same as AbortMultipartUpload with the addition of 107 // the ability to pass a context and additional request options. 108 // 109 // See AbortMultipartUpload for details on how to use this API operation. 110 // 111 // The context must be non-nil and will be used for request cancellation. If 112 // the context is nil a panic will occur. In the future the SDK may create 113 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 114 // for more information on using Contexts. 115 func (c *Glacier) AbortMultipartUploadWithContext(ctx aws.Context, input *AbortMultipartUploadInput, opts ...request.Option) (*AbortMultipartUploadOutput, error) { 116 req, out := c.AbortMultipartUploadRequest(input) 117 req.SetContext(ctx) 118 req.ApplyOptions(opts...) 119 return out, req.Send() 120 } 121 122 const opAbortVaultLock = "AbortVaultLock" 123 124 // AbortVaultLockRequest generates a "aws/request.Request" representing the 125 // client's request for the AbortVaultLock operation. The "output" return 126 // value will be populated with the request's response once the request completes 127 // successfully. 128 // 129 // Use "Send" method on the returned Request to send the API call to the service. 130 // the "output" return value is not valid until after Send returns without error. 131 // 132 // See AbortVaultLock for more information on using the AbortVaultLock 133 // API call, and error handling. 134 // 135 // This method is useful when you want to inject custom logic or configuration 136 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 137 // 138 // 139 // // Example sending a request using the AbortVaultLockRequest method. 140 // req, resp := client.AbortVaultLockRequest(params) 141 // 142 // err := req.Send() 143 // if err == nil { // resp is now filled 144 // fmt.Println(resp) 145 // } 146 func (c *Glacier) AbortVaultLockRequest(input *AbortVaultLockInput) (req *request.Request, output *AbortVaultLockOutput) { 147 op := &request.Operation{ 148 Name: opAbortVaultLock, 149 HTTPMethod: "DELETE", 150 HTTPPath: "/{accountId}/vaults/{vaultName}/lock-policy", 151 } 152 153 if input == nil { 154 input = &AbortVaultLockInput{} 155 } 156 157 output = &AbortVaultLockOutput{} 158 req = c.newRequest(op, input, output) 159 req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 160 return 161 } 162 163 // AbortVaultLock API operation for Amazon Glacier. 164 // 165 // This operation aborts the vault locking process if the vault lock is not 166 // in the Locked state. If the vault lock is in the Locked state when this operation 167 // is requested, the operation returns an AccessDeniedException error. Aborting 168 // the vault locking process removes the vault lock policy from the specified 169 // vault. 170 // 171 // A vault lock is put into the InProgress state by calling InitiateVaultLock. 172 // A vault lock is put into the Locked state by calling CompleteVaultLock. You 173 // can get the state of a vault lock by calling GetVaultLock. For more information 174 // about the vault locking process, see Amazon Glacier Vault Lock (https://docs.aws.amazon.com/amazonglacier/latest/dev/vault-lock.html). 175 // For more information about vault lock policies, see Amazon Glacier Access 176 // Control with Vault Lock Policies (https://docs.aws.amazon.com/amazonglacier/latest/dev/vault-lock-policy.html). 177 // 178 // This operation is idempotent. You can successfully invoke this operation 179 // multiple times, if the vault lock is in the InProgress state or if there 180 // is no policy associated with the vault. 181 // 182 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 183 // with awserr.Error's Code and Message methods to get detailed information about 184 // the error. 185 // 186 // See the AWS API reference guide for Amazon Glacier's 187 // API operation AbortVaultLock for usage and error information. 188 // 189 // Returned Error Types: 190 // * ResourceNotFoundException 191 // Returned if the specified resource (such as a vault, upload ID, or job ID) 192 // doesn't exist. 193 // 194 // * InvalidParameterValueException 195 // Returned if a parameter of the request is incorrectly specified. 196 // 197 // * MissingParameterValueException 198 // Returned if a required header or parameter is missing from the request. 199 // 200 // * ServiceUnavailableException 201 // Returned if the service cannot complete the request. 202 // 203 func (c *Glacier) AbortVaultLock(input *AbortVaultLockInput) (*AbortVaultLockOutput, error) { 204 req, out := c.AbortVaultLockRequest(input) 205 return out, req.Send() 206 } 207 208 // AbortVaultLockWithContext is the same as AbortVaultLock with the addition of 209 // the ability to pass a context and additional request options. 210 // 211 // See AbortVaultLock for details on how to use this API operation. 212 // 213 // The context must be non-nil and will be used for request cancellation. If 214 // the context is nil a panic will occur. In the future the SDK may create 215 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 216 // for more information on using Contexts. 217 func (c *Glacier) AbortVaultLockWithContext(ctx aws.Context, input *AbortVaultLockInput, opts ...request.Option) (*AbortVaultLockOutput, error) { 218 req, out := c.AbortVaultLockRequest(input) 219 req.SetContext(ctx) 220 req.ApplyOptions(opts...) 221 return out, req.Send() 222 } 223 224 const opAddTagsToVault = "AddTagsToVault" 225 226 // AddTagsToVaultRequest generates a "aws/request.Request" representing the 227 // client's request for the AddTagsToVault operation. The "output" return 228 // value will be populated with the request's response once the request completes 229 // successfully. 230 // 231 // Use "Send" method on the returned Request to send the API call to the service. 232 // the "output" return value is not valid until after Send returns without error. 233 // 234 // See AddTagsToVault for more information on using the AddTagsToVault 235 // API call, and error handling. 236 // 237 // This method is useful when you want to inject custom logic or configuration 238 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 239 // 240 // 241 // // Example sending a request using the AddTagsToVaultRequest method. 242 // req, resp := client.AddTagsToVaultRequest(params) 243 // 244 // err := req.Send() 245 // if err == nil { // resp is now filled 246 // fmt.Println(resp) 247 // } 248 func (c *Glacier) AddTagsToVaultRequest(input *AddTagsToVaultInput) (req *request.Request, output *AddTagsToVaultOutput) { 249 op := &request.Operation{ 250 Name: opAddTagsToVault, 251 HTTPMethod: "POST", 252 HTTPPath: "/{accountId}/vaults/{vaultName}/tags?operation=add", 253 } 254 255 if input == nil { 256 input = &AddTagsToVaultInput{} 257 } 258 259 output = &AddTagsToVaultOutput{} 260 req = c.newRequest(op, input, output) 261 req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 262 return 263 } 264 265 // AddTagsToVault API operation for Amazon Glacier. 266 // 267 // This operation adds the specified tags to a vault. Each tag is composed of 268 // a key and a value. Each vault can have up to 10 tags. If your request would 269 // cause the tag limit for the vault to be exceeded, the operation throws the 270 // LimitExceededException error. If a tag already exists on the vault under 271 // a specified key, the existing key value will be overwritten. For more information 272 // about tags, see Tagging Amazon S3 Glacier Resources (https://docs.aws.amazon.com/amazonglacier/latest/dev/tagging.html). 273 // 274 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 275 // with awserr.Error's Code and Message methods to get detailed information about 276 // the error. 277 // 278 // See the AWS API reference guide for Amazon Glacier's 279 // API operation AddTagsToVault for usage and error information. 280 // 281 // Returned Error Types: 282 // * InvalidParameterValueException 283 // Returned if a parameter of the request is incorrectly specified. 284 // 285 // * MissingParameterValueException 286 // Returned if a required header or parameter is missing from the request. 287 // 288 // * ResourceNotFoundException 289 // Returned if the specified resource (such as a vault, upload ID, or job ID) 290 // doesn't exist. 291 // 292 // * LimitExceededException 293 // Returned if the request results in a vault or account limit being exceeded. 294 // 295 // * ServiceUnavailableException 296 // Returned if the service cannot complete the request. 297 // 298 func (c *Glacier) AddTagsToVault(input *AddTagsToVaultInput) (*AddTagsToVaultOutput, error) { 299 req, out := c.AddTagsToVaultRequest(input) 300 return out, req.Send() 301 } 302 303 // AddTagsToVaultWithContext is the same as AddTagsToVault with the addition of 304 // the ability to pass a context and additional request options. 305 // 306 // See AddTagsToVault for details on how to use this API operation. 307 // 308 // The context must be non-nil and will be used for request cancellation. If 309 // the context is nil a panic will occur. In the future the SDK may create 310 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 311 // for more information on using Contexts. 312 func (c *Glacier) AddTagsToVaultWithContext(ctx aws.Context, input *AddTagsToVaultInput, opts ...request.Option) (*AddTagsToVaultOutput, error) { 313 req, out := c.AddTagsToVaultRequest(input) 314 req.SetContext(ctx) 315 req.ApplyOptions(opts...) 316 return out, req.Send() 317 } 318 319 const opCompleteMultipartUpload = "CompleteMultipartUpload" 320 321 // CompleteMultipartUploadRequest generates a "aws/request.Request" representing the 322 // client's request for the CompleteMultipartUpload operation. The "output" return 323 // value will be populated with the request's response once the request completes 324 // successfully. 325 // 326 // Use "Send" method on the returned Request to send the API call to the service. 327 // the "output" return value is not valid until after Send returns without error. 328 // 329 // See CompleteMultipartUpload for more information on using the CompleteMultipartUpload 330 // API call, and error handling. 331 // 332 // This method is useful when you want to inject custom logic or configuration 333 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 334 // 335 // 336 // // Example sending a request using the CompleteMultipartUploadRequest method. 337 // req, resp := client.CompleteMultipartUploadRequest(params) 338 // 339 // err := req.Send() 340 // if err == nil { // resp is now filled 341 // fmt.Println(resp) 342 // } 343 func (c *Glacier) CompleteMultipartUploadRequest(input *CompleteMultipartUploadInput) (req *request.Request, output *ArchiveCreationOutput) { 344 op := &request.Operation{ 345 Name: opCompleteMultipartUpload, 346 HTTPMethod: "POST", 347 HTTPPath: "/{accountId}/vaults/{vaultName}/multipart-uploads/{uploadId}", 348 } 349 350 if input == nil { 351 input = &CompleteMultipartUploadInput{} 352 } 353 354 output = &ArchiveCreationOutput{} 355 req = c.newRequest(op, input, output) 356 return 357 } 358 359 // CompleteMultipartUpload API operation for Amazon Glacier. 360 // 361 // You call this operation to inform Amazon S3 Glacier (Glacier) that all the 362 // archive parts have been uploaded and that Glacier can now assemble the archive 363 // from the uploaded parts. After assembling and saving the archive to the vault, 364 // Glacier returns the URI path of the newly created archive resource. Using 365 // the URI path, you can then access the archive. After you upload an archive, 366 // you should save the archive ID returned to retrieve the archive at a later 367 // point. You can also get the vault inventory to obtain a list of archive IDs 368 // in a vault. For more information, see InitiateJob. 369 // 370 // In the request, you must include the computed SHA256 tree hash of the entire 371 // archive you have uploaded. For information about computing a SHA256 tree 372 // hash, see Computing Checksums (https://docs.aws.amazon.com/amazonglacier/latest/dev/checksum-calculations.html). 373 // On the server side, Glacier also constructs the SHA256 tree hash of the assembled 374 // archive. If the values match, Glacier saves the archive to the vault; otherwise, 375 // it returns an error, and the operation fails. The ListParts operation returns 376 // a list of parts uploaded for a specific multipart upload. It includes checksum 377 // information for each uploaded part that can be used to debug a bad checksum 378 // issue. 379 // 380 // Additionally, Glacier also checks for any missing content ranges when assembling 381 // the archive, if missing content ranges are found, Glacier returns an error 382 // and the operation fails. 383 // 384 // Complete Multipart Upload is an idempotent operation. After your first successful 385 // complete multipart upload, if you call the operation again within a short 386 // period, the operation will succeed and return the same archive ID. This is 387 // useful in the event you experience a network issue that causes an aborted 388 // connection or receive a 500 server error, in which case you can repeat your 389 // Complete Multipart Upload request and get the same archive ID without creating 390 // duplicate archives. Note, however, that after the multipart upload completes, 391 // you cannot call the List Parts operation and the multipart upload will not 392 // appear in List Multipart Uploads response, even if idempotent complete is 393 // possible. 394 // 395 // An AWS account has full permission to perform all operations (actions). However, 396 // AWS Identity and Access Management (IAM) users don't have any permissions 397 // by default. You must grant them explicit permission to perform specific actions. 398 // For more information, see Access Control Using AWS Identity and Access Management 399 // (IAM) (https://docs.aws.amazon.com/amazonglacier/latest/dev/using-iam-with-amazon-glacier.html). 400 // 401 // For conceptual information and underlying REST API, see Uploading Large Archives 402 // in Parts (Multipart Upload) (https://docs.aws.amazon.com/amazonglacier/latest/dev/uploading-archive-mpu.html) 403 // and Complete Multipart Upload (https://docs.aws.amazon.com/amazonglacier/latest/dev/api-multipart-complete-upload.html) 404 // in the Amazon Glacier Developer Guide. 405 // 406 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 407 // with awserr.Error's Code and Message methods to get detailed information about 408 // the error. 409 // 410 // See the AWS API reference guide for Amazon Glacier's 411 // API operation CompleteMultipartUpload for usage and error information. 412 // 413 // Returned Error Types: 414 // * ResourceNotFoundException 415 // Returned if the specified resource (such as a vault, upload ID, or job ID) 416 // doesn't exist. 417 // 418 // * InvalidParameterValueException 419 // Returned if a parameter of the request is incorrectly specified. 420 // 421 // * MissingParameterValueException 422 // Returned if a required header or parameter is missing from the request. 423 // 424 // * ServiceUnavailableException 425 // Returned if the service cannot complete the request. 426 // 427 func (c *Glacier) CompleteMultipartUpload(input *CompleteMultipartUploadInput) (*ArchiveCreationOutput, error) { 428 req, out := c.CompleteMultipartUploadRequest(input) 429 return out, req.Send() 430 } 431 432 // CompleteMultipartUploadWithContext is the same as CompleteMultipartUpload with the addition of 433 // the ability to pass a context and additional request options. 434 // 435 // See CompleteMultipartUpload for details on how to use this API operation. 436 // 437 // The context must be non-nil and will be used for request cancellation. If 438 // the context is nil a panic will occur. In the future the SDK may create 439 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 440 // for more information on using Contexts. 441 func (c *Glacier) CompleteMultipartUploadWithContext(ctx aws.Context, input *CompleteMultipartUploadInput, opts ...request.Option) (*ArchiveCreationOutput, error) { 442 req, out := c.CompleteMultipartUploadRequest(input) 443 req.SetContext(ctx) 444 req.ApplyOptions(opts...) 445 return out, req.Send() 446 } 447 448 const opCompleteVaultLock = "CompleteVaultLock" 449 450 // CompleteVaultLockRequest generates a "aws/request.Request" representing the 451 // client's request for the CompleteVaultLock operation. The "output" return 452 // value will be populated with the request's response once the request completes 453 // successfully. 454 // 455 // Use "Send" method on the returned Request to send the API call to the service. 456 // the "output" return value is not valid until after Send returns without error. 457 // 458 // See CompleteVaultLock for more information on using the CompleteVaultLock 459 // API call, and error handling. 460 // 461 // This method is useful when you want to inject custom logic or configuration 462 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 463 // 464 // 465 // // Example sending a request using the CompleteVaultLockRequest method. 466 // req, resp := client.CompleteVaultLockRequest(params) 467 // 468 // err := req.Send() 469 // if err == nil { // resp is now filled 470 // fmt.Println(resp) 471 // } 472 func (c *Glacier) CompleteVaultLockRequest(input *CompleteVaultLockInput) (req *request.Request, output *CompleteVaultLockOutput) { 473 op := &request.Operation{ 474 Name: opCompleteVaultLock, 475 HTTPMethod: "POST", 476 HTTPPath: "/{accountId}/vaults/{vaultName}/lock-policy/{lockId}", 477 } 478 479 if input == nil { 480 input = &CompleteVaultLockInput{} 481 } 482 483 output = &CompleteVaultLockOutput{} 484 req = c.newRequest(op, input, output) 485 req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 486 return 487 } 488 489 // CompleteVaultLock API operation for Amazon Glacier. 490 // 491 // This operation completes the vault locking process by transitioning the vault 492 // lock from the InProgress state to the Locked state, which causes the vault 493 // lock policy to become unchangeable. A vault lock is put into the InProgress 494 // state by calling InitiateVaultLock. You can obtain the state of the vault 495 // lock by calling GetVaultLock. For more information about the vault locking 496 // process, Amazon Glacier Vault Lock (https://docs.aws.amazon.com/amazonglacier/latest/dev/vault-lock.html). 497 // 498 // This operation is idempotent. This request is always successful if the vault 499 // lock is in the Locked state and the provided lock ID matches the lock ID 500 // originally used to lock the vault. 501 // 502 // If an invalid lock ID is passed in the request when the vault lock is in 503 // the Locked state, the operation returns an AccessDeniedException error. If 504 // an invalid lock ID is passed in the request when the vault lock is in the 505 // InProgress state, the operation throws an InvalidParameter error. 506 // 507 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 508 // with awserr.Error's Code and Message methods to get detailed information about 509 // the error. 510 // 511 // See the AWS API reference guide for Amazon Glacier's 512 // API operation CompleteVaultLock for usage and error information. 513 // 514 // Returned Error Types: 515 // * ResourceNotFoundException 516 // Returned if the specified resource (such as a vault, upload ID, or job ID) 517 // doesn't exist. 518 // 519 // * InvalidParameterValueException 520 // Returned if a parameter of the request is incorrectly specified. 521 // 522 // * MissingParameterValueException 523 // Returned if a required header or parameter is missing from the request. 524 // 525 // * ServiceUnavailableException 526 // Returned if the service cannot complete the request. 527 // 528 func (c *Glacier) CompleteVaultLock(input *CompleteVaultLockInput) (*CompleteVaultLockOutput, error) { 529 req, out := c.CompleteVaultLockRequest(input) 530 return out, req.Send() 531 } 532 533 // CompleteVaultLockWithContext is the same as CompleteVaultLock with the addition of 534 // the ability to pass a context and additional request options. 535 // 536 // See CompleteVaultLock for details on how to use this API operation. 537 // 538 // The context must be non-nil and will be used for request cancellation. If 539 // the context is nil a panic will occur. In the future the SDK may create 540 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 541 // for more information on using Contexts. 542 func (c *Glacier) CompleteVaultLockWithContext(ctx aws.Context, input *CompleteVaultLockInput, opts ...request.Option) (*CompleteVaultLockOutput, error) { 543 req, out := c.CompleteVaultLockRequest(input) 544 req.SetContext(ctx) 545 req.ApplyOptions(opts...) 546 return out, req.Send() 547 } 548 549 const opCreateVault = "CreateVault" 550 551 // CreateVaultRequest generates a "aws/request.Request" representing the 552 // client's request for the CreateVault operation. The "output" return 553 // value will be populated with the request's response once the request completes 554 // successfully. 555 // 556 // Use "Send" method on the returned Request to send the API call to the service. 557 // the "output" return value is not valid until after Send returns without error. 558 // 559 // See CreateVault for more information on using the CreateVault 560 // API call, and error handling. 561 // 562 // This method is useful when you want to inject custom logic or configuration 563 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 564 // 565 // 566 // // Example sending a request using the CreateVaultRequest method. 567 // req, resp := client.CreateVaultRequest(params) 568 // 569 // err := req.Send() 570 // if err == nil { // resp is now filled 571 // fmt.Println(resp) 572 // } 573 func (c *Glacier) CreateVaultRequest(input *CreateVaultInput) (req *request.Request, output *CreateVaultOutput) { 574 op := &request.Operation{ 575 Name: opCreateVault, 576 HTTPMethod: "PUT", 577 HTTPPath: "/{accountId}/vaults/{vaultName}", 578 } 579 580 if input == nil { 581 input = &CreateVaultInput{} 582 } 583 584 output = &CreateVaultOutput{} 585 req = c.newRequest(op, input, output) 586 return 587 } 588 589 // CreateVault API operation for Amazon Glacier. 590 // 591 // This operation creates a new vault with the specified name. The name of the 592 // vault must be unique within a region for an AWS account. You can create up 593 // to 1,000 vaults per account. If you need to create more vaults, contact Amazon 594 // S3 Glacier. 595 // 596 // You must use the following guidelines when naming a vault. 597 // 598 // * Names can be between 1 and 255 characters long. 599 // 600 // * Allowed characters are a-z, A-Z, 0-9, '_' (underscore), '-' (hyphen), 601 // and '.' (period). 602 // 603 // This operation is idempotent. 604 // 605 // An AWS account has full permission to perform all operations (actions). However, 606 // AWS Identity and Access Management (IAM) users don't have any permissions 607 // by default. You must grant them explicit permission to perform specific actions. 608 // For more information, see Access Control Using AWS Identity and Access Management 609 // (IAM) (https://docs.aws.amazon.com/amazonglacier/latest/dev/using-iam-with-amazon-glacier.html). 610 // 611 // For conceptual information and underlying REST API, see Creating a Vault 612 // in Amazon Glacier (https://docs.aws.amazon.com/amazonglacier/latest/dev/creating-vaults.html) 613 // and Create Vault (https://docs.aws.amazon.com/amazonglacier/latest/dev/api-vault-put.html) 614 // in the Amazon Glacier Developer Guide. 615 // 616 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 617 // with awserr.Error's Code and Message methods to get detailed information about 618 // the error. 619 // 620 // See the AWS API reference guide for Amazon Glacier's 621 // API operation CreateVault for usage and error information. 622 // 623 // Returned Error Types: 624 // * InvalidParameterValueException 625 // Returned if a parameter of the request is incorrectly specified. 626 // 627 // * MissingParameterValueException 628 // Returned if a required header or parameter is missing from the request. 629 // 630 // * ServiceUnavailableException 631 // Returned if the service cannot complete the request. 632 // 633 // * LimitExceededException 634 // Returned if the request results in a vault or account limit being exceeded. 635 // 636 func (c *Glacier) CreateVault(input *CreateVaultInput) (*CreateVaultOutput, error) { 637 req, out := c.CreateVaultRequest(input) 638 return out, req.Send() 639 } 640 641 // CreateVaultWithContext is the same as CreateVault with the addition of 642 // the ability to pass a context and additional request options. 643 // 644 // See CreateVault for details on how to use this API operation. 645 // 646 // The context must be non-nil and will be used for request cancellation. If 647 // the context is nil a panic will occur. In the future the SDK may create 648 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 649 // for more information on using Contexts. 650 func (c *Glacier) CreateVaultWithContext(ctx aws.Context, input *CreateVaultInput, opts ...request.Option) (*CreateVaultOutput, error) { 651 req, out := c.CreateVaultRequest(input) 652 req.SetContext(ctx) 653 req.ApplyOptions(opts...) 654 return out, req.Send() 655 } 656 657 const opDeleteArchive = "DeleteArchive" 658 659 // DeleteArchiveRequest generates a "aws/request.Request" representing the 660 // client's request for the DeleteArchive operation. The "output" return 661 // value will be populated with the request's response once the request completes 662 // successfully. 663 // 664 // Use "Send" method on the returned Request to send the API call to the service. 665 // the "output" return value is not valid until after Send returns without error. 666 // 667 // See DeleteArchive for more information on using the DeleteArchive 668 // API call, and error handling. 669 // 670 // This method is useful when you want to inject custom logic or configuration 671 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 672 // 673 // 674 // // Example sending a request using the DeleteArchiveRequest method. 675 // req, resp := client.DeleteArchiveRequest(params) 676 // 677 // err := req.Send() 678 // if err == nil { // resp is now filled 679 // fmt.Println(resp) 680 // } 681 func (c *Glacier) DeleteArchiveRequest(input *DeleteArchiveInput) (req *request.Request, output *DeleteArchiveOutput) { 682 op := &request.Operation{ 683 Name: opDeleteArchive, 684 HTTPMethod: "DELETE", 685 HTTPPath: "/{accountId}/vaults/{vaultName}/archives/{archiveId}", 686 } 687 688 if input == nil { 689 input = &DeleteArchiveInput{} 690 } 691 692 output = &DeleteArchiveOutput{} 693 req = c.newRequest(op, input, output) 694 req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 695 return 696 } 697 698 // DeleteArchive API operation for Amazon Glacier. 699 // 700 // This operation deletes an archive from a vault. Subsequent requests to initiate 701 // a retrieval of this archive will fail. Archive retrievals that are in progress 702 // for this archive ID may or may not succeed according to the following scenarios: 703 // 704 // * If the archive retrieval job is actively preparing the data for download 705 // when Amazon S3 Glacier receives the delete archive request, the archival 706 // retrieval operation might fail. 707 // 708 // * If the archive retrieval job has successfully prepared the archive for 709 // download when Amazon S3 Glacier receives the delete archive request, you 710 // will be able to download the output. 711 // 712 // This operation is idempotent. Attempting to delete an already-deleted archive 713 // does not result in an error. 714 // 715 // An AWS account has full permission to perform all operations (actions). However, 716 // AWS Identity and Access Management (IAM) users don't have any permissions 717 // by default. You must grant them explicit permission to perform specific actions. 718 // For more information, see Access Control Using AWS Identity and Access Management 719 // (IAM) (https://docs.aws.amazon.com/amazonglacier/latest/dev/using-iam-with-amazon-glacier.html). 720 // 721 // For conceptual information and underlying REST API, see Deleting an Archive 722 // in Amazon Glacier (https://docs.aws.amazon.com/amazonglacier/latest/dev/deleting-an-archive.html) 723 // and Delete Archive (https://docs.aws.amazon.com/amazonglacier/latest/dev/api-archive-delete.html) 724 // in the Amazon Glacier Developer Guide. 725 // 726 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 727 // with awserr.Error's Code and Message methods to get detailed information about 728 // the error. 729 // 730 // See the AWS API reference guide for Amazon Glacier's 731 // API operation DeleteArchive for usage and error information. 732 // 733 // Returned Error Types: 734 // * ResourceNotFoundException 735 // Returned if the specified resource (such as a vault, upload ID, or job ID) 736 // doesn't exist. 737 // 738 // * InvalidParameterValueException 739 // Returned if a parameter of the request is incorrectly specified. 740 // 741 // * MissingParameterValueException 742 // Returned if a required header or parameter is missing from the request. 743 // 744 // * ServiceUnavailableException 745 // Returned if the service cannot complete the request. 746 // 747 func (c *Glacier) DeleteArchive(input *DeleteArchiveInput) (*DeleteArchiveOutput, error) { 748 req, out := c.DeleteArchiveRequest(input) 749 return out, req.Send() 750 } 751 752 // DeleteArchiveWithContext is the same as DeleteArchive with the addition of 753 // the ability to pass a context and additional request options. 754 // 755 // See DeleteArchive for details on how to use this API operation. 756 // 757 // The context must be non-nil and will be used for request cancellation. If 758 // the context is nil a panic will occur. In the future the SDK may create 759 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 760 // for more information on using Contexts. 761 func (c *Glacier) DeleteArchiveWithContext(ctx aws.Context, input *DeleteArchiveInput, opts ...request.Option) (*DeleteArchiveOutput, error) { 762 req, out := c.DeleteArchiveRequest(input) 763 req.SetContext(ctx) 764 req.ApplyOptions(opts...) 765 return out, req.Send() 766 } 767 768 const opDeleteVault = "DeleteVault" 769 770 // DeleteVaultRequest generates a "aws/request.Request" representing the 771 // client's request for the DeleteVault operation. The "output" return 772 // value will be populated with the request's response once the request completes 773 // successfully. 774 // 775 // Use "Send" method on the returned Request to send the API call to the service. 776 // the "output" return value is not valid until after Send returns without error. 777 // 778 // See DeleteVault for more information on using the DeleteVault 779 // API call, and error handling. 780 // 781 // This method is useful when you want to inject custom logic or configuration 782 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 783 // 784 // 785 // // Example sending a request using the DeleteVaultRequest method. 786 // req, resp := client.DeleteVaultRequest(params) 787 // 788 // err := req.Send() 789 // if err == nil { // resp is now filled 790 // fmt.Println(resp) 791 // } 792 func (c *Glacier) DeleteVaultRequest(input *DeleteVaultInput) (req *request.Request, output *DeleteVaultOutput) { 793 op := &request.Operation{ 794 Name: opDeleteVault, 795 HTTPMethod: "DELETE", 796 HTTPPath: "/{accountId}/vaults/{vaultName}", 797 } 798 799 if input == nil { 800 input = &DeleteVaultInput{} 801 } 802 803 output = &DeleteVaultOutput{} 804 req = c.newRequest(op, input, output) 805 req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 806 return 807 } 808 809 // DeleteVault API operation for Amazon Glacier. 810 // 811 // This operation deletes a vault. Amazon S3 Glacier will delete a vault only 812 // if there are no archives in the vault as of the last inventory and there 813 // have been no writes to the vault since the last inventory. If either of these 814 // conditions is not satisfied, the vault deletion fails (that is, the vault 815 // is not removed) and Amazon S3 Glacier returns an error. You can use DescribeVault 816 // to return the number of archives in a vault, and you can use Initiate a Job 817 // (POST jobs) (https://docs.aws.amazon.com/amazonglacier/latest/dev/api-initiate-job-post.html) 818 // to initiate a new inventory retrieval for a vault. The inventory contains 819 // the archive IDs you use to delete archives using Delete Archive (DELETE archive) 820 // (https://docs.aws.amazon.com/amazonglacier/latest/dev/api-archive-delete.html). 821 // 822 // This operation is idempotent. 823 // 824 // An AWS account has full permission to perform all operations (actions). However, 825 // AWS Identity and Access Management (IAM) users don't have any permissions 826 // by default. You must grant them explicit permission to perform specific actions. 827 // For more information, see Access Control Using AWS Identity and Access Management 828 // (IAM) (https://docs.aws.amazon.com/amazonglacier/latest/dev/using-iam-with-amazon-glacier.html). 829 // 830 // For conceptual information and underlying REST API, see Deleting a Vault 831 // in Amazon Glacier (https://docs.aws.amazon.com/amazonglacier/latest/dev/deleting-vaults.html) 832 // and Delete Vault (https://docs.aws.amazon.com/amazonglacier/latest/dev/api-vault-delete.html) 833 // in the Amazon S3 Glacier Developer Guide. 834 // 835 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 836 // with awserr.Error's Code and Message methods to get detailed information about 837 // the error. 838 // 839 // See the AWS API reference guide for Amazon Glacier's 840 // API operation DeleteVault for usage and error information. 841 // 842 // Returned Error Types: 843 // * ResourceNotFoundException 844 // Returned if the specified resource (such as a vault, upload ID, or job ID) 845 // doesn't exist. 846 // 847 // * InvalidParameterValueException 848 // Returned if a parameter of the request is incorrectly specified. 849 // 850 // * MissingParameterValueException 851 // Returned if a required header or parameter is missing from the request. 852 // 853 // * ServiceUnavailableException 854 // Returned if the service cannot complete the request. 855 // 856 func (c *Glacier) DeleteVault(input *DeleteVaultInput) (*DeleteVaultOutput, error) { 857 req, out := c.DeleteVaultRequest(input) 858 return out, req.Send() 859 } 860 861 // DeleteVaultWithContext is the same as DeleteVault with the addition of 862 // the ability to pass a context and additional request options. 863 // 864 // See DeleteVault for details on how to use this API operation. 865 // 866 // The context must be non-nil and will be used for request cancellation. If 867 // the context is nil a panic will occur. In the future the SDK may create 868 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 869 // for more information on using Contexts. 870 func (c *Glacier) DeleteVaultWithContext(ctx aws.Context, input *DeleteVaultInput, opts ...request.Option) (*DeleteVaultOutput, error) { 871 req, out := c.DeleteVaultRequest(input) 872 req.SetContext(ctx) 873 req.ApplyOptions(opts...) 874 return out, req.Send() 875 } 876 877 const opDeleteVaultAccessPolicy = "DeleteVaultAccessPolicy" 878 879 // DeleteVaultAccessPolicyRequest generates a "aws/request.Request" representing the 880 // client's request for the DeleteVaultAccessPolicy operation. The "output" return 881 // value will be populated with the request's response once the request completes 882 // successfully. 883 // 884 // Use "Send" method on the returned Request to send the API call to the service. 885 // the "output" return value is not valid until after Send returns without error. 886 // 887 // See DeleteVaultAccessPolicy for more information on using the DeleteVaultAccessPolicy 888 // API call, and error handling. 889 // 890 // This method is useful when you want to inject custom logic or configuration 891 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 892 // 893 // 894 // // Example sending a request using the DeleteVaultAccessPolicyRequest method. 895 // req, resp := client.DeleteVaultAccessPolicyRequest(params) 896 // 897 // err := req.Send() 898 // if err == nil { // resp is now filled 899 // fmt.Println(resp) 900 // } 901 func (c *Glacier) DeleteVaultAccessPolicyRequest(input *DeleteVaultAccessPolicyInput) (req *request.Request, output *DeleteVaultAccessPolicyOutput) { 902 op := &request.Operation{ 903 Name: opDeleteVaultAccessPolicy, 904 HTTPMethod: "DELETE", 905 HTTPPath: "/{accountId}/vaults/{vaultName}/access-policy", 906 } 907 908 if input == nil { 909 input = &DeleteVaultAccessPolicyInput{} 910 } 911 912 output = &DeleteVaultAccessPolicyOutput{} 913 req = c.newRequest(op, input, output) 914 req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 915 return 916 } 917 918 // DeleteVaultAccessPolicy API operation for Amazon Glacier. 919 // 920 // This operation deletes the access policy associated with the specified vault. 921 // The operation is eventually consistent; that is, it might take some time 922 // for Amazon S3 Glacier to completely remove the access policy, and you might 923 // still see the effect of the policy for a short time after you send the delete 924 // request. 925 // 926 // This operation is idempotent. You can invoke delete multiple times, even 927 // if there is no policy associated with the vault. For more information about 928 // vault access policies, see Amazon Glacier Access Control with Vault Access 929 // Policies (https://docs.aws.amazon.com/amazonglacier/latest/dev/vault-access-policy.html). 930 // 931 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 932 // with awserr.Error's Code and Message methods to get detailed information about 933 // the error. 934 // 935 // See the AWS API reference guide for Amazon Glacier's 936 // API operation DeleteVaultAccessPolicy for usage and error information. 937 // 938 // Returned Error Types: 939 // * ResourceNotFoundException 940 // Returned if the specified resource (such as a vault, upload ID, or job ID) 941 // doesn't exist. 942 // 943 // * InvalidParameterValueException 944 // Returned if a parameter of the request is incorrectly specified. 945 // 946 // * MissingParameterValueException 947 // Returned if a required header or parameter is missing from the request. 948 // 949 // * ServiceUnavailableException 950 // Returned if the service cannot complete the request. 951 // 952 func (c *Glacier) DeleteVaultAccessPolicy(input *DeleteVaultAccessPolicyInput) (*DeleteVaultAccessPolicyOutput, error) { 953 req, out := c.DeleteVaultAccessPolicyRequest(input) 954 return out, req.Send() 955 } 956 957 // DeleteVaultAccessPolicyWithContext is the same as DeleteVaultAccessPolicy with the addition of 958 // the ability to pass a context and additional request options. 959 // 960 // See DeleteVaultAccessPolicy for details on how to use this API operation. 961 // 962 // The context must be non-nil and will be used for request cancellation. If 963 // the context is nil a panic will occur. In the future the SDK may create 964 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 965 // for more information on using Contexts. 966 func (c *Glacier) DeleteVaultAccessPolicyWithContext(ctx aws.Context, input *DeleteVaultAccessPolicyInput, opts ...request.Option) (*DeleteVaultAccessPolicyOutput, error) { 967 req, out := c.DeleteVaultAccessPolicyRequest(input) 968 req.SetContext(ctx) 969 req.ApplyOptions(opts...) 970 return out, req.Send() 971 } 972 973 const opDeleteVaultNotifications = "DeleteVaultNotifications" 974 975 // DeleteVaultNotificationsRequest generates a "aws/request.Request" representing the 976 // client's request for the DeleteVaultNotifications operation. The "output" return 977 // value will be populated with the request's response once the request completes 978 // successfully. 979 // 980 // Use "Send" method on the returned Request to send the API call to the service. 981 // the "output" return value is not valid until after Send returns without error. 982 // 983 // See DeleteVaultNotifications for more information on using the DeleteVaultNotifications 984 // API call, and error handling. 985 // 986 // This method is useful when you want to inject custom logic or configuration 987 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 988 // 989 // 990 // // Example sending a request using the DeleteVaultNotificationsRequest method. 991 // req, resp := client.DeleteVaultNotificationsRequest(params) 992 // 993 // err := req.Send() 994 // if err == nil { // resp is now filled 995 // fmt.Println(resp) 996 // } 997 func (c *Glacier) DeleteVaultNotificationsRequest(input *DeleteVaultNotificationsInput) (req *request.Request, output *DeleteVaultNotificationsOutput) { 998 op := &request.Operation{ 999 Name: opDeleteVaultNotifications, 1000 HTTPMethod: "DELETE", 1001 HTTPPath: "/{accountId}/vaults/{vaultName}/notification-configuration", 1002 } 1003 1004 if input == nil { 1005 input = &DeleteVaultNotificationsInput{} 1006 } 1007 1008 output = &DeleteVaultNotificationsOutput{} 1009 req = c.newRequest(op, input, output) 1010 req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 1011 return 1012 } 1013 1014 // DeleteVaultNotifications API operation for Amazon Glacier. 1015 // 1016 // This operation deletes the notification configuration set for a vault. The 1017 // operation is eventually consistent; that is, it might take some time for 1018 // Amazon S3 Glacier to completely disable the notifications and you might still 1019 // receive some notifications for a short time after you send the delete request. 1020 // 1021 // An AWS account has full permission to perform all operations (actions). However, 1022 // AWS Identity and Access Management (IAM) users don't have any permissions 1023 // by default. You must grant them explicit permission to perform specific actions. 1024 // For more information, see Access Control Using AWS Identity and Access Management 1025 // (IAM) (https://docs.aws.amazon.com/amazonglacier/latest/dev/using-iam-with-amazon-glacier.html). 1026 // 1027 // For conceptual information and underlying REST API, see Configuring Vault 1028 // Notifications in Amazon S3 Glacier (https://docs.aws.amazon.com/amazonglacier/latest/dev/configuring-notifications.html) 1029 // and Delete Vault Notification Configuration (https://docs.aws.amazon.com/amazonglacier/latest/dev/api-vault-notifications-delete.html) 1030 // in the Amazon S3 Glacier Developer Guide. 1031 // 1032 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1033 // with awserr.Error's Code and Message methods to get detailed information about 1034 // the error. 1035 // 1036 // See the AWS API reference guide for Amazon Glacier's 1037 // API operation DeleteVaultNotifications for usage and error information. 1038 // 1039 // Returned Error Types: 1040 // * ResourceNotFoundException 1041 // Returned if the specified resource (such as a vault, upload ID, or job ID) 1042 // doesn't exist. 1043 // 1044 // * InvalidParameterValueException 1045 // Returned if a parameter of the request is incorrectly specified. 1046 // 1047 // * MissingParameterValueException 1048 // Returned if a required header or parameter is missing from the request. 1049 // 1050 // * ServiceUnavailableException 1051 // Returned if the service cannot complete the request. 1052 // 1053 func (c *Glacier) DeleteVaultNotifications(input *DeleteVaultNotificationsInput) (*DeleteVaultNotificationsOutput, error) { 1054 req, out := c.DeleteVaultNotificationsRequest(input) 1055 return out, req.Send() 1056 } 1057 1058 // DeleteVaultNotificationsWithContext is the same as DeleteVaultNotifications with the addition of 1059 // the ability to pass a context and additional request options. 1060 // 1061 // See DeleteVaultNotifications for details on how to use this API operation. 1062 // 1063 // The context must be non-nil and will be used for request cancellation. If 1064 // the context is nil a panic will occur. In the future the SDK may create 1065 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1066 // for more information on using Contexts. 1067 func (c *Glacier) DeleteVaultNotificationsWithContext(ctx aws.Context, input *DeleteVaultNotificationsInput, opts ...request.Option) (*DeleteVaultNotificationsOutput, error) { 1068 req, out := c.DeleteVaultNotificationsRequest(input) 1069 req.SetContext(ctx) 1070 req.ApplyOptions(opts...) 1071 return out, req.Send() 1072 } 1073 1074 const opDescribeJob = "DescribeJob" 1075 1076 // DescribeJobRequest generates a "aws/request.Request" representing the 1077 // client's request for the DescribeJob operation. The "output" return 1078 // value will be populated with the request's response once the request completes 1079 // successfully. 1080 // 1081 // Use "Send" method on the returned Request to send the API call to the service. 1082 // the "output" return value is not valid until after Send returns without error. 1083 // 1084 // See DescribeJob for more information on using the DescribeJob 1085 // API call, and error handling. 1086 // 1087 // This method is useful when you want to inject custom logic or configuration 1088 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 1089 // 1090 // 1091 // // Example sending a request using the DescribeJobRequest method. 1092 // req, resp := client.DescribeJobRequest(params) 1093 // 1094 // err := req.Send() 1095 // if err == nil { // resp is now filled 1096 // fmt.Println(resp) 1097 // } 1098 func (c *Glacier) DescribeJobRequest(input *DescribeJobInput) (req *request.Request, output *JobDescription) { 1099 op := &request.Operation{ 1100 Name: opDescribeJob, 1101 HTTPMethod: "GET", 1102 HTTPPath: "/{accountId}/vaults/{vaultName}/jobs/{jobId}", 1103 } 1104 1105 if input == nil { 1106 input = &DescribeJobInput{} 1107 } 1108 1109 output = &JobDescription{} 1110 req = c.newRequest(op, input, output) 1111 return 1112 } 1113 1114 // DescribeJob API operation for Amazon Glacier. 1115 // 1116 // This operation returns information about a job you previously initiated, 1117 // including the job initiation date, the user who initiated the job, the job 1118 // status code/message and the Amazon SNS topic to notify after Amazon S3 Glacier 1119 // (Glacier) completes the job. For more information about initiating a job, 1120 // see InitiateJob. 1121 // 1122 // This operation enables you to check the status of your job. However, it is 1123 // strongly recommended that you set up an Amazon SNS topic and specify it in 1124 // your initiate job request so that Glacier can notify the topic after it completes 1125 // the job. 1126 // 1127 // A job ID will not expire for at least 24 hours after Glacier completes the 1128 // job. 1129 // 1130 // An AWS account has full permission to perform all operations (actions). However, 1131 // AWS Identity and Access Management (IAM) users don't have any permissions 1132 // by default. You must grant them explicit permission to perform specific actions. 1133 // For more information, see Access Control Using AWS Identity and Access Management 1134 // (IAM) (https://docs.aws.amazon.com/amazonglacier/latest/dev/using-iam-with-amazon-glacier.html). 1135 // 1136 // For more information about using this operation, see the documentation for 1137 // the underlying REST API Describe Job (https://docs.aws.amazon.com/amazonglacier/latest/dev/api-describe-job-get.html) 1138 // in the Amazon Glacier Developer Guide. 1139 // 1140 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1141 // with awserr.Error's Code and Message methods to get detailed information about 1142 // the error. 1143 // 1144 // See the AWS API reference guide for Amazon Glacier's 1145 // API operation DescribeJob for usage and error information. 1146 // 1147 // Returned Error Types: 1148 // * ResourceNotFoundException 1149 // Returned if the specified resource (such as a vault, upload ID, or job ID) 1150 // doesn't exist. 1151 // 1152 // * InvalidParameterValueException 1153 // Returned if a parameter of the request is incorrectly specified. 1154 // 1155 // * MissingParameterValueException 1156 // Returned if a required header or parameter is missing from the request. 1157 // 1158 // * ServiceUnavailableException 1159 // Returned if the service cannot complete the request. 1160 // 1161 func (c *Glacier) DescribeJob(input *DescribeJobInput) (*JobDescription, error) { 1162 req, out := c.DescribeJobRequest(input) 1163 return out, req.Send() 1164 } 1165 1166 // DescribeJobWithContext is the same as DescribeJob with the addition of 1167 // the ability to pass a context and additional request options. 1168 // 1169 // See DescribeJob for details on how to use this API operation. 1170 // 1171 // The context must be non-nil and will be used for request cancellation. If 1172 // the context is nil a panic will occur. In the future the SDK may create 1173 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1174 // for more information on using Contexts. 1175 func (c *Glacier) DescribeJobWithContext(ctx aws.Context, input *DescribeJobInput, opts ...request.Option) (*JobDescription, error) { 1176 req, out := c.DescribeJobRequest(input) 1177 req.SetContext(ctx) 1178 req.ApplyOptions(opts...) 1179 return out, req.Send() 1180 } 1181 1182 const opDescribeVault = "DescribeVault" 1183 1184 // DescribeVaultRequest generates a "aws/request.Request" representing the 1185 // client's request for the DescribeVault operation. The "output" return 1186 // value will be populated with the request's response once the request completes 1187 // successfully. 1188 // 1189 // Use "Send" method on the returned Request to send the API call to the service. 1190 // the "output" return value is not valid until after Send returns without error. 1191 // 1192 // See DescribeVault for more information on using the DescribeVault 1193 // API call, and error handling. 1194 // 1195 // This method is useful when you want to inject custom logic or configuration 1196 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 1197 // 1198 // 1199 // // Example sending a request using the DescribeVaultRequest method. 1200 // req, resp := client.DescribeVaultRequest(params) 1201 // 1202 // err := req.Send() 1203 // if err == nil { // resp is now filled 1204 // fmt.Println(resp) 1205 // } 1206 func (c *Glacier) DescribeVaultRequest(input *DescribeVaultInput) (req *request.Request, output *DescribeVaultOutput) { 1207 op := &request.Operation{ 1208 Name: opDescribeVault, 1209 HTTPMethod: "GET", 1210 HTTPPath: "/{accountId}/vaults/{vaultName}", 1211 } 1212 1213 if input == nil { 1214 input = &DescribeVaultInput{} 1215 } 1216 1217 output = &DescribeVaultOutput{} 1218 req = c.newRequest(op, input, output) 1219 return 1220 } 1221 1222 // DescribeVault API operation for Amazon Glacier. 1223 // 1224 // This operation returns information about a vault, including the vault's Amazon 1225 // Resource Name (ARN), the date the vault was created, the number of archives 1226 // it contains, and the total size of all the archives in the vault. The number 1227 // of archives and their total size are as of the last inventory generation. 1228 // This means that if you add or remove an archive from a vault, and then immediately 1229 // use Describe Vault, the change in contents will not be immediately reflected. 1230 // If you want to retrieve the latest inventory of the vault, use InitiateJob. 1231 // Amazon S3 Glacier generates vault inventories approximately daily. For more 1232 // information, see Downloading a Vault Inventory in Amazon S3 Glacier (https://docs.aws.amazon.com/amazonglacier/latest/dev/vault-inventory.html). 1233 // 1234 // An AWS account has full permission to perform all operations (actions). However, 1235 // AWS Identity and Access Management (IAM) users don't have any permissions 1236 // by default. You must grant them explicit permission to perform specific actions. 1237 // For more information, see Access Control Using AWS Identity and Access Management 1238 // (IAM) (https://docs.aws.amazon.com/amazonglacier/latest/dev/using-iam-with-amazon-glacier.html). 1239 // 1240 // For conceptual information and underlying REST API, see Retrieving Vault 1241 // Metadata in Amazon S3 Glacier (https://docs.aws.amazon.com/amazonglacier/latest/dev/retrieving-vault-info.html) 1242 // and Describe Vault (https://docs.aws.amazon.com/amazonglacier/latest/dev/api-vault-get.html) 1243 // in the Amazon Glacier Developer Guide. 1244 // 1245 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1246 // with awserr.Error's Code and Message methods to get detailed information about 1247 // the error. 1248 // 1249 // See the AWS API reference guide for Amazon Glacier's 1250 // API operation DescribeVault for usage and error information. 1251 // 1252 // Returned Error Types: 1253 // * ResourceNotFoundException 1254 // Returned if the specified resource (such as a vault, upload ID, or job ID) 1255 // doesn't exist. 1256 // 1257 // * InvalidParameterValueException 1258 // Returned if a parameter of the request is incorrectly specified. 1259 // 1260 // * MissingParameterValueException 1261 // Returned if a required header or parameter is missing from the request. 1262 // 1263 // * ServiceUnavailableException 1264 // Returned if the service cannot complete the request. 1265 // 1266 func (c *Glacier) DescribeVault(input *DescribeVaultInput) (*DescribeVaultOutput, error) { 1267 req, out := c.DescribeVaultRequest(input) 1268 return out, req.Send() 1269 } 1270 1271 // DescribeVaultWithContext is the same as DescribeVault with the addition of 1272 // the ability to pass a context and additional request options. 1273 // 1274 // See DescribeVault for details on how to use this API operation. 1275 // 1276 // The context must be non-nil and will be used for request cancellation. If 1277 // the context is nil a panic will occur. In the future the SDK may create 1278 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1279 // for more information on using Contexts. 1280 func (c *Glacier) DescribeVaultWithContext(ctx aws.Context, input *DescribeVaultInput, opts ...request.Option) (*DescribeVaultOutput, error) { 1281 req, out := c.DescribeVaultRequest(input) 1282 req.SetContext(ctx) 1283 req.ApplyOptions(opts...) 1284 return out, req.Send() 1285 } 1286 1287 const opGetDataRetrievalPolicy = "GetDataRetrievalPolicy" 1288 1289 // GetDataRetrievalPolicyRequest generates a "aws/request.Request" representing the 1290 // client's request for the GetDataRetrievalPolicy operation. The "output" return 1291 // value will be populated with the request's response once the request completes 1292 // successfully. 1293 // 1294 // Use "Send" method on the returned Request to send the API call to the service. 1295 // the "output" return value is not valid until after Send returns without error. 1296 // 1297 // See GetDataRetrievalPolicy for more information on using the GetDataRetrievalPolicy 1298 // API call, and error handling. 1299 // 1300 // This method is useful when you want to inject custom logic or configuration 1301 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 1302 // 1303 // 1304 // // Example sending a request using the GetDataRetrievalPolicyRequest method. 1305 // req, resp := client.GetDataRetrievalPolicyRequest(params) 1306 // 1307 // err := req.Send() 1308 // if err == nil { // resp is now filled 1309 // fmt.Println(resp) 1310 // } 1311 func (c *Glacier) GetDataRetrievalPolicyRequest(input *GetDataRetrievalPolicyInput) (req *request.Request, output *GetDataRetrievalPolicyOutput) { 1312 op := &request.Operation{ 1313 Name: opGetDataRetrievalPolicy, 1314 HTTPMethod: "GET", 1315 HTTPPath: "/{accountId}/policies/data-retrieval", 1316 } 1317 1318 if input == nil { 1319 input = &GetDataRetrievalPolicyInput{} 1320 } 1321 1322 output = &GetDataRetrievalPolicyOutput{} 1323 req = c.newRequest(op, input, output) 1324 return 1325 } 1326 1327 // GetDataRetrievalPolicy API operation for Amazon Glacier. 1328 // 1329 // This operation returns the current data retrieval policy for the account 1330 // and region specified in the GET request. For more information about data 1331 // retrieval policies, see Amazon Glacier Data Retrieval Policies (https://docs.aws.amazon.com/amazonglacier/latest/dev/data-retrieval-policy.html). 1332 // 1333 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1334 // with awserr.Error's Code and Message methods to get detailed information about 1335 // the error. 1336 // 1337 // See the AWS API reference guide for Amazon Glacier's 1338 // API operation GetDataRetrievalPolicy for usage and error information. 1339 // 1340 // Returned Error Types: 1341 // * InvalidParameterValueException 1342 // Returned if a parameter of the request is incorrectly specified. 1343 // 1344 // * MissingParameterValueException 1345 // Returned if a required header or parameter is missing from the request. 1346 // 1347 // * ServiceUnavailableException 1348 // Returned if the service cannot complete the request. 1349 // 1350 func (c *Glacier) GetDataRetrievalPolicy(input *GetDataRetrievalPolicyInput) (*GetDataRetrievalPolicyOutput, error) { 1351 req, out := c.GetDataRetrievalPolicyRequest(input) 1352 return out, req.Send() 1353 } 1354 1355 // GetDataRetrievalPolicyWithContext is the same as GetDataRetrievalPolicy with the addition of 1356 // the ability to pass a context and additional request options. 1357 // 1358 // See GetDataRetrievalPolicy for details on how to use this API operation. 1359 // 1360 // The context must be non-nil and will be used for request cancellation. If 1361 // the context is nil a panic will occur. In the future the SDK may create 1362 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1363 // for more information on using Contexts. 1364 func (c *Glacier) GetDataRetrievalPolicyWithContext(ctx aws.Context, input *GetDataRetrievalPolicyInput, opts ...request.Option) (*GetDataRetrievalPolicyOutput, error) { 1365 req, out := c.GetDataRetrievalPolicyRequest(input) 1366 req.SetContext(ctx) 1367 req.ApplyOptions(opts...) 1368 return out, req.Send() 1369 } 1370 1371 const opGetJobOutput = "GetJobOutput" 1372 1373 // GetJobOutputRequest generates a "aws/request.Request" representing the 1374 // client's request for the GetJobOutput operation. The "output" return 1375 // value will be populated with the request's response once the request completes 1376 // successfully. 1377 // 1378 // Use "Send" method on the returned Request to send the API call to the service. 1379 // the "output" return value is not valid until after Send returns without error. 1380 // 1381 // See GetJobOutput for more information on using the GetJobOutput 1382 // API call, and error handling. 1383 // 1384 // This method is useful when you want to inject custom logic or configuration 1385 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 1386 // 1387 // 1388 // // Example sending a request using the GetJobOutputRequest method. 1389 // req, resp := client.GetJobOutputRequest(params) 1390 // 1391 // err := req.Send() 1392 // if err == nil { // resp is now filled 1393 // fmt.Println(resp) 1394 // } 1395 func (c *Glacier) GetJobOutputRequest(input *GetJobOutputInput) (req *request.Request, output *GetJobOutputOutput) { 1396 op := &request.Operation{ 1397 Name: opGetJobOutput, 1398 HTTPMethod: "GET", 1399 HTTPPath: "/{accountId}/vaults/{vaultName}/jobs/{jobId}/output", 1400 } 1401 1402 if input == nil { 1403 input = &GetJobOutputInput{} 1404 } 1405 1406 output = &GetJobOutputOutput{} 1407 req = c.newRequest(op, input, output) 1408 return 1409 } 1410 1411 // GetJobOutput API operation for Amazon Glacier. 1412 // 1413 // This operation downloads the output of the job you initiated using InitiateJob. 1414 // Depending on the job type you specified when you initiated the job, the output 1415 // will be either the content of an archive or a vault inventory. 1416 // 1417 // You can download all the job output or download a portion of the output by 1418 // specifying a byte range. In the case of an archive retrieval job, depending 1419 // on the byte range you specify, Amazon S3 Glacier (Glacier) returns the checksum 1420 // for the portion of the data. You can compute the checksum on the client and 1421 // verify that the values match to ensure the portion you downloaded is the 1422 // correct data. 1423 // 1424 // A job ID will not expire for at least 24 hours after Glacier completes the 1425 // job. That a byte range. For both archive and inventory retrieval jobs, you 1426 // should verify the downloaded size against the size returned in the headers 1427 // from the Get Job Output response. 1428 // 1429 // For archive retrieval jobs, you should also verify that the size is what 1430 // you expected. If you download a portion of the output, the expected size 1431 // is based on the range of bytes you specified. For example, if you specify 1432 // a range of bytes=0-1048575, you should verify your download size is 1,048,576 1433 // bytes. If you download an entire archive, the expected size is the size of 1434 // the archive when you uploaded it to Amazon S3 Glacier The expected size is 1435 // also returned in the headers from the Get Job Output response. 1436 // 1437 // In the case of an archive retrieval job, depending on the byte range you 1438 // specify, Glacier returns the checksum for the portion of the data. To ensure 1439 // the portion you downloaded is the correct data, compute the checksum on the 1440 // client, verify that the values match, and verify that the size is what you 1441 // expected. 1442 // 1443 // A job ID does not expire for at least 24 hours after Glacier completes the 1444 // job. That is, you can download the job output within the 24 hours period 1445 // after Amazon Glacier completes the job. 1446 // 1447 // An AWS account has full permission to perform all operations (actions). However, 1448 // AWS Identity and Access Management (IAM) users don't have any permissions 1449 // by default. You must grant them explicit permission to perform specific actions. 1450 // For more information, see Access Control Using AWS Identity and Access Management 1451 // (IAM) (https://docs.aws.amazon.com/amazonglacier/latest/dev/using-iam-with-amazon-glacier.html). 1452 // 1453 // For conceptual information and the underlying REST API, see Downloading a 1454 // Vault Inventory (https://docs.aws.amazon.com/amazonglacier/latest/dev/vault-inventory.html), 1455 // Downloading an Archive (https://docs.aws.amazon.com/amazonglacier/latest/dev/downloading-an-archive.html), 1456 // and Get Job Output (https://docs.aws.amazon.com/amazonglacier/latest/dev/api-job-output-get.html) 1457 // 1458 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1459 // with awserr.Error's Code and Message methods to get detailed information about 1460 // the error. 1461 // 1462 // See the AWS API reference guide for Amazon Glacier's 1463 // API operation GetJobOutput for usage and error information. 1464 // 1465 // Returned Error Types: 1466 // * ResourceNotFoundException 1467 // Returned if the specified resource (such as a vault, upload ID, or job ID) 1468 // doesn't exist. 1469 // 1470 // * InvalidParameterValueException 1471 // Returned if a parameter of the request is incorrectly specified. 1472 // 1473 // * MissingParameterValueException 1474 // Returned if a required header or parameter is missing from the request. 1475 // 1476 // * ServiceUnavailableException 1477 // Returned if the service cannot complete the request. 1478 // 1479 func (c *Glacier) GetJobOutput(input *GetJobOutputInput) (*GetJobOutputOutput, error) { 1480 req, out := c.GetJobOutputRequest(input) 1481 return out, req.Send() 1482 } 1483 1484 // GetJobOutputWithContext is the same as GetJobOutput with the addition of 1485 // the ability to pass a context and additional request options. 1486 // 1487 // See GetJobOutput for details on how to use this API operation. 1488 // 1489 // The context must be non-nil and will be used for request cancellation. If 1490 // the context is nil a panic will occur. In the future the SDK may create 1491 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1492 // for more information on using Contexts. 1493 func (c *Glacier) GetJobOutputWithContext(ctx aws.Context, input *GetJobOutputInput, opts ...request.Option) (*GetJobOutputOutput, error) { 1494 req, out := c.GetJobOutputRequest(input) 1495 req.SetContext(ctx) 1496 req.ApplyOptions(opts...) 1497 return out, req.Send() 1498 } 1499 1500 const opGetVaultAccessPolicy = "GetVaultAccessPolicy" 1501 1502 // GetVaultAccessPolicyRequest generates a "aws/request.Request" representing the 1503 // client's request for the GetVaultAccessPolicy operation. The "output" return 1504 // value will be populated with the request's response once the request completes 1505 // successfully. 1506 // 1507 // Use "Send" method on the returned Request to send the API call to the service. 1508 // the "output" return value is not valid until after Send returns without error. 1509 // 1510 // See GetVaultAccessPolicy for more information on using the GetVaultAccessPolicy 1511 // API call, and error handling. 1512 // 1513 // This method is useful when you want to inject custom logic or configuration 1514 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 1515 // 1516 // 1517 // // Example sending a request using the GetVaultAccessPolicyRequest method. 1518 // req, resp := client.GetVaultAccessPolicyRequest(params) 1519 // 1520 // err := req.Send() 1521 // if err == nil { // resp is now filled 1522 // fmt.Println(resp) 1523 // } 1524 func (c *Glacier) GetVaultAccessPolicyRequest(input *GetVaultAccessPolicyInput) (req *request.Request, output *GetVaultAccessPolicyOutput) { 1525 op := &request.Operation{ 1526 Name: opGetVaultAccessPolicy, 1527 HTTPMethod: "GET", 1528 HTTPPath: "/{accountId}/vaults/{vaultName}/access-policy", 1529 } 1530 1531 if input == nil { 1532 input = &GetVaultAccessPolicyInput{} 1533 } 1534 1535 output = &GetVaultAccessPolicyOutput{} 1536 req = c.newRequest(op, input, output) 1537 return 1538 } 1539 1540 // GetVaultAccessPolicy API operation for Amazon Glacier. 1541 // 1542 // This operation retrieves the access-policy subresource set on the vault; 1543 // for more information on setting this subresource, see Set Vault Access Policy 1544 // (PUT access-policy) (https://docs.aws.amazon.com/amazonglacier/latest/dev/api-SetVaultAccessPolicy.html). 1545 // If there is no access policy set on the vault, the operation returns a 404 1546 // Not found error. For more information about vault access policies, see Amazon 1547 // Glacier Access Control with Vault Access Policies (https://docs.aws.amazon.com/amazonglacier/latest/dev/vault-access-policy.html). 1548 // 1549 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1550 // with awserr.Error's Code and Message methods to get detailed information about 1551 // the error. 1552 // 1553 // See the AWS API reference guide for Amazon Glacier's 1554 // API operation GetVaultAccessPolicy for usage and error information. 1555 // 1556 // Returned Error Types: 1557 // * ResourceNotFoundException 1558 // Returned if the specified resource (such as a vault, upload ID, or job ID) 1559 // doesn't exist. 1560 // 1561 // * InvalidParameterValueException 1562 // Returned if a parameter of the request is incorrectly specified. 1563 // 1564 // * MissingParameterValueException 1565 // Returned if a required header or parameter is missing from the request. 1566 // 1567 // * ServiceUnavailableException 1568 // Returned if the service cannot complete the request. 1569 // 1570 func (c *Glacier) GetVaultAccessPolicy(input *GetVaultAccessPolicyInput) (*GetVaultAccessPolicyOutput, error) { 1571 req, out := c.GetVaultAccessPolicyRequest(input) 1572 return out, req.Send() 1573 } 1574 1575 // GetVaultAccessPolicyWithContext is the same as GetVaultAccessPolicy with the addition of 1576 // the ability to pass a context and additional request options. 1577 // 1578 // See GetVaultAccessPolicy for details on how to use this API operation. 1579 // 1580 // The context must be non-nil and will be used for request cancellation. If 1581 // the context is nil a panic will occur. In the future the SDK may create 1582 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1583 // for more information on using Contexts. 1584 func (c *Glacier) GetVaultAccessPolicyWithContext(ctx aws.Context, input *GetVaultAccessPolicyInput, opts ...request.Option) (*GetVaultAccessPolicyOutput, error) { 1585 req, out := c.GetVaultAccessPolicyRequest(input) 1586 req.SetContext(ctx) 1587 req.ApplyOptions(opts...) 1588 return out, req.Send() 1589 } 1590 1591 const opGetVaultLock = "GetVaultLock" 1592 1593 // GetVaultLockRequest generates a "aws/request.Request" representing the 1594 // client's request for the GetVaultLock operation. The "output" return 1595 // value will be populated with the request's response once the request completes 1596 // successfully. 1597 // 1598 // Use "Send" method on the returned Request to send the API call to the service. 1599 // the "output" return value is not valid until after Send returns without error. 1600 // 1601 // See GetVaultLock for more information on using the GetVaultLock 1602 // API call, and error handling. 1603 // 1604 // This method is useful when you want to inject custom logic or configuration 1605 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 1606 // 1607 // 1608 // // Example sending a request using the GetVaultLockRequest method. 1609 // req, resp := client.GetVaultLockRequest(params) 1610 // 1611 // err := req.Send() 1612 // if err == nil { // resp is now filled 1613 // fmt.Println(resp) 1614 // } 1615 func (c *Glacier) GetVaultLockRequest(input *GetVaultLockInput) (req *request.Request, output *GetVaultLockOutput) { 1616 op := &request.Operation{ 1617 Name: opGetVaultLock, 1618 HTTPMethod: "GET", 1619 HTTPPath: "/{accountId}/vaults/{vaultName}/lock-policy", 1620 } 1621 1622 if input == nil { 1623 input = &GetVaultLockInput{} 1624 } 1625 1626 output = &GetVaultLockOutput{} 1627 req = c.newRequest(op, input, output) 1628 return 1629 } 1630 1631 // GetVaultLock API operation for Amazon Glacier. 1632 // 1633 // This operation retrieves the following attributes from the lock-policy subresource 1634 // set on the specified vault: 1635 // 1636 // * The vault lock policy set on the vault. 1637 // 1638 // * The state of the vault lock, which is either InProgess or Locked. 1639 // 1640 // * When the lock ID expires. The lock ID is used to complete the vault 1641 // locking process. 1642 // 1643 // * When the vault lock was initiated and put into the InProgress state. 1644 // 1645 // A vault lock is put into the InProgress state by calling InitiateVaultLock. 1646 // A vault lock is put into the Locked state by calling CompleteVaultLock. You 1647 // can abort the vault locking process by calling AbortVaultLock. For more information 1648 // about the vault locking process, Amazon Glacier Vault Lock (https://docs.aws.amazon.com/amazonglacier/latest/dev/vault-lock.html). 1649 // 1650 // If there is no vault lock policy set on the vault, the operation returns 1651 // a 404 Not found error. For more information about vault lock policies, Amazon 1652 // Glacier Access Control with Vault Lock Policies (https://docs.aws.amazon.com/amazonglacier/latest/dev/vault-lock-policy.html). 1653 // 1654 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1655 // with awserr.Error's Code and Message methods to get detailed information about 1656 // the error. 1657 // 1658 // See the AWS API reference guide for Amazon Glacier's 1659 // API operation GetVaultLock for usage and error information. 1660 // 1661 // Returned Error Types: 1662 // * ResourceNotFoundException 1663 // Returned if the specified resource (such as a vault, upload ID, or job ID) 1664 // doesn't exist. 1665 // 1666 // * InvalidParameterValueException 1667 // Returned if a parameter of the request is incorrectly specified. 1668 // 1669 // * MissingParameterValueException 1670 // Returned if a required header or parameter is missing from the request. 1671 // 1672 // * ServiceUnavailableException 1673 // Returned if the service cannot complete the request. 1674 // 1675 func (c *Glacier) GetVaultLock(input *GetVaultLockInput) (*GetVaultLockOutput, error) { 1676 req, out := c.GetVaultLockRequest(input) 1677 return out, req.Send() 1678 } 1679 1680 // GetVaultLockWithContext is the same as GetVaultLock with the addition of 1681 // the ability to pass a context and additional request options. 1682 // 1683 // See GetVaultLock for details on how to use this API operation. 1684 // 1685 // The context must be non-nil and will be used for request cancellation. If 1686 // the context is nil a panic will occur. In the future the SDK may create 1687 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1688 // for more information on using Contexts. 1689 func (c *Glacier) GetVaultLockWithContext(ctx aws.Context, input *GetVaultLockInput, opts ...request.Option) (*GetVaultLockOutput, error) { 1690 req, out := c.GetVaultLockRequest(input) 1691 req.SetContext(ctx) 1692 req.ApplyOptions(opts...) 1693 return out, req.Send() 1694 } 1695 1696 const opGetVaultNotifications = "GetVaultNotifications" 1697 1698 // GetVaultNotificationsRequest generates a "aws/request.Request" representing the 1699 // client's request for the GetVaultNotifications operation. The "output" return 1700 // value will be populated with the request's response once the request completes 1701 // successfully. 1702 // 1703 // Use "Send" method on the returned Request to send the API call to the service. 1704 // the "output" return value is not valid until after Send returns without error. 1705 // 1706 // See GetVaultNotifications for more information on using the GetVaultNotifications 1707 // API call, and error handling. 1708 // 1709 // This method is useful when you want to inject custom logic or configuration 1710 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 1711 // 1712 // 1713 // // Example sending a request using the GetVaultNotificationsRequest method. 1714 // req, resp := client.GetVaultNotificationsRequest(params) 1715 // 1716 // err := req.Send() 1717 // if err == nil { // resp is now filled 1718 // fmt.Println(resp) 1719 // } 1720 func (c *Glacier) GetVaultNotificationsRequest(input *GetVaultNotificationsInput) (req *request.Request, output *GetVaultNotificationsOutput) { 1721 op := &request.Operation{ 1722 Name: opGetVaultNotifications, 1723 HTTPMethod: "GET", 1724 HTTPPath: "/{accountId}/vaults/{vaultName}/notification-configuration", 1725 } 1726 1727 if input == nil { 1728 input = &GetVaultNotificationsInput{} 1729 } 1730 1731 output = &GetVaultNotificationsOutput{} 1732 req = c.newRequest(op, input, output) 1733 return 1734 } 1735 1736 // GetVaultNotifications API operation for Amazon Glacier. 1737 // 1738 // This operation retrieves the notification-configuration subresource of the 1739 // specified vault. 1740 // 1741 // For information about setting a notification configuration on a vault, see 1742 // SetVaultNotifications. If a notification configuration for a vault is not 1743 // set, the operation returns a 404 Not Found error. For more information about 1744 // vault notifications, see Configuring Vault Notifications in Amazon S3 Glacier 1745 // (https://docs.aws.amazon.com/amazonglacier/latest/dev/configuring-notifications.html). 1746 // 1747 // An AWS account has full permission to perform all operations (actions). However, 1748 // AWS Identity and Access Management (IAM) users don't have any permissions 1749 // by default. You must grant them explicit permission to perform specific actions. 1750 // For more information, see Access Control Using AWS Identity and Access Management 1751 // (IAM) (https://docs.aws.amazon.com/amazonglacier/latest/dev/using-iam-with-amazon-glacier.html). 1752 // 1753 // For conceptual information and underlying REST API, see Configuring Vault 1754 // Notifications in Amazon S3 Glacier (https://docs.aws.amazon.com/amazonglacier/latest/dev/configuring-notifications.html) 1755 // and Get Vault Notification Configuration (https://docs.aws.amazon.com/amazonglacier/latest/dev/api-vault-notifications-get.html) 1756 // in the Amazon Glacier Developer Guide. 1757 // 1758 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1759 // with awserr.Error's Code and Message methods to get detailed information about 1760 // the error. 1761 // 1762 // See the AWS API reference guide for Amazon Glacier's 1763 // API operation GetVaultNotifications for usage and error information. 1764 // 1765 // Returned Error Types: 1766 // * ResourceNotFoundException 1767 // Returned if the specified resource (such as a vault, upload ID, or job ID) 1768 // doesn't exist. 1769 // 1770 // * InvalidParameterValueException 1771 // Returned if a parameter of the request is incorrectly specified. 1772 // 1773 // * MissingParameterValueException 1774 // Returned if a required header or parameter is missing from the request. 1775 // 1776 // * ServiceUnavailableException 1777 // Returned if the service cannot complete the request. 1778 // 1779 func (c *Glacier) GetVaultNotifications(input *GetVaultNotificationsInput) (*GetVaultNotificationsOutput, error) { 1780 req, out := c.GetVaultNotificationsRequest(input) 1781 return out, req.Send() 1782 } 1783 1784 // GetVaultNotificationsWithContext is the same as GetVaultNotifications with the addition of 1785 // the ability to pass a context and additional request options. 1786 // 1787 // See GetVaultNotifications for details on how to use this API operation. 1788 // 1789 // The context must be non-nil and will be used for request cancellation. If 1790 // the context is nil a panic will occur. In the future the SDK may create 1791 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1792 // for more information on using Contexts. 1793 func (c *Glacier) GetVaultNotificationsWithContext(ctx aws.Context, input *GetVaultNotificationsInput, opts ...request.Option) (*GetVaultNotificationsOutput, error) { 1794 req, out := c.GetVaultNotificationsRequest(input) 1795 req.SetContext(ctx) 1796 req.ApplyOptions(opts...) 1797 return out, req.Send() 1798 } 1799 1800 const opInitiateJob = "InitiateJob" 1801 1802 // InitiateJobRequest generates a "aws/request.Request" representing the 1803 // client's request for the InitiateJob operation. The "output" return 1804 // value will be populated with the request's response once the request completes 1805 // successfully. 1806 // 1807 // Use "Send" method on the returned Request to send the API call to the service. 1808 // the "output" return value is not valid until after Send returns without error. 1809 // 1810 // See InitiateJob for more information on using the InitiateJob 1811 // API call, and error handling. 1812 // 1813 // This method is useful when you want to inject custom logic or configuration 1814 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 1815 // 1816 // 1817 // // Example sending a request using the InitiateJobRequest method. 1818 // req, resp := client.InitiateJobRequest(params) 1819 // 1820 // err := req.Send() 1821 // if err == nil { // resp is now filled 1822 // fmt.Println(resp) 1823 // } 1824 func (c *Glacier) InitiateJobRequest(input *InitiateJobInput) (req *request.Request, output *InitiateJobOutput) { 1825 op := &request.Operation{ 1826 Name: opInitiateJob, 1827 HTTPMethod: "POST", 1828 HTTPPath: "/{accountId}/vaults/{vaultName}/jobs", 1829 } 1830 1831 if input == nil { 1832 input = &InitiateJobInput{} 1833 } 1834 1835 output = &InitiateJobOutput{} 1836 req = c.newRequest(op, input, output) 1837 return 1838 } 1839 1840 // InitiateJob API operation for Amazon Glacier. 1841 // 1842 // This operation initiates a job of the specified type, which can be a select, 1843 // an archival retrieval, or a vault retrieval. For more information about using 1844 // this operation, see the documentation for the underlying REST API Initiate 1845 // a Job (https://docs.aws.amazon.com/amazonglacier/latest/dev/api-initiate-job-post.html). 1846 // 1847 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1848 // with awserr.Error's Code and Message methods to get detailed information about 1849 // the error. 1850 // 1851 // See the AWS API reference guide for Amazon Glacier's 1852 // API operation InitiateJob for usage and error information. 1853 // 1854 // Returned Error Types: 1855 // * ResourceNotFoundException 1856 // Returned if the specified resource (such as a vault, upload ID, or job ID) 1857 // doesn't exist. 1858 // 1859 // * PolicyEnforcedException 1860 // Returned if a retrieval job would exceed the current data policy's retrieval 1861 // rate limit. For more information about data retrieval policies, 1862 // 1863 // * InvalidParameterValueException 1864 // Returned if a parameter of the request is incorrectly specified. 1865 // 1866 // * MissingParameterValueException 1867 // Returned if a required header or parameter is missing from the request. 1868 // 1869 // * InsufficientCapacityException 1870 // Returned if there is insufficient capacity to process this expedited request. 1871 // This error only applies to expedited retrievals and not to standard or bulk 1872 // retrievals. 1873 // 1874 // * ServiceUnavailableException 1875 // Returned if the service cannot complete the request. 1876 // 1877 func (c *Glacier) InitiateJob(input *InitiateJobInput) (*InitiateJobOutput, error) { 1878 req, out := c.InitiateJobRequest(input) 1879 return out, req.Send() 1880 } 1881 1882 // InitiateJobWithContext is the same as InitiateJob with the addition of 1883 // the ability to pass a context and additional request options. 1884 // 1885 // See InitiateJob for details on how to use this API operation. 1886 // 1887 // The context must be non-nil and will be used for request cancellation. If 1888 // the context is nil a panic will occur. In the future the SDK may create 1889 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1890 // for more information on using Contexts. 1891 func (c *Glacier) InitiateJobWithContext(ctx aws.Context, input *InitiateJobInput, opts ...request.Option) (*InitiateJobOutput, error) { 1892 req, out := c.InitiateJobRequest(input) 1893 req.SetContext(ctx) 1894 req.ApplyOptions(opts...) 1895 return out, req.Send() 1896 } 1897 1898 const opInitiateMultipartUpload = "InitiateMultipartUpload" 1899 1900 // InitiateMultipartUploadRequest generates a "aws/request.Request" representing the 1901 // client's request for the InitiateMultipartUpload operation. The "output" return 1902 // value will be populated with the request's response once the request completes 1903 // successfully. 1904 // 1905 // Use "Send" method on the returned Request to send the API call to the service. 1906 // the "output" return value is not valid until after Send returns without error. 1907 // 1908 // See InitiateMultipartUpload for more information on using the InitiateMultipartUpload 1909 // API call, and error handling. 1910 // 1911 // This method is useful when you want to inject custom logic or configuration 1912 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 1913 // 1914 // 1915 // // Example sending a request using the InitiateMultipartUploadRequest method. 1916 // req, resp := client.InitiateMultipartUploadRequest(params) 1917 // 1918 // err := req.Send() 1919 // if err == nil { // resp is now filled 1920 // fmt.Println(resp) 1921 // } 1922 func (c *Glacier) InitiateMultipartUploadRequest(input *InitiateMultipartUploadInput) (req *request.Request, output *InitiateMultipartUploadOutput) { 1923 op := &request.Operation{ 1924 Name: opInitiateMultipartUpload, 1925 HTTPMethod: "POST", 1926 HTTPPath: "/{accountId}/vaults/{vaultName}/multipart-uploads", 1927 } 1928 1929 if input == nil { 1930 input = &InitiateMultipartUploadInput{} 1931 } 1932 1933 output = &InitiateMultipartUploadOutput{} 1934 req = c.newRequest(op, input, output) 1935 return 1936 } 1937 1938 // InitiateMultipartUpload API operation for Amazon Glacier. 1939 // 1940 // This operation initiates a multipart upload. Amazon S3 Glacier creates a 1941 // multipart upload resource and returns its ID in the response. The multipart 1942 // upload ID is used in subsequent requests to upload parts of an archive (see 1943 // UploadMultipartPart). 1944 // 1945 // When you initiate a multipart upload, you specify the part size in number 1946 // of bytes. The part size must be a megabyte (1024 KB) multiplied by a power 1947 // of 2-for example, 1048576 (1 MB), 2097152 (2 MB), 4194304 (4 MB), 8388608 1948 // (8 MB), and so on. The minimum allowable part size is 1 MB, and the maximum 1949 // is 4 GB. 1950 // 1951 // Every part you upload to this resource (see UploadMultipartPart), except 1952 // the last one, must have the same size. The last one can be the same size 1953 // or smaller. For example, suppose you want to upload a 16.2 MB file. If you 1954 // initiate the multipart upload with a part size of 4 MB, you will upload four 1955 // parts of 4 MB each and one part of 0.2 MB. 1956 // 1957 // You don't need to know the size of the archive when you start a multipart 1958 // upload because Amazon S3 Glacier does not require you to specify the overall 1959 // archive size. 1960 // 1961 // After you complete the multipart upload, Amazon S3 Glacier (Glacier) removes 1962 // the multipart upload resource referenced by the ID. Glacier also removes 1963 // the multipart upload resource if you cancel the multipart upload or it may 1964 // be removed if there is no activity for a period of 24 hours. 1965 // 1966 // An AWS account has full permission to perform all operations (actions). However, 1967 // AWS Identity and Access Management (IAM) users don't have any permissions 1968 // by default. You must grant them explicit permission to perform specific actions. 1969 // For more information, see Access Control Using AWS Identity and Access Management 1970 // (IAM) (https://docs.aws.amazon.com/amazonglacier/latest/dev/using-iam-with-amazon-glacier.html). 1971 // 1972 // For conceptual information and underlying REST API, see Uploading Large Archives 1973 // in Parts (Multipart Upload) (https://docs.aws.amazon.com/amazonglacier/latest/dev/uploading-archive-mpu.html) 1974 // and Initiate Multipart Upload (https://docs.aws.amazon.com/amazonglacier/latest/dev/api-multipart-initiate-upload.html) 1975 // in the Amazon Glacier Developer Guide. 1976 // 1977 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1978 // with awserr.Error's Code and Message methods to get detailed information about 1979 // the error. 1980 // 1981 // See the AWS API reference guide for Amazon Glacier's 1982 // API operation InitiateMultipartUpload for usage and error information. 1983 // 1984 // Returned Error Types: 1985 // * ResourceNotFoundException 1986 // Returned if the specified resource (such as a vault, upload ID, or job ID) 1987 // doesn't exist. 1988 // 1989 // * InvalidParameterValueException 1990 // Returned if a parameter of the request is incorrectly specified. 1991 // 1992 // * MissingParameterValueException 1993 // Returned if a required header or parameter is missing from the request. 1994 // 1995 // * ServiceUnavailableException 1996 // Returned if the service cannot complete the request. 1997 // 1998 func (c *Glacier) InitiateMultipartUpload(input *InitiateMultipartUploadInput) (*InitiateMultipartUploadOutput, error) { 1999 req, out := c.InitiateMultipartUploadRequest(input) 2000 return out, req.Send() 2001 } 2002 2003 // InitiateMultipartUploadWithContext is the same as InitiateMultipartUpload with the addition of 2004 // the ability to pass a context and additional request options. 2005 // 2006 // See InitiateMultipartUpload for details on how to use this API operation. 2007 // 2008 // The context must be non-nil and will be used for request cancellation. If 2009 // the context is nil a panic will occur. In the future the SDK may create 2010 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2011 // for more information on using Contexts. 2012 func (c *Glacier) InitiateMultipartUploadWithContext(ctx aws.Context, input *InitiateMultipartUploadInput, opts ...request.Option) (*InitiateMultipartUploadOutput, error) { 2013 req, out := c.InitiateMultipartUploadRequest(input) 2014 req.SetContext(ctx) 2015 req.ApplyOptions(opts...) 2016 return out, req.Send() 2017 } 2018 2019 const opInitiateVaultLock = "InitiateVaultLock" 2020 2021 // InitiateVaultLockRequest generates a "aws/request.Request" representing the 2022 // client's request for the InitiateVaultLock operation. The "output" return 2023 // value will be populated with the request's response once the request completes 2024 // successfully. 2025 // 2026 // Use "Send" method on the returned Request to send the API call to the service. 2027 // the "output" return value is not valid until after Send returns without error. 2028 // 2029 // See InitiateVaultLock for more information on using the InitiateVaultLock 2030 // API call, and error handling. 2031 // 2032 // This method is useful when you want to inject custom logic or configuration 2033 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 2034 // 2035 // 2036 // // Example sending a request using the InitiateVaultLockRequest method. 2037 // req, resp := client.InitiateVaultLockRequest(params) 2038 // 2039 // err := req.Send() 2040 // if err == nil { // resp is now filled 2041 // fmt.Println(resp) 2042 // } 2043 func (c *Glacier) InitiateVaultLockRequest(input *InitiateVaultLockInput) (req *request.Request, output *InitiateVaultLockOutput) { 2044 op := &request.Operation{ 2045 Name: opInitiateVaultLock, 2046 HTTPMethod: "POST", 2047 HTTPPath: "/{accountId}/vaults/{vaultName}/lock-policy", 2048 } 2049 2050 if input == nil { 2051 input = &InitiateVaultLockInput{} 2052 } 2053 2054 output = &InitiateVaultLockOutput{} 2055 req = c.newRequest(op, input, output) 2056 return 2057 } 2058 2059 // InitiateVaultLock API operation for Amazon Glacier. 2060 // 2061 // This operation initiates the vault locking process by doing the following: 2062 // 2063 // * Installing a vault lock policy on the specified vault. 2064 // 2065 // * Setting the lock state of vault lock to InProgress. 2066 // 2067 // * Returning a lock ID, which is used to complete the vault locking process. 2068 // 2069 // You can set one vault lock policy for each vault and this policy can be up 2070 // to 20 KB in size. For more information about vault lock policies, see Amazon 2071 // Glacier Access Control with Vault Lock Policies (https://docs.aws.amazon.com/amazonglacier/latest/dev/vault-lock-policy.html). 2072 // 2073 // You must complete the vault locking process within 24 hours after the vault 2074 // lock enters the InProgress state. After the 24 hour window ends, the lock 2075 // ID expires, the vault automatically exits the InProgress state, and the vault 2076 // lock policy is removed from the vault. You call CompleteVaultLock to complete 2077 // the vault locking process by setting the state of the vault lock to Locked. 2078 // 2079 // After a vault lock is in the Locked state, you cannot initiate a new vault 2080 // lock for the vault. 2081 // 2082 // You can abort the vault locking process by calling AbortVaultLock. You can 2083 // get the state of the vault lock by calling GetVaultLock. For more information 2084 // about the vault locking process, Amazon Glacier Vault Lock (https://docs.aws.amazon.com/amazonglacier/latest/dev/vault-lock.html). 2085 // 2086 // If this operation is called when the vault lock is in the InProgress state, 2087 // the operation returns an AccessDeniedException error. When the vault lock 2088 // is in the InProgress state you must call AbortVaultLock before you can initiate 2089 // a new vault lock policy. 2090 // 2091 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2092 // with awserr.Error's Code and Message methods to get detailed information about 2093 // the error. 2094 // 2095 // See the AWS API reference guide for Amazon Glacier's 2096 // API operation InitiateVaultLock for usage and error information. 2097 // 2098 // Returned Error Types: 2099 // * ResourceNotFoundException 2100 // Returned if the specified resource (such as a vault, upload ID, or job ID) 2101 // doesn't exist. 2102 // 2103 // * InvalidParameterValueException 2104 // Returned if a parameter of the request is incorrectly specified. 2105 // 2106 // * MissingParameterValueException 2107 // Returned if a required header or parameter is missing from the request. 2108 // 2109 // * ServiceUnavailableException 2110 // Returned if the service cannot complete the request. 2111 // 2112 func (c *Glacier) InitiateVaultLock(input *InitiateVaultLockInput) (*InitiateVaultLockOutput, error) { 2113 req, out := c.InitiateVaultLockRequest(input) 2114 return out, req.Send() 2115 } 2116 2117 // InitiateVaultLockWithContext is the same as InitiateVaultLock with the addition of 2118 // the ability to pass a context and additional request options. 2119 // 2120 // See InitiateVaultLock for details on how to use this API operation. 2121 // 2122 // The context must be non-nil and will be used for request cancellation. If 2123 // the context is nil a panic will occur. In the future the SDK may create 2124 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2125 // for more information on using Contexts. 2126 func (c *Glacier) InitiateVaultLockWithContext(ctx aws.Context, input *InitiateVaultLockInput, opts ...request.Option) (*InitiateVaultLockOutput, error) { 2127 req, out := c.InitiateVaultLockRequest(input) 2128 req.SetContext(ctx) 2129 req.ApplyOptions(opts...) 2130 return out, req.Send() 2131 } 2132 2133 const opListJobs = "ListJobs" 2134 2135 // ListJobsRequest generates a "aws/request.Request" representing the 2136 // client's request for the ListJobs operation. The "output" return 2137 // value will be populated with the request's response once the request completes 2138 // successfully. 2139 // 2140 // Use "Send" method on the returned Request to send the API call to the service. 2141 // the "output" return value is not valid until after Send returns without error. 2142 // 2143 // See ListJobs for more information on using the ListJobs 2144 // API call, and error handling. 2145 // 2146 // This method is useful when you want to inject custom logic or configuration 2147 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 2148 // 2149 // 2150 // // Example sending a request using the ListJobsRequest method. 2151 // req, resp := client.ListJobsRequest(params) 2152 // 2153 // err := req.Send() 2154 // if err == nil { // resp is now filled 2155 // fmt.Println(resp) 2156 // } 2157 func (c *Glacier) ListJobsRequest(input *ListJobsInput) (req *request.Request, output *ListJobsOutput) { 2158 op := &request.Operation{ 2159 Name: opListJobs, 2160 HTTPMethod: "GET", 2161 HTTPPath: "/{accountId}/vaults/{vaultName}/jobs", 2162 Paginator: &request.Paginator{ 2163 InputTokens: []string{"marker"}, 2164 OutputTokens: []string{"Marker"}, 2165 LimitToken: "limit", 2166 TruncationToken: "", 2167 }, 2168 } 2169 2170 if input == nil { 2171 input = &ListJobsInput{} 2172 } 2173 2174 output = &ListJobsOutput{} 2175 req = c.newRequest(op, input, output) 2176 return 2177 } 2178 2179 // ListJobs API operation for Amazon Glacier. 2180 // 2181 // This operation lists jobs for a vault, including jobs that are in-progress 2182 // and jobs that have recently finished. The List Job operation returns a list 2183 // of these jobs sorted by job initiation time. 2184 // 2185 // Amazon Glacier retains recently completed jobs for a period before deleting 2186 // them; however, it eventually removes completed jobs. The output of completed 2187 // jobs can be retrieved. Retaining completed jobs for a period of time after 2188 // they have completed enables you to get a job output in the event you miss 2189 // the job completion notification or your first attempt to download it fails. 2190 // For example, suppose you start an archive retrieval job to download an archive. 2191 // After the job completes, you start to download the archive but encounter 2192 // a network error. In this scenario, you can retry and download the archive 2193 // while the job exists. 2194 // 2195 // The List Jobs operation supports pagination. You should always check the 2196 // response Marker field. If there are no more jobs to list, the Marker field 2197 // is set to null. If there are more jobs to list, the Marker field is set to 2198 // a non-null value, which you can use to continue the pagination of the list. 2199 // To return a list of jobs that begins at a specific job, set the marker request 2200 // parameter to the Marker value for that job that you obtained from a previous 2201 // List Jobs request. 2202 // 2203 // You can set a maximum limit for the number of jobs returned in the response 2204 // by specifying the limit parameter in the request. The default limit is 50. 2205 // The number of jobs returned might be fewer than the limit, but the number 2206 // of returned jobs never exceeds the limit. 2207 // 2208 // Additionally, you can filter the jobs list returned by specifying the optional 2209 // statuscode parameter or completed parameter, or both. Using the statuscode 2210 // parameter, you can specify to return only jobs that match either the InProgress, 2211 // Succeeded, or Failed status. Using the completed parameter, you can specify 2212 // to return only jobs that were completed (true) or jobs that were not completed 2213 // (false). 2214 // 2215 // For more information about using this operation, see the documentation for 2216 // the underlying REST API List Jobs (https://docs.aws.amazon.com/amazonglacier/latest/dev/api-jobs-get.html). 2217 // 2218 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2219 // with awserr.Error's Code and Message methods to get detailed information about 2220 // the error. 2221 // 2222 // See the AWS API reference guide for Amazon Glacier's 2223 // API operation ListJobs for usage and error information. 2224 // 2225 // Returned Error Types: 2226 // * ResourceNotFoundException 2227 // Returned if the specified resource (such as a vault, upload ID, or job ID) 2228 // doesn't exist. 2229 // 2230 // * InvalidParameterValueException 2231 // Returned if a parameter of the request is incorrectly specified. 2232 // 2233 // * MissingParameterValueException 2234 // Returned if a required header or parameter is missing from the request. 2235 // 2236 // * ServiceUnavailableException 2237 // Returned if the service cannot complete the request. 2238 // 2239 func (c *Glacier) ListJobs(input *ListJobsInput) (*ListJobsOutput, error) { 2240 req, out := c.ListJobsRequest(input) 2241 return out, req.Send() 2242 } 2243 2244 // ListJobsWithContext is the same as ListJobs with the addition of 2245 // the ability to pass a context and additional request options. 2246 // 2247 // See ListJobs for details on how to use this API operation. 2248 // 2249 // The context must be non-nil and will be used for request cancellation. If 2250 // the context is nil a panic will occur. In the future the SDK may create 2251 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2252 // for more information on using Contexts. 2253 func (c *Glacier) ListJobsWithContext(ctx aws.Context, input *ListJobsInput, opts ...request.Option) (*ListJobsOutput, error) { 2254 req, out := c.ListJobsRequest(input) 2255 req.SetContext(ctx) 2256 req.ApplyOptions(opts...) 2257 return out, req.Send() 2258 } 2259 2260 // ListJobsPages iterates over the pages of a ListJobs operation, 2261 // calling the "fn" function with the response data for each page. To stop 2262 // iterating, return false from the fn function. 2263 // 2264 // See ListJobs method for more information on how to use this operation. 2265 // 2266 // Note: This operation can generate multiple requests to a service. 2267 // 2268 // // Example iterating over at most 3 pages of a ListJobs operation. 2269 // pageNum := 0 2270 // err := client.ListJobsPages(params, 2271 // func(page *glacier.ListJobsOutput, lastPage bool) bool { 2272 // pageNum++ 2273 // fmt.Println(page) 2274 // return pageNum <= 3 2275 // }) 2276 // 2277 func (c *Glacier) ListJobsPages(input *ListJobsInput, fn func(*ListJobsOutput, bool) bool) error { 2278 return c.ListJobsPagesWithContext(aws.BackgroundContext(), input, fn) 2279 } 2280 2281 // ListJobsPagesWithContext same as ListJobsPages except 2282 // it takes a Context and allows setting request options on the pages. 2283 // 2284 // The context must be non-nil and will be used for request cancellation. If 2285 // the context is nil a panic will occur. In the future the SDK may create 2286 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2287 // for more information on using Contexts. 2288 func (c *Glacier) ListJobsPagesWithContext(ctx aws.Context, input *ListJobsInput, fn func(*ListJobsOutput, bool) bool, opts ...request.Option) error { 2289 p := request.Pagination{ 2290 NewRequest: func() (*request.Request, error) { 2291 var inCpy *ListJobsInput 2292 if input != nil { 2293 tmp := *input 2294 inCpy = &tmp 2295 } 2296 req, _ := c.ListJobsRequest(inCpy) 2297 req.SetContext(ctx) 2298 req.ApplyOptions(opts...) 2299 return req, nil 2300 }, 2301 } 2302 2303 for p.Next() { 2304 if !fn(p.Page().(*ListJobsOutput), !p.HasNextPage()) { 2305 break 2306 } 2307 } 2308 2309 return p.Err() 2310 } 2311 2312 const opListMultipartUploads = "ListMultipartUploads" 2313 2314 // ListMultipartUploadsRequest generates a "aws/request.Request" representing the 2315 // client's request for the ListMultipartUploads operation. The "output" return 2316 // value will be populated with the request's response once the request completes 2317 // successfully. 2318 // 2319 // Use "Send" method on the returned Request to send the API call to the service. 2320 // the "output" return value is not valid until after Send returns without error. 2321 // 2322 // See ListMultipartUploads for more information on using the ListMultipartUploads 2323 // API call, and error handling. 2324 // 2325 // This method is useful when you want to inject custom logic or configuration 2326 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 2327 // 2328 // 2329 // // Example sending a request using the ListMultipartUploadsRequest method. 2330 // req, resp := client.ListMultipartUploadsRequest(params) 2331 // 2332 // err := req.Send() 2333 // if err == nil { // resp is now filled 2334 // fmt.Println(resp) 2335 // } 2336 func (c *Glacier) ListMultipartUploadsRequest(input *ListMultipartUploadsInput) (req *request.Request, output *ListMultipartUploadsOutput) { 2337 op := &request.Operation{ 2338 Name: opListMultipartUploads, 2339 HTTPMethod: "GET", 2340 HTTPPath: "/{accountId}/vaults/{vaultName}/multipart-uploads", 2341 Paginator: &request.Paginator{ 2342 InputTokens: []string{"marker"}, 2343 OutputTokens: []string{"Marker"}, 2344 LimitToken: "limit", 2345 TruncationToken: "", 2346 }, 2347 } 2348 2349 if input == nil { 2350 input = &ListMultipartUploadsInput{} 2351 } 2352 2353 output = &ListMultipartUploadsOutput{} 2354 req = c.newRequest(op, input, output) 2355 return 2356 } 2357 2358 // ListMultipartUploads API operation for Amazon Glacier. 2359 // 2360 // This operation lists in-progress multipart uploads for the specified vault. 2361 // An in-progress multipart upload is a multipart upload that has been initiated 2362 // by an InitiateMultipartUpload request, but has not yet been completed or 2363 // aborted. The list returned in the List Multipart Upload response has no guaranteed 2364 // order. 2365 // 2366 // The List Multipart Uploads operation supports pagination. By default, this 2367 // operation returns up to 50 multipart uploads in the response. You should 2368 // always check the response for a marker at which to continue the list; if 2369 // there are no more items the marker is null. To return a list of multipart 2370 // uploads that begins at a specific upload, set the marker request parameter 2371 // to the value you obtained from a previous List Multipart Upload request. 2372 // You can also limit the number of uploads returned in the response by specifying 2373 // the limit parameter in the request. 2374 // 2375 // Note the difference between this operation and listing parts (ListParts). 2376 // The List Multipart Uploads operation lists all multipart uploads for a vault 2377 // and does not require a multipart upload ID. The List Parts operation requires 2378 // a multipart upload ID since parts are associated with a single upload. 2379 // 2380 // An AWS account has full permission to perform all operations (actions). However, 2381 // AWS Identity and Access Management (IAM) users don't have any permissions 2382 // by default. You must grant them explicit permission to perform specific actions. 2383 // For more information, see Access Control Using AWS Identity and Access Management 2384 // (IAM) (https://docs.aws.amazon.com/amazonglacier/latest/dev/using-iam-with-amazon-glacier.html). 2385 // 2386 // For conceptual information and the underlying REST API, see Working with 2387 // Archives in Amazon S3 Glacier (https://docs.aws.amazon.com/amazonglacier/latest/dev/working-with-archives.html) 2388 // and List Multipart Uploads (https://docs.aws.amazon.com/amazonglacier/latest/dev/api-multipart-list-uploads.html) 2389 // in the Amazon Glacier Developer Guide. 2390 // 2391 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2392 // with awserr.Error's Code and Message methods to get detailed information about 2393 // the error. 2394 // 2395 // See the AWS API reference guide for Amazon Glacier's 2396 // API operation ListMultipartUploads for usage and error information. 2397 // 2398 // Returned Error Types: 2399 // * ResourceNotFoundException 2400 // Returned if the specified resource (such as a vault, upload ID, or job ID) 2401 // doesn't exist. 2402 // 2403 // * InvalidParameterValueException 2404 // Returned if a parameter of the request is incorrectly specified. 2405 // 2406 // * MissingParameterValueException 2407 // Returned if a required header or parameter is missing from the request. 2408 // 2409 // * ServiceUnavailableException 2410 // Returned if the service cannot complete the request. 2411 // 2412 func (c *Glacier) ListMultipartUploads(input *ListMultipartUploadsInput) (*ListMultipartUploadsOutput, error) { 2413 req, out := c.ListMultipartUploadsRequest(input) 2414 return out, req.Send() 2415 } 2416 2417 // ListMultipartUploadsWithContext is the same as ListMultipartUploads with the addition of 2418 // the ability to pass a context and additional request options. 2419 // 2420 // See ListMultipartUploads for details on how to use this API operation. 2421 // 2422 // The context must be non-nil and will be used for request cancellation. If 2423 // the context is nil a panic will occur. In the future the SDK may create 2424 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2425 // for more information on using Contexts. 2426 func (c *Glacier) ListMultipartUploadsWithContext(ctx aws.Context, input *ListMultipartUploadsInput, opts ...request.Option) (*ListMultipartUploadsOutput, error) { 2427 req, out := c.ListMultipartUploadsRequest(input) 2428 req.SetContext(ctx) 2429 req.ApplyOptions(opts...) 2430 return out, req.Send() 2431 } 2432 2433 // ListMultipartUploadsPages iterates over the pages of a ListMultipartUploads operation, 2434 // calling the "fn" function with the response data for each page. To stop 2435 // iterating, return false from the fn function. 2436 // 2437 // See ListMultipartUploads method for more information on how to use this operation. 2438 // 2439 // Note: This operation can generate multiple requests to a service. 2440 // 2441 // // Example iterating over at most 3 pages of a ListMultipartUploads operation. 2442 // pageNum := 0 2443 // err := client.ListMultipartUploadsPages(params, 2444 // func(page *glacier.ListMultipartUploadsOutput, lastPage bool) bool { 2445 // pageNum++ 2446 // fmt.Println(page) 2447 // return pageNum <= 3 2448 // }) 2449 // 2450 func (c *Glacier) ListMultipartUploadsPages(input *ListMultipartUploadsInput, fn func(*ListMultipartUploadsOutput, bool) bool) error { 2451 return c.ListMultipartUploadsPagesWithContext(aws.BackgroundContext(), input, fn) 2452 } 2453 2454 // ListMultipartUploadsPagesWithContext same as ListMultipartUploadsPages except 2455 // it takes a Context and allows setting request options on the pages. 2456 // 2457 // The context must be non-nil and will be used for request cancellation. If 2458 // the context is nil a panic will occur. In the future the SDK may create 2459 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2460 // for more information on using Contexts. 2461 func (c *Glacier) ListMultipartUploadsPagesWithContext(ctx aws.Context, input *ListMultipartUploadsInput, fn func(*ListMultipartUploadsOutput, bool) bool, opts ...request.Option) error { 2462 p := request.Pagination{ 2463 NewRequest: func() (*request.Request, error) { 2464 var inCpy *ListMultipartUploadsInput 2465 if input != nil { 2466 tmp := *input 2467 inCpy = &tmp 2468 } 2469 req, _ := c.ListMultipartUploadsRequest(inCpy) 2470 req.SetContext(ctx) 2471 req.ApplyOptions(opts...) 2472 return req, nil 2473 }, 2474 } 2475 2476 for p.Next() { 2477 if !fn(p.Page().(*ListMultipartUploadsOutput), !p.HasNextPage()) { 2478 break 2479 } 2480 } 2481 2482 return p.Err() 2483 } 2484 2485 const opListParts = "ListParts" 2486 2487 // ListPartsRequest generates a "aws/request.Request" representing the 2488 // client's request for the ListParts operation. The "output" return 2489 // value will be populated with the request's response once the request completes 2490 // successfully. 2491 // 2492 // Use "Send" method on the returned Request to send the API call to the service. 2493 // the "output" return value is not valid until after Send returns without error. 2494 // 2495 // See ListParts for more information on using the ListParts 2496 // API call, and error handling. 2497 // 2498 // This method is useful when you want to inject custom logic or configuration 2499 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 2500 // 2501 // 2502 // // Example sending a request using the ListPartsRequest method. 2503 // req, resp := client.ListPartsRequest(params) 2504 // 2505 // err := req.Send() 2506 // if err == nil { // resp is now filled 2507 // fmt.Println(resp) 2508 // } 2509 func (c *Glacier) ListPartsRequest(input *ListPartsInput) (req *request.Request, output *ListPartsOutput) { 2510 op := &request.Operation{ 2511 Name: opListParts, 2512 HTTPMethod: "GET", 2513 HTTPPath: "/{accountId}/vaults/{vaultName}/multipart-uploads/{uploadId}", 2514 Paginator: &request.Paginator{ 2515 InputTokens: []string{"marker"}, 2516 OutputTokens: []string{"Marker"}, 2517 LimitToken: "limit", 2518 TruncationToken: "", 2519 }, 2520 } 2521 2522 if input == nil { 2523 input = &ListPartsInput{} 2524 } 2525 2526 output = &ListPartsOutput{} 2527 req = c.newRequest(op, input, output) 2528 return 2529 } 2530 2531 // ListParts API operation for Amazon Glacier. 2532 // 2533 // This operation lists the parts of an archive that have been uploaded in a 2534 // specific multipart upload. You can make this request at any time during an 2535 // in-progress multipart upload before you complete the upload (see CompleteMultipartUpload. 2536 // List Parts returns an error for completed uploads. The list returned in the 2537 // List Parts response is sorted by part range. 2538 // 2539 // The List Parts operation supports pagination. By default, this operation 2540 // returns up to 50 uploaded parts in the response. You should always check 2541 // the response for a marker at which to continue the list; if there are no 2542 // more items the marker is null. To return a list of parts that begins at a 2543 // specific part, set the marker request parameter to the value you obtained 2544 // from a previous List Parts request. You can also limit the number of parts 2545 // returned in the response by specifying the limit parameter in the request. 2546 // 2547 // An AWS account has full permission to perform all operations (actions). However, 2548 // AWS Identity and Access Management (IAM) users don't have any permissions 2549 // by default. You must grant them explicit permission to perform specific actions. 2550 // For more information, see Access Control Using AWS Identity and Access Management 2551 // (IAM) (https://docs.aws.amazon.com/amazonglacier/latest/dev/using-iam-with-amazon-glacier.html). 2552 // 2553 // For conceptual information and the underlying REST API, see Working with 2554 // Archives in Amazon S3 Glacier (https://docs.aws.amazon.com/amazonglacier/latest/dev/working-with-archives.html) 2555 // and List Parts (https://docs.aws.amazon.com/amazonglacier/latest/dev/api-multipart-list-parts.html) 2556 // in the Amazon Glacier Developer Guide. 2557 // 2558 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2559 // with awserr.Error's Code and Message methods to get detailed information about 2560 // the error. 2561 // 2562 // See the AWS API reference guide for Amazon Glacier's 2563 // API operation ListParts for usage and error information. 2564 // 2565 // Returned Error Types: 2566 // * ResourceNotFoundException 2567 // Returned if the specified resource (such as a vault, upload ID, or job ID) 2568 // doesn't exist. 2569 // 2570 // * InvalidParameterValueException 2571 // Returned if a parameter of the request is incorrectly specified. 2572 // 2573 // * MissingParameterValueException 2574 // Returned if a required header or parameter is missing from the request. 2575 // 2576 // * ServiceUnavailableException 2577 // Returned if the service cannot complete the request. 2578 // 2579 func (c *Glacier) ListParts(input *ListPartsInput) (*ListPartsOutput, error) { 2580 req, out := c.ListPartsRequest(input) 2581 return out, req.Send() 2582 } 2583 2584 // ListPartsWithContext is the same as ListParts with the addition of 2585 // the ability to pass a context and additional request options. 2586 // 2587 // See ListParts for details on how to use this API operation. 2588 // 2589 // The context must be non-nil and will be used for request cancellation. If 2590 // the context is nil a panic will occur. In the future the SDK may create 2591 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2592 // for more information on using Contexts. 2593 func (c *Glacier) ListPartsWithContext(ctx aws.Context, input *ListPartsInput, opts ...request.Option) (*ListPartsOutput, error) { 2594 req, out := c.ListPartsRequest(input) 2595 req.SetContext(ctx) 2596 req.ApplyOptions(opts...) 2597 return out, req.Send() 2598 } 2599 2600 // ListPartsPages iterates over the pages of a ListParts operation, 2601 // calling the "fn" function with the response data for each page. To stop 2602 // iterating, return false from the fn function. 2603 // 2604 // See ListParts method for more information on how to use this operation. 2605 // 2606 // Note: This operation can generate multiple requests to a service. 2607 // 2608 // // Example iterating over at most 3 pages of a ListParts operation. 2609 // pageNum := 0 2610 // err := client.ListPartsPages(params, 2611 // func(page *glacier.ListPartsOutput, lastPage bool) bool { 2612 // pageNum++ 2613 // fmt.Println(page) 2614 // return pageNum <= 3 2615 // }) 2616 // 2617 func (c *Glacier) ListPartsPages(input *ListPartsInput, fn func(*ListPartsOutput, bool) bool) error { 2618 return c.ListPartsPagesWithContext(aws.BackgroundContext(), input, fn) 2619 } 2620 2621 // ListPartsPagesWithContext same as ListPartsPages except 2622 // it takes a Context and allows setting request options on the pages. 2623 // 2624 // The context must be non-nil and will be used for request cancellation. If 2625 // the context is nil a panic will occur. In the future the SDK may create 2626 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2627 // for more information on using Contexts. 2628 func (c *Glacier) ListPartsPagesWithContext(ctx aws.Context, input *ListPartsInput, fn func(*ListPartsOutput, bool) bool, opts ...request.Option) error { 2629 p := request.Pagination{ 2630 NewRequest: func() (*request.Request, error) { 2631 var inCpy *ListPartsInput 2632 if input != nil { 2633 tmp := *input 2634 inCpy = &tmp 2635 } 2636 req, _ := c.ListPartsRequest(inCpy) 2637 req.SetContext(ctx) 2638 req.ApplyOptions(opts...) 2639 return req, nil 2640 }, 2641 } 2642 2643 for p.Next() { 2644 if !fn(p.Page().(*ListPartsOutput), !p.HasNextPage()) { 2645 break 2646 } 2647 } 2648 2649 return p.Err() 2650 } 2651 2652 const opListProvisionedCapacity = "ListProvisionedCapacity" 2653 2654 // ListProvisionedCapacityRequest generates a "aws/request.Request" representing the 2655 // client's request for the ListProvisionedCapacity operation. The "output" return 2656 // value will be populated with the request's response once the request completes 2657 // successfully. 2658 // 2659 // Use "Send" method on the returned Request to send the API call to the service. 2660 // the "output" return value is not valid until after Send returns without error. 2661 // 2662 // See ListProvisionedCapacity for more information on using the ListProvisionedCapacity 2663 // API call, and error handling. 2664 // 2665 // This method is useful when you want to inject custom logic or configuration 2666 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 2667 // 2668 // 2669 // // Example sending a request using the ListProvisionedCapacityRequest method. 2670 // req, resp := client.ListProvisionedCapacityRequest(params) 2671 // 2672 // err := req.Send() 2673 // if err == nil { // resp is now filled 2674 // fmt.Println(resp) 2675 // } 2676 func (c *Glacier) ListProvisionedCapacityRequest(input *ListProvisionedCapacityInput) (req *request.Request, output *ListProvisionedCapacityOutput) { 2677 op := &request.Operation{ 2678 Name: opListProvisionedCapacity, 2679 HTTPMethod: "GET", 2680 HTTPPath: "/{accountId}/provisioned-capacity", 2681 } 2682 2683 if input == nil { 2684 input = &ListProvisionedCapacityInput{} 2685 } 2686 2687 output = &ListProvisionedCapacityOutput{} 2688 req = c.newRequest(op, input, output) 2689 return 2690 } 2691 2692 // ListProvisionedCapacity API operation for Amazon Glacier. 2693 // 2694 // This operation lists the provisioned capacity units for the specified AWS 2695 // account. 2696 // 2697 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2698 // with awserr.Error's Code and Message methods to get detailed information about 2699 // the error. 2700 // 2701 // See the AWS API reference guide for Amazon Glacier's 2702 // API operation ListProvisionedCapacity for usage and error information. 2703 // 2704 // Returned Error Types: 2705 // * InvalidParameterValueException 2706 // Returned if a parameter of the request is incorrectly specified. 2707 // 2708 // * MissingParameterValueException 2709 // Returned if a required header or parameter is missing from the request. 2710 // 2711 // * ServiceUnavailableException 2712 // Returned if the service cannot complete the request. 2713 // 2714 func (c *Glacier) ListProvisionedCapacity(input *ListProvisionedCapacityInput) (*ListProvisionedCapacityOutput, error) { 2715 req, out := c.ListProvisionedCapacityRequest(input) 2716 return out, req.Send() 2717 } 2718 2719 // ListProvisionedCapacityWithContext is the same as ListProvisionedCapacity with the addition of 2720 // the ability to pass a context and additional request options. 2721 // 2722 // See ListProvisionedCapacity for details on how to use this API operation. 2723 // 2724 // The context must be non-nil and will be used for request cancellation. If 2725 // the context is nil a panic will occur. In the future the SDK may create 2726 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2727 // for more information on using Contexts. 2728 func (c *Glacier) ListProvisionedCapacityWithContext(ctx aws.Context, input *ListProvisionedCapacityInput, opts ...request.Option) (*ListProvisionedCapacityOutput, error) { 2729 req, out := c.ListProvisionedCapacityRequest(input) 2730 req.SetContext(ctx) 2731 req.ApplyOptions(opts...) 2732 return out, req.Send() 2733 } 2734 2735 const opListTagsForVault = "ListTagsForVault" 2736 2737 // ListTagsForVaultRequest generates a "aws/request.Request" representing the 2738 // client's request for the ListTagsForVault operation. The "output" return 2739 // value will be populated with the request's response once the request completes 2740 // successfully. 2741 // 2742 // Use "Send" method on the returned Request to send the API call to the service. 2743 // the "output" return value is not valid until after Send returns without error. 2744 // 2745 // See ListTagsForVault for more information on using the ListTagsForVault 2746 // API call, and error handling. 2747 // 2748 // This method is useful when you want to inject custom logic or configuration 2749 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 2750 // 2751 // 2752 // // Example sending a request using the ListTagsForVaultRequest method. 2753 // req, resp := client.ListTagsForVaultRequest(params) 2754 // 2755 // err := req.Send() 2756 // if err == nil { // resp is now filled 2757 // fmt.Println(resp) 2758 // } 2759 func (c *Glacier) ListTagsForVaultRequest(input *ListTagsForVaultInput) (req *request.Request, output *ListTagsForVaultOutput) { 2760 op := &request.Operation{ 2761 Name: opListTagsForVault, 2762 HTTPMethod: "GET", 2763 HTTPPath: "/{accountId}/vaults/{vaultName}/tags", 2764 } 2765 2766 if input == nil { 2767 input = &ListTagsForVaultInput{} 2768 } 2769 2770 output = &ListTagsForVaultOutput{} 2771 req = c.newRequest(op, input, output) 2772 return 2773 } 2774 2775 // ListTagsForVault API operation for Amazon Glacier. 2776 // 2777 // This operation lists all the tags attached to a vault. The operation returns 2778 // an empty map if there are no tags. For more information about tags, see Tagging 2779 // Amazon S3 Glacier Resources (https://docs.aws.amazon.com/amazonglacier/latest/dev/tagging.html). 2780 // 2781 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2782 // with awserr.Error's Code and Message methods to get detailed information about 2783 // the error. 2784 // 2785 // See the AWS API reference guide for Amazon Glacier's 2786 // API operation ListTagsForVault for usage and error information. 2787 // 2788 // Returned Error Types: 2789 // * InvalidParameterValueException 2790 // Returned if a parameter of the request is incorrectly specified. 2791 // 2792 // * MissingParameterValueException 2793 // Returned if a required header or parameter is missing from the request. 2794 // 2795 // * ResourceNotFoundException 2796 // Returned if the specified resource (such as a vault, upload ID, or job ID) 2797 // doesn't exist. 2798 // 2799 // * ServiceUnavailableException 2800 // Returned if the service cannot complete the request. 2801 // 2802 func (c *Glacier) ListTagsForVault(input *ListTagsForVaultInput) (*ListTagsForVaultOutput, error) { 2803 req, out := c.ListTagsForVaultRequest(input) 2804 return out, req.Send() 2805 } 2806 2807 // ListTagsForVaultWithContext is the same as ListTagsForVault with the addition of 2808 // the ability to pass a context and additional request options. 2809 // 2810 // See ListTagsForVault for details on how to use this API operation. 2811 // 2812 // The context must be non-nil and will be used for request cancellation. If 2813 // the context is nil a panic will occur. In the future the SDK may create 2814 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2815 // for more information on using Contexts. 2816 func (c *Glacier) ListTagsForVaultWithContext(ctx aws.Context, input *ListTagsForVaultInput, opts ...request.Option) (*ListTagsForVaultOutput, error) { 2817 req, out := c.ListTagsForVaultRequest(input) 2818 req.SetContext(ctx) 2819 req.ApplyOptions(opts...) 2820 return out, req.Send() 2821 } 2822 2823 const opListVaults = "ListVaults" 2824 2825 // ListVaultsRequest generates a "aws/request.Request" representing the 2826 // client's request for the ListVaults operation. The "output" return 2827 // value will be populated with the request's response once the request completes 2828 // successfully. 2829 // 2830 // Use "Send" method on the returned Request to send the API call to the service. 2831 // the "output" return value is not valid until after Send returns without error. 2832 // 2833 // See ListVaults for more information on using the ListVaults 2834 // API call, and error handling. 2835 // 2836 // This method is useful when you want to inject custom logic or configuration 2837 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 2838 // 2839 // 2840 // // Example sending a request using the ListVaultsRequest method. 2841 // req, resp := client.ListVaultsRequest(params) 2842 // 2843 // err := req.Send() 2844 // if err == nil { // resp is now filled 2845 // fmt.Println(resp) 2846 // } 2847 func (c *Glacier) ListVaultsRequest(input *ListVaultsInput) (req *request.Request, output *ListVaultsOutput) { 2848 op := &request.Operation{ 2849 Name: opListVaults, 2850 HTTPMethod: "GET", 2851 HTTPPath: "/{accountId}/vaults", 2852 Paginator: &request.Paginator{ 2853 InputTokens: []string{"marker"}, 2854 OutputTokens: []string{"Marker"}, 2855 LimitToken: "limit", 2856 TruncationToken: "", 2857 }, 2858 } 2859 2860 if input == nil { 2861 input = &ListVaultsInput{} 2862 } 2863 2864 output = &ListVaultsOutput{} 2865 req = c.newRequest(op, input, output) 2866 return 2867 } 2868 2869 // ListVaults API operation for Amazon Glacier. 2870 // 2871 // This operation lists all vaults owned by the calling user's account. The 2872 // list returned in the response is ASCII-sorted by vault name. 2873 // 2874 // By default, this operation returns up to 10 items. If there are more vaults 2875 // to list, the response marker field contains the vault Amazon Resource Name 2876 // (ARN) at which to continue the list with a new List Vaults request; otherwise, 2877 // the marker field is null. To return a list of vaults that begins at a specific 2878 // vault, set the marker request parameter to the vault ARN you obtained from 2879 // a previous List Vaults request. You can also limit the number of vaults returned 2880 // in the response by specifying the limit parameter in the request. 2881 // 2882 // An AWS account has full permission to perform all operations (actions). However, 2883 // AWS Identity and Access Management (IAM) users don't have any permissions 2884 // by default. You must grant them explicit permission to perform specific actions. 2885 // For more information, see Access Control Using AWS Identity and Access Management 2886 // (IAM) (https://docs.aws.amazon.com/amazonglacier/latest/dev/using-iam-with-amazon-glacier.html). 2887 // 2888 // For conceptual information and underlying REST API, see Retrieving Vault 2889 // Metadata in Amazon S3 Glacier (https://docs.aws.amazon.com/amazonglacier/latest/dev/retrieving-vault-info.html) 2890 // and List Vaults (https://docs.aws.amazon.com/amazonglacier/latest/dev/api-vaults-get.html) 2891 // in the Amazon Glacier Developer Guide. 2892 // 2893 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2894 // with awserr.Error's Code and Message methods to get detailed information about 2895 // the error. 2896 // 2897 // See the AWS API reference guide for Amazon Glacier's 2898 // API operation ListVaults for usage and error information. 2899 // 2900 // Returned Error Types: 2901 // * ResourceNotFoundException 2902 // Returned if the specified resource (such as a vault, upload ID, or job ID) 2903 // doesn't exist. 2904 // 2905 // * InvalidParameterValueException 2906 // Returned if a parameter of the request is incorrectly specified. 2907 // 2908 // * MissingParameterValueException 2909 // Returned if a required header or parameter is missing from the request. 2910 // 2911 // * ServiceUnavailableException 2912 // Returned if the service cannot complete the request. 2913 // 2914 func (c *Glacier) ListVaults(input *ListVaultsInput) (*ListVaultsOutput, error) { 2915 req, out := c.ListVaultsRequest(input) 2916 return out, req.Send() 2917 } 2918 2919 // ListVaultsWithContext is the same as ListVaults with the addition of 2920 // the ability to pass a context and additional request options. 2921 // 2922 // See ListVaults for details on how to use this API operation. 2923 // 2924 // The context must be non-nil and will be used for request cancellation. If 2925 // the context is nil a panic will occur. In the future the SDK may create 2926 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2927 // for more information on using Contexts. 2928 func (c *Glacier) ListVaultsWithContext(ctx aws.Context, input *ListVaultsInput, opts ...request.Option) (*ListVaultsOutput, error) { 2929 req, out := c.ListVaultsRequest(input) 2930 req.SetContext(ctx) 2931 req.ApplyOptions(opts...) 2932 return out, req.Send() 2933 } 2934 2935 // ListVaultsPages iterates over the pages of a ListVaults operation, 2936 // calling the "fn" function with the response data for each page. To stop 2937 // iterating, return false from the fn function. 2938 // 2939 // See ListVaults method for more information on how to use this operation. 2940 // 2941 // Note: This operation can generate multiple requests to a service. 2942 // 2943 // // Example iterating over at most 3 pages of a ListVaults operation. 2944 // pageNum := 0 2945 // err := client.ListVaultsPages(params, 2946 // func(page *glacier.ListVaultsOutput, lastPage bool) bool { 2947 // pageNum++ 2948 // fmt.Println(page) 2949 // return pageNum <= 3 2950 // }) 2951 // 2952 func (c *Glacier) ListVaultsPages(input *ListVaultsInput, fn func(*ListVaultsOutput, bool) bool) error { 2953 return c.ListVaultsPagesWithContext(aws.BackgroundContext(), input, fn) 2954 } 2955 2956 // ListVaultsPagesWithContext same as ListVaultsPages except 2957 // it takes a Context and allows setting request options on the pages. 2958 // 2959 // The context must be non-nil and will be used for request cancellation. If 2960 // the context is nil a panic will occur. In the future the SDK may create 2961 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2962 // for more information on using Contexts. 2963 func (c *Glacier) ListVaultsPagesWithContext(ctx aws.Context, input *ListVaultsInput, fn func(*ListVaultsOutput, bool) bool, opts ...request.Option) error { 2964 p := request.Pagination{ 2965 NewRequest: func() (*request.Request, error) { 2966 var inCpy *ListVaultsInput 2967 if input != nil { 2968 tmp := *input 2969 inCpy = &tmp 2970 } 2971 req, _ := c.ListVaultsRequest(inCpy) 2972 req.SetContext(ctx) 2973 req.ApplyOptions(opts...) 2974 return req, nil 2975 }, 2976 } 2977 2978 for p.Next() { 2979 if !fn(p.Page().(*ListVaultsOutput), !p.HasNextPage()) { 2980 break 2981 } 2982 } 2983 2984 return p.Err() 2985 } 2986 2987 const opPurchaseProvisionedCapacity = "PurchaseProvisionedCapacity" 2988 2989 // PurchaseProvisionedCapacityRequest generates a "aws/request.Request" representing the 2990 // client's request for the PurchaseProvisionedCapacity operation. The "output" return 2991 // value will be populated with the request's response once the request completes 2992 // successfully. 2993 // 2994 // Use "Send" method on the returned Request to send the API call to the service. 2995 // the "output" return value is not valid until after Send returns without error. 2996 // 2997 // See PurchaseProvisionedCapacity for more information on using the PurchaseProvisionedCapacity 2998 // API call, and error handling. 2999 // 3000 // This method is useful when you want to inject custom logic or configuration 3001 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 3002 // 3003 // 3004 // // Example sending a request using the PurchaseProvisionedCapacityRequest method. 3005 // req, resp := client.PurchaseProvisionedCapacityRequest(params) 3006 // 3007 // err := req.Send() 3008 // if err == nil { // resp is now filled 3009 // fmt.Println(resp) 3010 // } 3011 func (c *Glacier) PurchaseProvisionedCapacityRequest(input *PurchaseProvisionedCapacityInput) (req *request.Request, output *PurchaseProvisionedCapacityOutput) { 3012 op := &request.Operation{ 3013 Name: opPurchaseProvisionedCapacity, 3014 HTTPMethod: "POST", 3015 HTTPPath: "/{accountId}/provisioned-capacity", 3016 } 3017 3018 if input == nil { 3019 input = &PurchaseProvisionedCapacityInput{} 3020 } 3021 3022 output = &PurchaseProvisionedCapacityOutput{} 3023 req = c.newRequest(op, input, output) 3024 return 3025 } 3026 3027 // PurchaseProvisionedCapacity API operation for Amazon Glacier. 3028 // 3029 // This operation purchases a provisioned capacity unit for an AWS account. 3030 // 3031 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3032 // with awserr.Error's Code and Message methods to get detailed information about 3033 // the error. 3034 // 3035 // See the AWS API reference guide for Amazon Glacier's 3036 // API operation PurchaseProvisionedCapacity for usage and error information. 3037 // 3038 // Returned Error Types: 3039 // * InvalidParameterValueException 3040 // Returned if a parameter of the request is incorrectly specified. 3041 // 3042 // * MissingParameterValueException 3043 // Returned if a required header or parameter is missing from the request. 3044 // 3045 // * LimitExceededException 3046 // Returned if the request results in a vault or account limit being exceeded. 3047 // 3048 // * ServiceUnavailableException 3049 // Returned if the service cannot complete the request. 3050 // 3051 func (c *Glacier) PurchaseProvisionedCapacity(input *PurchaseProvisionedCapacityInput) (*PurchaseProvisionedCapacityOutput, error) { 3052 req, out := c.PurchaseProvisionedCapacityRequest(input) 3053 return out, req.Send() 3054 } 3055 3056 // PurchaseProvisionedCapacityWithContext is the same as PurchaseProvisionedCapacity with the addition of 3057 // the ability to pass a context and additional request options. 3058 // 3059 // See PurchaseProvisionedCapacity for details on how to use this API operation. 3060 // 3061 // The context must be non-nil and will be used for request cancellation. If 3062 // the context is nil a panic will occur. In the future the SDK may create 3063 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3064 // for more information on using Contexts. 3065 func (c *Glacier) PurchaseProvisionedCapacityWithContext(ctx aws.Context, input *PurchaseProvisionedCapacityInput, opts ...request.Option) (*PurchaseProvisionedCapacityOutput, error) { 3066 req, out := c.PurchaseProvisionedCapacityRequest(input) 3067 req.SetContext(ctx) 3068 req.ApplyOptions(opts...) 3069 return out, req.Send() 3070 } 3071 3072 const opRemoveTagsFromVault = "RemoveTagsFromVault" 3073 3074 // RemoveTagsFromVaultRequest generates a "aws/request.Request" representing the 3075 // client's request for the RemoveTagsFromVault operation. The "output" return 3076 // value will be populated with the request's response once the request completes 3077 // successfully. 3078 // 3079 // Use "Send" method on the returned Request to send the API call to the service. 3080 // the "output" return value is not valid until after Send returns without error. 3081 // 3082 // See RemoveTagsFromVault for more information on using the RemoveTagsFromVault 3083 // API call, and error handling. 3084 // 3085 // This method is useful when you want to inject custom logic or configuration 3086 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 3087 // 3088 // 3089 // // Example sending a request using the RemoveTagsFromVaultRequest method. 3090 // req, resp := client.RemoveTagsFromVaultRequest(params) 3091 // 3092 // err := req.Send() 3093 // if err == nil { // resp is now filled 3094 // fmt.Println(resp) 3095 // } 3096 func (c *Glacier) RemoveTagsFromVaultRequest(input *RemoveTagsFromVaultInput) (req *request.Request, output *RemoveTagsFromVaultOutput) { 3097 op := &request.Operation{ 3098 Name: opRemoveTagsFromVault, 3099 HTTPMethod: "POST", 3100 HTTPPath: "/{accountId}/vaults/{vaultName}/tags?operation=remove", 3101 } 3102 3103 if input == nil { 3104 input = &RemoveTagsFromVaultInput{} 3105 } 3106 3107 output = &RemoveTagsFromVaultOutput{} 3108 req = c.newRequest(op, input, output) 3109 req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 3110 return 3111 } 3112 3113 // RemoveTagsFromVault API operation for Amazon Glacier. 3114 // 3115 // This operation removes one or more tags from the set of tags attached to 3116 // a vault. For more information about tags, see Tagging Amazon S3 Glacier Resources 3117 // (https://docs.aws.amazon.com/amazonglacier/latest/dev/tagging.html). This 3118 // operation is idempotent. The operation will be successful, even if there 3119 // are no tags attached to the vault. 3120 // 3121 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3122 // with awserr.Error's Code and Message methods to get detailed information about 3123 // the error. 3124 // 3125 // See the AWS API reference guide for Amazon Glacier's 3126 // API operation RemoveTagsFromVault for usage and error information. 3127 // 3128 // Returned Error Types: 3129 // * InvalidParameterValueException 3130 // Returned if a parameter of the request is incorrectly specified. 3131 // 3132 // * MissingParameterValueException 3133 // Returned if a required header or parameter is missing from the request. 3134 // 3135 // * ResourceNotFoundException 3136 // Returned if the specified resource (such as a vault, upload ID, or job ID) 3137 // doesn't exist. 3138 // 3139 // * ServiceUnavailableException 3140 // Returned if the service cannot complete the request. 3141 // 3142 func (c *Glacier) RemoveTagsFromVault(input *RemoveTagsFromVaultInput) (*RemoveTagsFromVaultOutput, error) { 3143 req, out := c.RemoveTagsFromVaultRequest(input) 3144 return out, req.Send() 3145 } 3146 3147 // RemoveTagsFromVaultWithContext is the same as RemoveTagsFromVault with the addition of 3148 // the ability to pass a context and additional request options. 3149 // 3150 // See RemoveTagsFromVault for details on how to use this API operation. 3151 // 3152 // The context must be non-nil and will be used for request cancellation. If 3153 // the context is nil a panic will occur. In the future the SDK may create 3154 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3155 // for more information on using Contexts. 3156 func (c *Glacier) RemoveTagsFromVaultWithContext(ctx aws.Context, input *RemoveTagsFromVaultInput, opts ...request.Option) (*RemoveTagsFromVaultOutput, error) { 3157 req, out := c.RemoveTagsFromVaultRequest(input) 3158 req.SetContext(ctx) 3159 req.ApplyOptions(opts...) 3160 return out, req.Send() 3161 } 3162 3163 const opSetDataRetrievalPolicy = "SetDataRetrievalPolicy" 3164 3165 // SetDataRetrievalPolicyRequest generates a "aws/request.Request" representing the 3166 // client's request for the SetDataRetrievalPolicy operation. The "output" return 3167 // value will be populated with the request's response once the request completes 3168 // successfully. 3169 // 3170 // Use "Send" method on the returned Request to send the API call to the service. 3171 // the "output" return value is not valid until after Send returns without error. 3172 // 3173 // See SetDataRetrievalPolicy for more information on using the SetDataRetrievalPolicy 3174 // API call, and error handling. 3175 // 3176 // This method is useful when you want to inject custom logic or configuration 3177 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 3178 // 3179 // 3180 // // Example sending a request using the SetDataRetrievalPolicyRequest method. 3181 // req, resp := client.SetDataRetrievalPolicyRequest(params) 3182 // 3183 // err := req.Send() 3184 // if err == nil { // resp is now filled 3185 // fmt.Println(resp) 3186 // } 3187 func (c *Glacier) SetDataRetrievalPolicyRequest(input *SetDataRetrievalPolicyInput) (req *request.Request, output *SetDataRetrievalPolicyOutput) { 3188 op := &request.Operation{ 3189 Name: opSetDataRetrievalPolicy, 3190 HTTPMethod: "PUT", 3191 HTTPPath: "/{accountId}/policies/data-retrieval", 3192 } 3193 3194 if input == nil { 3195 input = &SetDataRetrievalPolicyInput{} 3196 } 3197 3198 output = &SetDataRetrievalPolicyOutput{} 3199 req = c.newRequest(op, input, output) 3200 req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 3201 return 3202 } 3203 3204 // SetDataRetrievalPolicy API operation for Amazon Glacier. 3205 // 3206 // This operation sets and then enacts a data retrieval policy in the region 3207 // specified in the PUT request. You can set one policy per region for an AWS 3208 // account. The policy is enacted within a few minutes of a successful PUT operation. 3209 // 3210 // The set policy operation does not affect retrieval jobs that were in progress 3211 // before the policy was enacted. For more information about data retrieval 3212 // policies, see Amazon Glacier Data Retrieval Policies (https://docs.aws.amazon.com/amazonglacier/latest/dev/data-retrieval-policy.html). 3213 // 3214 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3215 // with awserr.Error's Code and Message methods to get detailed information about 3216 // the error. 3217 // 3218 // See the AWS API reference guide for Amazon Glacier's 3219 // API operation SetDataRetrievalPolicy for usage and error information. 3220 // 3221 // Returned Error Types: 3222 // * InvalidParameterValueException 3223 // Returned if a parameter of the request is incorrectly specified. 3224 // 3225 // * MissingParameterValueException 3226 // Returned if a required header or parameter is missing from the request. 3227 // 3228 // * ServiceUnavailableException 3229 // Returned if the service cannot complete the request. 3230 // 3231 func (c *Glacier) SetDataRetrievalPolicy(input *SetDataRetrievalPolicyInput) (*SetDataRetrievalPolicyOutput, error) { 3232 req, out := c.SetDataRetrievalPolicyRequest(input) 3233 return out, req.Send() 3234 } 3235 3236 // SetDataRetrievalPolicyWithContext is the same as SetDataRetrievalPolicy with the addition of 3237 // the ability to pass a context and additional request options. 3238 // 3239 // See SetDataRetrievalPolicy for details on how to use this API operation. 3240 // 3241 // The context must be non-nil and will be used for request cancellation. If 3242 // the context is nil a panic will occur. In the future the SDK may create 3243 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3244 // for more information on using Contexts. 3245 func (c *Glacier) SetDataRetrievalPolicyWithContext(ctx aws.Context, input *SetDataRetrievalPolicyInput, opts ...request.Option) (*SetDataRetrievalPolicyOutput, error) { 3246 req, out := c.SetDataRetrievalPolicyRequest(input) 3247 req.SetContext(ctx) 3248 req.ApplyOptions(opts...) 3249 return out, req.Send() 3250 } 3251 3252 const opSetVaultAccessPolicy = "SetVaultAccessPolicy" 3253 3254 // SetVaultAccessPolicyRequest generates a "aws/request.Request" representing the 3255 // client's request for the SetVaultAccessPolicy operation. The "output" return 3256 // value will be populated with the request's response once the request completes 3257 // successfully. 3258 // 3259 // Use "Send" method on the returned Request to send the API call to the service. 3260 // the "output" return value is not valid until after Send returns without error. 3261 // 3262 // See SetVaultAccessPolicy for more information on using the SetVaultAccessPolicy 3263 // API call, and error handling. 3264 // 3265 // This method is useful when you want to inject custom logic or configuration 3266 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 3267 // 3268 // 3269 // // Example sending a request using the SetVaultAccessPolicyRequest method. 3270 // req, resp := client.SetVaultAccessPolicyRequest(params) 3271 // 3272 // err := req.Send() 3273 // if err == nil { // resp is now filled 3274 // fmt.Println(resp) 3275 // } 3276 func (c *Glacier) SetVaultAccessPolicyRequest(input *SetVaultAccessPolicyInput) (req *request.Request, output *SetVaultAccessPolicyOutput) { 3277 op := &request.Operation{ 3278 Name: opSetVaultAccessPolicy, 3279 HTTPMethod: "PUT", 3280 HTTPPath: "/{accountId}/vaults/{vaultName}/access-policy", 3281 } 3282 3283 if input == nil { 3284 input = &SetVaultAccessPolicyInput{} 3285 } 3286 3287 output = &SetVaultAccessPolicyOutput{} 3288 req = c.newRequest(op, input, output) 3289 req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 3290 return 3291 } 3292 3293 // SetVaultAccessPolicy API operation for Amazon Glacier. 3294 // 3295 // This operation configures an access policy for a vault and will overwrite 3296 // an existing policy. To configure a vault access policy, send a PUT request 3297 // to the access-policy subresource of the vault. An access policy is specific 3298 // to a vault and is also called a vault subresource. You can set one access 3299 // policy per vault and the policy can be up to 20 KB in size. For more information 3300 // about vault access policies, see Amazon Glacier Access Control with Vault 3301 // Access Policies (https://docs.aws.amazon.com/amazonglacier/latest/dev/vault-access-policy.html). 3302 // 3303 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3304 // with awserr.Error's Code and Message methods to get detailed information about 3305 // the error. 3306 // 3307 // See the AWS API reference guide for Amazon Glacier's 3308 // API operation SetVaultAccessPolicy for usage and error information. 3309 // 3310 // Returned Error Types: 3311 // * ResourceNotFoundException 3312 // Returned if the specified resource (such as a vault, upload ID, or job ID) 3313 // doesn't exist. 3314 // 3315 // * InvalidParameterValueException 3316 // Returned if a parameter of the request is incorrectly specified. 3317 // 3318 // * MissingParameterValueException 3319 // Returned if a required header or parameter is missing from the request. 3320 // 3321 // * ServiceUnavailableException 3322 // Returned if the service cannot complete the request. 3323 // 3324 func (c *Glacier) SetVaultAccessPolicy(input *SetVaultAccessPolicyInput) (*SetVaultAccessPolicyOutput, error) { 3325 req, out := c.SetVaultAccessPolicyRequest(input) 3326 return out, req.Send() 3327 } 3328 3329 // SetVaultAccessPolicyWithContext is the same as SetVaultAccessPolicy with the addition of 3330 // the ability to pass a context and additional request options. 3331 // 3332 // See SetVaultAccessPolicy for details on how to use this API operation. 3333 // 3334 // The context must be non-nil and will be used for request cancellation. If 3335 // the context is nil a panic will occur. In the future the SDK may create 3336 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3337 // for more information on using Contexts. 3338 func (c *Glacier) SetVaultAccessPolicyWithContext(ctx aws.Context, input *SetVaultAccessPolicyInput, opts ...request.Option) (*SetVaultAccessPolicyOutput, error) { 3339 req, out := c.SetVaultAccessPolicyRequest(input) 3340 req.SetContext(ctx) 3341 req.ApplyOptions(opts...) 3342 return out, req.Send() 3343 } 3344 3345 const opSetVaultNotifications = "SetVaultNotifications" 3346 3347 // SetVaultNotificationsRequest generates a "aws/request.Request" representing the 3348 // client's request for the SetVaultNotifications operation. The "output" return 3349 // value will be populated with the request's response once the request completes 3350 // successfully. 3351 // 3352 // Use "Send" method on the returned Request to send the API call to the service. 3353 // the "output" return value is not valid until after Send returns without error. 3354 // 3355 // See SetVaultNotifications for more information on using the SetVaultNotifications 3356 // API call, and error handling. 3357 // 3358 // This method is useful when you want to inject custom logic or configuration 3359 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 3360 // 3361 // 3362 // // Example sending a request using the SetVaultNotificationsRequest method. 3363 // req, resp := client.SetVaultNotificationsRequest(params) 3364 // 3365 // err := req.Send() 3366 // if err == nil { // resp is now filled 3367 // fmt.Println(resp) 3368 // } 3369 func (c *Glacier) SetVaultNotificationsRequest(input *SetVaultNotificationsInput) (req *request.Request, output *SetVaultNotificationsOutput) { 3370 op := &request.Operation{ 3371 Name: opSetVaultNotifications, 3372 HTTPMethod: "PUT", 3373 HTTPPath: "/{accountId}/vaults/{vaultName}/notification-configuration", 3374 } 3375 3376 if input == nil { 3377 input = &SetVaultNotificationsInput{} 3378 } 3379 3380 output = &SetVaultNotificationsOutput{} 3381 req = c.newRequest(op, input, output) 3382 req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 3383 return 3384 } 3385 3386 // SetVaultNotifications API operation for Amazon Glacier. 3387 // 3388 // This operation configures notifications that will be sent when specific events 3389 // happen to a vault. By default, you don't get any notifications. 3390 // 3391 // To configure vault notifications, send a PUT request to the notification-configuration 3392 // subresource of the vault. The request should include a JSON document that 3393 // provides an Amazon SNS topic and specific events for which you want Amazon 3394 // S3 Glacier to send notifications to the topic. 3395 // 3396 // Amazon SNS topics must grant permission to the vault to be allowed to publish 3397 // notifications to the topic. You can configure a vault to publish a notification 3398 // for the following vault events: 3399 // 3400 // * ArchiveRetrievalCompleted This event occurs when a job that was initiated 3401 // for an archive retrieval is completed (InitiateJob). The status of the 3402 // completed job can be "Succeeded" or "Failed". The notification sent to 3403 // the SNS topic is the same output as returned from DescribeJob. 3404 // 3405 // * InventoryRetrievalCompleted This event occurs when a job that was initiated 3406 // for an inventory retrieval is completed (InitiateJob). The status of the 3407 // completed job can be "Succeeded" or "Failed". The notification sent to 3408 // the SNS topic is the same output as returned from DescribeJob. 3409 // 3410 // An AWS account has full permission to perform all operations (actions). However, 3411 // AWS Identity and Access Management (IAM) users don't have any permissions 3412 // by default. You must grant them explicit permission to perform specific actions. 3413 // For more information, see Access Control Using AWS Identity and Access Management 3414 // (IAM) (https://docs.aws.amazon.com/amazonglacier/latest/dev/using-iam-with-amazon-glacier.html). 3415 // 3416 // For conceptual information and underlying REST API, see Configuring Vault 3417 // Notifications in Amazon S3 Glacier (https://docs.aws.amazon.com/amazonglacier/latest/dev/configuring-notifications.html) 3418 // and Set Vault Notification Configuration (https://docs.aws.amazon.com/amazonglacier/latest/dev/api-vault-notifications-put.html) 3419 // in the Amazon Glacier Developer Guide. 3420 // 3421 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3422 // with awserr.Error's Code and Message methods to get detailed information about 3423 // the error. 3424 // 3425 // See the AWS API reference guide for Amazon Glacier's 3426 // API operation SetVaultNotifications for usage and error information. 3427 // 3428 // Returned Error Types: 3429 // * ResourceNotFoundException 3430 // Returned if the specified resource (such as a vault, upload ID, or job ID) 3431 // doesn't exist. 3432 // 3433 // * InvalidParameterValueException 3434 // Returned if a parameter of the request is incorrectly specified. 3435 // 3436 // * MissingParameterValueException 3437 // Returned if a required header or parameter is missing from the request. 3438 // 3439 // * ServiceUnavailableException 3440 // Returned if the service cannot complete the request. 3441 // 3442 func (c *Glacier) SetVaultNotifications(input *SetVaultNotificationsInput) (*SetVaultNotificationsOutput, error) { 3443 req, out := c.SetVaultNotificationsRequest(input) 3444 return out, req.Send() 3445 } 3446 3447 // SetVaultNotificationsWithContext is the same as SetVaultNotifications with the addition of 3448 // the ability to pass a context and additional request options. 3449 // 3450 // See SetVaultNotifications for details on how to use this API operation. 3451 // 3452 // The context must be non-nil and will be used for request cancellation. If 3453 // the context is nil a panic will occur. In the future the SDK may create 3454 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3455 // for more information on using Contexts. 3456 func (c *Glacier) SetVaultNotificationsWithContext(ctx aws.Context, input *SetVaultNotificationsInput, opts ...request.Option) (*SetVaultNotificationsOutput, error) { 3457 req, out := c.SetVaultNotificationsRequest(input) 3458 req.SetContext(ctx) 3459 req.ApplyOptions(opts...) 3460 return out, req.Send() 3461 } 3462 3463 const opUploadArchive = "UploadArchive" 3464 3465 // UploadArchiveRequest generates a "aws/request.Request" representing the 3466 // client's request for the UploadArchive operation. The "output" return 3467 // value will be populated with the request's response once the request completes 3468 // successfully. 3469 // 3470 // Use "Send" method on the returned Request to send the API call to the service. 3471 // the "output" return value is not valid until after Send returns without error. 3472 // 3473 // See UploadArchive for more information on using the UploadArchive 3474 // API call, and error handling. 3475 // 3476 // This method is useful when you want to inject custom logic or configuration 3477 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 3478 // 3479 // 3480 // // Example sending a request using the UploadArchiveRequest method. 3481 // req, resp := client.UploadArchiveRequest(params) 3482 // 3483 // err := req.Send() 3484 // if err == nil { // resp is now filled 3485 // fmt.Println(resp) 3486 // } 3487 func (c *Glacier) UploadArchiveRequest(input *UploadArchiveInput) (req *request.Request, output *ArchiveCreationOutput) { 3488 op := &request.Operation{ 3489 Name: opUploadArchive, 3490 HTTPMethod: "POST", 3491 HTTPPath: "/{accountId}/vaults/{vaultName}/archives", 3492 } 3493 3494 if input == nil { 3495 input = &UploadArchiveInput{} 3496 } 3497 3498 output = &ArchiveCreationOutput{} 3499 req = c.newRequest(op, input, output) 3500 return 3501 } 3502 3503 // UploadArchive API operation for Amazon Glacier. 3504 // 3505 // This operation adds an archive to a vault. This is a synchronous operation, 3506 // and for a successful upload, your data is durably persisted. Amazon S3 Glacier 3507 // returns the archive ID in the x-amz-archive-id header of the response. 3508 // 3509 // You must use the archive ID to access your data in Amazon S3 Glacier. After 3510 // you upload an archive, you should save the archive ID returned so that you 3511 // can retrieve or delete the archive later. Besides saving the archive ID, 3512 // you can also index it and give it a friendly name to allow for better searching. 3513 // You can also use the optional archive description field to specify how the 3514 // archive is referred to in an external index of archives, such as you might 3515 // create in Amazon DynamoDB. You can also get the vault inventory to obtain 3516 // a list of archive IDs in a vault. For more information, see InitiateJob. 3517 // 3518 // You must provide a SHA256 tree hash of the data you are uploading. For information 3519 // about computing a SHA256 tree hash, see Computing Checksums (https://docs.aws.amazon.com/amazonglacier/latest/dev/checksum-calculations.html). 3520 // 3521 // You can optionally specify an archive description of up to 1,024 printable 3522 // ASCII characters. You can get the archive description when you either retrieve 3523 // the archive or get the vault inventory. For more information, see InitiateJob. 3524 // Amazon Glacier does not interpret the description in any way. An archive 3525 // description does not need to be unique. You cannot use the description to 3526 // retrieve or sort the archive list. 3527 // 3528 // Archives are immutable. After you upload an archive, you cannot edit the 3529 // archive or its description. 3530 // 3531 // An AWS account has full permission to perform all operations (actions). However, 3532 // AWS Identity and Access Management (IAM) users don't have any permissions 3533 // by default. You must grant them explicit permission to perform specific actions. 3534 // For more information, see Access Control Using AWS Identity and Access Management 3535 // (IAM) (https://docs.aws.amazon.com/amazonglacier/latest/dev/using-iam-with-amazon-glacier.html). 3536 // 3537 // For conceptual information and underlying REST API, see Uploading an Archive 3538 // in Amazon Glacier (https://docs.aws.amazon.com/amazonglacier/latest/dev/uploading-an-archive.html) 3539 // and Upload Archive (https://docs.aws.amazon.com/amazonglacier/latest/dev/api-archive-post.html) 3540 // in the Amazon Glacier Developer Guide. 3541 // 3542 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3543 // with awserr.Error's Code and Message methods to get detailed information about 3544 // the error. 3545 // 3546 // See the AWS API reference guide for Amazon Glacier's 3547 // API operation UploadArchive for usage and error information. 3548 // 3549 // Returned Error Types: 3550 // * ResourceNotFoundException 3551 // Returned if the specified resource (such as a vault, upload ID, or job ID) 3552 // doesn't exist. 3553 // 3554 // * InvalidParameterValueException 3555 // Returned if a parameter of the request is incorrectly specified. 3556 // 3557 // * MissingParameterValueException 3558 // Returned if a required header or parameter is missing from the request. 3559 // 3560 // * RequestTimeoutException 3561 // Returned if, when uploading an archive, Amazon S3 Glacier times out while 3562 // receiving the upload. 3563 // 3564 // * ServiceUnavailableException 3565 // Returned if the service cannot complete the request. 3566 // 3567 func (c *Glacier) UploadArchive(input *UploadArchiveInput) (*ArchiveCreationOutput, error) { 3568 req, out := c.UploadArchiveRequest(input) 3569 return out, req.Send() 3570 } 3571 3572 // UploadArchiveWithContext is the same as UploadArchive with the addition of 3573 // the ability to pass a context and additional request options. 3574 // 3575 // See UploadArchive for details on how to use this API operation. 3576 // 3577 // The context must be non-nil and will be used for request cancellation. If 3578 // the context is nil a panic will occur. In the future the SDK may create 3579 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3580 // for more information on using Contexts. 3581 func (c *Glacier) UploadArchiveWithContext(ctx aws.Context, input *UploadArchiveInput, opts ...request.Option) (*ArchiveCreationOutput, error) { 3582 req, out := c.UploadArchiveRequest(input) 3583 req.SetContext(ctx) 3584 req.ApplyOptions(opts...) 3585 return out, req.Send() 3586 } 3587 3588 const opUploadMultipartPart = "UploadMultipartPart" 3589 3590 // UploadMultipartPartRequest generates a "aws/request.Request" representing the 3591 // client's request for the UploadMultipartPart operation. The "output" return 3592 // value will be populated with the request's response once the request completes 3593 // successfully. 3594 // 3595 // Use "Send" method on the returned Request to send the API call to the service. 3596 // the "output" return value is not valid until after Send returns without error. 3597 // 3598 // See UploadMultipartPart for more information on using the UploadMultipartPart 3599 // API call, and error handling. 3600 // 3601 // This method is useful when you want to inject custom logic or configuration 3602 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 3603 // 3604 // 3605 // // Example sending a request using the UploadMultipartPartRequest method. 3606 // req, resp := client.UploadMultipartPartRequest(params) 3607 // 3608 // err := req.Send() 3609 // if err == nil { // resp is now filled 3610 // fmt.Println(resp) 3611 // } 3612 func (c *Glacier) UploadMultipartPartRequest(input *UploadMultipartPartInput) (req *request.Request, output *UploadMultipartPartOutput) { 3613 op := &request.Operation{ 3614 Name: opUploadMultipartPart, 3615 HTTPMethod: "PUT", 3616 HTTPPath: "/{accountId}/vaults/{vaultName}/multipart-uploads/{uploadId}", 3617 } 3618 3619 if input == nil { 3620 input = &UploadMultipartPartInput{} 3621 } 3622 3623 output = &UploadMultipartPartOutput{} 3624 req = c.newRequest(op, input, output) 3625 return 3626 } 3627 3628 // UploadMultipartPart API operation for Amazon Glacier. 3629 // 3630 // This operation uploads a part of an archive. You can upload archive parts 3631 // in any order. You can also upload them in parallel. You can upload up to 3632 // 10,000 parts for a multipart upload. 3633 // 3634 // Amazon Glacier rejects your upload part request if any of the following conditions 3635 // is true: 3636 // 3637 // * SHA256 tree hash does not matchTo ensure that part data is not corrupted 3638 // in transmission, you compute a SHA256 tree hash of the part and include 3639 // it in your request. Upon receiving the part data, Amazon S3 Glacier also 3640 // computes a SHA256 tree hash. If these hash values don't match, the operation 3641 // fails. For information about computing a SHA256 tree hash, see Computing 3642 // Checksums (https://docs.aws.amazon.com/amazonglacier/latest/dev/checksum-calculations.html). 3643 // 3644 // * Part size does not matchThe size of each part except the last must match 3645 // the size specified in the corresponding InitiateMultipartUpload request. 3646 // The size of the last part must be the same size as, or smaller than, the 3647 // specified size. If you upload a part whose size is smaller than the part 3648 // size you specified in your initiate multipart upload request and that 3649 // part is not the last part, then the upload part request will succeed. 3650 // However, the subsequent Complete Multipart Upload request will fail. 3651 // 3652 // * Range does not alignThe byte range value in the request does not align 3653 // with the part size specified in the corresponding initiate request. For 3654 // example, if you specify a part size of 4194304 bytes (4 MB), then 0 to 3655 // 4194303 bytes (4 MB - 1) and 4194304 (4 MB) to 8388607 (8 MB - 1) are 3656 // valid part ranges. However, if you set a range value of 2 MB to 6 MB, 3657 // the range does not align with the part size and the upload will fail. 3658 // 3659 // This operation is idempotent. If you upload the same part multiple times, 3660 // the data included in the most recent request overwrites the previously uploaded 3661 // data. 3662 // 3663 // An AWS account has full permission to perform all operations (actions). However, 3664 // AWS Identity and Access Management (IAM) users don't have any permissions 3665 // by default. You must grant them explicit permission to perform specific actions. 3666 // For more information, see Access Control Using AWS Identity and Access Management 3667 // (IAM) (https://docs.aws.amazon.com/amazonglacier/latest/dev/using-iam-with-amazon-glacier.html). 3668 // 3669 // For conceptual information and underlying REST API, see Uploading Large Archives 3670 // in Parts (Multipart Upload) (https://docs.aws.amazon.com/amazonglacier/latest/dev/uploading-archive-mpu.html) 3671 // and Upload Part (https://docs.aws.amazon.com/amazonglacier/latest/dev/api-upload-part.html) 3672 // in the Amazon Glacier Developer Guide. 3673 // 3674 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3675 // with awserr.Error's Code and Message methods to get detailed information about 3676 // the error. 3677 // 3678 // See the AWS API reference guide for Amazon Glacier's 3679 // API operation UploadMultipartPart for usage and error information. 3680 // 3681 // Returned Error Types: 3682 // * ResourceNotFoundException 3683 // Returned if the specified resource (such as a vault, upload ID, or job ID) 3684 // doesn't exist. 3685 // 3686 // * InvalidParameterValueException 3687 // Returned if a parameter of the request is incorrectly specified. 3688 // 3689 // * MissingParameterValueException 3690 // Returned if a required header or parameter is missing from the request. 3691 // 3692 // * RequestTimeoutException 3693 // Returned if, when uploading an archive, Amazon S3 Glacier times out while 3694 // receiving the upload. 3695 // 3696 // * ServiceUnavailableException 3697 // Returned if the service cannot complete the request. 3698 // 3699 func (c *Glacier) UploadMultipartPart(input *UploadMultipartPartInput) (*UploadMultipartPartOutput, error) { 3700 req, out := c.UploadMultipartPartRequest(input) 3701 return out, req.Send() 3702 } 3703 3704 // UploadMultipartPartWithContext is the same as UploadMultipartPart with the addition of 3705 // the ability to pass a context and additional request options. 3706 // 3707 // See UploadMultipartPart for details on how to use this API operation. 3708 // 3709 // The context must be non-nil and will be used for request cancellation. If 3710 // the context is nil a panic will occur. In the future the SDK may create 3711 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3712 // for more information on using Contexts. 3713 func (c *Glacier) UploadMultipartPartWithContext(ctx aws.Context, input *UploadMultipartPartInput, opts ...request.Option) (*UploadMultipartPartOutput, error) { 3714 req, out := c.UploadMultipartPartRequest(input) 3715 req.SetContext(ctx) 3716 req.ApplyOptions(opts...) 3717 return out, req.Send() 3718 } 3719 3720 // Provides options to abort a multipart upload identified by the upload ID. 3721 // 3722 // For information about the underlying REST API, see Abort Multipart Upload 3723 // (https://docs.aws.amazon.com/amazonglacier/latest/dev/api-multipart-abort-upload.html). 3724 // For conceptual information, see Working with Archives in Amazon S3 Glacier 3725 // (https://docs.aws.amazon.com/amazonglacier/latest/dev/working-with-archives.html). 3726 type AbortMultipartUploadInput struct { 3727 _ struct{} `type:"structure" nopayload:"true"` 3728 3729 // The AccountId value is the AWS account ID of the account that owns the vault. 3730 // You can either specify an AWS account ID or optionally a single '-' (hyphen), 3731 // in which case Amazon S3 Glacier uses the AWS account ID associated with the 3732 // credentials used to sign the request. If you use an account ID, do not include 3733 // any hyphens ('-') in the ID. 3734 // 3735 // AccountId is a required field 3736 AccountId *string `location:"uri" locationName:"accountId" type:"string" required:"true"` 3737 3738 // The upload ID of the multipart upload to delete. 3739 // 3740 // UploadId is a required field 3741 UploadId *string `location:"uri" locationName:"uploadId" type:"string" required:"true"` 3742 3743 // The name of the vault. 3744 // 3745 // VaultName is a required field 3746 VaultName *string `location:"uri" locationName:"vaultName" type:"string" required:"true"` 3747 } 3748 3749 // String returns the string representation. 3750 // 3751 // API parameter values that are decorated as "sensitive" in the API will not 3752 // be included in the string output. The member name will be present, but the 3753 // value will be replaced with "sensitive". 3754 func (s AbortMultipartUploadInput) String() string { 3755 return awsutil.Prettify(s) 3756 } 3757 3758 // GoString returns the string representation. 3759 // 3760 // API parameter values that are decorated as "sensitive" in the API will not 3761 // be included in the string output. The member name will be present, but the 3762 // value will be replaced with "sensitive". 3763 func (s AbortMultipartUploadInput) GoString() string { 3764 return s.String() 3765 } 3766 3767 // Validate inspects the fields of the type to determine if they are valid. 3768 func (s *AbortMultipartUploadInput) Validate() error { 3769 invalidParams := request.ErrInvalidParams{Context: "AbortMultipartUploadInput"} 3770 if s.AccountId == nil { 3771 invalidParams.Add(request.NewErrParamRequired("AccountId")) 3772 } 3773 if s.AccountId != nil && len(*s.AccountId) < 1 { 3774 invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) 3775 } 3776 if s.UploadId == nil { 3777 invalidParams.Add(request.NewErrParamRequired("UploadId")) 3778 } 3779 if s.UploadId != nil && len(*s.UploadId) < 1 { 3780 invalidParams.Add(request.NewErrParamMinLen("UploadId", 1)) 3781 } 3782 if s.VaultName == nil { 3783 invalidParams.Add(request.NewErrParamRequired("VaultName")) 3784 } 3785 if s.VaultName != nil && len(*s.VaultName) < 1 { 3786 invalidParams.Add(request.NewErrParamMinLen("VaultName", 1)) 3787 } 3788 3789 if invalidParams.Len() > 0 { 3790 return invalidParams 3791 } 3792 return nil 3793 } 3794 3795 // SetAccountId sets the AccountId field's value. 3796 func (s *AbortMultipartUploadInput) SetAccountId(v string) *AbortMultipartUploadInput { 3797 s.AccountId = &v 3798 return s 3799 } 3800 3801 // SetUploadId sets the UploadId field's value. 3802 func (s *AbortMultipartUploadInput) SetUploadId(v string) *AbortMultipartUploadInput { 3803 s.UploadId = &v 3804 return s 3805 } 3806 3807 // SetVaultName sets the VaultName field's value. 3808 func (s *AbortMultipartUploadInput) SetVaultName(v string) *AbortMultipartUploadInput { 3809 s.VaultName = &v 3810 return s 3811 } 3812 3813 type AbortMultipartUploadOutput struct { 3814 _ struct{} `type:"structure" nopayload:"true"` 3815 } 3816 3817 // String returns the string representation. 3818 // 3819 // API parameter values that are decorated as "sensitive" in the API will not 3820 // be included in the string output. The member name will be present, but the 3821 // value will be replaced with "sensitive". 3822 func (s AbortMultipartUploadOutput) String() string { 3823 return awsutil.Prettify(s) 3824 } 3825 3826 // GoString returns the string representation. 3827 // 3828 // API parameter values that are decorated as "sensitive" in the API will not 3829 // be included in the string output. The member name will be present, but the 3830 // value will be replaced with "sensitive". 3831 func (s AbortMultipartUploadOutput) GoString() string { 3832 return s.String() 3833 } 3834 3835 // The input values for AbortVaultLock. 3836 type AbortVaultLockInput struct { 3837 _ struct{} `type:"structure" nopayload:"true"` 3838 3839 // The AccountId value is the AWS account ID. This value must match the AWS 3840 // account ID associated with the credentials used to sign the request. You 3841 // can either specify an AWS account ID or optionally a single '-' (hyphen), 3842 // in which case Amazon Glacier uses the AWS account ID associated with the 3843 // credentials used to sign the request. If you specify your account ID, do 3844 // not include any hyphens ('-') in the ID. 3845 // 3846 // AccountId is a required field 3847 AccountId *string `location:"uri" locationName:"accountId" type:"string" required:"true"` 3848 3849 // The name of the vault. 3850 // 3851 // VaultName is a required field 3852 VaultName *string `location:"uri" locationName:"vaultName" type:"string" required:"true"` 3853 } 3854 3855 // String returns the string representation. 3856 // 3857 // API parameter values that are decorated as "sensitive" in the API will not 3858 // be included in the string output. The member name will be present, but the 3859 // value will be replaced with "sensitive". 3860 func (s AbortVaultLockInput) String() string { 3861 return awsutil.Prettify(s) 3862 } 3863 3864 // GoString returns the string representation. 3865 // 3866 // API parameter values that are decorated as "sensitive" in the API will not 3867 // be included in the string output. The member name will be present, but the 3868 // value will be replaced with "sensitive". 3869 func (s AbortVaultLockInput) GoString() string { 3870 return s.String() 3871 } 3872 3873 // Validate inspects the fields of the type to determine if they are valid. 3874 func (s *AbortVaultLockInput) Validate() error { 3875 invalidParams := request.ErrInvalidParams{Context: "AbortVaultLockInput"} 3876 if s.AccountId == nil { 3877 invalidParams.Add(request.NewErrParamRequired("AccountId")) 3878 } 3879 if s.AccountId != nil && len(*s.AccountId) < 1 { 3880 invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) 3881 } 3882 if s.VaultName == nil { 3883 invalidParams.Add(request.NewErrParamRequired("VaultName")) 3884 } 3885 if s.VaultName != nil && len(*s.VaultName) < 1 { 3886 invalidParams.Add(request.NewErrParamMinLen("VaultName", 1)) 3887 } 3888 3889 if invalidParams.Len() > 0 { 3890 return invalidParams 3891 } 3892 return nil 3893 } 3894 3895 // SetAccountId sets the AccountId field's value. 3896 func (s *AbortVaultLockInput) SetAccountId(v string) *AbortVaultLockInput { 3897 s.AccountId = &v 3898 return s 3899 } 3900 3901 // SetVaultName sets the VaultName field's value. 3902 func (s *AbortVaultLockInput) SetVaultName(v string) *AbortVaultLockInput { 3903 s.VaultName = &v 3904 return s 3905 } 3906 3907 type AbortVaultLockOutput struct { 3908 _ struct{} `type:"structure" nopayload:"true"` 3909 } 3910 3911 // String returns the string representation. 3912 // 3913 // API parameter values that are decorated as "sensitive" in the API will not 3914 // be included in the string output. The member name will be present, but the 3915 // value will be replaced with "sensitive". 3916 func (s AbortVaultLockOutput) String() string { 3917 return awsutil.Prettify(s) 3918 } 3919 3920 // GoString returns the string representation. 3921 // 3922 // API parameter values that are decorated as "sensitive" in the API will not 3923 // be included in the string output. The member name will be present, but the 3924 // value will be replaced with "sensitive". 3925 func (s AbortVaultLockOutput) GoString() string { 3926 return s.String() 3927 } 3928 3929 // The input values for AddTagsToVault. 3930 type AddTagsToVaultInput struct { 3931 _ struct{} `type:"structure"` 3932 3933 // The AccountId value is the AWS account ID of the account that owns the vault. 3934 // You can either specify an AWS account ID or optionally a single '-' (hyphen), 3935 // in which case Amazon S3 Glacier uses the AWS account ID associated with the 3936 // credentials used to sign the request. If you use an account ID, do not include 3937 // any hyphens ('-') in the ID. 3938 // 3939 // AccountId is a required field 3940 AccountId *string `location:"uri" locationName:"accountId" type:"string" required:"true"` 3941 3942 // The tags to add to the vault. Each tag is composed of a key and a value. 3943 // The value can be an empty string. 3944 Tags map[string]*string `type:"map"` 3945 3946 // The name of the vault. 3947 // 3948 // VaultName is a required field 3949 VaultName *string `location:"uri" locationName:"vaultName" type:"string" required:"true"` 3950 } 3951 3952 // String returns the string representation. 3953 // 3954 // API parameter values that are decorated as "sensitive" in the API will not 3955 // be included in the string output. The member name will be present, but the 3956 // value will be replaced with "sensitive". 3957 func (s AddTagsToVaultInput) String() string { 3958 return awsutil.Prettify(s) 3959 } 3960 3961 // GoString returns the string representation. 3962 // 3963 // API parameter values that are decorated as "sensitive" in the API will not 3964 // be included in the string output. The member name will be present, but the 3965 // value will be replaced with "sensitive". 3966 func (s AddTagsToVaultInput) GoString() string { 3967 return s.String() 3968 } 3969 3970 // Validate inspects the fields of the type to determine if they are valid. 3971 func (s *AddTagsToVaultInput) Validate() error { 3972 invalidParams := request.ErrInvalidParams{Context: "AddTagsToVaultInput"} 3973 if s.AccountId == nil { 3974 invalidParams.Add(request.NewErrParamRequired("AccountId")) 3975 } 3976 if s.AccountId != nil && len(*s.AccountId) < 1 { 3977 invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) 3978 } 3979 if s.VaultName == nil { 3980 invalidParams.Add(request.NewErrParamRequired("VaultName")) 3981 } 3982 if s.VaultName != nil && len(*s.VaultName) < 1 { 3983 invalidParams.Add(request.NewErrParamMinLen("VaultName", 1)) 3984 } 3985 3986 if invalidParams.Len() > 0 { 3987 return invalidParams 3988 } 3989 return nil 3990 } 3991 3992 // SetAccountId sets the AccountId field's value. 3993 func (s *AddTagsToVaultInput) SetAccountId(v string) *AddTagsToVaultInput { 3994 s.AccountId = &v 3995 return s 3996 } 3997 3998 // SetTags sets the Tags field's value. 3999 func (s *AddTagsToVaultInput) SetTags(v map[string]*string) *AddTagsToVaultInput { 4000 s.Tags = v 4001 return s 4002 } 4003 4004 // SetVaultName sets the VaultName field's value. 4005 func (s *AddTagsToVaultInput) SetVaultName(v string) *AddTagsToVaultInput { 4006 s.VaultName = &v 4007 return s 4008 } 4009 4010 type AddTagsToVaultOutput struct { 4011 _ struct{} `type:"structure" nopayload:"true"` 4012 } 4013 4014 // String returns the string representation. 4015 // 4016 // API parameter values that are decorated as "sensitive" in the API will not 4017 // be included in the string output. The member name will be present, but the 4018 // value will be replaced with "sensitive". 4019 func (s AddTagsToVaultOutput) String() string { 4020 return awsutil.Prettify(s) 4021 } 4022 4023 // GoString returns the string representation. 4024 // 4025 // API parameter values that are decorated as "sensitive" in the API will not 4026 // be included in the string output. The member name will be present, but the 4027 // value will be replaced with "sensitive". 4028 func (s AddTagsToVaultOutput) GoString() string { 4029 return s.String() 4030 } 4031 4032 // Contains the Amazon S3 Glacier response to your request. 4033 // 4034 // For information about the underlying REST API, see Upload Archive (https://docs.aws.amazon.com/amazonglacier/latest/dev/api-archive-post.html). 4035 // For conceptual information, see Working with Archives in Amazon S3 Glacier 4036 // (https://docs.aws.amazon.com/amazonglacier/latest/dev/working-with-archives.html). 4037 type ArchiveCreationOutput struct { 4038 _ struct{} `type:"structure" nopayload:"true"` 4039 4040 // The ID of the archive. This value is also included as part of the location. 4041 ArchiveId *string `location:"header" locationName:"x-amz-archive-id" type:"string"` 4042 4043 // The checksum of the archive computed by Amazon S3 Glacier. 4044 Checksum *string `location:"header" locationName:"x-amz-sha256-tree-hash" type:"string"` 4045 4046 // The relative URI path of the newly added archive resource. 4047 Location *string `location:"header" locationName:"Location" type:"string"` 4048 } 4049 4050 // String returns the string representation. 4051 // 4052 // API parameter values that are decorated as "sensitive" in the API will not 4053 // be included in the string output. The member name will be present, but the 4054 // value will be replaced with "sensitive". 4055 func (s ArchiveCreationOutput) String() string { 4056 return awsutil.Prettify(s) 4057 } 4058 4059 // GoString returns the string representation. 4060 // 4061 // API parameter values that are decorated as "sensitive" in the API will not 4062 // be included in the string output. The member name will be present, but the 4063 // value will be replaced with "sensitive". 4064 func (s ArchiveCreationOutput) GoString() string { 4065 return s.String() 4066 } 4067 4068 // SetArchiveId sets the ArchiveId field's value. 4069 func (s *ArchiveCreationOutput) SetArchiveId(v string) *ArchiveCreationOutput { 4070 s.ArchiveId = &v 4071 return s 4072 } 4073 4074 // SetChecksum sets the Checksum field's value. 4075 func (s *ArchiveCreationOutput) SetChecksum(v string) *ArchiveCreationOutput { 4076 s.Checksum = &v 4077 return s 4078 } 4079 4080 // SetLocation sets the Location field's value. 4081 func (s *ArchiveCreationOutput) SetLocation(v string) *ArchiveCreationOutput { 4082 s.Location = &v 4083 return s 4084 } 4085 4086 // Contains information about the comma-separated value (CSV) file to select 4087 // from. 4088 type CSVInput struct { 4089 _ struct{} `type:"structure"` 4090 4091 // A single character used to indicate that a row should be ignored when the 4092 // character is present at the start of that row. 4093 Comments *string `type:"string"` 4094 4095 // A value used to separate individual fields from each other within a record. 4096 FieldDelimiter *string `type:"string"` 4097 4098 // Describes the first line of input. Valid values are None, Ignore, and Use. 4099 FileHeaderInfo *string `type:"string" enum:"FileHeaderInfo"` 4100 4101 // A value used as an escape character where the field delimiter is part of 4102 // the value. 4103 QuoteCharacter *string `type:"string"` 4104 4105 // A single character used for escaping the quotation-mark character inside 4106 // an already escaped value. 4107 QuoteEscapeCharacter *string `type:"string"` 4108 4109 // A value used to separate individual records from each other. 4110 RecordDelimiter *string `type:"string"` 4111 } 4112 4113 // String returns the string representation. 4114 // 4115 // API parameter values that are decorated as "sensitive" in the API will not 4116 // be included in the string output. The member name will be present, but the 4117 // value will be replaced with "sensitive". 4118 func (s CSVInput) String() string { 4119 return awsutil.Prettify(s) 4120 } 4121 4122 // GoString returns the string representation. 4123 // 4124 // API parameter values that are decorated as "sensitive" in the API will not 4125 // be included in the string output. The member name will be present, but the 4126 // value will be replaced with "sensitive". 4127 func (s CSVInput) GoString() string { 4128 return s.String() 4129 } 4130 4131 // SetComments sets the Comments field's value. 4132 func (s *CSVInput) SetComments(v string) *CSVInput { 4133 s.Comments = &v 4134 return s 4135 } 4136 4137 // SetFieldDelimiter sets the FieldDelimiter field's value. 4138 func (s *CSVInput) SetFieldDelimiter(v string) *CSVInput { 4139 s.FieldDelimiter = &v 4140 return s 4141 } 4142 4143 // SetFileHeaderInfo sets the FileHeaderInfo field's value. 4144 func (s *CSVInput) SetFileHeaderInfo(v string) *CSVInput { 4145 s.FileHeaderInfo = &v 4146 return s 4147 } 4148 4149 // SetQuoteCharacter sets the QuoteCharacter field's value. 4150 func (s *CSVInput) SetQuoteCharacter(v string) *CSVInput { 4151 s.QuoteCharacter = &v 4152 return s 4153 } 4154 4155 // SetQuoteEscapeCharacter sets the QuoteEscapeCharacter field's value. 4156 func (s *CSVInput) SetQuoteEscapeCharacter(v string) *CSVInput { 4157 s.QuoteEscapeCharacter = &v 4158 return s 4159 } 4160 4161 // SetRecordDelimiter sets the RecordDelimiter field's value. 4162 func (s *CSVInput) SetRecordDelimiter(v string) *CSVInput { 4163 s.RecordDelimiter = &v 4164 return s 4165 } 4166 4167 // Contains information about the comma-separated value (CSV) file that the 4168 // job results are stored in. 4169 type CSVOutput struct { 4170 _ struct{} `type:"structure"` 4171 4172 // A value used to separate individual fields from each other within a record. 4173 FieldDelimiter *string `type:"string"` 4174 4175 // A value used as an escape character where the field delimiter is part of 4176 // the value. 4177 QuoteCharacter *string `type:"string"` 4178 4179 // A single character used for escaping the quotation-mark character inside 4180 // an already escaped value. 4181 QuoteEscapeCharacter *string `type:"string"` 4182 4183 // A value that indicates whether all output fields should be contained within 4184 // quotation marks. 4185 QuoteFields *string `type:"string" enum:"QuoteFields"` 4186 4187 // A value used to separate individual records from each other. 4188 RecordDelimiter *string `type:"string"` 4189 } 4190 4191 // String returns the string representation. 4192 // 4193 // API parameter values that are decorated as "sensitive" in the API will not 4194 // be included in the string output. The member name will be present, but the 4195 // value will be replaced with "sensitive". 4196 func (s CSVOutput) String() string { 4197 return awsutil.Prettify(s) 4198 } 4199 4200 // GoString returns the string representation. 4201 // 4202 // API parameter values that are decorated as "sensitive" in the API will not 4203 // be included in the string output. The member name will be present, but the 4204 // value will be replaced with "sensitive". 4205 func (s CSVOutput) GoString() string { 4206 return s.String() 4207 } 4208 4209 // SetFieldDelimiter sets the FieldDelimiter field's value. 4210 func (s *CSVOutput) SetFieldDelimiter(v string) *CSVOutput { 4211 s.FieldDelimiter = &v 4212 return s 4213 } 4214 4215 // SetQuoteCharacter sets the QuoteCharacter field's value. 4216 func (s *CSVOutput) SetQuoteCharacter(v string) *CSVOutput { 4217 s.QuoteCharacter = &v 4218 return s 4219 } 4220 4221 // SetQuoteEscapeCharacter sets the QuoteEscapeCharacter field's value. 4222 func (s *CSVOutput) SetQuoteEscapeCharacter(v string) *CSVOutput { 4223 s.QuoteEscapeCharacter = &v 4224 return s 4225 } 4226 4227 // SetQuoteFields sets the QuoteFields field's value. 4228 func (s *CSVOutput) SetQuoteFields(v string) *CSVOutput { 4229 s.QuoteFields = &v 4230 return s 4231 } 4232 4233 // SetRecordDelimiter sets the RecordDelimiter field's value. 4234 func (s *CSVOutput) SetRecordDelimiter(v string) *CSVOutput { 4235 s.RecordDelimiter = &v 4236 return s 4237 } 4238 4239 // Provides options to complete a multipart upload operation. This informs Amazon 4240 // Glacier that all the archive parts have been uploaded and Amazon S3 Glacier 4241 // (Glacier) can now assemble the archive from the uploaded parts. After assembling 4242 // and saving the archive to the vault, Glacier returns the URI path of the 4243 // newly created archive resource. 4244 type CompleteMultipartUploadInput struct { 4245 _ struct{} `type:"structure" nopayload:"true"` 4246 4247 // The AccountId value is the AWS account ID of the account that owns the vault. 4248 // You can either specify an AWS account ID or optionally a single '-' (hyphen), 4249 // in which case Amazon S3 Glacier uses the AWS account ID associated with the 4250 // credentials used to sign the request. If you use an account ID, do not include 4251 // any hyphens ('-') in the ID. 4252 // 4253 // AccountId is a required field 4254 AccountId *string `location:"uri" locationName:"accountId" type:"string" required:"true"` 4255 4256 // The total size, in bytes, of the entire archive. This value should be the 4257 // sum of all the sizes of the individual parts that you uploaded. 4258 ArchiveSize *string `location:"header" locationName:"x-amz-archive-size" type:"string"` 4259 4260 // The SHA256 tree hash of the entire archive. It is the tree hash of SHA256 4261 // tree hash of the individual parts. If the value you specify in the request 4262 // does not match the SHA256 tree hash of the final assembled archive as computed 4263 // by Amazon S3 Glacier (Glacier), Glacier returns an error and the request 4264 // fails. 4265 Checksum *string `location:"header" locationName:"x-amz-sha256-tree-hash" type:"string"` 4266 4267 // The upload ID of the multipart upload. 4268 // 4269 // UploadId is a required field 4270 UploadId *string `location:"uri" locationName:"uploadId" type:"string" required:"true"` 4271 4272 // The name of the vault. 4273 // 4274 // VaultName is a required field 4275 VaultName *string `location:"uri" locationName:"vaultName" type:"string" required:"true"` 4276 } 4277 4278 // String returns the string representation. 4279 // 4280 // API parameter values that are decorated as "sensitive" in the API will not 4281 // be included in the string output. The member name will be present, but the 4282 // value will be replaced with "sensitive". 4283 func (s CompleteMultipartUploadInput) String() string { 4284 return awsutil.Prettify(s) 4285 } 4286 4287 // GoString returns the string representation. 4288 // 4289 // API parameter values that are decorated as "sensitive" in the API will not 4290 // be included in the string output. The member name will be present, but the 4291 // value will be replaced with "sensitive". 4292 func (s CompleteMultipartUploadInput) GoString() string { 4293 return s.String() 4294 } 4295 4296 // Validate inspects the fields of the type to determine if they are valid. 4297 func (s *CompleteMultipartUploadInput) Validate() error { 4298 invalidParams := request.ErrInvalidParams{Context: "CompleteMultipartUploadInput"} 4299 if s.AccountId == nil { 4300 invalidParams.Add(request.NewErrParamRequired("AccountId")) 4301 } 4302 if s.AccountId != nil && len(*s.AccountId) < 1 { 4303 invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) 4304 } 4305 if s.UploadId == nil { 4306 invalidParams.Add(request.NewErrParamRequired("UploadId")) 4307 } 4308 if s.UploadId != nil && len(*s.UploadId) < 1 { 4309 invalidParams.Add(request.NewErrParamMinLen("UploadId", 1)) 4310 } 4311 if s.VaultName == nil { 4312 invalidParams.Add(request.NewErrParamRequired("VaultName")) 4313 } 4314 if s.VaultName != nil && len(*s.VaultName) < 1 { 4315 invalidParams.Add(request.NewErrParamMinLen("VaultName", 1)) 4316 } 4317 4318 if invalidParams.Len() > 0 { 4319 return invalidParams 4320 } 4321 return nil 4322 } 4323 4324 // SetAccountId sets the AccountId field's value. 4325 func (s *CompleteMultipartUploadInput) SetAccountId(v string) *CompleteMultipartUploadInput { 4326 s.AccountId = &v 4327 return s 4328 } 4329 4330 // SetArchiveSize sets the ArchiveSize field's value. 4331 func (s *CompleteMultipartUploadInput) SetArchiveSize(v string) *CompleteMultipartUploadInput { 4332 s.ArchiveSize = &v 4333 return s 4334 } 4335 4336 // SetChecksum sets the Checksum field's value. 4337 func (s *CompleteMultipartUploadInput) SetChecksum(v string) *CompleteMultipartUploadInput { 4338 s.Checksum = &v 4339 return s 4340 } 4341 4342 // SetUploadId sets the UploadId field's value. 4343 func (s *CompleteMultipartUploadInput) SetUploadId(v string) *CompleteMultipartUploadInput { 4344 s.UploadId = &v 4345 return s 4346 } 4347 4348 // SetVaultName sets the VaultName field's value. 4349 func (s *CompleteMultipartUploadInput) SetVaultName(v string) *CompleteMultipartUploadInput { 4350 s.VaultName = &v 4351 return s 4352 } 4353 4354 // The input values for CompleteVaultLock. 4355 type CompleteVaultLockInput struct { 4356 _ struct{} `type:"structure" nopayload:"true"` 4357 4358 // The AccountId value is the AWS account ID. This value must match the AWS 4359 // account ID associated with the credentials used to sign the request. You 4360 // can either specify an AWS account ID or optionally a single '-' (hyphen), 4361 // in which case Amazon Glacier uses the AWS account ID associated with the 4362 // credentials used to sign the request. If you specify your account ID, do 4363 // not include any hyphens ('-') in the ID. 4364 // 4365 // AccountId is a required field 4366 AccountId *string `location:"uri" locationName:"accountId" type:"string" required:"true"` 4367 4368 // The lockId value is the lock ID obtained from a InitiateVaultLock request. 4369 // 4370 // LockId is a required field 4371 LockId *string `location:"uri" locationName:"lockId" type:"string" required:"true"` 4372 4373 // The name of the vault. 4374 // 4375 // VaultName is a required field 4376 VaultName *string `location:"uri" locationName:"vaultName" type:"string" required:"true"` 4377 } 4378 4379 // String returns the string representation. 4380 // 4381 // API parameter values that are decorated as "sensitive" in the API will not 4382 // be included in the string output. The member name will be present, but the 4383 // value will be replaced with "sensitive". 4384 func (s CompleteVaultLockInput) String() string { 4385 return awsutil.Prettify(s) 4386 } 4387 4388 // GoString returns the string representation. 4389 // 4390 // API parameter values that are decorated as "sensitive" in the API will not 4391 // be included in the string output. The member name will be present, but the 4392 // value will be replaced with "sensitive". 4393 func (s CompleteVaultLockInput) GoString() string { 4394 return s.String() 4395 } 4396 4397 // Validate inspects the fields of the type to determine if they are valid. 4398 func (s *CompleteVaultLockInput) Validate() error { 4399 invalidParams := request.ErrInvalidParams{Context: "CompleteVaultLockInput"} 4400 if s.AccountId == nil { 4401 invalidParams.Add(request.NewErrParamRequired("AccountId")) 4402 } 4403 if s.AccountId != nil && len(*s.AccountId) < 1 { 4404 invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) 4405 } 4406 if s.LockId == nil { 4407 invalidParams.Add(request.NewErrParamRequired("LockId")) 4408 } 4409 if s.LockId != nil && len(*s.LockId) < 1 { 4410 invalidParams.Add(request.NewErrParamMinLen("LockId", 1)) 4411 } 4412 if s.VaultName == nil { 4413 invalidParams.Add(request.NewErrParamRequired("VaultName")) 4414 } 4415 if s.VaultName != nil && len(*s.VaultName) < 1 { 4416 invalidParams.Add(request.NewErrParamMinLen("VaultName", 1)) 4417 } 4418 4419 if invalidParams.Len() > 0 { 4420 return invalidParams 4421 } 4422 return nil 4423 } 4424 4425 // SetAccountId sets the AccountId field's value. 4426 func (s *CompleteVaultLockInput) SetAccountId(v string) *CompleteVaultLockInput { 4427 s.AccountId = &v 4428 return s 4429 } 4430 4431 // SetLockId sets the LockId field's value. 4432 func (s *CompleteVaultLockInput) SetLockId(v string) *CompleteVaultLockInput { 4433 s.LockId = &v 4434 return s 4435 } 4436 4437 // SetVaultName sets the VaultName field's value. 4438 func (s *CompleteVaultLockInput) SetVaultName(v string) *CompleteVaultLockInput { 4439 s.VaultName = &v 4440 return s 4441 } 4442 4443 type CompleteVaultLockOutput struct { 4444 _ struct{} `type:"structure" nopayload:"true"` 4445 } 4446 4447 // String returns the string representation. 4448 // 4449 // API parameter values that are decorated as "sensitive" in the API will not 4450 // be included in the string output. The member name will be present, but the 4451 // value will be replaced with "sensitive". 4452 func (s CompleteVaultLockOutput) String() string { 4453 return awsutil.Prettify(s) 4454 } 4455 4456 // GoString returns the string representation. 4457 // 4458 // API parameter values that are decorated as "sensitive" in the API will not 4459 // be included in the string output. The member name will be present, but the 4460 // value will be replaced with "sensitive". 4461 func (s CompleteVaultLockOutput) GoString() string { 4462 return s.String() 4463 } 4464 4465 // Provides options to create a vault. 4466 type CreateVaultInput struct { 4467 _ struct{} `type:"structure" nopayload:"true"` 4468 4469 // The AccountId value is the AWS account ID. This value must match the AWS 4470 // account ID associated with the credentials used to sign the request. You 4471 // can either specify an AWS account ID or optionally a single '-' (hyphen), 4472 // in which case Amazon S3 Glacier uses the AWS account ID associated with the 4473 // credentials used to sign the request. If you specify your account ID, do 4474 // not include any hyphens ('-') in the ID. 4475 // 4476 // AccountId is a required field 4477 AccountId *string `location:"uri" locationName:"accountId" type:"string" required:"true"` 4478 4479 // The name of the vault. 4480 // 4481 // VaultName is a required field 4482 VaultName *string `location:"uri" locationName:"vaultName" type:"string" required:"true"` 4483 } 4484 4485 // String returns the string representation. 4486 // 4487 // API parameter values that are decorated as "sensitive" in the API will not 4488 // be included in the string output. The member name will be present, but the 4489 // value will be replaced with "sensitive". 4490 func (s CreateVaultInput) String() string { 4491 return awsutil.Prettify(s) 4492 } 4493 4494 // GoString returns the string representation. 4495 // 4496 // API parameter values that are decorated as "sensitive" in the API will not 4497 // be included in the string output. The member name will be present, but the 4498 // value will be replaced with "sensitive". 4499 func (s CreateVaultInput) GoString() string { 4500 return s.String() 4501 } 4502 4503 // Validate inspects the fields of the type to determine if they are valid. 4504 func (s *CreateVaultInput) Validate() error { 4505 invalidParams := request.ErrInvalidParams{Context: "CreateVaultInput"} 4506 if s.AccountId == nil { 4507 invalidParams.Add(request.NewErrParamRequired("AccountId")) 4508 } 4509 if s.AccountId != nil && len(*s.AccountId) < 1 { 4510 invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) 4511 } 4512 if s.VaultName == nil { 4513 invalidParams.Add(request.NewErrParamRequired("VaultName")) 4514 } 4515 if s.VaultName != nil && len(*s.VaultName) < 1 { 4516 invalidParams.Add(request.NewErrParamMinLen("VaultName", 1)) 4517 } 4518 4519 if invalidParams.Len() > 0 { 4520 return invalidParams 4521 } 4522 return nil 4523 } 4524 4525 // SetAccountId sets the AccountId field's value. 4526 func (s *CreateVaultInput) SetAccountId(v string) *CreateVaultInput { 4527 s.AccountId = &v 4528 return s 4529 } 4530 4531 // SetVaultName sets the VaultName field's value. 4532 func (s *CreateVaultInput) SetVaultName(v string) *CreateVaultInput { 4533 s.VaultName = &v 4534 return s 4535 } 4536 4537 // Contains the Amazon S3 Glacier response to your request. 4538 type CreateVaultOutput struct { 4539 _ struct{} `type:"structure" nopayload:"true"` 4540 4541 // The URI of the vault that was created. 4542 Location *string `location:"header" locationName:"Location" type:"string"` 4543 } 4544 4545 // String returns the string representation. 4546 // 4547 // API parameter values that are decorated as "sensitive" in the API will not 4548 // be included in the string output. The member name will be present, but the 4549 // value will be replaced with "sensitive". 4550 func (s CreateVaultOutput) String() string { 4551 return awsutil.Prettify(s) 4552 } 4553 4554 // GoString returns the string representation. 4555 // 4556 // API parameter values that are decorated as "sensitive" in the API will not 4557 // be included in the string output. The member name will be present, but the 4558 // value will be replaced with "sensitive". 4559 func (s CreateVaultOutput) GoString() string { 4560 return s.String() 4561 } 4562 4563 // SetLocation sets the Location field's value. 4564 func (s *CreateVaultOutput) SetLocation(v string) *CreateVaultOutput { 4565 s.Location = &v 4566 return s 4567 } 4568 4569 // Data retrieval policy. 4570 type DataRetrievalPolicy struct { 4571 _ struct{} `type:"structure"` 4572 4573 // The policy rule. Although this is a list type, currently there must be only 4574 // one rule, which contains a Strategy field and optionally a BytesPerHour field. 4575 Rules []*DataRetrievalRule `type:"list"` 4576 } 4577 4578 // String returns the string representation. 4579 // 4580 // API parameter values that are decorated as "sensitive" in the API will not 4581 // be included in the string output. The member name will be present, but the 4582 // value will be replaced with "sensitive". 4583 func (s DataRetrievalPolicy) String() string { 4584 return awsutil.Prettify(s) 4585 } 4586 4587 // GoString returns the string representation. 4588 // 4589 // API parameter values that are decorated as "sensitive" in the API will not 4590 // be included in the string output. The member name will be present, but the 4591 // value will be replaced with "sensitive". 4592 func (s DataRetrievalPolicy) GoString() string { 4593 return s.String() 4594 } 4595 4596 // SetRules sets the Rules field's value. 4597 func (s *DataRetrievalPolicy) SetRules(v []*DataRetrievalRule) *DataRetrievalPolicy { 4598 s.Rules = v 4599 return s 4600 } 4601 4602 // Data retrieval policy rule. 4603 type DataRetrievalRule struct { 4604 _ struct{} `type:"structure"` 4605 4606 // The maximum number of bytes that can be retrieved in an hour. 4607 // 4608 // This field is required only if the value of the Strategy field is BytesPerHour. 4609 // Your PUT operation will be rejected if the Strategy field is not set to BytesPerHour 4610 // and you set this field. 4611 BytesPerHour *int64 `type:"long"` 4612 4613 // The type of data retrieval policy to set. 4614 // 4615 // Valid values: BytesPerHour|FreeTier|None 4616 Strategy *string `type:"string"` 4617 } 4618 4619 // String returns the string representation. 4620 // 4621 // API parameter values that are decorated as "sensitive" in the API will not 4622 // be included in the string output. The member name will be present, but the 4623 // value will be replaced with "sensitive". 4624 func (s DataRetrievalRule) String() string { 4625 return awsutil.Prettify(s) 4626 } 4627 4628 // GoString returns the string representation. 4629 // 4630 // API parameter values that are decorated as "sensitive" in the API will not 4631 // be included in the string output. The member name will be present, but the 4632 // value will be replaced with "sensitive". 4633 func (s DataRetrievalRule) GoString() string { 4634 return s.String() 4635 } 4636 4637 // SetBytesPerHour sets the BytesPerHour field's value. 4638 func (s *DataRetrievalRule) SetBytesPerHour(v int64) *DataRetrievalRule { 4639 s.BytesPerHour = &v 4640 return s 4641 } 4642 4643 // SetStrategy sets the Strategy field's value. 4644 func (s *DataRetrievalRule) SetStrategy(v string) *DataRetrievalRule { 4645 s.Strategy = &v 4646 return s 4647 } 4648 4649 // Provides options for deleting an archive from an Amazon S3 Glacier vault. 4650 type DeleteArchiveInput struct { 4651 _ struct{} `type:"structure" nopayload:"true"` 4652 4653 // The AccountId value is the AWS account ID of the account that owns the vault. 4654 // You can either specify an AWS account ID or optionally a single '-' (hyphen), 4655 // in which case Amazon S3 Glacier uses the AWS account ID associated with the 4656 // credentials used to sign the request. If you use an account ID, do not include 4657 // any hyphens ('-') in the ID. 4658 // 4659 // AccountId is a required field 4660 AccountId *string `location:"uri" locationName:"accountId" type:"string" required:"true"` 4661 4662 // The ID of the archive to delete. 4663 // 4664 // ArchiveId is a required field 4665 ArchiveId *string `location:"uri" locationName:"archiveId" type:"string" required:"true"` 4666 4667 // The name of the vault. 4668 // 4669 // VaultName is a required field 4670 VaultName *string `location:"uri" locationName:"vaultName" type:"string" required:"true"` 4671 } 4672 4673 // String returns the string representation. 4674 // 4675 // API parameter values that are decorated as "sensitive" in the API will not 4676 // be included in the string output. The member name will be present, but the 4677 // value will be replaced with "sensitive". 4678 func (s DeleteArchiveInput) String() string { 4679 return awsutil.Prettify(s) 4680 } 4681 4682 // GoString returns the string representation. 4683 // 4684 // API parameter values that are decorated as "sensitive" in the API will not 4685 // be included in the string output. The member name will be present, but the 4686 // value will be replaced with "sensitive". 4687 func (s DeleteArchiveInput) GoString() string { 4688 return s.String() 4689 } 4690 4691 // Validate inspects the fields of the type to determine if they are valid. 4692 func (s *DeleteArchiveInput) Validate() error { 4693 invalidParams := request.ErrInvalidParams{Context: "DeleteArchiveInput"} 4694 if s.AccountId == nil { 4695 invalidParams.Add(request.NewErrParamRequired("AccountId")) 4696 } 4697 if s.AccountId != nil && len(*s.AccountId) < 1 { 4698 invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) 4699 } 4700 if s.ArchiveId == nil { 4701 invalidParams.Add(request.NewErrParamRequired("ArchiveId")) 4702 } 4703 if s.ArchiveId != nil && len(*s.ArchiveId) < 1 { 4704 invalidParams.Add(request.NewErrParamMinLen("ArchiveId", 1)) 4705 } 4706 if s.VaultName == nil { 4707 invalidParams.Add(request.NewErrParamRequired("VaultName")) 4708 } 4709 if s.VaultName != nil && len(*s.VaultName) < 1 { 4710 invalidParams.Add(request.NewErrParamMinLen("VaultName", 1)) 4711 } 4712 4713 if invalidParams.Len() > 0 { 4714 return invalidParams 4715 } 4716 return nil 4717 } 4718 4719 // SetAccountId sets the AccountId field's value. 4720 func (s *DeleteArchiveInput) SetAccountId(v string) *DeleteArchiveInput { 4721 s.AccountId = &v 4722 return s 4723 } 4724 4725 // SetArchiveId sets the ArchiveId field's value. 4726 func (s *DeleteArchiveInput) SetArchiveId(v string) *DeleteArchiveInput { 4727 s.ArchiveId = &v 4728 return s 4729 } 4730 4731 // SetVaultName sets the VaultName field's value. 4732 func (s *DeleteArchiveInput) SetVaultName(v string) *DeleteArchiveInput { 4733 s.VaultName = &v 4734 return s 4735 } 4736 4737 type DeleteArchiveOutput struct { 4738 _ struct{} `type:"structure" nopayload:"true"` 4739 } 4740 4741 // String returns the string representation. 4742 // 4743 // API parameter values that are decorated as "sensitive" in the API will not 4744 // be included in the string output. The member name will be present, but the 4745 // value will be replaced with "sensitive". 4746 func (s DeleteArchiveOutput) String() string { 4747 return awsutil.Prettify(s) 4748 } 4749 4750 // GoString returns the string representation. 4751 // 4752 // API parameter values that are decorated as "sensitive" in the API will not 4753 // be included in the string output. The member name will be present, but the 4754 // value will be replaced with "sensitive". 4755 func (s DeleteArchiveOutput) GoString() string { 4756 return s.String() 4757 } 4758 4759 // DeleteVaultAccessPolicy input. 4760 type DeleteVaultAccessPolicyInput struct { 4761 _ struct{} `type:"structure" nopayload:"true"` 4762 4763 // The AccountId value is the AWS account ID of the account that owns the vault. 4764 // You can either specify an AWS account ID or optionally a single '-' (hyphen), 4765 // in which case Amazon S3 Glacier uses the AWS account ID associated with the 4766 // credentials used to sign the request. If you use an account ID, do not include 4767 // any hyphens ('-') in the ID. 4768 // 4769 // AccountId is a required field 4770 AccountId *string `location:"uri" locationName:"accountId" type:"string" required:"true"` 4771 4772 // The name of the vault. 4773 // 4774 // VaultName is a required field 4775 VaultName *string `location:"uri" locationName:"vaultName" type:"string" required:"true"` 4776 } 4777 4778 // String returns the string representation. 4779 // 4780 // API parameter values that are decorated as "sensitive" in the API will not 4781 // be included in the string output. The member name will be present, but the 4782 // value will be replaced with "sensitive". 4783 func (s DeleteVaultAccessPolicyInput) String() string { 4784 return awsutil.Prettify(s) 4785 } 4786 4787 // GoString returns the string representation. 4788 // 4789 // API parameter values that are decorated as "sensitive" in the API will not 4790 // be included in the string output. The member name will be present, but the 4791 // value will be replaced with "sensitive". 4792 func (s DeleteVaultAccessPolicyInput) GoString() string { 4793 return s.String() 4794 } 4795 4796 // Validate inspects the fields of the type to determine if they are valid. 4797 func (s *DeleteVaultAccessPolicyInput) Validate() error { 4798 invalidParams := request.ErrInvalidParams{Context: "DeleteVaultAccessPolicyInput"} 4799 if s.AccountId == nil { 4800 invalidParams.Add(request.NewErrParamRequired("AccountId")) 4801 } 4802 if s.AccountId != nil && len(*s.AccountId) < 1 { 4803 invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) 4804 } 4805 if s.VaultName == nil { 4806 invalidParams.Add(request.NewErrParamRequired("VaultName")) 4807 } 4808 if s.VaultName != nil && len(*s.VaultName) < 1 { 4809 invalidParams.Add(request.NewErrParamMinLen("VaultName", 1)) 4810 } 4811 4812 if invalidParams.Len() > 0 { 4813 return invalidParams 4814 } 4815 return nil 4816 } 4817 4818 // SetAccountId sets the AccountId field's value. 4819 func (s *DeleteVaultAccessPolicyInput) SetAccountId(v string) *DeleteVaultAccessPolicyInput { 4820 s.AccountId = &v 4821 return s 4822 } 4823 4824 // SetVaultName sets the VaultName field's value. 4825 func (s *DeleteVaultAccessPolicyInput) SetVaultName(v string) *DeleteVaultAccessPolicyInput { 4826 s.VaultName = &v 4827 return s 4828 } 4829 4830 type DeleteVaultAccessPolicyOutput struct { 4831 _ struct{} `type:"structure" nopayload:"true"` 4832 } 4833 4834 // String returns the string representation. 4835 // 4836 // API parameter values that are decorated as "sensitive" in the API will not 4837 // be included in the string output. The member name will be present, but the 4838 // value will be replaced with "sensitive". 4839 func (s DeleteVaultAccessPolicyOutput) String() string { 4840 return awsutil.Prettify(s) 4841 } 4842 4843 // GoString returns the string representation. 4844 // 4845 // API parameter values that are decorated as "sensitive" in the API will not 4846 // be included in the string output. The member name will be present, but the 4847 // value will be replaced with "sensitive". 4848 func (s DeleteVaultAccessPolicyOutput) GoString() string { 4849 return s.String() 4850 } 4851 4852 // Provides options for deleting a vault from Amazon S3 Glacier. 4853 type DeleteVaultInput struct { 4854 _ struct{} `type:"structure" nopayload:"true"` 4855 4856 // The AccountId value is the AWS account ID of the account that owns the vault. 4857 // You can either specify an AWS account ID or optionally a single '-' (hyphen), 4858 // in which case Amazon S3 Glacier uses the AWS account ID associated with the 4859 // credentials used to sign the request. If you use an account ID, do not include 4860 // any hyphens ('-') in the ID. 4861 // 4862 // AccountId is a required field 4863 AccountId *string `location:"uri" locationName:"accountId" type:"string" required:"true"` 4864 4865 // The name of the vault. 4866 // 4867 // VaultName is a required field 4868 VaultName *string `location:"uri" locationName:"vaultName" type:"string" required:"true"` 4869 } 4870 4871 // String returns the string representation. 4872 // 4873 // API parameter values that are decorated as "sensitive" in the API will not 4874 // be included in the string output. The member name will be present, but the 4875 // value will be replaced with "sensitive". 4876 func (s DeleteVaultInput) String() string { 4877 return awsutil.Prettify(s) 4878 } 4879 4880 // GoString returns the string representation. 4881 // 4882 // API parameter values that are decorated as "sensitive" in the API will not 4883 // be included in the string output. The member name will be present, but the 4884 // value will be replaced with "sensitive". 4885 func (s DeleteVaultInput) GoString() string { 4886 return s.String() 4887 } 4888 4889 // Validate inspects the fields of the type to determine if they are valid. 4890 func (s *DeleteVaultInput) Validate() error { 4891 invalidParams := request.ErrInvalidParams{Context: "DeleteVaultInput"} 4892 if s.AccountId == nil { 4893 invalidParams.Add(request.NewErrParamRequired("AccountId")) 4894 } 4895 if s.AccountId != nil && len(*s.AccountId) < 1 { 4896 invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) 4897 } 4898 if s.VaultName == nil { 4899 invalidParams.Add(request.NewErrParamRequired("VaultName")) 4900 } 4901 if s.VaultName != nil && len(*s.VaultName) < 1 { 4902 invalidParams.Add(request.NewErrParamMinLen("VaultName", 1)) 4903 } 4904 4905 if invalidParams.Len() > 0 { 4906 return invalidParams 4907 } 4908 return nil 4909 } 4910 4911 // SetAccountId sets the AccountId field's value. 4912 func (s *DeleteVaultInput) SetAccountId(v string) *DeleteVaultInput { 4913 s.AccountId = &v 4914 return s 4915 } 4916 4917 // SetVaultName sets the VaultName field's value. 4918 func (s *DeleteVaultInput) SetVaultName(v string) *DeleteVaultInput { 4919 s.VaultName = &v 4920 return s 4921 } 4922 4923 // Provides options for deleting a vault notification configuration from an 4924 // Amazon Glacier vault. 4925 type DeleteVaultNotificationsInput struct { 4926 _ struct{} `type:"structure" nopayload:"true"` 4927 4928 // The AccountId value is the AWS account ID of the account that owns the vault. 4929 // You can either specify an AWS account ID or optionally a single '-' (hyphen), 4930 // in which case Amazon S3 Glacier uses the AWS account ID associated with the 4931 // credentials used to sign the request. If you use an account ID, do not include 4932 // any hyphens ('-') in the ID. 4933 // 4934 // AccountId is a required field 4935 AccountId *string `location:"uri" locationName:"accountId" type:"string" required:"true"` 4936 4937 // The name of the vault. 4938 // 4939 // VaultName is a required field 4940 VaultName *string `location:"uri" locationName:"vaultName" type:"string" required:"true"` 4941 } 4942 4943 // String returns the string representation. 4944 // 4945 // API parameter values that are decorated as "sensitive" in the API will not 4946 // be included in the string output. The member name will be present, but the 4947 // value will be replaced with "sensitive". 4948 func (s DeleteVaultNotificationsInput) String() string { 4949 return awsutil.Prettify(s) 4950 } 4951 4952 // GoString returns the string representation. 4953 // 4954 // API parameter values that are decorated as "sensitive" in the API will not 4955 // be included in the string output. The member name will be present, but the 4956 // value will be replaced with "sensitive". 4957 func (s DeleteVaultNotificationsInput) GoString() string { 4958 return s.String() 4959 } 4960 4961 // Validate inspects the fields of the type to determine if they are valid. 4962 func (s *DeleteVaultNotificationsInput) Validate() error { 4963 invalidParams := request.ErrInvalidParams{Context: "DeleteVaultNotificationsInput"} 4964 if s.AccountId == nil { 4965 invalidParams.Add(request.NewErrParamRequired("AccountId")) 4966 } 4967 if s.AccountId != nil && len(*s.AccountId) < 1 { 4968 invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) 4969 } 4970 if s.VaultName == nil { 4971 invalidParams.Add(request.NewErrParamRequired("VaultName")) 4972 } 4973 if s.VaultName != nil && len(*s.VaultName) < 1 { 4974 invalidParams.Add(request.NewErrParamMinLen("VaultName", 1)) 4975 } 4976 4977 if invalidParams.Len() > 0 { 4978 return invalidParams 4979 } 4980 return nil 4981 } 4982 4983 // SetAccountId sets the AccountId field's value. 4984 func (s *DeleteVaultNotificationsInput) SetAccountId(v string) *DeleteVaultNotificationsInput { 4985 s.AccountId = &v 4986 return s 4987 } 4988 4989 // SetVaultName sets the VaultName field's value. 4990 func (s *DeleteVaultNotificationsInput) SetVaultName(v string) *DeleteVaultNotificationsInput { 4991 s.VaultName = &v 4992 return s 4993 } 4994 4995 type DeleteVaultNotificationsOutput struct { 4996 _ struct{} `type:"structure" nopayload:"true"` 4997 } 4998 4999 // String returns the string representation. 5000 // 5001 // API parameter values that are decorated as "sensitive" in the API will not 5002 // be included in the string output. The member name will be present, but the 5003 // value will be replaced with "sensitive". 5004 func (s DeleteVaultNotificationsOutput) String() string { 5005 return awsutil.Prettify(s) 5006 } 5007 5008 // GoString returns the string representation. 5009 // 5010 // API parameter values that are decorated as "sensitive" in the API will not 5011 // be included in the string output. The member name will be present, but the 5012 // value will be replaced with "sensitive". 5013 func (s DeleteVaultNotificationsOutput) GoString() string { 5014 return s.String() 5015 } 5016 5017 type DeleteVaultOutput struct { 5018 _ struct{} `type:"structure" nopayload:"true"` 5019 } 5020 5021 // String returns the string representation. 5022 // 5023 // API parameter values that are decorated as "sensitive" in the API will not 5024 // be included in the string output. The member name will be present, but the 5025 // value will be replaced with "sensitive". 5026 func (s DeleteVaultOutput) String() string { 5027 return awsutil.Prettify(s) 5028 } 5029 5030 // GoString returns the string representation. 5031 // 5032 // API parameter values that are decorated as "sensitive" in the API will not 5033 // be included in the string output. The member name will be present, but the 5034 // value will be replaced with "sensitive". 5035 func (s DeleteVaultOutput) GoString() string { 5036 return s.String() 5037 } 5038 5039 // Provides options for retrieving a job description. 5040 type DescribeJobInput struct { 5041 _ struct{} `type:"structure" nopayload:"true"` 5042 5043 // The AccountId value is the AWS account ID of the account that owns the vault. 5044 // You can either specify an AWS account ID or optionally a single '-' (hyphen), 5045 // in which case Amazon S3 Glacier uses the AWS account ID associated with the 5046 // credentials used to sign the request. If you use an account ID, do not include 5047 // any hyphens ('-') in the ID. 5048 // 5049 // AccountId is a required field 5050 AccountId *string `location:"uri" locationName:"accountId" type:"string" required:"true"` 5051 5052 // The ID of the job to describe. 5053 // 5054 // JobId is a required field 5055 JobId *string `location:"uri" locationName:"jobId" type:"string" required:"true"` 5056 5057 // The name of the vault. 5058 // 5059 // VaultName is a required field 5060 VaultName *string `location:"uri" locationName:"vaultName" type:"string" required:"true"` 5061 } 5062 5063 // String returns the string representation. 5064 // 5065 // API parameter values that are decorated as "sensitive" in the API will not 5066 // be included in the string output. The member name will be present, but the 5067 // value will be replaced with "sensitive". 5068 func (s DescribeJobInput) String() string { 5069 return awsutil.Prettify(s) 5070 } 5071 5072 // GoString returns the string representation. 5073 // 5074 // API parameter values that are decorated as "sensitive" in the API will not 5075 // be included in the string output. The member name will be present, but the 5076 // value will be replaced with "sensitive". 5077 func (s DescribeJobInput) GoString() string { 5078 return s.String() 5079 } 5080 5081 // Validate inspects the fields of the type to determine if they are valid. 5082 func (s *DescribeJobInput) Validate() error { 5083 invalidParams := request.ErrInvalidParams{Context: "DescribeJobInput"} 5084 if s.AccountId == nil { 5085 invalidParams.Add(request.NewErrParamRequired("AccountId")) 5086 } 5087 if s.AccountId != nil && len(*s.AccountId) < 1 { 5088 invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) 5089 } 5090 if s.JobId == nil { 5091 invalidParams.Add(request.NewErrParamRequired("JobId")) 5092 } 5093 if s.JobId != nil && len(*s.JobId) < 1 { 5094 invalidParams.Add(request.NewErrParamMinLen("JobId", 1)) 5095 } 5096 if s.VaultName == nil { 5097 invalidParams.Add(request.NewErrParamRequired("VaultName")) 5098 } 5099 if s.VaultName != nil && len(*s.VaultName) < 1 { 5100 invalidParams.Add(request.NewErrParamMinLen("VaultName", 1)) 5101 } 5102 5103 if invalidParams.Len() > 0 { 5104 return invalidParams 5105 } 5106 return nil 5107 } 5108 5109 // SetAccountId sets the AccountId field's value. 5110 func (s *DescribeJobInput) SetAccountId(v string) *DescribeJobInput { 5111 s.AccountId = &v 5112 return s 5113 } 5114 5115 // SetJobId sets the JobId field's value. 5116 func (s *DescribeJobInput) SetJobId(v string) *DescribeJobInput { 5117 s.JobId = &v 5118 return s 5119 } 5120 5121 // SetVaultName sets the VaultName field's value. 5122 func (s *DescribeJobInput) SetVaultName(v string) *DescribeJobInput { 5123 s.VaultName = &v 5124 return s 5125 } 5126 5127 // Provides options for retrieving metadata for a specific vault in Amazon Glacier. 5128 type DescribeVaultInput struct { 5129 _ struct{} `type:"structure" nopayload:"true"` 5130 5131 // The AccountId value is the AWS account ID of the account that owns the vault. 5132 // You can either specify an AWS account ID or optionally a single '-' (hyphen), 5133 // in which case Amazon S3 Glacier uses the AWS account ID associated with the 5134 // credentials used to sign the request. If you use an account ID, do not include 5135 // any hyphens ('-') in the ID. 5136 // 5137 // AccountId is a required field 5138 AccountId *string `location:"uri" locationName:"accountId" type:"string" required:"true"` 5139 5140 // The name of the vault. 5141 // 5142 // VaultName is a required field 5143 VaultName *string `location:"uri" locationName:"vaultName" type:"string" required:"true"` 5144 } 5145 5146 // String returns the string representation. 5147 // 5148 // API parameter values that are decorated as "sensitive" in the API will not 5149 // be included in the string output. The member name will be present, but the 5150 // value will be replaced with "sensitive". 5151 func (s DescribeVaultInput) String() string { 5152 return awsutil.Prettify(s) 5153 } 5154 5155 // GoString returns the string representation. 5156 // 5157 // API parameter values that are decorated as "sensitive" in the API will not 5158 // be included in the string output. The member name will be present, but the 5159 // value will be replaced with "sensitive". 5160 func (s DescribeVaultInput) GoString() string { 5161 return s.String() 5162 } 5163 5164 // Validate inspects the fields of the type to determine if they are valid. 5165 func (s *DescribeVaultInput) Validate() error { 5166 invalidParams := request.ErrInvalidParams{Context: "DescribeVaultInput"} 5167 if s.AccountId == nil { 5168 invalidParams.Add(request.NewErrParamRequired("AccountId")) 5169 } 5170 if s.AccountId != nil && len(*s.AccountId) < 1 { 5171 invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) 5172 } 5173 if s.VaultName == nil { 5174 invalidParams.Add(request.NewErrParamRequired("VaultName")) 5175 } 5176 if s.VaultName != nil && len(*s.VaultName) < 1 { 5177 invalidParams.Add(request.NewErrParamMinLen("VaultName", 1)) 5178 } 5179 5180 if invalidParams.Len() > 0 { 5181 return invalidParams 5182 } 5183 return nil 5184 } 5185 5186 // SetAccountId sets the AccountId field's value. 5187 func (s *DescribeVaultInput) SetAccountId(v string) *DescribeVaultInput { 5188 s.AccountId = &v 5189 return s 5190 } 5191 5192 // SetVaultName sets the VaultName field's value. 5193 func (s *DescribeVaultInput) SetVaultName(v string) *DescribeVaultInput { 5194 s.VaultName = &v 5195 return s 5196 } 5197 5198 // Contains the Amazon S3 Glacier response to your request. 5199 type DescribeVaultOutput struct { 5200 _ struct{} `type:"structure"` 5201 5202 // The Universal Coordinated Time (UTC) date when the vault was created. This 5203 // value should be a string in the ISO 8601 date format, for example 2012-03-20T17:03:43.221Z. 5204 CreationDate *string `type:"string"` 5205 5206 // The Universal Coordinated Time (UTC) date when Amazon S3 Glacier completed 5207 // the last vault inventory. This value should be a string in the ISO 8601 date 5208 // format, for example 2012-03-20T17:03:43.221Z. 5209 LastInventoryDate *string `type:"string"` 5210 5211 // The number of archives in the vault as of the last inventory date. This field 5212 // will return null if an inventory has not yet run on the vault, for example 5213 // if you just created the vault. 5214 NumberOfArchives *int64 `type:"long"` 5215 5216 // Total size, in bytes, of the archives in the vault as of the last inventory 5217 // date. This field will return null if an inventory has not yet run on the 5218 // vault, for example if you just created the vault. 5219 SizeInBytes *int64 `type:"long"` 5220 5221 // The Amazon Resource Name (ARN) of the vault. 5222 VaultARN *string `type:"string"` 5223 5224 // The name of the vault. 5225 VaultName *string `type:"string"` 5226 } 5227 5228 // String returns the string representation. 5229 // 5230 // API parameter values that are decorated as "sensitive" in the API will not 5231 // be included in the string output. The member name will be present, but the 5232 // value will be replaced with "sensitive". 5233 func (s DescribeVaultOutput) String() string { 5234 return awsutil.Prettify(s) 5235 } 5236 5237 // GoString returns the string representation. 5238 // 5239 // API parameter values that are decorated as "sensitive" in the API will not 5240 // be included in the string output. The member name will be present, but the 5241 // value will be replaced with "sensitive". 5242 func (s DescribeVaultOutput) GoString() string { 5243 return s.String() 5244 } 5245 5246 // SetCreationDate sets the CreationDate field's value. 5247 func (s *DescribeVaultOutput) SetCreationDate(v string) *DescribeVaultOutput { 5248 s.CreationDate = &v 5249 return s 5250 } 5251 5252 // SetLastInventoryDate sets the LastInventoryDate field's value. 5253 func (s *DescribeVaultOutput) SetLastInventoryDate(v string) *DescribeVaultOutput { 5254 s.LastInventoryDate = &v 5255 return s 5256 } 5257 5258 // SetNumberOfArchives sets the NumberOfArchives field's value. 5259 func (s *DescribeVaultOutput) SetNumberOfArchives(v int64) *DescribeVaultOutput { 5260 s.NumberOfArchives = &v 5261 return s 5262 } 5263 5264 // SetSizeInBytes sets the SizeInBytes field's value. 5265 func (s *DescribeVaultOutput) SetSizeInBytes(v int64) *DescribeVaultOutput { 5266 s.SizeInBytes = &v 5267 return s 5268 } 5269 5270 // SetVaultARN sets the VaultARN field's value. 5271 func (s *DescribeVaultOutput) SetVaultARN(v string) *DescribeVaultOutput { 5272 s.VaultARN = &v 5273 return s 5274 } 5275 5276 // SetVaultName sets the VaultName field's value. 5277 func (s *DescribeVaultOutput) SetVaultName(v string) *DescribeVaultOutput { 5278 s.VaultName = &v 5279 return s 5280 } 5281 5282 // Contains information about the encryption used to store the job results in 5283 // Amazon S3. 5284 type Encryption struct { 5285 _ struct{} `type:"structure"` 5286 5287 // The server-side encryption algorithm used when storing job results in Amazon 5288 // S3, for example AES256 or aws:kms. 5289 EncryptionType *string `type:"string" enum:"EncryptionType"` 5290 5291 // Optional. If the encryption type is aws:kms, you can use this value to specify 5292 // the encryption context for the job results. 5293 KMSContext *string `type:"string"` 5294 5295 // The AWS KMS key ID to use for object encryption. All GET and PUT requests 5296 // for an object protected by AWS KMS fail if not made by using Secure Sockets 5297 // Layer (SSL) or Signature Version 4. 5298 KMSKeyId *string `type:"string"` 5299 } 5300 5301 // String returns the string representation. 5302 // 5303 // API parameter values that are decorated as "sensitive" in the API will not 5304 // be included in the string output. The member name will be present, but the 5305 // value will be replaced with "sensitive". 5306 func (s Encryption) String() string { 5307 return awsutil.Prettify(s) 5308 } 5309 5310 // GoString returns the string representation. 5311 // 5312 // API parameter values that are decorated as "sensitive" in the API will not 5313 // be included in the string output. The member name will be present, but the 5314 // value will be replaced with "sensitive". 5315 func (s Encryption) GoString() string { 5316 return s.String() 5317 } 5318 5319 // SetEncryptionType sets the EncryptionType field's value. 5320 func (s *Encryption) SetEncryptionType(v string) *Encryption { 5321 s.EncryptionType = &v 5322 return s 5323 } 5324 5325 // SetKMSContext sets the KMSContext field's value. 5326 func (s *Encryption) SetKMSContext(v string) *Encryption { 5327 s.KMSContext = &v 5328 return s 5329 } 5330 5331 // SetKMSKeyId sets the KMSKeyId field's value. 5332 func (s *Encryption) SetKMSKeyId(v string) *Encryption { 5333 s.KMSKeyId = &v 5334 return s 5335 } 5336 5337 // Input for GetDataRetrievalPolicy. 5338 type GetDataRetrievalPolicyInput struct { 5339 _ struct{} `type:"structure" nopayload:"true"` 5340 5341 // The AccountId value is the AWS account ID. This value must match the AWS 5342 // account ID associated with the credentials used to sign the request. You 5343 // can either specify an AWS account ID or optionally a single '-' (hyphen), 5344 // in which case Amazon Glacier uses the AWS account ID associated with the 5345 // credentials used to sign the request. If you specify your account ID, do 5346 // not include any hyphens ('-') in the ID. 5347 // 5348 // AccountId is a required field 5349 AccountId *string `location:"uri" locationName:"accountId" type:"string" required:"true"` 5350 } 5351 5352 // String returns the string representation. 5353 // 5354 // API parameter values that are decorated as "sensitive" in the API will not 5355 // be included in the string output. The member name will be present, but the 5356 // value will be replaced with "sensitive". 5357 func (s GetDataRetrievalPolicyInput) String() string { 5358 return awsutil.Prettify(s) 5359 } 5360 5361 // GoString returns the string representation. 5362 // 5363 // API parameter values that are decorated as "sensitive" in the API will not 5364 // be included in the string output. The member name will be present, but the 5365 // value will be replaced with "sensitive". 5366 func (s GetDataRetrievalPolicyInput) GoString() string { 5367 return s.String() 5368 } 5369 5370 // Validate inspects the fields of the type to determine if they are valid. 5371 func (s *GetDataRetrievalPolicyInput) Validate() error { 5372 invalidParams := request.ErrInvalidParams{Context: "GetDataRetrievalPolicyInput"} 5373 if s.AccountId == nil { 5374 invalidParams.Add(request.NewErrParamRequired("AccountId")) 5375 } 5376 if s.AccountId != nil && len(*s.AccountId) < 1 { 5377 invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) 5378 } 5379 5380 if invalidParams.Len() > 0 { 5381 return invalidParams 5382 } 5383 return nil 5384 } 5385 5386 // SetAccountId sets the AccountId field's value. 5387 func (s *GetDataRetrievalPolicyInput) SetAccountId(v string) *GetDataRetrievalPolicyInput { 5388 s.AccountId = &v 5389 return s 5390 } 5391 5392 // Contains the Amazon S3 Glacier response to the GetDataRetrievalPolicy request. 5393 type GetDataRetrievalPolicyOutput struct { 5394 _ struct{} `type:"structure"` 5395 5396 // Contains the returned data retrieval policy in JSON format. 5397 Policy *DataRetrievalPolicy `type:"structure"` 5398 } 5399 5400 // String returns the string representation. 5401 // 5402 // API parameter values that are decorated as "sensitive" in the API will not 5403 // be included in the string output. The member name will be present, but the 5404 // value will be replaced with "sensitive". 5405 func (s GetDataRetrievalPolicyOutput) String() string { 5406 return awsutil.Prettify(s) 5407 } 5408 5409 // GoString returns the string representation. 5410 // 5411 // API parameter values that are decorated as "sensitive" in the API will not 5412 // be included in the string output. The member name will be present, but the 5413 // value will be replaced with "sensitive". 5414 func (s GetDataRetrievalPolicyOutput) GoString() string { 5415 return s.String() 5416 } 5417 5418 // SetPolicy sets the Policy field's value. 5419 func (s *GetDataRetrievalPolicyOutput) SetPolicy(v *DataRetrievalPolicy) *GetDataRetrievalPolicyOutput { 5420 s.Policy = v 5421 return s 5422 } 5423 5424 // Provides options for downloading output of an Amazon S3 Glacier job. 5425 type GetJobOutputInput struct { 5426 _ struct{} `type:"structure" nopayload:"true"` 5427 5428 // The AccountId value is the AWS account ID of the account that owns the vault. 5429 // You can either specify an AWS account ID or optionally a single '-' (hyphen), 5430 // in which case Amazon S3 Glacier uses the AWS account ID associated with the 5431 // credentials used to sign the request. If you use an account ID, do not include 5432 // any hyphens ('-') in the ID. 5433 // 5434 // AccountId is a required field 5435 AccountId *string `location:"uri" locationName:"accountId" type:"string" required:"true"` 5436 5437 // The job ID whose data is downloaded. 5438 // 5439 // JobId is a required field 5440 JobId *string `location:"uri" locationName:"jobId" type:"string" required:"true"` 5441 5442 // The range of bytes to retrieve from the output. For example, if you want 5443 // to download the first 1,048,576 bytes, specify the range as bytes=0-1048575. 5444 // By default, this operation downloads the entire output. 5445 // 5446 // If the job output is large, then you can use a range to retrieve a portion 5447 // of the output. This allows you to download the entire output in smaller chunks 5448 // of bytes. For example, suppose you have 1 GB of job output you want to download 5449 // and you decide to download 128 MB chunks of data at a time, which is a total 5450 // of eight Get Job Output requests. You use the following process to download 5451 // the job output: 5452 // 5453 // Download a 128 MB chunk of output by specifying the appropriate byte range. 5454 // Verify that all 128 MB of data was received. 5455 // 5456 // Along with the data, the response includes a SHA256 tree hash of the payload. 5457 // You compute the checksum of the payload on the client and compare it with 5458 // the checksum you received in the response to ensure you received all the 5459 // expected data. 5460 // 5461 // Repeat steps 1 and 2 for all the eight 128 MB chunks of output data, each 5462 // time specifying the appropriate byte range. 5463 // 5464 // After downloading all the parts of the job output, you have a list of eight 5465 // checksum values. Compute the tree hash of these values to find the checksum 5466 // of the entire output. Using the DescribeJob API, obtain job information of 5467 // the job that provided you the output. The response includes the checksum 5468 // of the entire archive stored in Amazon S3 Glacier. You compare this value 5469 // with the checksum you computed to ensure you have downloaded the entire archive 5470 // content with no errors. 5471 Range *string `location:"header" locationName:"Range" type:"string"` 5472 5473 // The name of the vault. 5474 // 5475 // VaultName is a required field 5476 VaultName *string `location:"uri" locationName:"vaultName" type:"string" required:"true"` 5477 } 5478 5479 // String returns the string representation. 5480 // 5481 // API parameter values that are decorated as "sensitive" in the API will not 5482 // be included in the string output. The member name will be present, but the 5483 // value will be replaced with "sensitive". 5484 func (s GetJobOutputInput) String() string { 5485 return awsutil.Prettify(s) 5486 } 5487 5488 // GoString returns the string representation. 5489 // 5490 // API parameter values that are decorated as "sensitive" in the API will not 5491 // be included in the string output. The member name will be present, but the 5492 // value will be replaced with "sensitive". 5493 func (s GetJobOutputInput) GoString() string { 5494 return s.String() 5495 } 5496 5497 // Validate inspects the fields of the type to determine if they are valid. 5498 func (s *GetJobOutputInput) Validate() error { 5499 invalidParams := request.ErrInvalidParams{Context: "GetJobOutputInput"} 5500 if s.AccountId == nil { 5501 invalidParams.Add(request.NewErrParamRequired("AccountId")) 5502 } 5503 if s.AccountId != nil && len(*s.AccountId) < 1 { 5504 invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) 5505 } 5506 if s.JobId == nil { 5507 invalidParams.Add(request.NewErrParamRequired("JobId")) 5508 } 5509 if s.JobId != nil && len(*s.JobId) < 1 { 5510 invalidParams.Add(request.NewErrParamMinLen("JobId", 1)) 5511 } 5512 if s.VaultName == nil { 5513 invalidParams.Add(request.NewErrParamRequired("VaultName")) 5514 } 5515 if s.VaultName != nil && len(*s.VaultName) < 1 { 5516 invalidParams.Add(request.NewErrParamMinLen("VaultName", 1)) 5517 } 5518 5519 if invalidParams.Len() > 0 { 5520 return invalidParams 5521 } 5522 return nil 5523 } 5524 5525 // SetAccountId sets the AccountId field's value. 5526 func (s *GetJobOutputInput) SetAccountId(v string) *GetJobOutputInput { 5527 s.AccountId = &v 5528 return s 5529 } 5530 5531 // SetJobId sets the JobId field's value. 5532 func (s *GetJobOutputInput) SetJobId(v string) *GetJobOutputInput { 5533 s.JobId = &v 5534 return s 5535 } 5536 5537 // SetRange sets the Range field's value. 5538 func (s *GetJobOutputInput) SetRange(v string) *GetJobOutputInput { 5539 s.Range = &v 5540 return s 5541 } 5542 5543 // SetVaultName sets the VaultName field's value. 5544 func (s *GetJobOutputInput) SetVaultName(v string) *GetJobOutputInput { 5545 s.VaultName = &v 5546 return s 5547 } 5548 5549 // Contains the Amazon S3 Glacier response to your request. 5550 type GetJobOutputOutput struct { 5551 _ struct{} `type:"structure" payload:"Body"` 5552 5553 // Indicates the range units accepted. For more information, see RFC2616 (http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html). 5554 AcceptRanges *string `location:"header" locationName:"Accept-Ranges" type:"string"` 5555 5556 // The description of an archive. 5557 ArchiveDescription *string `location:"header" locationName:"x-amz-archive-description" type:"string"` 5558 5559 // The job data, either archive data or inventory data. 5560 Body io.ReadCloser `locationName:"body" type:"blob"` 5561 5562 // The checksum of the data in the response. This header is returned only when 5563 // retrieving the output for an archive retrieval job. Furthermore, this header 5564 // appears only under the following conditions: 5565 // 5566 // * You get the entire range of the archive. 5567 // 5568 // * You request a range to return of the archive that starts and ends on 5569 // a multiple of 1 MB. For example, if you have an 3.1 MB archive and you 5570 // specify a range to return that starts at 1 MB and ends at 2 MB, then the 5571 // x-amz-sha256-tree-hash is returned as a response header. 5572 // 5573 // * You request a range of the archive to return that starts on a multiple 5574 // of 1 MB and goes to the end of the archive. For example, if you have a 5575 // 3.1 MB archive and you specify a range that starts at 2 MB and ends at 5576 // 3.1 MB (the end of the archive), then the x-amz-sha256-tree-hash is returned 5577 // as a response header. 5578 Checksum *string `location:"header" locationName:"x-amz-sha256-tree-hash" type:"string"` 5579 5580 // The range of bytes returned by Amazon S3 Glacier. If only partial output 5581 // is downloaded, the response provides the range of bytes Amazon S3 Glacier 5582 // returned. For example, bytes 0-1048575/8388608 returns the first 1 MB from 5583 // 8 MB. 5584 ContentRange *string `location:"header" locationName:"Content-Range" type:"string"` 5585 5586 // The Content-Type depends on whether the job output is an archive or a vault 5587 // inventory. For archive data, the Content-Type is application/octet-stream. 5588 // For vault inventory, if you requested CSV format when you initiated the job, 5589 // the Content-Type is text/csv. Otherwise, by default, vault inventory is returned 5590 // as JSON, and the Content-Type is application/json. 5591 ContentType *string `location:"header" locationName:"Content-Type" type:"string"` 5592 5593 // The HTTP response code for a job output request. The value depends on whether 5594 // a range was specified in the request. 5595 Status *int64 `location:"statusCode" locationName:"status" type:"integer"` 5596 } 5597 5598 // String returns the string representation. 5599 // 5600 // API parameter values that are decorated as "sensitive" in the API will not 5601 // be included in the string output. The member name will be present, but the 5602 // value will be replaced with "sensitive". 5603 func (s GetJobOutputOutput) String() string { 5604 return awsutil.Prettify(s) 5605 } 5606 5607 // GoString returns the string representation. 5608 // 5609 // API parameter values that are decorated as "sensitive" in the API will not 5610 // be included in the string output. The member name will be present, but the 5611 // value will be replaced with "sensitive". 5612 func (s GetJobOutputOutput) GoString() string { 5613 return s.String() 5614 } 5615 5616 // SetAcceptRanges sets the AcceptRanges field's value. 5617 func (s *GetJobOutputOutput) SetAcceptRanges(v string) *GetJobOutputOutput { 5618 s.AcceptRanges = &v 5619 return s 5620 } 5621 5622 // SetArchiveDescription sets the ArchiveDescription field's value. 5623 func (s *GetJobOutputOutput) SetArchiveDescription(v string) *GetJobOutputOutput { 5624 s.ArchiveDescription = &v 5625 return s 5626 } 5627 5628 // SetBody sets the Body field's value. 5629 func (s *GetJobOutputOutput) SetBody(v io.ReadCloser) *GetJobOutputOutput { 5630 s.Body = v 5631 return s 5632 } 5633 5634 // SetChecksum sets the Checksum field's value. 5635 func (s *GetJobOutputOutput) SetChecksum(v string) *GetJobOutputOutput { 5636 s.Checksum = &v 5637 return s 5638 } 5639 5640 // SetContentRange sets the ContentRange field's value. 5641 func (s *GetJobOutputOutput) SetContentRange(v string) *GetJobOutputOutput { 5642 s.ContentRange = &v 5643 return s 5644 } 5645 5646 // SetContentType sets the ContentType field's value. 5647 func (s *GetJobOutputOutput) SetContentType(v string) *GetJobOutputOutput { 5648 s.ContentType = &v 5649 return s 5650 } 5651 5652 // SetStatus sets the Status field's value. 5653 func (s *GetJobOutputOutput) SetStatus(v int64) *GetJobOutputOutput { 5654 s.Status = &v 5655 return s 5656 } 5657 5658 // Input for GetVaultAccessPolicy. 5659 type GetVaultAccessPolicyInput struct { 5660 _ struct{} `type:"structure" nopayload:"true"` 5661 5662 // The AccountId value is the AWS account ID of the account that owns the vault. 5663 // You can either specify an AWS account ID or optionally a single '-' (hyphen), 5664 // in which case Amazon S3 Glacier uses the AWS account ID associated with the 5665 // credentials used to sign the request. If you use an account ID, do not include 5666 // any hyphens ('-') in the ID. 5667 // 5668 // AccountId is a required field 5669 AccountId *string `location:"uri" locationName:"accountId" type:"string" required:"true"` 5670 5671 // The name of the vault. 5672 // 5673 // VaultName is a required field 5674 VaultName *string `location:"uri" locationName:"vaultName" type:"string" required:"true"` 5675 } 5676 5677 // String returns the string representation. 5678 // 5679 // API parameter values that are decorated as "sensitive" in the API will not 5680 // be included in the string output. The member name will be present, but the 5681 // value will be replaced with "sensitive". 5682 func (s GetVaultAccessPolicyInput) String() string { 5683 return awsutil.Prettify(s) 5684 } 5685 5686 // GoString returns the string representation. 5687 // 5688 // API parameter values that are decorated as "sensitive" in the API will not 5689 // be included in the string output. The member name will be present, but the 5690 // value will be replaced with "sensitive". 5691 func (s GetVaultAccessPolicyInput) GoString() string { 5692 return s.String() 5693 } 5694 5695 // Validate inspects the fields of the type to determine if they are valid. 5696 func (s *GetVaultAccessPolicyInput) Validate() error { 5697 invalidParams := request.ErrInvalidParams{Context: "GetVaultAccessPolicyInput"} 5698 if s.AccountId == nil { 5699 invalidParams.Add(request.NewErrParamRequired("AccountId")) 5700 } 5701 if s.AccountId != nil && len(*s.AccountId) < 1 { 5702 invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) 5703 } 5704 if s.VaultName == nil { 5705 invalidParams.Add(request.NewErrParamRequired("VaultName")) 5706 } 5707 if s.VaultName != nil && len(*s.VaultName) < 1 { 5708 invalidParams.Add(request.NewErrParamMinLen("VaultName", 1)) 5709 } 5710 5711 if invalidParams.Len() > 0 { 5712 return invalidParams 5713 } 5714 return nil 5715 } 5716 5717 // SetAccountId sets the AccountId field's value. 5718 func (s *GetVaultAccessPolicyInput) SetAccountId(v string) *GetVaultAccessPolicyInput { 5719 s.AccountId = &v 5720 return s 5721 } 5722 5723 // SetVaultName sets the VaultName field's value. 5724 func (s *GetVaultAccessPolicyInput) SetVaultName(v string) *GetVaultAccessPolicyInput { 5725 s.VaultName = &v 5726 return s 5727 } 5728 5729 // Output for GetVaultAccessPolicy. 5730 type GetVaultAccessPolicyOutput struct { 5731 _ struct{} `type:"structure" payload:"Policy"` 5732 5733 // Contains the returned vault access policy as a JSON string. 5734 Policy *VaultAccessPolicy `locationName:"policy" type:"structure"` 5735 } 5736 5737 // String returns the string representation. 5738 // 5739 // API parameter values that are decorated as "sensitive" in the API will not 5740 // be included in the string output. The member name will be present, but the 5741 // value will be replaced with "sensitive". 5742 func (s GetVaultAccessPolicyOutput) String() string { 5743 return awsutil.Prettify(s) 5744 } 5745 5746 // GoString returns the string representation. 5747 // 5748 // API parameter values that are decorated as "sensitive" in the API will not 5749 // be included in the string output. The member name will be present, but the 5750 // value will be replaced with "sensitive". 5751 func (s GetVaultAccessPolicyOutput) GoString() string { 5752 return s.String() 5753 } 5754 5755 // SetPolicy sets the Policy field's value. 5756 func (s *GetVaultAccessPolicyOutput) SetPolicy(v *VaultAccessPolicy) *GetVaultAccessPolicyOutput { 5757 s.Policy = v 5758 return s 5759 } 5760 5761 // The input values for GetVaultLock. 5762 type GetVaultLockInput struct { 5763 _ struct{} `type:"structure" nopayload:"true"` 5764 5765 // The AccountId value is the AWS account ID of the account that owns the vault. 5766 // You can either specify an AWS account ID or optionally a single '-' (hyphen), 5767 // in which case Amazon S3 Glacier uses the AWS account ID associated with the 5768 // credentials used to sign the request. If you use an account ID, do not include 5769 // any hyphens ('-') in the ID. 5770 // 5771 // AccountId is a required field 5772 AccountId *string `location:"uri" locationName:"accountId" type:"string" required:"true"` 5773 5774 // The name of the vault. 5775 // 5776 // VaultName is a required field 5777 VaultName *string `location:"uri" locationName:"vaultName" type:"string" required:"true"` 5778 } 5779 5780 // String returns the string representation. 5781 // 5782 // API parameter values that are decorated as "sensitive" in the API will not 5783 // be included in the string output. The member name will be present, but the 5784 // value will be replaced with "sensitive". 5785 func (s GetVaultLockInput) String() string { 5786 return awsutil.Prettify(s) 5787 } 5788 5789 // GoString returns the string representation. 5790 // 5791 // API parameter values that are decorated as "sensitive" in the API will not 5792 // be included in the string output. The member name will be present, but the 5793 // value will be replaced with "sensitive". 5794 func (s GetVaultLockInput) GoString() string { 5795 return s.String() 5796 } 5797 5798 // Validate inspects the fields of the type to determine if they are valid. 5799 func (s *GetVaultLockInput) Validate() error { 5800 invalidParams := request.ErrInvalidParams{Context: "GetVaultLockInput"} 5801 if s.AccountId == nil { 5802 invalidParams.Add(request.NewErrParamRequired("AccountId")) 5803 } 5804 if s.AccountId != nil && len(*s.AccountId) < 1 { 5805 invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) 5806 } 5807 if s.VaultName == nil { 5808 invalidParams.Add(request.NewErrParamRequired("VaultName")) 5809 } 5810 if s.VaultName != nil && len(*s.VaultName) < 1 { 5811 invalidParams.Add(request.NewErrParamMinLen("VaultName", 1)) 5812 } 5813 5814 if invalidParams.Len() > 0 { 5815 return invalidParams 5816 } 5817 return nil 5818 } 5819 5820 // SetAccountId sets the AccountId field's value. 5821 func (s *GetVaultLockInput) SetAccountId(v string) *GetVaultLockInput { 5822 s.AccountId = &v 5823 return s 5824 } 5825 5826 // SetVaultName sets the VaultName field's value. 5827 func (s *GetVaultLockInput) SetVaultName(v string) *GetVaultLockInput { 5828 s.VaultName = &v 5829 return s 5830 } 5831 5832 // Contains the Amazon S3 Glacier response to your request. 5833 type GetVaultLockOutput struct { 5834 _ struct{} `type:"structure"` 5835 5836 // The UTC date and time at which the vault lock was put into the InProgress 5837 // state. 5838 CreationDate *string `type:"string"` 5839 5840 // The UTC date and time at which the lock ID expires. This value can be null 5841 // if the vault lock is in a Locked state. 5842 ExpirationDate *string `type:"string"` 5843 5844 // The vault lock policy as a JSON string, which uses "\" as an escape character. 5845 Policy *string `type:"string"` 5846 5847 // The state of the vault lock. InProgress or Locked. 5848 State *string `type:"string"` 5849 } 5850 5851 // String returns the string representation. 5852 // 5853 // API parameter values that are decorated as "sensitive" in the API will not 5854 // be included in the string output. The member name will be present, but the 5855 // value will be replaced with "sensitive". 5856 func (s GetVaultLockOutput) String() string { 5857 return awsutil.Prettify(s) 5858 } 5859 5860 // GoString returns the string representation. 5861 // 5862 // API parameter values that are decorated as "sensitive" in the API will not 5863 // be included in the string output. The member name will be present, but the 5864 // value will be replaced with "sensitive". 5865 func (s GetVaultLockOutput) GoString() string { 5866 return s.String() 5867 } 5868 5869 // SetCreationDate sets the CreationDate field's value. 5870 func (s *GetVaultLockOutput) SetCreationDate(v string) *GetVaultLockOutput { 5871 s.CreationDate = &v 5872 return s 5873 } 5874 5875 // SetExpirationDate sets the ExpirationDate field's value. 5876 func (s *GetVaultLockOutput) SetExpirationDate(v string) *GetVaultLockOutput { 5877 s.ExpirationDate = &v 5878 return s 5879 } 5880 5881 // SetPolicy sets the Policy field's value. 5882 func (s *GetVaultLockOutput) SetPolicy(v string) *GetVaultLockOutput { 5883 s.Policy = &v 5884 return s 5885 } 5886 5887 // SetState sets the State field's value. 5888 func (s *GetVaultLockOutput) SetState(v string) *GetVaultLockOutput { 5889 s.State = &v 5890 return s 5891 } 5892 5893 // Provides options for retrieving the notification configuration set on an 5894 // Amazon Glacier vault. 5895 type GetVaultNotificationsInput struct { 5896 _ struct{} `type:"structure" nopayload:"true"` 5897 5898 // The AccountId value is the AWS account ID of the account that owns the vault. 5899 // You can either specify an AWS account ID or optionally a single '-' (hyphen), 5900 // in which case Amazon S3 Glacier uses the AWS account ID associated with the 5901 // credentials used to sign the request. If you use an account ID, do not include 5902 // any hyphens ('-') in the ID. 5903 // 5904 // AccountId is a required field 5905 AccountId *string `location:"uri" locationName:"accountId" type:"string" required:"true"` 5906 5907 // The name of the vault. 5908 // 5909 // VaultName is a required field 5910 VaultName *string `location:"uri" locationName:"vaultName" type:"string" required:"true"` 5911 } 5912 5913 // String returns the string representation. 5914 // 5915 // API parameter values that are decorated as "sensitive" in the API will not 5916 // be included in the string output. The member name will be present, but the 5917 // value will be replaced with "sensitive". 5918 func (s GetVaultNotificationsInput) String() string { 5919 return awsutil.Prettify(s) 5920 } 5921 5922 // GoString returns the string representation. 5923 // 5924 // API parameter values that are decorated as "sensitive" in the API will not 5925 // be included in the string output. The member name will be present, but the 5926 // value will be replaced with "sensitive". 5927 func (s GetVaultNotificationsInput) GoString() string { 5928 return s.String() 5929 } 5930 5931 // Validate inspects the fields of the type to determine if they are valid. 5932 func (s *GetVaultNotificationsInput) Validate() error { 5933 invalidParams := request.ErrInvalidParams{Context: "GetVaultNotificationsInput"} 5934 if s.AccountId == nil { 5935 invalidParams.Add(request.NewErrParamRequired("AccountId")) 5936 } 5937 if s.AccountId != nil && len(*s.AccountId) < 1 { 5938 invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) 5939 } 5940 if s.VaultName == nil { 5941 invalidParams.Add(request.NewErrParamRequired("VaultName")) 5942 } 5943 if s.VaultName != nil && len(*s.VaultName) < 1 { 5944 invalidParams.Add(request.NewErrParamMinLen("VaultName", 1)) 5945 } 5946 5947 if invalidParams.Len() > 0 { 5948 return invalidParams 5949 } 5950 return nil 5951 } 5952 5953 // SetAccountId sets the AccountId field's value. 5954 func (s *GetVaultNotificationsInput) SetAccountId(v string) *GetVaultNotificationsInput { 5955 s.AccountId = &v 5956 return s 5957 } 5958 5959 // SetVaultName sets the VaultName field's value. 5960 func (s *GetVaultNotificationsInput) SetVaultName(v string) *GetVaultNotificationsInput { 5961 s.VaultName = &v 5962 return s 5963 } 5964 5965 // Contains the Amazon S3 Glacier response to your request. 5966 type GetVaultNotificationsOutput struct { 5967 _ struct{} `type:"structure" payload:"VaultNotificationConfig"` 5968 5969 // Returns the notification configuration set on the vault. 5970 VaultNotificationConfig *VaultNotificationConfig `locationName:"vaultNotificationConfig" type:"structure"` 5971 } 5972 5973 // String returns the string representation. 5974 // 5975 // API parameter values that are decorated as "sensitive" in the API will not 5976 // be included in the string output. The member name will be present, but the 5977 // value will be replaced with "sensitive". 5978 func (s GetVaultNotificationsOutput) String() string { 5979 return awsutil.Prettify(s) 5980 } 5981 5982 // GoString returns the string representation. 5983 // 5984 // API parameter values that are decorated as "sensitive" in the API will not 5985 // be included in the string output. The member name will be present, but the 5986 // value will be replaced with "sensitive". 5987 func (s GetVaultNotificationsOutput) GoString() string { 5988 return s.String() 5989 } 5990 5991 // SetVaultNotificationConfig sets the VaultNotificationConfig field's value. 5992 func (s *GetVaultNotificationsOutput) SetVaultNotificationConfig(v *VaultNotificationConfig) *GetVaultNotificationsOutput { 5993 s.VaultNotificationConfig = v 5994 return s 5995 } 5996 5997 // Contains information about a grant. 5998 type Grant struct { 5999 _ struct{} `type:"structure"` 6000 6001 // The grantee. 6002 Grantee *Grantee `type:"structure"` 6003 6004 // Specifies the permission given to the grantee. 6005 Permission *string `type:"string" enum:"Permission"` 6006 } 6007 6008 // String returns the string representation. 6009 // 6010 // API parameter values that are decorated as "sensitive" in the API will not 6011 // be included in the string output. The member name will be present, but the 6012 // value will be replaced with "sensitive". 6013 func (s Grant) String() string { 6014 return awsutil.Prettify(s) 6015 } 6016 6017 // GoString returns the string representation. 6018 // 6019 // API parameter values that are decorated as "sensitive" in the API will not 6020 // be included in the string output. The member name will be present, but the 6021 // value will be replaced with "sensitive". 6022 func (s Grant) GoString() string { 6023 return s.String() 6024 } 6025 6026 // Validate inspects the fields of the type to determine if they are valid. 6027 func (s *Grant) Validate() error { 6028 invalidParams := request.ErrInvalidParams{Context: "Grant"} 6029 if s.Grantee != nil { 6030 if err := s.Grantee.Validate(); err != nil { 6031 invalidParams.AddNested("Grantee", err.(request.ErrInvalidParams)) 6032 } 6033 } 6034 6035 if invalidParams.Len() > 0 { 6036 return invalidParams 6037 } 6038 return nil 6039 } 6040 6041 // SetGrantee sets the Grantee field's value. 6042 func (s *Grant) SetGrantee(v *Grantee) *Grant { 6043 s.Grantee = v 6044 return s 6045 } 6046 6047 // SetPermission sets the Permission field's value. 6048 func (s *Grant) SetPermission(v string) *Grant { 6049 s.Permission = &v 6050 return s 6051 } 6052 6053 // Contains information about the grantee. 6054 type Grantee struct { 6055 _ struct{} `type:"structure"` 6056 6057 // Screen name of the grantee. 6058 DisplayName *string `type:"string"` 6059 6060 // Email address of the grantee. 6061 EmailAddress *string `type:"string"` 6062 6063 // The canonical user ID of the grantee. 6064 ID *string `type:"string"` 6065 6066 // Type of grantee 6067 // 6068 // Type is a required field 6069 Type *string `type:"string" required:"true" enum:"Type"` 6070 6071 // URI of the grantee group. 6072 URI *string `type:"string"` 6073 } 6074 6075 // String returns the string representation. 6076 // 6077 // API parameter values that are decorated as "sensitive" in the API will not 6078 // be included in the string output. The member name will be present, but the 6079 // value will be replaced with "sensitive". 6080 func (s Grantee) String() string { 6081 return awsutil.Prettify(s) 6082 } 6083 6084 // GoString returns the string representation. 6085 // 6086 // API parameter values that are decorated as "sensitive" in the API will not 6087 // be included in the string output. The member name will be present, but the 6088 // value will be replaced with "sensitive". 6089 func (s Grantee) GoString() string { 6090 return s.String() 6091 } 6092 6093 // Validate inspects the fields of the type to determine if they are valid. 6094 func (s *Grantee) Validate() error { 6095 invalidParams := request.ErrInvalidParams{Context: "Grantee"} 6096 if s.Type == nil { 6097 invalidParams.Add(request.NewErrParamRequired("Type")) 6098 } 6099 6100 if invalidParams.Len() > 0 { 6101 return invalidParams 6102 } 6103 return nil 6104 } 6105 6106 // SetDisplayName sets the DisplayName field's value. 6107 func (s *Grantee) SetDisplayName(v string) *Grantee { 6108 s.DisplayName = &v 6109 return s 6110 } 6111 6112 // SetEmailAddress sets the EmailAddress field's value. 6113 func (s *Grantee) SetEmailAddress(v string) *Grantee { 6114 s.EmailAddress = &v 6115 return s 6116 } 6117 6118 // SetID sets the ID field's value. 6119 func (s *Grantee) SetID(v string) *Grantee { 6120 s.ID = &v 6121 return s 6122 } 6123 6124 // SetType sets the Type field's value. 6125 func (s *Grantee) SetType(v string) *Grantee { 6126 s.Type = &v 6127 return s 6128 } 6129 6130 // SetURI sets the URI field's value. 6131 func (s *Grantee) SetURI(v string) *Grantee { 6132 s.URI = &v 6133 return s 6134 } 6135 6136 // Provides options for initiating an Amazon S3 Glacier job. 6137 type InitiateJobInput struct { 6138 _ struct{} `type:"structure" payload:"JobParameters"` 6139 6140 // The AccountId value is the AWS account ID of the account that owns the vault. 6141 // You can either specify an AWS account ID or optionally a single '-' (hyphen), 6142 // in which case Amazon S3 Glacier uses the AWS account ID associated with the 6143 // credentials used to sign the request. If you use an account ID, do not include 6144 // any hyphens ('-') in the ID. 6145 // 6146 // AccountId is a required field 6147 AccountId *string `location:"uri" locationName:"accountId" type:"string" required:"true"` 6148 6149 // Provides options for specifying job information. 6150 JobParameters *JobParameters `locationName:"jobParameters" type:"structure"` 6151 6152 // The name of the vault. 6153 // 6154 // VaultName is a required field 6155 VaultName *string `location:"uri" locationName:"vaultName" type:"string" required:"true"` 6156 } 6157 6158 // String returns the string representation. 6159 // 6160 // API parameter values that are decorated as "sensitive" in the API will not 6161 // be included in the string output. The member name will be present, but the 6162 // value will be replaced with "sensitive". 6163 func (s InitiateJobInput) String() string { 6164 return awsutil.Prettify(s) 6165 } 6166 6167 // GoString returns the string representation. 6168 // 6169 // API parameter values that are decorated as "sensitive" in the API will not 6170 // be included in the string output. The member name will be present, but the 6171 // value will be replaced with "sensitive". 6172 func (s InitiateJobInput) GoString() string { 6173 return s.String() 6174 } 6175 6176 // Validate inspects the fields of the type to determine if they are valid. 6177 func (s *InitiateJobInput) Validate() error { 6178 invalidParams := request.ErrInvalidParams{Context: "InitiateJobInput"} 6179 if s.AccountId == nil { 6180 invalidParams.Add(request.NewErrParamRequired("AccountId")) 6181 } 6182 if s.AccountId != nil && len(*s.AccountId) < 1 { 6183 invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) 6184 } 6185 if s.VaultName == nil { 6186 invalidParams.Add(request.NewErrParamRequired("VaultName")) 6187 } 6188 if s.VaultName != nil && len(*s.VaultName) < 1 { 6189 invalidParams.Add(request.NewErrParamMinLen("VaultName", 1)) 6190 } 6191 if s.JobParameters != nil { 6192 if err := s.JobParameters.Validate(); err != nil { 6193 invalidParams.AddNested("JobParameters", err.(request.ErrInvalidParams)) 6194 } 6195 } 6196 6197 if invalidParams.Len() > 0 { 6198 return invalidParams 6199 } 6200 return nil 6201 } 6202 6203 // SetAccountId sets the AccountId field's value. 6204 func (s *InitiateJobInput) SetAccountId(v string) *InitiateJobInput { 6205 s.AccountId = &v 6206 return s 6207 } 6208 6209 // SetJobParameters sets the JobParameters field's value. 6210 func (s *InitiateJobInput) SetJobParameters(v *JobParameters) *InitiateJobInput { 6211 s.JobParameters = v 6212 return s 6213 } 6214 6215 // SetVaultName sets the VaultName field's value. 6216 func (s *InitiateJobInput) SetVaultName(v string) *InitiateJobInput { 6217 s.VaultName = &v 6218 return s 6219 } 6220 6221 // Contains the Amazon S3 Glacier response to your request. 6222 type InitiateJobOutput struct { 6223 _ struct{} `type:"structure" nopayload:"true"` 6224 6225 // The ID of the job. 6226 JobId *string `location:"header" locationName:"x-amz-job-id" type:"string"` 6227 6228 // The path to the location of where the select results are stored. 6229 JobOutputPath *string `location:"header" locationName:"x-amz-job-output-path" type:"string"` 6230 6231 // The relative URI path of the job. 6232 Location *string `location:"header" locationName:"Location" type:"string"` 6233 } 6234 6235 // String returns the string representation. 6236 // 6237 // API parameter values that are decorated as "sensitive" in the API will not 6238 // be included in the string output. The member name will be present, but the 6239 // value will be replaced with "sensitive". 6240 func (s InitiateJobOutput) String() string { 6241 return awsutil.Prettify(s) 6242 } 6243 6244 // GoString returns the string representation. 6245 // 6246 // API parameter values that are decorated as "sensitive" in the API will not 6247 // be included in the string output. The member name will be present, but the 6248 // value will be replaced with "sensitive". 6249 func (s InitiateJobOutput) GoString() string { 6250 return s.String() 6251 } 6252 6253 // SetJobId sets the JobId field's value. 6254 func (s *InitiateJobOutput) SetJobId(v string) *InitiateJobOutput { 6255 s.JobId = &v 6256 return s 6257 } 6258 6259 // SetJobOutputPath sets the JobOutputPath field's value. 6260 func (s *InitiateJobOutput) SetJobOutputPath(v string) *InitiateJobOutput { 6261 s.JobOutputPath = &v 6262 return s 6263 } 6264 6265 // SetLocation sets the Location field's value. 6266 func (s *InitiateJobOutput) SetLocation(v string) *InitiateJobOutput { 6267 s.Location = &v 6268 return s 6269 } 6270 6271 // Provides options for initiating a multipart upload to an Amazon S3 Glacier 6272 // vault. 6273 type InitiateMultipartUploadInput struct { 6274 _ struct{} `type:"structure" nopayload:"true"` 6275 6276 // The AccountId value is the AWS account ID of the account that owns the vault. 6277 // You can either specify an AWS account ID or optionally a single '-' (hyphen), 6278 // in which case Amazon S3 Glacier uses the AWS account ID associated with the 6279 // credentials used to sign the request. If you use an account ID, do not include 6280 // any hyphens ('-') in the ID. 6281 // 6282 // AccountId is a required field 6283 AccountId *string `location:"uri" locationName:"accountId" type:"string" required:"true"` 6284 6285 // The archive description that you are uploading in parts. 6286 // 6287 // The part size must be a megabyte (1024 KB) multiplied by a power of 2, for 6288 // example 1048576 (1 MB), 2097152 (2 MB), 4194304 (4 MB), 8388608 (8 MB), and 6289 // so on. The minimum allowable part size is 1 MB, and the maximum is 4 GB (4096 6290 // MB). 6291 ArchiveDescription *string `location:"header" locationName:"x-amz-archive-description" type:"string"` 6292 6293 // The size of each part except the last, in bytes. The last part can be smaller 6294 // than this part size. 6295 PartSize *string `location:"header" locationName:"x-amz-part-size" type:"string"` 6296 6297 // The name of the vault. 6298 // 6299 // VaultName is a required field 6300 VaultName *string `location:"uri" locationName:"vaultName" type:"string" required:"true"` 6301 } 6302 6303 // String returns the string representation. 6304 // 6305 // API parameter values that are decorated as "sensitive" in the API will not 6306 // be included in the string output. The member name will be present, but the 6307 // value will be replaced with "sensitive". 6308 func (s InitiateMultipartUploadInput) String() string { 6309 return awsutil.Prettify(s) 6310 } 6311 6312 // GoString returns the string representation. 6313 // 6314 // API parameter values that are decorated as "sensitive" in the API will not 6315 // be included in the string output. The member name will be present, but the 6316 // value will be replaced with "sensitive". 6317 func (s InitiateMultipartUploadInput) GoString() string { 6318 return s.String() 6319 } 6320 6321 // Validate inspects the fields of the type to determine if they are valid. 6322 func (s *InitiateMultipartUploadInput) Validate() error { 6323 invalidParams := request.ErrInvalidParams{Context: "InitiateMultipartUploadInput"} 6324 if s.AccountId == nil { 6325 invalidParams.Add(request.NewErrParamRequired("AccountId")) 6326 } 6327 if s.AccountId != nil && len(*s.AccountId) < 1 { 6328 invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) 6329 } 6330 if s.VaultName == nil { 6331 invalidParams.Add(request.NewErrParamRequired("VaultName")) 6332 } 6333 if s.VaultName != nil && len(*s.VaultName) < 1 { 6334 invalidParams.Add(request.NewErrParamMinLen("VaultName", 1)) 6335 } 6336 6337 if invalidParams.Len() > 0 { 6338 return invalidParams 6339 } 6340 return nil 6341 } 6342 6343 // SetAccountId sets the AccountId field's value. 6344 func (s *InitiateMultipartUploadInput) SetAccountId(v string) *InitiateMultipartUploadInput { 6345 s.AccountId = &v 6346 return s 6347 } 6348 6349 // SetArchiveDescription sets the ArchiveDescription field's value. 6350 func (s *InitiateMultipartUploadInput) SetArchiveDescription(v string) *InitiateMultipartUploadInput { 6351 s.ArchiveDescription = &v 6352 return s 6353 } 6354 6355 // SetPartSize sets the PartSize field's value. 6356 func (s *InitiateMultipartUploadInput) SetPartSize(v string) *InitiateMultipartUploadInput { 6357 s.PartSize = &v 6358 return s 6359 } 6360 6361 // SetVaultName sets the VaultName field's value. 6362 func (s *InitiateMultipartUploadInput) SetVaultName(v string) *InitiateMultipartUploadInput { 6363 s.VaultName = &v 6364 return s 6365 } 6366 6367 // The Amazon S3 Glacier response to your request. 6368 type InitiateMultipartUploadOutput struct { 6369 _ struct{} `type:"structure" nopayload:"true"` 6370 6371 // The relative URI path of the multipart upload ID Amazon S3 Glacier created. 6372 Location *string `location:"header" locationName:"Location" type:"string"` 6373 6374 // The ID of the multipart upload. This value is also included as part of the 6375 // location. 6376 UploadId *string `location:"header" locationName:"x-amz-multipart-upload-id" type:"string"` 6377 } 6378 6379 // String returns the string representation. 6380 // 6381 // API parameter values that are decorated as "sensitive" in the API will not 6382 // be included in the string output. The member name will be present, but the 6383 // value will be replaced with "sensitive". 6384 func (s InitiateMultipartUploadOutput) String() string { 6385 return awsutil.Prettify(s) 6386 } 6387 6388 // GoString returns the string representation. 6389 // 6390 // API parameter values that are decorated as "sensitive" in the API will not 6391 // be included in the string output. The member name will be present, but the 6392 // value will be replaced with "sensitive". 6393 func (s InitiateMultipartUploadOutput) GoString() string { 6394 return s.String() 6395 } 6396 6397 // SetLocation sets the Location field's value. 6398 func (s *InitiateMultipartUploadOutput) SetLocation(v string) *InitiateMultipartUploadOutput { 6399 s.Location = &v 6400 return s 6401 } 6402 6403 // SetUploadId sets the UploadId field's value. 6404 func (s *InitiateMultipartUploadOutput) SetUploadId(v string) *InitiateMultipartUploadOutput { 6405 s.UploadId = &v 6406 return s 6407 } 6408 6409 // The input values for InitiateVaultLock. 6410 type InitiateVaultLockInput struct { 6411 _ struct{} `type:"structure" payload:"Policy"` 6412 6413 // The AccountId value is the AWS account ID. This value must match the AWS 6414 // account ID associated with the credentials used to sign the request. You 6415 // can either specify an AWS account ID or optionally a single '-' (hyphen), 6416 // in which case Amazon Glacier uses the AWS account ID associated with the 6417 // credentials used to sign the request. If you specify your account ID, do 6418 // not include any hyphens ('-') in the ID. 6419 // 6420 // AccountId is a required field 6421 AccountId *string `location:"uri" locationName:"accountId" type:"string" required:"true"` 6422 6423 // The vault lock policy as a JSON string, which uses "\" as an escape character. 6424 Policy *VaultLockPolicy `locationName:"policy" type:"structure"` 6425 6426 // The name of the vault. 6427 // 6428 // VaultName is a required field 6429 VaultName *string `location:"uri" locationName:"vaultName" type:"string" required:"true"` 6430 } 6431 6432 // String returns the string representation. 6433 // 6434 // API parameter values that are decorated as "sensitive" in the API will not 6435 // be included in the string output. The member name will be present, but the 6436 // value will be replaced with "sensitive". 6437 func (s InitiateVaultLockInput) String() string { 6438 return awsutil.Prettify(s) 6439 } 6440 6441 // GoString returns the string representation. 6442 // 6443 // API parameter values that are decorated as "sensitive" in the API will not 6444 // be included in the string output. The member name will be present, but the 6445 // value will be replaced with "sensitive". 6446 func (s InitiateVaultLockInput) GoString() string { 6447 return s.String() 6448 } 6449 6450 // Validate inspects the fields of the type to determine if they are valid. 6451 func (s *InitiateVaultLockInput) Validate() error { 6452 invalidParams := request.ErrInvalidParams{Context: "InitiateVaultLockInput"} 6453 if s.AccountId == nil { 6454 invalidParams.Add(request.NewErrParamRequired("AccountId")) 6455 } 6456 if s.AccountId != nil && len(*s.AccountId) < 1 { 6457 invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) 6458 } 6459 if s.VaultName == nil { 6460 invalidParams.Add(request.NewErrParamRequired("VaultName")) 6461 } 6462 if s.VaultName != nil && len(*s.VaultName) < 1 { 6463 invalidParams.Add(request.NewErrParamMinLen("VaultName", 1)) 6464 } 6465 6466 if invalidParams.Len() > 0 { 6467 return invalidParams 6468 } 6469 return nil 6470 } 6471 6472 // SetAccountId sets the AccountId field's value. 6473 func (s *InitiateVaultLockInput) SetAccountId(v string) *InitiateVaultLockInput { 6474 s.AccountId = &v 6475 return s 6476 } 6477 6478 // SetPolicy sets the Policy field's value. 6479 func (s *InitiateVaultLockInput) SetPolicy(v *VaultLockPolicy) *InitiateVaultLockInput { 6480 s.Policy = v 6481 return s 6482 } 6483 6484 // SetVaultName sets the VaultName field's value. 6485 func (s *InitiateVaultLockInput) SetVaultName(v string) *InitiateVaultLockInput { 6486 s.VaultName = &v 6487 return s 6488 } 6489 6490 // Contains the Amazon S3 Glacier response to your request. 6491 type InitiateVaultLockOutput struct { 6492 _ struct{} `type:"structure" nopayload:"true"` 6493 6494 // The lock ID, which is used to complete the vault locking process. 6495 LockId *string `location:"header" locationName:"x-amz-lock-id" type:"string"` 6496 } 6497 6498 // String returns the string representation. 6499 // 6500 // API parameter values that are decorated as "sensitive" in the API will not 6501 // be included in the string output. The member name will be present, but the 6502 // value will be replaced with "sensitive". 6503 func (s InitiateVaultLockOutput) String() string { 6504 return awsutil.Prettify(s) 6505 } 6506 6507 // GoString returns the string representation. 6508 // 6509 // API parameter values that are decorated as "sensitive" in the API will not 6510 // be included in the string output. The member name will be present, but the 6511 // value will be replaced with "sensitive". 6512 func (s InitiateVaultLockOutput) GoString() string { 6513 return s.String() 6514 } 6515 6516 // SetLockId sets the LockId field's value. 6517 func (s *InitiateVaultLockOutput) SetLockId(v string) *InitiateVaultLockOutput { 6518 s.LockId = &v 6519 return s 6520 } 6521 6522 // Describes how the archive is serialized. 6523 type InputSerialization struct { 6524 _ struct{} `type:"structure"` 6525 6526 // Describes the serialization of a CSV-encoded object. 6527 Csv *CSVInput `locationName:"csv" type:"structure"` 6528 } 6529 6530 // String returns the string representation. 6531 // 6532 // API parameter values that are decorated as "sensitive" in the API will not 6533 // be included in the string output. The member name will be present, but the 6534 // value will be replaced with "sensitive". 6535 func (s InputSerialization) String() string { 6536 return awsutil.Prettify(s) 6537 } 6538 6539 // GoString returns the string representation. 6540 // 6541 // API parameter values that are decorated as "sensitive" in the API will not 6542 // be included in the string output. The member name will be present, but the 6543 // value will be replaced with "sensitive". 6544 func (s InputSerialization) GoString() string { 6545 return s.String() 6546 } 6547 6548 // SetCsv sets the Csv field's value. 6549 func (s *InputSerialization) SetCsv(v *CSVInput) *InputSerialization { 6550 s.Csv = v 6551 return s 6552 } 6553 6554 // Returned if there is insufficient capacity to process this expedited request. 6555 // This error only applies to expedited retrievals and not to standard or bulk 6556 // retrievals. 6557 type InsufficientCapacityException struct { 6558 _ struct{} `type:"structure"` 6559 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 6560 6561 Code_ *string `locationName:"code" type:"string"` 6562 6563 Message_ *string `locationName:"message" type:"string"` 6564 6565 Type *string `locationName:"type" type:"string"` 6566 } 6567 6568 // String returns the string representation. 6569 // 6570 // API parameter values that are decorated as "sensitive" in the API will not 6571 // be included in the string output. The member name will be present, but the 6572 // value will be replaced with "sensitive". 6573 func (s InsufficientCapacityException) String() string { 6574 return awsutil.Prettify(s) 6575 } 6576 6577 // GoString returns the string representation. 6578 // 6579 // API parameter values that are decorated as "sensitive" in the API will not 6580 // be included in the string output. The member name will be present, but the 6581 // value will be replaced with "sensitive". 6582 func (s InsufficientCapacityException) GoString() string { 6583 return s.String() 6584 } 6585 6586 func newErrorInsufficientCapacityException(v protocol.ResponseMetadata) error { 6587 return &InsufficientCapacityException{ 6588 RespMetadata: v, 6589 } 6590 } 6591 6592 // Code returns the exception type name. 6593 func (s *InsufficientCapacityException) Code() string { 6594 return "InsufficientCapacityException" 6595 } 6596 6597 // Message returns the exception's message. 6598 func (s *InsufficientCapacityException) Message() string { 6599 if s.Message_ != nil { 6600 return *s.Message_ 6601 } 6602 return "" 6603 } 6604 6605 // OrigErr always returns nil, satisfies awserr.Error interface. 6606 func (s *InsufficientCapacityException) OrigErr() error { 6607 return nil 6608 } 6609 6610 func (s *InsufficientCapacityException) Error() string { 6611 return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) 6612 } 6613 6614 // Status code returns the HTTP status code for the request's response error. 6615 func (s *InsufficientCapacityException) StatusCode() int { 6616 return s.RespMetadata.StatusCode 6617 } 6618 6619 // RequestID returns the service's response RequestID for request. 6620 func (s *InsufficientCapacityException) RequestID() string { 6621 return s.RespMetadata.RequestID 6622 } 6623 6624 // Returned if a parameter of the request is incorrectly specified. 6625 type InvalidParameterValueException struct { 6626 _ struct{} `type:"structure"` 6627 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 6628 6629 // 400 Bad Request 6630 Code_ *string `locationName:"code" type:"string"` 6631 6632 // Returned if a parameter of the request is incorrectly specified. 6633 Message_ *string `locationName:"message" type:"string"` 6634 6635 // Client 6636 Type *string `locationName:"type" type:"string"` 6637 } 6638 6639 // String returns the string representation. 6640 // 6641 // API parameter values that are decorated as "sensitive" in the API will not 6642 // be included in the string output. The member name will be present, but the 6643 // value will be replaced with "sensitive". 6644 func (s InvalidParameterValueException) String() string { 6645 return awsutil.Prettify(s) 6646 } 6647 6648 // GoString returns the string representation. 6649 // 6650 // API parameter values that are decorated as "sensitive" in the API will not 6651 // be included in the string output. The member name will be present, but the 6652 // value will be replaced with "sensitive". 6653 func (s InvalidParameterValueException) GoString() string { 6654 return s.String() 6655 } 6656 6657 func newErrorInvalidParameterValueException(v protocol.ResponseMetadata) error { 6658 return &InvalidParameterValueException{ 6659 RespMetadata: v, 6660 } 6661 } 6662 6663 // Code returns the exception type name. 6664 func (s *InvalidParameterValueException) Code() string { 6665 return "InvalidParameterValueException" 6666 } 6667 6668 // Message returns the exception's message. 6669 func (s *InvalidParameterValueException) Message() string { 6670 if s.Message_ != nil { 6671 return *s.Message_ 6672 } 6673 return "" 6674 } 6675 6676 // OrigErr always returns nil, satisfies awserr.Error interface. 6677 func (s *InvalidParameterValueException) OrigErr() error { 6678 return nil 6679 } 6680 6681 func (s *InvalidParameterValueException) Error() string { 6682 return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) 6683 } 6684 6685 // Status code returns the HTTP status code for the request's response error. 6686 func (s *InvalidParameterValueException) StatusCode() int { 6687 return s.RespMetadata.StatusCode 6688 } 6689 6690 // RequestID returns the service's response RequestID for request. 6691 func (s *InvalidParameterValueException) RequestID() string { 6692 return s.RespMetadata.RequestID 6693 } 6694 6695 // Describes the options for a range inventory retrieval job. 6696 type InventoryRetrievalJobDescription struct { 6697 _ struct{} `type:"structure"` 6698 6699 // The end of the date range in UTC for vault inventory retrieval that includes 6700 // archives created before this date. This value should be a string in the ISO 6701 // 8601 date format, for example 2013-03-20T17:03:43Z. 6702 EndDate *string `type:"string"` 6703 6704 // The output format for the vault inventory list, which is set by the InitiateJob 6705 // request when initiating a job to retrieve a vault inventory. Valid values 6706 // are CSV and JSON. 6707 Format *string `type:"string"` 6708 6709 // The maximum number of inventory items returned per vault inventory retrieval 6710 // request. This limit is set when initiating the job with the a InitiateJob 6711 // request. 6712 Limit *string `type:"string"` 6713 6714 // An opaque string that represents where to continue pagination of the vault 6715 // inventory retrieval results. You use the marker in a new InitiateJob request 6716 // to obtain additional inventory items. If there are no more inventory items, 6717 // this value is null. For more information, see Range Inventory Retrieval (https://docs.aws.amazon.com/amazonglacier/latest/dev/api-initiate-job-post.html#api-initiate-job-post-vault-inventory-list-filtering). 6718 Marker *string `type:"string"` 6719 6720 // The start of the date range in Universal Coordinated Time (UTC) for vault 6721 // inventory retrieval that includes archives created on or after this date. 6722 // This value should be a string in the ISO 8601 date format, for example 2013-03-20T17:03:43Z. 6723 StartDate *string `type:"string"` 6724 } 6725 6726 // String returns the string representation. 6727 // 6728 // API parameter values that are decorated as "sensitive" in the API will not 6729 // be included in the string output. The member name will be present, but the 6730 // value will be replaced with "sensitive". 6731 func (s InventoryRetrievalJobDescription) String() string { 6732 return awsutil.Prettify(s) 6733 } 6734 6735 // GoString returns the string representation. 6736 // 6737 // API parameter values that are decorated as "sensitive" in the API will not 6738 // be included in the string output. The member name will be present, but the 6739 // value will be replaced with "sensitive". 6740 func (s InventoryRetrievalJobDescription) GoString() string { 6741 return s.String() 6742 } 6743 6744 // SetEndDate sets the EndDate field's value. 6745 func (s *InventoryRetrievalJobDescription) SetEndDate(v string) *InventoryRetrievalJobDescription { 6746 s.EndDate = &v 6747 return s 6748 } 6749 6750 // SetFormat sets the Format field's value. 6751 func (s *InventoryRetrievalJobDescription) SetFormat(v string) *InventoryRetrievalJobDescription { 6752 s.Format = &v 6753 return s 6754 } 6755 6756 // SetLimit sets the Limit field's value. 6757 func (s *InventoryRetrievalJobDescription) SetLimit(v string) *InventoryRetrievalJobDescription { 6758 s.Limit = &v 6759 return s 6760 } 6761 6762 // SetMarker sets the Marker field's value. 6763 func (s *InventoryRetrievalJobDescription) SetMarker(v string) *InventoryRetrievalJobDescription { 6764 s.Marker = &v 6765 return s 6766 } 6767 6768 // SetStartDate sets the StartDate field's value. 6769 func (s *InventoryRetrievalJobDescription) SetStartDate(v string) *InventoryRetrievalJobDescription { 6770 s.StartDate = &v 6771 return s 6772 } 6773 6774 // Provides options for specifying a range inventory retrieval job. 6775 type InventoryRetrievalJobInput struct { 6776 _ struct{} `type:"structure"` 6777 6778 // The end of the date range in UTC for vault inventory retrieval that includes 6779 // archives created before this date. This value should be a string in the ISO 6780 // 8601 date format, for example 2013-03-20T17:03:43Z. 6781 EndDate *string `type:"string"` 6782 6783 // Specifies the maximum number of inventory items returned per vault inventory 6784 // retrieval request. Valid values are greater than or equal to 1. 6785 Limit *string `type:"string"` 6786 6787 // An opaque string that represents where to continue pagination of the vault 6788 // inventory retrieval results. You use the marker in a new InitiateJob request 6789 // to obtain additional inventory items. If there are no more inventory items, 6790 // this value is null. 6791 Marker *string `type:"string"` 6792 6793 // The start of the date range in UTC for vault inventory retrieval that includes 6794 // archives created on or after this date. This value should be a string in 6795 // the ISO 8601 date format, for example 2013-03-20T17:03:43Z. 6796 StartDate *string `type:"string"` 6797 } 6798 6799 // String returns the string representation. 6800 // 6801 // API parameter values that are decorated as "sensitive" in the API will not 6802 // be included in the string output. The member name will be present, but the 6803 // value will be replaced with "sensitive". 6804 func (s InventoryRetrievalJobInput) String() string { 6805 return awsutil.Prettify(s) 6806 } 6807 6808 // GoString returns the string representation. 6809 // 6810 // API parameter values that are decorated as "sensitive" in the API will not 6811 // be included in the string output. The member name will be present, but the 6812 // value will be replaced with "sensitive". 6813 func (s InventoryRetrievalJobInput) GoString() string { 6814 return s.String() 6815 } 6816 6817 // SetEndDate sets the EndDate field's value. 6818 func (s *InventoryRetrievalJobInput) SetEndDate(v string) *InventoryRetrievalJobInput { 6819 s.EndDate = &v 6820 return s 6821 } 6822 6823 // SetLimit sets the Limit field's value. 6824 func (s *InventoryRetrievalJobInput) SetLimit(v string) *InventoryRetrievalJobInput { 6825 s.Limit = &v 6826 return s 6827 } 6828 6829 // SetMarker sets the Marker field's value. 6830 func (s *InventoryRetrievalJobInput) SetMarker(v string) *InventoryRetrievalJobInput { 6831 s.Marker = &v 6832 return s 6833 } 6834 6835 // SetStartDate sets the StartDate field's value. 6836 func (s *InventoryRetrievalJobInput) SetStartDate(v string) *InventoryRetrievalJobInput { 6837 s.StartDate = &v 6838 return s 6839 } 6840 6841 // Contains the description of an Amazon S3 Glacier job. 6842 type JobDescription struct { 6843 _ struct{} `type:"structure"` 6844 6845 // The job type. This value is either ArchiveRetrieval, InventoryRetrieval, 6846 // or Select. 6847 Action *string `type:"string" enum:"ActionCode"` 6848 6849 // The archive ID requested for a select job or archive retrieval. Otherwise, 6850 // this field is null. 6851 ArchiveId *string `type:"string"` 6852 6853 // The SHA256 tree hash of the entire archive for an archive retrieval. For 6854 // inventory retrieval or select jobs, this field is null. 6855 ArchiveSHA256TreeHash *string `type:"string"` 6856 6857 // For an archive retrieval job, this value is the size in bytes of the archive 6858 // being requested for download. For an inventory retrieval or select job, this 6859 // value is null. 6860 ArchiveSizeInBytes *int64 `type:"long"` 6861 6862 // The job status. When a job is completed, you get the job's output using Get 6863 // Job Output (GET output). 6864 Completed *bool `type:"boolean"` 6865 6866 // The UTC time that the job request completed. While the job is in progress, 6867 // the value is null. 6868 CompletionDate *string `type:"string"` 6869 6870 // The UTC date when the job was created. This value is a string representation 6871 // of ISO 8601 date format, for example "2012-03-20T17:03:43.221Z". 6872 CreationDate *string `type:"string"` 6873 6874 // Parameters used for range inventory retrieval. 6875 InventoryRetrievalParameters *InventoryRetrievalJobDescription `type:"structure"` 6876 6877 // For an inventory retrieval job, this value is the size in bytes of the inventory 6878 // requested for download. For an archive retrieval or select job, this value 6879 // is null. 6880 InventorySizeInBytes *int64 `type:"long"` 6881 6882 // The job description provided when initiating the job. 6883 JobDescription *string `type:"string"` 6884 6885 // An opaque string that identifies an Amazon S3 Glacier job. 6886 JobId *string `type:"string"` 6887 6888 // Contains the job output location. 6889 JobOutputPath *string `type:"string"` 6890 6891 // Contains the location where the data from the select job is stored. 6892 OutputLocation *OutputLocation `type:"structure"` 6893 6894 // The retrieved byte range for archive retrieval jobs in the form StartByteValue-EndByteValue. 6895 // If no range was specified in the archive retrieval, then the whole archive 6896 // is retrieved. In this case, StartByteValue equals 0 and EndByteValue equals 6897 // the size of the archive minus 1. For inventory retrieval or select jobs, 6898 // this field is null. 6899 RetrievalByteRange *string `type:"string"` 6900 6901 // For an archive retrieval job, this value is the checksum of the archive. 6902 // Otherwise, this value is null. 6903 // 6904 // The SHA256 tree hash value for the requested range of an archive. If the 6905 // InitiateJob request for an archive specified a tree-hash aligned range, then 6906 // this field returns a value. 6907 // 6908 // If the whole archive is retrieved, this value is the same as the ArchiveSHA256TreeHash 6909 // value. 6910 // 6911 // This field is null for the following: 6912 // 6913 // * Archive retrieval jobs that specify a range that is not tree-hash aligned 6914 // 6915 // * Archival jobs that specify a range that is equal to the whole archive, 6916 // when the job status is InProgress 6917 // 6918 // * Inventory jobs 6919 // 6920 // * Select jobs 6921 SHA256TreeHash *string `type:"string"` 6922 6923 // An Amazon SNS topic that receives notification. 6924 SNSTopic *string `type:"string"` 6925 6926 // Contains the parameters used for a select. 6927 SelectParameters *SelectParameters `type:"structure"` 6928 6929 // The status code can be InProgress, Succeeded, or Failed, and indicates the 6930 // status of the job. 6931 StatusCode *string `type:"string" enum:"StatusCode"` 6932 6933 // A friendly message that describes the job status. 6934 StatusMessage *string `type:"string"` 6935 6936 // The tier to use for a select or an archive retrieval. Valid values are Expedited, 6937 // Standard, or Bulk. Standard is the default. 6938 Tier *string `type:"string"` 6939 6940 // The Amazon Resource Name (ARN) of the vault from which an archive retrieval 6941 // was requested. 6942 VaultARN *string `type:"string"` 6943 } 6944 6945 // String returns the string representation. 6946 // 6947 // API parameter values that are decorated as "sensitive" in the API will not 6948 // be included in the string output. The member name will be present, but the 6949 // value will be replaced with "sensitive". 6950 func (s JobDescription) String() string { 6951 return awsutil.Prettify(s) 6952 } 6953 6954 // GoString returns the string representation. 6955 // 6956 // API parameter values that are decorated as "sensitive" in the API will not 6957 // be included in the string output. The member name will be present, but the 6958 // value will be replaced with "sensitive". 6959 func (s JobDescription) GoString() string { 6960 return s.String() 6961 } 6962 6963 // SetAction sets the Action field's value. 6964 func (s *JobDescription) SetAction(v string) *JobDescription { 6965 s.Action = &v 6966 return s 6967 } 6968 6969 // SetArchiveId sets the ArchiveId field's value. 6970 func (s *JobDescription) SetArchiveId(v string) *JobDescription { 6971 s.ArchiveId = &v 6972 return s 6973 } 6974 6975 // SetArchiveSHA256TreeHash sets the ArchiveSHA256TreeHash field's value. 6976 func (s *JobDescription) SetArchiveSHA256TreeHash(v string) *JobDescription { 6977 s.ArchiveSHA256TreeHash = &v 6978 return s 6979 } 6980 6981 // SetArchiveSizeInBytes sets the ArchiveSizeInBytes field's value. 6982 func (s *JobDescription) SetArchiveSizeInBytes(v int64) *JobDescription { 6983 s.ArchiveSizeInBytes = &v 6984 return s 6985 } 6986 6987 // SetCompleted sets the Completed field's value. 6988 func (s *JobDescription) SetCompleted(v bool) *JobDescription { 6989 s.Completed = &v 6990 return s 6991 } 6992 6993 // SetCompletionDate sets the CompletionDate field's value. 6994 func (s *JobDescription) SetCompletionDate(v string) *JobDescription { 6995 s.CompletionDate = &v 6996 return s 6997 } 6998 6999 // SetCreationDate sets the CreationDate field's value. 7000 func (s *JobDescription) SetCreationDate(v string) *JobDescription { 7001 s.CreationDate = &v 7002 return s 7003 } 7004 7005 // SetInventoryRetrievalParameters sets the InventoryRetrievalParameters field's value. 7006 func (s *JobDescription) SetInventoryRetrievalParameters(v *InventoryRetrievalJobDescription) *JobDescription { 7007 s.InventoryRetrievalParameters = v 7008 return s 7009 } 7010 7011 // SetInventorySizeInBytes sets the InventorySizeInBytes field's value. 7012 func (s *JobDescription) SetInventorySizeInBytes(v int64) *JobDescription { 7013 s.InventorySizeInBytes = &v 7014 return s 7015 } 7016 7017 // SetJobDescription sets the JobDescription field's value. 7018 func (s *JobDescription) SetJobDescription(v string) *JobDescription { 7019 s.JobDescription = &v 7020 return s 7021 } 7022 7023 // SetJobId sets the JobId field's value. 7024 func (s *JobDescription) SetJobId(v string) *JobDescription { 7025 s.JobId = &v 7026 return s 7027 } 7028 7029 // SetJobOutputPath sets the JobOutputPath field's value. 7030 func (s *JobDescription) SetJobOutputPath(v string) *JobDescription { 7031 s.JobOutputPath = &v 7032 return s 7033 } 7034 7035 // SetOutputLocation sets the OutputLocation field's value. 7036 func (s *JobDescription) SetOutputLocation(v *OutputLocation) *JobDescription { 7037 s.OutputLocation = v 7038 return s 7039 } 7040 7041 // SetRetrievalByteRange sets the RetrievalByteRange field's value. 7042 func (s *JobDescription) SetRetrievalByteRange(v string) *JobDescription { 7043 s.RetrievalByteRange = &v 7044 return s 7045 } 7046 7047 // SetSHA256TreeHash sets the SHA256TreeHash field's value. 7048 func (s *JobDescription) SetSHA256TreeHash(v string) *JobDescription { 7049 s.SHA256TreeHash = &v 7050 return s 7051 } 7052 7053 // SetSNSTopic sets the SNSTopic field's value. 7054 func (s *JobDescription) SetSNSTopic(v string) *JobDescription { 7055 s.SNSTopic = &v 7056 return s 7057 } 7058 7059 // SetSelectParameters sets the SelectParameters field's value. 7060 func (s *JobDescription) SetSelectParameters(v *SelectParameters) *JobDescription { 7061 s.SelectParameters = v 7062 return s 7063 } 7064 7065 // SetStatusCode sets the StatusCode field's value. 7066 func (s *JobDescription) SetStatusCode(v string) *JobDescription { 7067 s.StatusCode = &v 7068 return s 7069 } 7070 7071 // SetStatusMessage sets the StatusMessage field's value. 7072 func (s *JobDescription) SetStatusMessage(v string) *JobDescription { 7073 s.StatusMessage = &v 7074 return s 7075 } 7076 7077 // SetTier sets the Tier field's value. 7078 func (s *JobDescription) SetTier(v string) *JobDescription { 7079 s.Tier = &v 7080 return s 7081 } 7082 7083 // SetVaultARN sets the VaultARN field's value. 7084 func (s *JobDescription) SetVaultARN(v string) *JobDescription { 7085 s.VaultARN = &v 7086 return s 7087 } 7088 7089 // Provides options for defining a job. 7090 type JobParameters struct { 7091 _ struct{} `type:"structure"` 7092 7093 // The ID of the archive that you want to retrieve. This field is required only 7094 // if Type is set to select or archive-retrievalcode>. An error occurs if you 7095 // specify this request parameter for an inventory retrieval job request. 7096 ArchiveId *string `type:"string"` 7097 7098 // The optional description for the job. The description must be less than or 7099 // equal to 1,024 bytes. The allowable characters are 7-bit ASCII without control 7100 // codes-specifically, ASCII values 32-126 decimal or 0x20-0x7E hexadecimal. 7101 Description *string `type:"string"` 7102 7103 // When initiating a job to retrieve a vault inventory, you can optionally add 7104 // this parameter to your request to specify the output format. If you are initiating 7105 // an inventory job and do not specify a Format field, JSON is the default format. 7106 // Valid values are "CSV" and "JSON". 7107 Format *string `type:"string"` 7108 7109 // Input parameters used for range inventory retrieval. 7110 InventoryRetrievalParameters *InventoryRetrievalJobInput `type:"structure"` 7111 7112 // Contains information about the location where the select job results are 7113 // stored. 7114 OutputLocation *OutputLocation `type:"structure"` 7115 7116 // The byte range to retrieve for an archive retrieval. in the form "StartByteValue-EndByteValue" 7117 // If not specified, the whole archive is retrieved. If specified, the byte 7118 // range must be megabyte (1024*1024) aligned which means that StartByteValue 7119 // must be divisible by 1 MB and EndByteValue plus 1 must be divisible by 1 7120 // MB or be the end of the archive specified as the archive byte size value 7121 // minus 1. If RetrievalByteRange is not megabyte aligned, this operation returns 7122 // a 400 response. 7123 // 7124 // An error occurs if you specify this field for an inventory retrieval job 7125 // request. 7126 RetrievalByteRange *string `type:"string"` 7127 7128 // The Amazon SNS topic ARN to which Amazon S3 Glacier sends a notification 7129 // when the job is completed and the output is ready for you to download. The 7130 // specified topic publishes the notification to its subscribers. The SNS topic 7131 // must exist. 7132 SNSTopic *string `type:"string"` 7133 7134 // Contains the parameters that define a job. 7135 SelectParameters *SelectParameters `type:"structure"` 7136 7137 // The tier to use for a select or an archive retrieval job. Valid values are 7138 // Expedited, Standard, or Bulk. Standard is the default. 7139 Tier *string `type:"string"` 7140 7141 // The job type. You can initiate a job to perform a select query on an archive, 7142 // retrieve an archive, or get an inventory of a vault. Valid values are "select", 7143 // "archive-retrieval" and "inventory-retrieval". 7144 Type *string `type:"string"` 7145 } 7146 7147 // String returns the string representation. 7148 // 7149 // API parameter values that are decorated as "sensitive" in the API will not 7150 // be included in the string output. The member name will be present, but the 7151 // value will be replaced with "sensitive". 7152 func (s JobParameters) String() string { 7153 return awsutil.Prettify(s) 7154 } 7155 7156 // GoString returns the string representation. 7157 // 7158 // API parameter values that are decorated as "sensitive" in the API will not 7159 // be included in the string output. The member name will be present, but the 7160 // value will be replaced with "sensitive". 7161 func (s JobParameters) GoString() string { 7162 return s.String() 7163 } 7164 7165 // Validate inspects the fields of the type to determine if they are valid. 7166 func (s *JobParameters) Validate() error { 7167 invalidParams := request.ErrInvalidParams{Context: "JobParameters"} 7168 if s.OutputLocation != nil { 7169 if err := s.OutputLocation.Validate(); err != nil { 7170 invalidParams.AddNested("OutputLocation", err.(request.ErrInvalidParams)) 7171 } 7172 } 7173 7174 if invalidParams.Len() > 0 { 7175 return invalidParams 7176 } 7177 return nil 7178 } 7179 7180 // SetArchiveId sets the ArchiveId field's value. 7181 func (s *JobParameters) SetArchiveId(v string) *JobParameters { 7182 s.ArchiveId = &v 7183 return s 7184 } 7185 7186 // SetDescription sets the Description field's value. 7187 func (s *JobParameters) SetDescription(v string) *JobParameters { 7188 s.Description = &v 7189 return s 7190 } 7191 7192 // SetFormat sets the Format field's value. 7193 func (s *JobParameters) SetFormat(v string) *JobParameters { 7194 s.Format = &v 7195 return s 7196 } 7197 7198 // SetInventoryRetrievalParameters sets the InventoryRetrievalParameters field's value. 7199 func (s *JobParameters) SetInventoryRetrievalParameters(v *InventoryRetrievalJobInput) *JobParameters { 7200 s.InventoryRetrievalParameters = v 7201 return s 7202 } 7203 7204 // SetOutputLocation sets the OutputLocation field's value. 7205 func (s *JobParameters) SetOutputLocation(v *OutputLocation) *JobParameters { 7206 s.OutputLocation = v 7207 return s 7208 } 7209 7210 // SetRetrievalByteRange sets the RetrievalByteRange field's value. 7211 func (s *JobParameters) SetRetrievalByteRange(v string) *JobParameters { 7212 s.RetrievalByteRange = &v 7213 return s 7214 } 7215 7216 // SetSNSTopic sets the SNSTopic field's value. 7217 func (s *JobParameters) SetSNSTopic(v string) *JobParameters { 7218 s.SNSTopic = &v 7219 return s 7220 } 7221 7222 // SetSelectParameters sets the SelectParameters field's value. 7223 func (s *JobParameters) SetSelectParameters(v *SelectParameters) *JobParameters { 7224 s.SelectParameters = v 7225 return s 7226 } 7227 7228 // SetTier sets the Tier field's value. 7229 func (s *JobParameters) SetTier(v string) *JobParameters { 7230 s.Tier = &v 7231 return s 7232 } 7233 7234 // SetType sets the Type field's value. 7235 func (s *JobParameters) SetType(v string) *JobParameters { 7236 s.Type = &v 7237 return s 7238 } 7239 7240 // Returned if the request results in a vault or account limit being exceeded. 7241 type LimitExceededException struct { 7242 _ struct{} `type:"structure"` 7243 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 7244 7245 // 400 Bad Request 7246 Code_ *string `locationName:"code" type:"string"` 7247 7248 // Returned if the request results in a vault limit or tags limit being exceeded. 7249 Message_ *string `locationName:"message" type:"string"` 7250 7251 // Client 7252 Type *string `locationName:"type" type:"string"` 7253 } 7254 7255 // String returns the string representation. 7256 // 7257 // API parameter values that are decorated as "sensitive" in the API will not 7258 // be included in the string output. The member name will be present, but the 7259 // value will be replaced with "sensitive". 7260 func (s LimitExceededException) String() string { 7261 return awsutil.Prettify(s) 7262 } 7263 7264 // GoString returns the string representation. 7265 // 7266 // API parameter values that are decorated as "sensitive" in the API will not 7267 // be included in the string output. The member name will be present, but the 7268 // value will be replaced with "sensitive". 7269 func (s LimitExceededException) GoString() string { 7270 return s.String() 7271 } 7272 7273 func newErrorLimitExceededException(v protocol.ResponseMetadata) error { 7274 return &LimitExceededException{ 7275 RespMetadata: v, 7276 } 7277 } 7278 7279 // Code returns the exception type name. 7280 func (s *LimitExceededException) Code() string { 7281 return "LimitExceededException" 7282 } 7283 7284 // Message returns the exception's message. 7285 func (s *LimitExceededException) Message() string { 7286 if s.Message_ != nil { 7287 return *s.Message_ 7288 } 7289 return "" 7290 } 7291 7292 // OrigErr always returns nil, satisfies awserr.Error interface. 7293 func (s *LimitExceededException) OrigErr() error { 7294 return nil 7295 } 7296 7297 func (s *LimitExceededException) Error() string { 7298 return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) 7299 } 7300 7301 // Status code returns the HTTP status code for the request's response error. 7302 func (s *LimitExceededException) StatusCode() int { 7303 return s.RespMetadata.StatusCode 7304 } 7305 7306 // RequestID returns the service's response RequestID for request. 7307 func (s *LimitExceededException) RequestID() string { 7308 return s.RespMetadata.RequestID 7309 } 7310 7311 // Provides options for retrieving a job list for an Amazon S3 Glacier vault. 7312 type ListJobsInput struct { 7313 _ struct{} `type:"structure" nopayload:"true"` 7314 7315 // The AccountId value is the AWS account ID of the account that owns the vault. 7316 // You can either specify an AWS account ID or optionally a single '-' (hyphen), 7317 // in which case Amazon S3 Glacier uses the AWS account ID associated with the 7318 // credentials used to sign the request. If you use an account ID, do not include 7319 // any hyphens ('-') in the ID. 7320 // 7321 // AccountId is a required field 7322 AccountId *string `location:"uri" locationName:"accountId" type:"string" required:"true"` 7323 7324 // The state of the jobs to return. You can specify true or false. 7325 Completed *string `location:"querystring" locationName:"completed" type:"string"` 7326 7327 // The maximum number of jobs to be returned. The default limit is 50. The number 7328 // of jobs returned might be fewer than the specified limit, but the number 7329 // of returned jobs never exceeds the limit. 7330 Limit *string `location:"querystring" locationName:"limit" type:"string"` 7331 7332 // An opaque string used for pagination. This value specifies the job at which 7333 // the listing of jobs should begin. Get the marker value from a previous List 7334 // Jobs response. You only need to include the marker if you are continuing 7335 // the pagination of results started in a previous List Jobs request. 7336 Marker *string `location:"querystring" locationName:"marker" type:"string"` 7337 7338 // The type of job status to return. You can specify the following values: InProgress, 7339 // Succeeded, or Failed. 7340 Statuscode *string `location:"querystring" locationName:"statuscode" type:"string"` 7341 7342 // The name of the vault. 7343 // 7344 // VaultName is a required field 7345 VaultName *string `location:"uri" locationName:"vaultName" type:"string" required:"true"` 7346 } 7347 7348 // String returns the string representation. 7349 // 7350 // API parameter values that are decorated as "sensitive" in the API will not 7351 // be included in the string output. The member name will be present, but the 7352 // value will be replaced with "sensitive". 7353 func (s ListJobsInput) String() string { 7354 return awsutil.Prettify(s) 7355 } 7356 7357 // GoString returns the string representation. 7358 // 7359 // API parameter values that are decorated as "sensitive" in the API will not 7360 // be included in the string output. The member name will be present, but the 7361 // value will be replaced with "sensitive". 7362 func (s ListJobsInput) GoString() string { 7363 return s.String() 7364 } 7365 7366 // Validate inspects the fields of the type to determine if they are valid. 7367 func (s *ListJobsInput) Validate() error { 7368 invalidParams := request.ErrInvalidParams{Context: "ListJobsInput"} 7369 if s.AccountId == nil { 7370 invalidParams.Add(request.NewErrParamRequired("AccountId")) 7371 } 7372 if s.AccountId != nil && len(*s.AccountId) < 1 { 7373 invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) 7374 } 7375 if s.VaultName == nil { 7376 invalidParams.Add(request.NewErrParamRequired("VaultName")) 7377 } 7378 if s.VaultName != nil && len(*s.VaultName) < 1 { 7379 invalidParams.Add(request.NewErrParamMinLen("VaultName", 1)) 7380 } 7381 7382 if invalidParams.Len() > 0 { 7383 return invalidParams 7384 } 7385 return nil 7386 } 7387 7388 // SetAccountId sets the AccountId field's value. 7389 func (s *ListJobsInput) SetAccountId(v string) *ListJobsInput { 7390 s.AccountId = &v 7391 return s 7392 } 7393 7394 // SetCompleted sets the Completed field's value. 7395 func (s *ListJobsInput) SetCompleted(v string) *ListJobsInput { 7396 s.Completed = &v 7397 return s 7398 } 7399 7400 // SetLimit sets the Limit field's value. 7401 func (s *ListJobsInput) SetLimit(v string) *ListJobsInput { 7402 s.Limit = &v 7403 return s 7404 } 7405 7406 // SetMarker sets the Marker field's value. 7407 func (s *ListJobsInput) SetMarker(v string) *ListJobsInput { 7408 s.Marker = &v 7409 return s 7410 } 7411 7412 // SetStatuscode sets the Statuscode field's value. 7413 func (s *ListJobsInput) SetStatuscode(v string) *ListJobsInput { 7414 s.Statuscode = &v 7415 return s 7416 } 7417 7418 // SetVaultName sets the VaultName field's value. 7419 func (s *ListJobsInput) SetVaultName(v string) *ListJobsInput { 7420 s.VaultName = &v 7421 return s 7422 } 7423 7424 // Contains the Amazon S3 Glacier response to your request. 7425 type ListJobsOutput struct { 7426 _ struct{} `type:"structure"` 7427 7428 // A list of job objects. Each job object contains metadata describing the job. 7429 JobList []*JobDescription `type:"list"` 7430 7431 // An opaque string used for pagination that specifies the job at which the 7432 // listing of jobs should begin. You get the marker value from a previous List 7433 // Jobs response. You only need to include the marker if you are continuing 7434 // the pagination of the results started in a previous List Jobs request. 7435 Marker *string `type:"string"` 7436 } 7437 7438 // String returns the string representation. 7439 // 7440 // API parameter values that are decorated as "sensitive" in the API will not 7441 // be included in the string output. The member name will be present, but the 7442 // value will be replaced with "sensitive". 7443 func (s ListJobsOutput) String() string { 7444 return awsutil.Prettify(s) 7445 } 7446 7447 // GoString returns the string representation. 7448 // 7449 // API parameter values that are decorated as "sensitive" in the API will not 7450 // be included in the string output. The member name will be present, but the 7451 // value will be replaced with "sensitive". 7452 func (s ListJobsOutput) GoString() string { 7453 return s.String() 7454 } 7455 7456 // SetJobList sets the JobList field's value. 7457 func (s *ListJobsOutput) SetJobList(v []*JobDescription) *ListJobsOutput { 7458 s.JobList = v 7459 return s 7460 } 7461 7462 // SetMarker sets the Marker field's value. 7463 func (s *ListJobsOutput) SetMarker(v string) *ListJobsOutput { 7464 s.Marker = &v 7465 return s 7466 } 7467 7468 // Provides options for retrieving list of in-progress multipart uploads for 7469 // an Amazon Glacier vault. 7470 type ListMultipartUploadsInput struct { 7471 _ struct{} `type:"structure" nopayload:"true"` 7472 7473 // The AccountId value is the AWS account ID of the account that owns the vault. 7474 // You can either specify an AWS account ID or optionally a single '-' (hyphen), 7475 // in which case Amazon S3 Glacier uses the AWS account ID associated with the 7476 // credentials used to sign the request. If you use an account ID, do not include 7477 // any hyphens ('-') in the ID. 7478 // 7479 // AccountId is a required field 7480 AccountId *string `location:"uri" locationName:"accountId" type:"string" required:"true"` 7481 7482 // Specifies the maximum number of uploads returned in the response body. If 7483 // this value is not specified, the List Uploads operation returns up to 50 7484 // uploads. 7485 Limit *string `location:"querystring" locationName:"limit" type:"string"` 7486 7487 // An opaque string used for pagination. This value specifies the upload at 7488 // which the listing of uploads should begin. Get the marker value from a previous 7489 // List Uploads response. You need only include the marker if you are continuing 7490 // the pagination of results started in a previous List Uploads request. 7491 Marker *string `location:"querystring" locationName:"marker" type:"string"` 7492 7493 // The name of the vault. 7494 // 7495 // VaultName is a required field 7496 VaultName *string `location:"uri" locationName:"vaultName" type:"string" required:"true"` 7497 } 7498 7499 // String returns the string representation. 7500 // 7501 // API parameter values that are decorated as "sensitive" in the API will not 7502 // be included in the string output. The member name will be present, but the 7503 // value will be replaced with "sensitive". 7504 func (s ListMultipartUploadsInput) String() string { 7505 return awsutil.Prettify(s) 7506 } 7507 7508 // GoString returns the string representation. 7509 // 7510 // API parameter values that are decorated as "sensitive" in the API will not 7511 // be included in the string output. The member name will be present, but the 7512 // value will be replaced with "sensitive". 7513 func (s ListMultipartUploadsInput) GoString() string { 7514 return s.String() 7515 } 7516 7517 // Validate inspects the fields of the type to determine if they are valid. 7518 func (s *ListMultipartUploadsInput) Validate() error { 7519 invalidParams := request.ErrInvalidParams{Context: "ListMultipartUploadsInput"} 7520 if s.AccountId == nil { 7521 invalidParams.Add(request.NewErrParamRequired("AccountId")) 7522 } 7523 if s.AccountId != nil && len(*s.AccountId) < 1 { 7524 invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) 7525 } 7526 if s.VaultName == nil { 7527 invalidParams.Add(request.NewErrParamRequired("VaultName")) 7528 } 7529 if s.VaultName != nil && len(*s.VaultName) < 1 { 7530 invalidParams.Add(request.NewErrParamMinLen("VaultName", 1)) 7531 } 7532 7533 if invalidParams.Len() > 0 { 7534 return invalidParams 7535 } 7536 return nil 7537 } 7538 7539 // SetAccountId sets the AccountId field's value. 7540 func (s *ListMultipartUploadsInput) SetAccountId(v string) *ListMultipartUploadsInput { 7541 s.AccountId = &v 7542 return s 7543 } 7544 7545 // SetLimit sets the Limit field's value. 7546 func (s *ListMultipartUploadsInput) SetLimit(v string) *ListMultipartUploadsInput { 7547 s.Limit = &v 7548 return s 7549 } 7550 7551 // SetMarker sets the Marker field's value. 7552 func (s *ListMultipartUploadsInput) SetMarker(v string) *ListMultipartUploadsInput { 7553 s.Marker = &v 7554 return s 7555 } 7556 7557 // SetVaultName sets the VaultName field's value. 7558 func (s *ListMultipartUploadsInput) SetVaultName(v string) *ListMultipartUploadsInput { 7559 s.VaultName = &v 7560 return s 7561 } 7562 7563 // Contains the Amazon S3 Glacier response to your request. 7564 type ListMultipartUploadsOutput struct { 7565 _ struct{} `type:"structure"` 7566 7567 // An opaque string that represents where to continue pagination of the results. 7568 // You use the marker in a new List Multipart Uploads request to obtain more 7569 // uploads in the list. If there are no more uploads, this value is null. 7570 Marker *string `type:"string"` 7571 7572 // A list of in-progress multipart uploads. 7573 UploadsList []*UploadListElement `type:"list"` 7574 } 7575 7576 // String returns the string representation. 7577 // 7578 // API parameter values that are decorated as "sensitive" in the API will not 7579 // be included in the string output. The member name will be present, but the 7580 // value will be replaced with "sensitive". 7581 func (s ListMultipartUploadsOutput) String() string { 7582 return awsutil.Prettify(s) 7583 } 7584 7585 // GoString returns the string representation. 7586 // 7587 // API parameter values that are decorated as "sensitive" in the API will not 7588 // be included in the string output. The member name will be present, but the 7589 // value will be replaced with "sensitive". 7590 func (s ListMultipartUploadsOutput) GoString() string { 7591 return s.String() 7592 } 7593 7594 // SetMarker sets the Marker field's value. 7595 func (s *ListMultipartUploadsOutput) SetMarker(v string) *ListMultipartUploadsOutput { 7596 s.Marker = &v 7597 return s 7598 } 7599 7600 // SetUploadsList sets the UploadsList field's value. 7601 func (s *ListMultipartUploadsOutput) SetUploadsList(v []*UploadListElement) *ListMultipartUploadsOutput { 7602 s.UploadsList = v 7603 return s 7604 } 7605 7606 // Provides options for retrieving a list of parts of an archive that have been 7607 // uploaded in a specific multipart upload. 7608 type ListPartsInput struct { 7609 _ struct{} `type:"structure" nopayload:"true"` 7610 7611 // The AccountId value is the AWS account ID of the account that owns the vault. 7612 // You can either specify an AWS account ID or optionally a single '-' (hyphen), 7613 // in which case Amazon S3 Glacier uses the AWS account ID associated with the 7614 // credentials used to sign the request. If you use an account ID, do not include 7615 // any hyphens ('-') in the ID. 7616 // 7617 // AccountId is a required field 7618 AccountId *string `location:"uri" locationName:"accountId" type:"string" required:"true"` 7619 7620 // The maximum number of parts to be returned. The default limit is 50. The 7621 // number of parts returned might be fewer than the specified limit, but the 7622 // number of returned parts never exceeds the limit. 7623 Limit *string `location:"querystring" locationName:"limit" type:"string"` 7624 7625 // An opaque string used for pagination. This value specifies the part at which 7626 // the listing of parts should begin. Get the marker value from the response 7627 // of a previous List Parts response. You need only include the marker if you 7628 // are continuing the pagination of results started in a previous List Parts 7629 // request. 7630 Marker *string `location:"querystring" locationName:"marker" type:"string"` 7631 7632 // The upload ID of the multipart upload. 7633 // 7634 // UploadId is a required field 7635 UploadId *string `location:"uri" locationName:"uploadId" type:"string" required:"true"` 7636 7637 // The name of the vault. 7638 // 7639 // VaultName is a required field 7640 VaultName *string `location:"uri" locationName:"vaultName" type:"string" required:"true"` 7641 } 7642 7643 // String returns the string representation. 7644 // 7645 // API parameter values that are decorated as "sensitive" in the API will not 7646 // be included in the string output. The member name will be present, but the 7647 // value will be replaced with "sensitive". 7648 func (s ListPartsInput) String() string { 7649 return awsutil.Prettify(s) 7650 } 7651 7652 // GoString returns the string representation. 7653 // 7654 // API parameter values that are decorated as "sensitive" in the API will not 7655 // be included in the string output. The member name will be present, but the 7656 // value will be replaced with "sensitive". 7657 func (s ListPartsInput) GoString() string { 7658 return s.String() 7659 } 7660 7661 // Validate inspects the fields of the type to determine if they are valid. 7662 func (s *ListPartsInput) Validate() error { 7663 invalidParams := request.ErrInvalidParams{Context: "ListPartsInput"} 7664 if s.AccountId == nil { 7665 invalidParams.Add(request.NewErrParamRequired("AccountId")) 7666 } 7667 if s.AccountId != nil && len(*s.AccountId) < 1 { 7668 invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) 7669 } 7670 if s.UploadId == nil { 7671 invalidParams.Add(request.NewErrParamRequired("UploadId")) 7672 } 7673 if s.UploadId != nil && len(*s.UploadId) < 1 { 7674 invalidParams.Add(request.NewErrParamMinLen("UploadId", 1)) 7675 } 7676 if s.VaultName == nil { 7677 invalidParams.Add(request.NewErrParamRequired("VaultName")) 7678 } 7679 if s.VaultName != nil && len(*s.VaultName) < 1 { 7680 invalidParams.Add(request.NewErrParamMinLen("VaultName", 1)) 7681 } 7682 7683 if invalidParams.Len() > 0 { 7684 return invalidParams 7685 } 7686 return nil 7687 } 7688 7689 // SetAccountId sets the AccountId field's value. 7690 func (s *ListPartsInput) SetAccountId(v string) *ListPartsInput { 7691 s.AccountId = &v 7692 return s 7693 } 7694 7695 // SetLimit sets the Limit field's value. 7696 func (s *ListPartsInput) SetLimit(v string) *ListPartsInput { 7697 s.Limit = &v 7698 return s 7699 } 7700 7701 // SetMarker sets the Marker field's value. 7702 func (s *ListPartsInput) SetMarker(v string) *ListPartsInput { 7703 s.Marker = &v 7704 return s 7705 } 7706 7707 // SetUploadId sets the UploadId field's value. 7708 func (s *ListPartsInput) SetUploadId(v string) *ListPartsInput { 7709 s.UploadId = &v 7710 return s 7711 } 7712 7713 // SetVaultName sets the VaultName field's value. 7714 func (s *ListPartsInput) SetVaultName(v string) *ListPartsInput { 7715 s.VaultName = &v 7716 return s 7717 } 7718 7719 // Contains the Amazon S3 Glacier response to your request. 7720 type ListPartsOutput struct { 7721 _ struct{} `type:"structure"` 7722 7723 // The description of the archive that was specified in the Initiate Multipart 7724 // Upload request. 7725 ArchiveDescription *string `type:"string"` 7726 7727 // The UTC time at which the multipart upload was initiated. 7728 CreationDate *string `type:"string"` 7729 7730 // An opaque string that represents where to continue pagination of the results. 7731 // You use the marker in a new List Parts request to obtain more jobs in the 7732 // list. If there are no more parts, this value is null. 7733 Marker *string `type:"string"` 7734 7735 // The ID of the upload to which the parts are associated. 7736 MultipartUploadId *string `type:"string"` 7737 7738 // The part size in bytes. This is the same value that you specified in the 7739 // Initiate Multipart Upload request. 7740 PartSizeInBytes *int64 `type:"long"` 7741 7742 // A list of the part sizes of the multipart upload. Each object in the array 7743 // contains a RangeBytes and sha256-tree-hash name/value pair. 7744 Parts []*PartListElement `type:"list"` 7745 7746 // The Amazon Resource Name (ARN) of the vault to which the multipart upload 7747 // was initiated. 7748 VaultARN *string `type:"string"` 7749 } 7750 7751 // String returns the string representation. 7752 // 7753 // API parameter values that are decorated as "sensitive" in the API will not 7754 // be included in the string output. The member name will be present, but the 7755 // value will be replaced with "sensitive". 7756 func (s ListPartsOutput) String() string { 7757 return awsutil.Prettify(s) 7758 } 7759 7760 // GoString returns the string representation. 7761 // 7762 // API parameter values that are decorated as "sensitive" in the API will not 7763 // be included in the string output. The member name will be present, but the 7764 // value will be replaced with "sensitive". 7765 func (s ListPartsOutput) GoString() string { 7766 return s.String() 7767 } 7768 7769 // SetArchiveDescription sets the ArchiveDescription field's value. 7770 func (s *ListPartsOutput) SetArchiveDescription(v string) *ListPartsOutput { 7771 s.ArchiveDescription = &v 7772 return s 7773 } 7774 7775 // SetCreationDate sets the CreationDate field's value. 7776 func (s *ListPartsOutput) SetCreationDate(v string) *ListPartsOutput { 7777 s.CreationDate = &v 7778 return s 7779 } 7780 7781 // SetMarker sets the Marker field's value. 7782 func (s *ListPartsOutput) SetMarker(v string) *ListPartsOutput { 7783 s.Marker = &v 7784 return s 7785 } 7786 7787 // SetMultipartUploadId sets the MultipartUploadId field's value. 7788 func (s *ListPartsOutput) SetMultipartUploadId(v string) *ListPartsOutput { 7789 s.MultipartUploadId = &v 7790 return s 7791 } 7792 7793 // SetPartSizeInBytes sets the PartSizeInBytes field's value. 7794 func (s *ListPartsOutput) SetPartSizeInBytes(v int64) *ListPartsOutput { 7795 s.PartSizeInBytes = &v 7796 return s 7797 } 7798 7799 // SetParts sets the Parts field's value. 7800 func (s *ListPartsOutput) SetParts(v []*PartListElement) *ListPartsOutput { 7801 s.Parts = v 7802 return s 7803 } 7804 7805 // SetVaultARN sets the VaultARN field's value. 7806 func (s *ListPartsOutput) SetVaultARN(v string) *ListPartsOutput { 7807 s.VaultARN = &v 7808 return s 7809 } 7810 7811 type ListProvisionedCapacityInput struct { 7812 _ struct{} `type:"structure" nopayload:"true"` 7813 7814 // The AWS account ID of the account that owns the vault. You can either specify 7815 // an AWS account ID or optionally a single '-' (hyphen), in which case Amazon 7816 // S3 Glacier uses the AWS account ID associated with the credentials used to 7817 // sign the request. If you use an account ID, don't include any hyphens ('-') 7818 // in the ID. 7819 // 7820 // AccountId is a required field 7821 AccountId *string `location:"uri" locationName:"accountId" type:"string" required:"true"` 7822 } 7823 7824 // String returns the string representation. 7825 // 7826 // API parameter values that are decorated as "sensitive" in the API will not 7827 // be included in the string output. The member name will be present, but the 7828 // value will be replaced with "sensitive". 7829 func (s ListProvisionedCapacityInput) String() string { 7830 return awsutil.Prettify(s) 7831 } 7832 7833 // GoString returns the string representation. 7834 // 7835 // API parameter values that are decorated as "sensitive" in the API will not 7836 // be included in the string output. The member name will be present, but the 7837 // value will be replaced with "sensitive". 7838 func (s ListProvisionedCapacityInput) GoString() string { 7839 return s.String() 7840 } 7841 7842 // Validate inspects the fields of the type to determine if they are valid. 7843 func (s *ListProvisionedCapacityInput) Validate() error { 7844 invalidParams := request.ErrInvalidParams{Context: "ListProvisionedCapacityInput"} 7845 if s.AccountId == nil { 7846 invalidParams.Add(request.NewErrParamRequired("AccountId")) 7847 } 7848 if s.AccountId != nil && len(*s.AccountId) < 1 { 7849 invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) 7850 } 7851 7852 if invalidParams.Len() > 0 { 7853 return invalidParams 7854 } 7855 return nil 7856 } 7857 7858 // SetAccountId sets the AccountId field's value. 7859 func (s *ListProvisionedCapacityInput) SetAccountId(v string) *ListProvisionedCapacityInput { 7860 s.AccountId = &v 7861 return s 7862 } 7863 7864 type ListProvisionedCapacityOutput struct { 7865 _ struct{} `type:"structure"` 7866 7867 // The response body contains the following JSON fields. 7868 ProvisionedCapacityList []*ProvisionedCapacityDescription `type:"list"` 7869 } 7870 7871 // String returns the string representation. 7872 // 7873 // API parameter values that are decorated as "sensitive" in the API will not 7874 // be included in the string output. The member name will be present, but the 7875 // value will be replaced with "sensitive". 7876 func (s ListProvisionedCapacityOutput) String() string { 7877 return awsutil.Prettify(s) 7878 } 7879 7880 // GoString returns the string representation. 7881 // 7882 // API parameter values that are decorated as "sensitive" in the API will not 7883 // be included in the string output. The member name will be present, but the 7884 // value will be replaced with "sensitive". 7885 func (s ListProvisionedCapacityOutput) GoString() string { 7886 return s.String() 7887 } 7888 7889 // SetProvisionedCapacityList sets the ProvisionedCapacityList field's value. 7890 func (s *ListProvisionedCapacityOutput) SetProvisionedCapacityList(v []*ProvisionedCapacityDescription) *ListProvisionedCapacityOutput { 7891 s.ProvisionedCapacityList = v 7892 return s 7893 } 7894 7895 // The input value for ListTagsForVaultInput. 7896 type ListTagsForVaultInput struct { 7897 _ struct{} `type:"structure" nopayload:"true"` 7898 7899 // The AccountId value is the AWS account ID of the account that owns the vault. 7900 // You can either specify an AWS account ID or optionally a single '-' (hyphen), 7901 // in which case Amazon S3 Glacier uses the AWS account ID associated with the 7902 // credentials used to sign the request. If you use an account ID, do not include 7903 // any hyphens ('-') in the ID. 7904 // 7905 // AccountId is a required field 7906 AccountId *string `location:"uri" locationName:"accountId" type:"string" required:"true"` 7907 7908 // The name of the vault. 7909 // 7910 // VaultName is a required field 7911 VaultName *string `location:"uri" locationName:"vaultName" type:"string" required:"true"` 7912 } 7913 7914 // String returns the string representation. 7915 // 7916 // API parameter values that are decorated as "sensitive" in the API will not 7917 // be included in the string output. The member name will be present, but the 7918 // value will be replaced with "sensitive". 7919 func (s ListTagsForVaultInput) String() string { 7920 return awsutil.Prettify(s) 7921 } 7922 7923 // GoString returns the string representation. 7924 // 7925 // API parameter values that are decorated as "sensitive" in the API will not 7926 // be included in the string output. The member name will be present, but the 7927 // value will be replaced with "sensitive". 7928 func (s ListTagsForVaultInput) GoString() string { 7929 return s.String() 7930 } 7931 7932 // Validate inspects the fields of the type to determine if they are valid. 7933 func (s *ListTagsForVaultInput) Validate() error { 7934 invalidParams := request.ErrInvalidParams{Context: "ListTagsForVaultInput"} 7935 if s.AccountId == nil { 7936 invalidParams.Add(request.NewErrParamRequired("AccountId")) 7937 } 7938 if s.AccountId != nil && len(*s.AccountId) < 1 { 7939 invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) 7940 } 7941 if s.VaultName == nil { 7942 invalidParams.Add(request.NewErrParamRequired("VaultName")) 7943 } 7944 if s.VaultName != nil && len(*s.VaultName) < 1 { 7945 invalidParams.Add(request.NewErrParamMinLen("VaultName", 1)) 7946 } 7947 7948 if invalidParams.Len() > 0 { 7949 return invalidParams 7950 } 7951 return nil 7952 } 7953 7954 // SetAccountId sets the AccountId field's value. 7955 func (s *ListTagsForVaultInput) SetAccountId(v string) *ListTagsForVaultInput { 7956 s.AccountId = &v 7957 return s 7958 } 7959 7960 // SetVaultName sets the VaultName field's value. 7961 func (s *ListTagsForVaultInput) SetVaultName(v string) *ListTagsForVaultInput { 7962 s.VaultName = &v 7963 return s 7964 } 7965 7966 // Contains the Amazon S3 Glacier response to your request. 7967 type ListTagsForVaultOutput struct { 7968 _ struct{} `type:"structure"` 7969 7970 // The tags attached to the vault. Each tag is composed of a key and a value. 7971 Tags map[string]*string `type:"map"` 7972 } 7973 7974 // String returns the string representation. 7975 // 7976 // API parameter values that are decorated as "sensitive" in the API will not 7977 // be included in the string output. The member name will be present, but the 7978 // value will be replaced with "sensitive". 7979 func (s ListTagsForVaultOutput) String() string { 7980 return awsutil.Prettify(s) 7981 } 7982 7983 // GoString returns the string representation. 7984 // 7985 // API parameter values that are decorated as "sensitive" in the API will not 7986 // be included in the string output. The member name will be present, but the 7987 // value will be replaced with "sensitive". 7988 func (s ListTagsForVaultOutput) GoString() string { 7989 return s.String() 7990 } 7991 7992 // SetTags sets the Tags field's value. 7993 func (s *ListTagsForVaultOutput) SetTags(v map[string]*string) *ListTagsForVaultOutput { 7994 s.Tags = v 7995 return s 7996 } 7997 7998 // Provides options to retrieve the vault list owned by the calling user's account. 7999 // The list provides metadata information for each vault. 8000 type ListVaultsInput struct { 8001 _ struct{} `type:"structure" nopayload:"true"` 8002 8003 // The AccountId value is the AWS account ID. This value must match the AWS 8004 // account ID associated with the credentials used to sign the request. You 8005 // can either specify an AWS account ID or optionally a single '-' (hyphen), 8006 // in which case Amazon Glacier uses the AWS account ID associated with the 8007 // credentials used to sign the request. If you specify your account ID, do 8008 // not include any hyphens ('-') in the ID. 8009 // 8010 // AccountId is a required field 8011 AccountId *string `location:"uri" locationName:"accountId" type:"string" required:"true"` 8012 8013 // The maximum number of vaults to be returned. The default limit is 10. The 8014 // number of vaults returned might be fewer than the specified limit, but the 8015 // number of returned vaults never exceeds the limit. 8016 Limit *string `location:"querystring" locationName:"limit" type:"string"` 8017 8018 // A string used for pagination. The marker specifies the vault ARN after which 8019 // the listing of vaults should begin. 8020 Marker *string `location:"querystring" locationName:"marker" type:"string"` 8021 } 8022 8023 // String returns the string representation. 8024 // 8025 // API parameter values that are decorated as "sensitive" in the API will not 8026 // be included in the string output. The member name will be present, but the 8027 // value will be replaced with "sensitive". 8028 func (s ListVaultsInput) String() string { 8029 return awsutil.Prettify(s) 8030 } 8031 8032 // GoString returns the string representation. 8033 // 8034 // API parameter values that are decorated as "sensitive" in the API will not 8035 // be included in the string output. The member name will be present, but the 8036 // value will be replaced with "sensitive". 8037 func (s ListVaultsInput) GoString() string { 8038 return s.String() 8039 } 8040 8041 // Validate inspects the fields of the type to determine if they are valid. 8042 func (s *ListVaultsInput) Validate() error { 8043 invalidParams := request.ErrInvalidParams{Context: "ListVaultsInput"} 8044 if s.AccountId == nil { 8045 invalidParams.Add(request.NewErrParamRequired("AccountId")) 8046 } 8047 if s.AccountId != nil && len(*s.AccountId) < 1 { 8048 invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) 8049 } 8050 8051 if invalidParams.Len() > 0 { 8052 return invalidParams 8053 } 8054 return nil 8055 } 8056 8057 // SetAccountId sets the AccountId field's value. 8058 func (s *ListVaultsInput) SetAccountId(v string) *ListVaultsInput { 8059 s.AccountId = &v 8060 return s 8061 } 8062 8063 // SetLimit sets the Limit field's value. 8064 func (s *ListVaultsInput) SetLimit(v string) *ListVaultsInput { 8065 s.Limit = &v 8066 return s 8067 } 8068 8069 // SetMarker sets the Marker field's value. 8070 func (s *ListVaultsInput) SetMarker(v string) *ListVaultsInput { 8071 s.Marker = &v 8072 return s 8073 } 8074 8075 // Contains the Amazon S3 Glacier response to your request. 8076 type ListVaultsOutput struct { 8077 _ struct{} `type:"structure"` 8078 8079 // The vault ARN at which to continue pagination of the results. You use the 8080 // marker in another List Vaults request to obtain more vaults in the list. 8081 Marker *string `type:"string"` 8082 8083 // List of vaults. 8084 VaultList []*DescribeVaultOutput `type:"list"` 8085 } 8086 8087 // String returns the string representation. 8088 // 8089 // API parameter values that are decorated as "sensitive" in the API will not 8090 // be included in the string output. The member name will be present, but the 8091 // value will be replaced with "sensitive". 8092 func (s ListVaultsOutput) String() string { 8093 return awsutil.Prettify(s) 8094 } 8095 8096 // GoString returns the string representation. 8097 // 8098 // API parameter values that are decorated as "sensitive" in the API will not 8099 // be included in the string output. The member name will be present, but the 8100 // value will be replaced with "sensitive". 8101 func (s ListVaultsOutput) GoString() string { 8102 return s.String() 8103 } 8104 8105 // SetMarker sets the Marker field's value. 8106 func (s *ListVaultsOutput) SetMarker(v string) *ListVaultsOutput { 8107 s.Marker = &v 8108 return s 8109 } 8110 8111 // SetVaultList sets the VaultList field's value. 8112 func (s *ListVaultsOutput) SetVaultList(v []*DescribeVaultOutput) *ListVaultsOutput { 8113 s.VaultList = v 8114 return s 8115 } 8116 8117 // Returned if a required header or parameter is missing from the request. 8118 type MissingParameterValueException struct { 8119 _ struct{} `type:"structure"` 8120 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 8121 8122 // 400 Bad Request 8123 Code_ *string `locationName:"code" type:"string"` 8124 8125 // Returned if no authentication data is found for the request. 8126 Message_ *string `locationName:"message" type:"string"` 8127 8128 // Client. 8129 Type *string `locationName:"type" type:"string"` 8130 } 8131 8132 // String returns the string representation. 8133 // 8134 // API parameter values that are decorated as "sensitive" in the API will not 8135 // be included in the string output. The member name will be present, but the 8136 // value will be replaced with "sensitive". 8137 func (s MissingParameterValueException) String() string { 8138 return awsutil.Prettify(s) 8139 } 8140 8141 // GoString returns the string representation. 8142 // 8143 // API parameter values that are decorated as "sensitive" in the API will not 8144 // be included in the string output. The member name will be present, but the 8145 // value will be replaced with "sensitive". 8146 func (s MissingParameterValueException) GoString() string { 8147 return s.String() 8148 } 8149 8150 func newErrorMissingParameterValueException(v protocol.ResponseMetadata) error { 8151 return &MissingParameterValueException{ 8152 RespMetadata: v, 8153 } 8154 } 8155 8156 // Code returns the exception type name. 8157 func (s *MissingParameterValueException) Code() string { 8158 return "MissingParameterValueException" 8159 } 8160 8161 // Message returns the exception's message. 8162 func (s *MissingParameterValueException) Message() string { 8163 if s.Message_ != nil { 8164 return *s.Message_ 8165 } 8166 return "" 8167 } 8168 8169 // OrigErr always returns nil, satisfies awserr.Error interface. 8170 func (s *MissingParameterValueException) OrigErr() error { 8171 return nil 8172 } 8173 8174 func (s *MissingParameterValueException) Error() string { 8175 return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) 8176 } 8177 8178 // Status code returns the HTTP status code for the request's response error. 8179 func (s *MissingParameterValueException) StatusCode() int { 8180 return s.RespMetadata.StatusCode 8181 } 8182 8183 // RequestID returns the service's response RequestID for request. 8184 func (s *MissingParameterValueException) RequestID() string { 8185 return s.RespMetadata.RequestID 8186 } 8187 8188 // Contains information about the location where the select job results are 8189 // stored. 8190 type OutputLocation struct { 8191 _ struct{} `type:"structure"` 8192 8193 // Describes an S3 location that will receive the results of the job request. 8194 S3 *S3Location `type:"structure"` 8195 } 8196 8197 // String returns the string representation. 8198 // 8199 // API parameter values that are decorated as "sensitive" in the API will not 8200 // be included in the string output. The member name will be present, but the 8201 // value will be replaced with "sensitive". 8202 func (s OutputLocation) String() string { 8203 return awsutil.Prettify(s) 8204 } 8205 8206 // GoString returns the string representation. 8207 // 8208 // API parameter values that are decorated as "sensitive" in the API will not 8209 // be included in the string output. The member name will be present, but the 8210 // value will be replaced with "sensitive". 8211 func (s OutputLocation) GoString() string { 8212 return s.String() 8213 } 8214 8215 // Validate inspects the fields of the type to determine if they are valid. 8216 func (s *OutputLocation) Validate() error { 8217 invalidParams := request.ErrInvalidParams{Context: "OutputLocation"} 8218 if s.S3 != nil { 8219 if err := s.S3.Validate(); err != nil { 8220 invalidParams.AddNested("S3", err.(request.ErrInvalidParams)) 8221 } 8222 } 8223 8224 if invalidParams.Len() > 0 { 8225 return invalidParams 8226 } 8227 return nil 8228 } 8229 8230 // SetS3 sets the S3 field's value. 8231 func (s *OutputLocation) SetS3(v *S3Location) *OutputLocation { 8232 s.S3 = v 8233 return s 8234 } 8235 8236 // Describes how the select output is serialized. 8237 type OutputSerialization struct { 8238 _ struct{} `type:"structure"` 8239 8240 // Describes the serialization of CSV-encoded query results. 8241 Csv *CSVOutput `locationName:"csv" type:"structure"` 8242 } 8243 8244 // String returns the string representation. 8245 // 8246 // API parameter values that are decorated as "sensitive" in the API will not 8247 // be included in the string output. The member name will be present, but the 8248 // value will be replaced with "sensitive". 8249 func (s OutputSerialization) String() string { 8250 return awsutil.Prettify(s) 8251 } 8252 8253 // GoString returns the string representation. 8254 // 8255 // API parameter values that are decorated as "sensitive" in the API will not 8256 // be included in the string output. The member name will be present, but the 8257 // value will be replaced with "sensitive". 8258 func (s OutputSerialization) GoString() string { 8259 return s.String() 8260 } 8261 8262 // SetCsv sets the Csv field's value. 8263 func (s *OutputSerialization) SetCsv(v *CSVOutput) *OutputSerialization { 8264 s.Csv = v 8265 return s 8266 } 8267 8268 // A list of the part sizes of the multipart upload. 8269 type PartListElement struct { 8270 _ struct{} `type:"structure"` 8271 8272 // The byte range of a part, inclusive of the upper value of the range. 8273 RangeInBytes *string `type:"string"` 8274 8275 // The SHA256 tree hash value that Amazon S3 Glacier calculated for the part. 8276 // This field is never null. 8277 SHA256TreeHash *string `type:"string"` 8278 } 8279 8280 // String returns the string representation. 8281 // 8282 // API parameter values that are decorated as "sensitive" in the API will not 8283 // be included in the string output. The member name will be present, but the 8284 // value will be replaced with "sensitive". 8285 func (s PartListElement) String() string { 8286 return awsutil.Prettify(s) 8287 } 8288 8289 // GoString returns the string representation. 8290 // 8291 // API parameter values that are decorated as "sensitive" in the API will not 8292 // be included in the string output. The member name will be present, but the 8293 // value will be replaced with "sensitive". 8294 func (s PartListElement) GoString() string { 8295 return s.String() 8296 } 8297 8298 // SetRangeInBytes sets the RangeInBytes field's value. 8299 func (s *PartListElement) SetRangeInBytes(v string) *PartListElement { 8300 s.RangeInBytes = &v 8301 return s 8302 } 8303 8304 // SetSHA256TreeHash sets the SHA256TreeHash field's value. 8305 func (s *PartListElement) SetSHA256TreeHash(v string) *PartListElement { 8306 s.SHA256TreeHash = &v 8307 return s 8308 } 8309 8310 // Returned if a retrieval job would exceed the current data policy's retrieval 8311 // rate limit. For more information about data retrieval policies, 8312 type PolicyEnforcedException struct { 8313 _ struct{} `type:"structure"` 8314 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 8315 8316 // PolicyEnforcedException 8317 Code_ *string `locationName:"code" type:"string"` 8318 8319 // InitiateJob request denied by current data retrieval policy. 8320 Message_ *string `locationName:"message" type:"string"` 8321 8322 // Client 8323 Type *string `locationName:"type" type:"string"` 8324 } 8325 8326 // String returns the string representation. 8327 // 8328 // API parameter values that are decorated as "sensitive" in the API will not 8329 // be included in the string output. The member name will be present, but the 8330 // value will be replaced with "sensitive". 8331 func (s PolicyEnforcedException) String() string { 8332 return awsutil.Prettify(s) 8333 } 8334 8335 // GoString returns the string representation. 8336 // 8337 // API parameter values that are decorated as "sensitive" in the API will not 8338 // be included in the string output. The member name will be present, but the 8339 // value will be replaced with "sensitive". 8340 func (s PolicyEnforcedException) GoString() string { 8341 return s.String() 8342 } 8343 8344 func newErrorPolicyEnforcedException(v protocol.ResponseMetadata) error { 8345 return &PolicyEnforcedException{ 8346 RespMetadata: v, 8347 } 8348 } 8349 8350 // Code returns the exception type name. 8351 func (s *PolicyEnforcedException) Code() string { 8352 return "PolicyEnforcedException" 8353 } 8354 8355 // Message returns the exception's message. 8356 func (s *PolicyEnforcedException) Message() string { 8357 if s.Message_ != nil { 8358 return *s.Message_ 8359 } 8360 return "" 8361 } 8362 8363 // OrigErr always returns nil, satisfies awserr.Error interface. 8364 func (s *PolicyEnforcedException) OrigErr() error { 8365 return nil 8366 } 8367 8368 func (s *PolicyEnforcedException) Error() string { 8369 return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) 8370 } 8371 8372 // Status code returns the HTTP status code for the request's response error. 8373 func (s *PolicyEnforcedException) StatusCode() int { 8374 return s.RespMetadata.StatusCode 8375 } 8376 8377 // RequestID returns the service's response RequestID for request. 8378 func (s *PolicyEnforcedException) RequestID() string { 8379 return s.RespMetadata.RequestID 8380 } 8381 8382 // The definition for a provisioned capacity unit. 8383 type ProvisionedCapacityDescription struct { 8384 _ struct{} `type:"structure"` 8385 8386 // The ID that identifies the provisioned capacity unit. 8387 CapacityId *string `type:"string"` 8388 8389 // The date that the provisioned capacity unit expires, in Universal Coordinated 8390 // Time (UTC). 8391 ExpirationDate *string `type:"string"` 8392 8393 // The date that the provisioned capacity unit was purchased, in Universal Coordinated 8394 // Time (UTC). 8395 StartDate *string `type:"string"` 8396 } 8397 8398 // String returns the string representation. 8399 // 8400 // API parameter values that are decorated as "sensitive" in the API will not 8401 // be included in the string output. The member name will be present, but the 8402 // value will be replaced with "sensitive". 8403 func (s ProvisionedCapacityDescription) String() string { 8404 return awsutil.Prettify(s) 8405 } 8406 8407 // GoString returns the string representation. 8408 // 8409 // API parameter values that are decorated as "sensitive" in the API will not 8410 // be included in the string output. The member name will be present, but the 8411 // value will be replaced with "sensitive". 8412 func (s ProvisionedCapacityDescription) GoString() string { 8413 return s.String() 8414 } 8415 8416 // SetCapacityId sets the CapacityId field's value. 8417 func (s *ProvisionedCapacityDescription) SetCapacityId(v string) *ProvisionedCapacityDescription { 8418 s.CapacityId = &v 8419 return s 8420 } 8421 8422 // SetExpirationDate sets the ExpirationDate field's value. 8423 func (s *ProvisionedCapacityDescription) SetExpirationDate(v string) *ProvisionedCapacityDescription { 8424 s.ExpirationDate = &v 8425 return s 8426 } 8427 8428 // SetStartDate sets the StartDate field's value. 8429 func (s *ProvisionedCapacityDescription) SetStartDate(v string) *ProvisionedCapacityDescription { 8430 s.StartDate = &v 8431 return s 8432 } 8433 8434 type PurchaseProvisionedCapacityInput struct { 8435 _ struct{} `type:"structure" nopayload:"true"` 8436 8437 // The AWS account ID of the account that owns the vault. You can either specify 8438 // an AWS account ID or optionally a single '-' (hyphen), in which case Amazon 8439 // S3 Glacier uses the AWS account ID associated with the credentials used to 8440 // sign the request. If you use an account ID, don't include any hyphens ('-') 8441 // in the ID. 8442 // 8443 // AccountId is a required field 8444 AccountId *string `location:"uri" locationName:"accountId" type:"string" required:"true"` 8445 } 8446 8447 // String returns the string representation. 8448 // 8449 // API parameter values that are decorated as "sensitive" in the API will not 8450 // be included in the string output. The member name will be present, but the 8451 // value will be replaced with "sensitive". 8452 func (s PurchaseProvisionedCapacityInput) String() string { 8453 return awsutil.Prettify(s) 8454 } 8455 8456 // GoString returns the string representation. 8457 // 8458 // API parameter values that are decorated as "sensitive" in the API will not 8459 // be included in the string output. The member name will be present, but the 8460 // value will be replaced with "sensitive". 8461 func (s PurchaseProvisionedCapacityInput) GoString() string { 8462 return s.String() 8463 } 8464 8465 // Validate inspects the fields of the type to determine if they are valid. 8466 func (s *PurchaseProvisionedCapacityInput) Validate() error { 8467 invalidParams := request.ErrInvalidParams{Context: "PurchaseProvisionedCapacityInput"} 8468 if s.AccountId == nil { 8469 invalidParams.Add(request.NewErrParamRequired("AccountId")) 8470 } 8471 if s.AccountId != nil && len(*s.AccountId) < 1 { 8472 invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) 8473 } 8474 8475 if invalidParams.Len() > 0 { 8476 return invalidParams 8477 } 8478 return nil 8479 } 8480 8481 // SetAccountId sets the AccountId field's value. 8482 func (s *PurchaseProvisionedCapacityInput) SetAccountId(v string) *PurchaseProvisionedCapacityInput { 8483 s.AccountId = &v 8484 return s 8485 } 8486 8487 type PurchaseProvisionedCapacityOutput struct { 8488 _ struct{} `type:"structure" nopayload:"true"` 8489 8490 // The ID that identifies the provisioned capacity unit. 8491 CapacityId *string `location:"header" locationName:"x-amz-capacity-id" type:"string"` 8492 } 8493 8494 // String returns the string representation. 8495 // 8496 // API parameter values that are decorated as "sensitive" in the API will not 8497 // be included in the string output. The member name will be present, but the 8498 // value will be replaced with "sensitive". 8499 func (s PurchaseProvisionedCapacityOutput) String() string { 8500 return awsutil.Prettify(s) 8501 } 8502 8503 // GoString returns the string representation. 8504 // 8505 // API parameter values that are decorated as "sensitive" in the API will not 8506 // be included in the string output. The member name will be present, but the 8507 // value will be replaced with "sensitive". 8508 func (s PurchaseProvisionedCapacityOutput) GoString() string { 8509 return s.String() 8510 } 8511 8512 // SetCapacityId sets the CapacityId field's value. 8513 func (s *PurchaseProvisionedCapacityOutput) SetCapacityId(v string) *PurchaseProvisionedCapacityOutput { 8514 s.CapacityId = &v 8515 return s 8516 } 8517 8518 // The input value for RemoveTagsFromVaultInput. 8519 type RemoveTagsFromVaultInput struct { 8520 _ struct{} `type:"structure"` 8521 8522 // The AccountId value is the AWS account ID of the account that owns the vault. 8523 // You can either specify an AWS account ID or optionally a single '-' (hyphen), 8524 // in which case Amazon S3 Glacier uses the AWS account ID associated with the 8525 // credentials used to sign the request. If you use an account ID, do not include 8526 // any hyphens ('-') in the ID. 8527 // 8528 // AccountId is a required field 8529 AccountId *string `location:"uri" locationName:"accountId" type:"string" required:"true"` 8530 8531 // A list of tag keys. Each corresponding tag is removed from the vault. 8532 TagKeys []*string `type:"list"` 8533 8534 // The name of the vault. 8535 // 8536 // VaultName is a required field 8537 VaultName *string `location:"uri" locationName:"vaultName" type:"string" required:"true"` 8538 } 8539 8540 // String returns the string representation. 8541 // 8542 // API parameter values that are decorated as "sensitive" in the API will not 8543 // be included in the string output. The member name will be present, but the 8544 // value will be replaced with "sensitive". 8545 func (s RemoveTagsFromVaultInput) String() string { 8546 return awsutil.Prettify(s) 8547 } 8548 8549 // GoString returns the string representation. 8550 // 8551 // API parameter values that are decorated as "sensitive" in the API will not 8552 // be included in the string output. The member name will be present, but the 8553 // value will be replaced with "sensitive". 8554 func (s RemoveTagsFromVaultInput) GoString() string { 8555 return s.String() 8556 } 8557 8558 // Validate inspects the fields of the type to determine if they are valid. 8559 func (s *RemoveTagsFromVaultInput) Validate() error { 8560 invalidParams := request.ErrInvalidParams{Context: "RemoveTagsFromVaultInput"} 8561 if s.AccountId == nil { 8562 invalidParams.Add(request.NewErrParamRequired("AccountId")) 8563 } 8564 if s.AccountId != nil && len(*s.AccountId) < 1 { 8565 invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) 8566 } 8567 if s.VaultName == nil { 8568 invalidParams.Add(request.NewErrParamRequired("VaultName")) 8569 } 8570 if s.VaultName != nil && len(*s.VaultName) < 1 { 8571 invalidParams.Add(request.NewErrParamMinLen("VaultName", 1)) 8572 } 8573 8574 if invalidParams.Len() > 0 { 8575 return invalidParams 8576 } 8577 return nil 8578 } 8579 8580 // SetAccountId sets the AccountId field's value. 8581 func (s *RemoveTagsFromVaultInput) SetAccountId(v string) *RemoveTagsFromVaultInput { 8582 s.AccountId = &v 8583 return s 8584 } 8585 8586 // SetTagKeys sets the TagKeys field's value. 8587 func (s *RemoveTagsFromVaultInput) SetTagKeys(v []*string) *RemoveTagsFromVaultInput { 8588 s.TagKeys = v 8589 return s 8590 } 8591 8592 // SetVaultName sets the VaultName field's value. 8593 func (s *RemoveTagsFromVaultInput) SetVaultName(v string) *RemoveTagsFromVaultInput { 8594 s.VaultName = &v 8595 return s 8596 } 8597 8598 type RemoveTagsFromVaultOutput struct { 8599 _ struct{} `type:"structure" nopayload:"true"` 8600 } 8601 8602 // String returns the string representation. 8603 // 8604 // API parameter values that are decorated as "sensitive" in the API will not 8605 // be included in the string output. The member name will be present, but the 8606 // value will be replaced with "sensitive". 8607 func (s RemoveTagsFromVaultOutput) String() string { 8608 return awsutil.Prettify(s) 8609 } 8610 8611 // GoString returns the string representation. 8612 // 8613 // API parameter values that are decorated as "sensitive" in the API will not 8614 // be included in the string output. The member name will be present, but the 8615 // value will be replaced with "sensitive". 8616 func (s RemoveTagsFromVaultOutput) GoString() string { 8617 return s.String() 8618 } 8619 8620 // Returned if, when uploading an archive, Amazon S3 Glacier times out while 8621 // receiving the upload. 8622 type RequestTimeoutException struct { 8623 _ struct{} `type:"structure"` 8624 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 8625 8626 // 408 Request Timeout 8627 Code_ *string `locationName:"code" type:"string"` 8628 8629 // Returned if, when uploading an archive, Amazon S3 Glacier times out while 8630 // receiving the upload. 8631 Message_ *string `locationName:"message" type:"string"` 8632 8633 // Client 8634 Type *string `locationName:"type" type:"string"` 8635 } 8636 8637 // String returns the string representation. 8638 // 8639 // API parameter values that are decorated as "sensitive" in the API will not 8640 // be included in the string output. The member name will be present, but the 8641 // value will be replaced with "sensitive". 8642 func (s RequestTimeoutException) String() string { 8643 return awsutil.Prettify(s) 8644 } 8645 8646 // GoString returns the string representation. 8647 // 8648 // API parameter values that are decorated as "sensitive" in the API will not 8649 // be included in the string output. The member name will be present, but the 8650 // value will be replaced with "sensitive". 8651 func (s RequestTimeoutException) GoString() string { 8652 return s.String() 8653 } 8654 8655 func newErrorRequestTimeoutException(v protocol.ResponseMetadata) error { 8656 return &RequestTimeoutException{ 8657 RespMetadata: v, 8658 } 8659 } 8660 8661 // Code returns the exception type name. 8662 func (s *RequestTimeoutException) Code() string { 8663 return "RequestTimeoutException" 8664 } 8665 8666 // Message returns the exception's message. 8667 func (s *RequestTimeoutException) Message() string { 8668 if s.Message_ != nil { 8669 return *s.Message_ 8670 } 8671 return "" 8672 } 8673 8674 // OrigErr always returns nil, satisfies awserr.Error interface. 8675 func (s *RequestTimeoutException) OrigErr() error { 8676 return nil 8677 } 8678 8679 func (s *RequestTimeoutException) Error() string { 8680 return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) 8681 } 8682 8683 // Status code returns the HTTP status code for the request's response error. 8684 func (s *RequestTimeoutException) StatusCode() int { 8685 return s.RespMetadata.StatusCode 8686 } 8687 8688 // RequestID returns the service's response RequestID for request. 8689 func (s *RequestTimeoutException) RequestID() string { 8690 return s.RespMetadata.RequestID 8691 } 8692 8693 // Returned if the specified resource (such as a vault, upload ID, or job ID) 8694 // doesn't exist. 8695 type ResourceNotFoundException struct { 8696 _ struct{} `type:"structure"` 8697 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 8698 8699 // 404 Not Found 8700 Code_ *string `locationName:"code" type:"string"` 8701 8702 // Returned if the specified resource (such as a vault, upload ID, or job ID) 8703 // doesn't exist. 8704 Message_ *string `locationName:"message" type:"string"` 8705 8706 // Client 8707 Type *string `locationName:"type" type:"string"` 8708 } 8709 8710 // String returns the string representation. 8711 // 8712 // API parameter values that are decorated as "sensitive" in the API will not 8713 // be included in the string output. The member name will be present, but the 8714 // value will be replaced with "sensitive". 8715 func (s ResourceNotFoundException) String() string { 8716 return awsutil.Prettify(s) 8717 } 8718 8719 // GoString returns the string representation. 8720 // 8721 // API parameter values that are decorated as "sensitive" in the API will not 8722 // be included in the string output. The member name will be present, but the 8723 // value will be replaced with "sensitive". 8724 func (s ResourceNotFoundException) GoString() string { 8725 return s.String() 8726 } 8727 8728 func newErrorResourceNotFoundException(v protocol.ResponseMetadata) error { 8729 return &ResourceNotFoundException{ 8730 RespMetadata: v, 8731 } 8732 } 8733 8734 // Code returns the exception type name. 8735 func (s *ResourceNotFoundException) Code() string { 8736 return "ResourceNotFoundException" 8737 } 8738 8739 // Message returns the exception's message. 8740 func (s *ResourceNotFoundException) Message() string { 8741 if s.Message_ != nil { 8742 return *s.Message_ 8743 } 8744 return "" 8745 } 8746 8747 // OrigErr always returns nil, satisfies awserr.Error interface. 8748 func (s *ResourceNotFoundException) OrigErr() error { 8749 return nil 8750 } 8751 8752 func (s *ResourceNotFoundException) Error() string { 8753 return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) 8754 } 8755 8756 // Status code returns the HTTP status code for the request's response error. 8757 func (s *ResourceNotFoundException) StatusCode() int { 8758 return s.RespMetadata.StatusCode 8759 } 8760 8761 // RequestID returns the service's response RequestID for request. 8762 func (s *ResourceNotFoundException) RequestID() string { 8763 return s.RespMetadata.RequestID 8764 } 8765 8766 // Contains information about the location in Amazon S3 where the select job 8767 // results are stored. 8768 type S3Location struct { 8769 _ struct{} `type:"structure"` 8770 8771 // A list of grants that control access to the staged results. 8772 AccessControlList []*Grant `type:"list"` 8773 8774 // The name of the Amazon S3 bucket where the job results are stored. 8775 BucketName *string `type:"string"` 8776 8777 // The canned access control list (ACL) to apply to the job results. 8778 CannedACL *string `type:"string" enum:"CannedACL"` 8779 8780 // Contains information about the encryption used to store the job results in 8781 // Amazon S3. 8782 Encryption *Encryption `type:"structure"` 8783 8784 // The prefix that is prepended to the results for this request. 8785 Prefix *string `type:"string"` 8786 8787 // The storage class used to store the job results. 8788 StorageClass *string `type:"string" enum:"StorageClass"` 8789 8790 // The tag-set that is applied to the job results. 8791 Tagging map[string]*string `type:"map"` 8792 8793 // A map of metadata to store with the job results in Amazon S3. 8794 UserMetadata map[string]*string `type:"map"` 8795 } 8796 8797 // String returns the string representation. 8798 // 8799 // API parameter values that are decorated as "sensitive" in the API will not 8800 // be included in the string output. The member name will be present, but the 8801 // value will be replaced with "sensitive". 8802 func (s S3Location) String() string { 8803 return awsutil.Prettify(s) 8804 } 8805 8806 // GoString returns the string representation. 8807 // 8808 // API parameter values that are decorated as "sensitive" in the API will not 8809 // be included in the string output. The member name will be present, but the 8810 // value will be replaced with "sensitive". 8811 func (s S3Location) GoString() string { 8812 return s.String() 8813 } 8814 8815 // Validate inspects the fields of the type to determine if they are valid. 8816 func (s *S3Location) Validate() error { 8817 invalidParams := request.ErrInvalidParams{Context: "S3Location"} 8818 if s.AccessControlList != nil { 8819 for i, v := range s.AccessControlList { 8820 if v == nil { 8821 continue 8822 } 8823 if err := v.Validate(); err != nil { 8824 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "AccessControlList", i), err.(request.ErrInvalidParams)) 8825 } 8826 } 8827 } 8828 8829 if invalidParams.Len() > 0 { 8830 return invalidParams 8831 } 8832 return nil 8833 } 8834 8835 // SetAccessControlList sets the AccessControlList field's value. 8836 func (s *S3Location) SetAccessControlList(v []*Grant) *S3Location { 8837 s.AccessControlList = v 8838 return s 8839 } 8840 8841 // SetBucketName sets the BucketName field's value. 8842 func (s *S3Location) SetBucketName(v string) *S3Location { 8843 s.BucketName = &v 8844 return s 8845 } 8846 8847 // SetCannedACL sets the CannedACL field's value. 8848 func (s *S3Location) SetCannedACL(v string) *S3Location { 8849 s.CannedACL = &v 8850 return s 8851 } 8852 8853 // SetEncryption sets the Encryption field's value. 8854 func (s *S3Location) SetEncryption(v *Encryption) *S3Location { 8855 s.Encryption = v 8856 return s 8857 } 8858 8859 // SetPrefix sets the Prefix field's value. 8860 func (s *S3Location) SetPrefix(v string) *S3Location { 8861 s.Prefix = &v 8862 return s 8863 } 8864 8865 // SetStorageClass sets the StorageClass field's value. 8866 func (s *S3Location) SetStorageClass(v string) *S3Location { 8867 s.StorageClass = &v 8868 return s 8869 } 8870 8871 // SetTagging sets the Tagging field's value. 8872 func (s *S3Location) SetTagging(v map[string]*string) *S3Location { 8873 s.Tagging = v 8874 return s 8875 } 8876 8877 // SetUserMetadata sets the UserMetadata field's value. 8878 func (s *S3Location) SetUserMetadata(v map[string]*string) *S3Location { 8879 s.UserMetadata = v 8880 return s 8881 } 8882 8883 // Contains information about the parameters used for a select. 8884 type SelectParameters struct { 8885 _ struct{} `type:"structure"` 8886 8887 // The expression that is used to select the object. 8888 Expression *string `type:"string"` 8889 8890 // The type of the provided expression, for example SQL. 8891 ExpressionType *string `type:"string" enum:"ExpressionType"` 8892 8893 // Describes the serialization format of the object. 8894 InputSerialization *InputSerialization `type:"structure"` 8895 8896 // Describes how the results of the select job are serialized. 8897 OutputSerialization *OutputSerialization `type:"structure"` 8898 } 8899 8900 // String returns the string representation. 8901 // 8902 // API parameter values that are decorated as "sensitive" in the API will not 8903 // be included in the string output. The member name will be present, but the 8904 // value will be replaced with "sensitive". 8905 func (s SelectParameters) String() string { 8906 return awsutil.Prettify(s) 8907 } 8908 8909 // GoString returns the string representation. 8910 // 8911 // API parameter values that are decorated as "sensitive" in the API will not 8912 // be included in the string output. The member name will be present, but the 8913 // value will be replaced with "sensitive". 8914 func (s SelectParameters) GoString() string { 8915 return s.String() 8916 } 8917 8918 // SetExpression sets the Expression field's value. 8919 func (s *SelectParameters) SetExpression(v string) *SelectParameters { 8920 s.Expression = &v 8921 return s 8922 } 8923 8924 // SetExpressionType sets the ExpressionType field's value. 8925 func (s *SelectParameters) SetExpressionType(v string) *SelectParameters { 8926 s.ExpressionType = &v 8927 return s 8928 } 8929 8930 // SetInputSerialization sets the InputSerialization field's value. 8931 func (s *SelectParameters) SetInputSerialization(v *InputSerialization) *SelectParameters { 8932 s.InputSerialization = v 8933 return s 8934 } 8935 8936 // SetOutputSerialization sets the OutputSerialization field's value. 8937 func (s *SelectParameters) SetOutputSerialization(v *OutputSerialization) *SelectParameters { 8938 s.OutputSerialization = v 8939 return s 8940 } 8941 8942 // Returned if the service cannot complete the request. 8943 type ServiceUnavailableException struct { 8944 _ struct{} `type:"structure"` 8945 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 8946 8947 // 500 Internal Server Error 8948 Code_ *string `locationName:"code" type:"string"` 8949 8950 // Returned if the service cannot complete the request. 8951 Message_ *string `locationName:"message" type:"string"` 8952 8953 // Server 8954 Type *string `locationName:"type" type:"string"` 8955 } 8956 8957 // String returns the string representation. 8958 // 8959 // API parameter values that are decorated as "sensitive" in the API will not 8960 // be included in the string output. The member name will be present, but the 8961 // value will be replaced with "sensitive". 8962 func (s ServiceUnavailableException) String() string { 8963 return awsutil.Prettify(s) 8964 } 8965 8966 // GoString returns the string representation. 8967 // 8968 // API parameter values that are decorated as "sensitive" in the API will not 8969 // be included in the string output. The member name will be present, but the 8970 // value will be replaced with "sensitive". 8971 func (s ServiceUnavailableException) GoString() string { 8972 return s.String() 8973 } 8974 8975 func newErrorServiceUnavailableException(v protocol.ResponseMetadata) error { 8976 return &ServiceUnavailableException{ 8977 RespMetadata: v, 8978 } 8979 } 8980 8981 // Code returns the exception type name. 8982 func (s *ServiceUnavailableException) Code() string { 8983 return "ServiceUnavailableException" 8984 } 8985 8986 // Message returns the exception's message. 8987 func (s *ServiceUnavailableException) Message() string { 8988 if s.Message_ != nil { 8989 return *s.Message_ 8990 } 8991 return "" 8992 } 8993 8994 // OrigErr always returns nil, satisfies awserr.Error interface. 8995 func (s *ServiceUnavailableException) OrigErr() error { 8996 return nil 8997 } 8998 8999 func (s *ServiceUnavailableException) Error() string { 9000 return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) 9001 } 9002 9003 // Status code returns the HTTP status code for the request's response error. 9004 func (s *ServiceUnavailableException) StatusCode() int { 9005 return s.RespMetadata.StatusCode 9006 } 9007 9008 // RequestID returns the service's response RequestID for request. 9009 func (s *ServiceUnavailableException) RequestID() string { 9010 return s.RespMetadata.RequestID 9011 } 9012 9013 // SetDataRetrievalPolicy input. 9014 type SetDataRetrievalPolicyInput struct { 9015 _ struct{} `type:"structure"` 9016 9017 // The AccountId value is the AWS account ID. This value must match the AWS 9018 // account ID associated with the credentials used to sign the request. You 9019 // can either specify an AWS account ID or optionally a single '-' (hyphen), 9020 // in which case Amazon Glacier uses the AWS account ID associated with the 9021 // credentials used to sign the request. If you specify your account ID, do 9022 // not include any hyphens ('-') in the ID. 9023 // 9024 // AccountId is a required field 9025 AccountId *string `location:"uri" locationName:"accountId" type:"string" required:"true"` 9026 9027 // The data retrieval policy in JSON format. 9028 Policy *DataRetrievalPolicy `type:"structure"` 9029 } 9030 9031 // String returns the string representation. 9032 // 9033 // API parameter values that are decorated as "sensitive" in the API will not 9034 // be included in the string output. The member name will be present, but the 9035 // value will be replaced with "sensitive". 9036 func (s SetDataRetrievalPolicyInput) String() string { 9037 return awsutil.Prettify(s) 9038 } 9039 9040 // GoString returns the string representation. 9041 // 9042 // API parameter values that are decorated as "sensitive" in the API will not 9043 // be included in the string output. The member name will be present, but the 9044 // value will be replaced with "sensitive". 9045 func (s SetDataRetrievalPolicyInput) GoString() string { 9046 return s.String() 9047 } 9048 9049 // Validate inspects the fields of the type to determine if they are valid. 9050 func (s *SetDataRetrievalPolicyInput) Validate() error { 9051 invalidParams := request.ErrInvalidParams{Context: "SetDataRetrievalPolicyInput"} 9052 if s.AccountId == nil { 9053 invalidParams.Add(request.NewErrParamRequired("AccountId")) 9054 } 9055 if s.AccountId != nil && len(*s.AccountId) < 1 { 9056 invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) 9057 } 9058 9059 if invalidParams.Len() > 0 { 9060 return invalidParams 9061 } 9062 return nil 9063 } 9064 9065 // SetAccountId sets the AccountId field's value. 9066 func (s *SetDataRetrievalPolicyInput) SetAccountId(v string) *SetDataRetrievalPolicyInput { 9067 s.AccountId = &v 9068 return s 9069 } 9070 9071 // SetPolicy sets the Policy field's value. 9072 func (s *SetDataRetrievalPolicyInput) SetPolicy(v *DataRetrievalPolicy) *SetDataRetrievalPolicyInput { 9073 s.Policy = v 9074 return s 9075 } 9076 9077 type SetDataRetrievalPolicyOutput struct { 9078 _ struct{} `type:"structure" nopayload:"true"` 9079 } 9080 9081 // String returns the string representation. 9082 // 9083 // API parameter values that are decorated as "sensitive" in the API will not 9084 // be included in the string output. The member name will be present, but the 9085 // value will be replaced with "sensitive". 9086 func (s SetDataRetrievalPolicyOutput) String() string { 9087 return awsutil.Prettify(s) 9088 } 9089 9090 // GoString returns the string representation. 9091 // 9092 // API parameter values that are decorated as "sensitive" in the API will not 9093 // be included in the string output. The member name will be present, but the 9094 // value will be replaced with "sensitive". 9095 func (s SetDataRetrievalPolicyOutput) GoString() string { 9096 return s.String() 9097 } 9098 9099 // SetVaultAccessPolicy input. 9100 type SetVaultAccessPolicyInput struct { 9101 _ struct{} `type:"structure" payload:"Policy"` 9102 9103 // The AccountId value is the AWS account ID of the account that owns the vault. 9104 // You can either specify an AWS account ID or optionally a single '-' (hyphen), 9105 // in which case Amazon S3 Glacier uses the AWS account ID associated with the 9106 // credentials used to sign the request. If you use an account ID, do not include 9107 // any hyphens ('-') in the ID. 9108 // 9109 // AccountId is a required field 9110 AccountId *string `location:"uri" locationName:"accountId" type:"string" required:"true"` 9111 9112 // The vault access policy as a JSON string. 9113 Policy *VaultAccessPolicy `locationName:"policy" type:"structure"` 9114 9115 // The name of the vault. 9116 // 9117 // VaultName is a required field 9118 VaultName *string `location:"uri" locationName:"vaultName" type:"string" required:"true"` 9119 } 9120 9121 // String returns the string representation. 9122 // 9123 // API parameter values that are decorated as "sensitive" in the API will not 9124 // be included in the string output. The member name will be present, but the 9125 // value will be replaced with "sensitive". 9126 func (s SetVaultAccessPolicyInput) String() string { 9127 return awsutil.Prettify(s) 9128 } 9129 9130 // GoString returns the string representation. 9131 // 9132 // API parameter values that are decorated as "sensitive" in the API will not 9133 // be included in the string output. The member name will be present, but the 9134 // value will be replaced with "sensitive". 9135 func (s SetVaultAccessPolicyInput) GoString() string { 9136 return s.String() 9137 } 9138 9139 // Validate inspects the fields of the type to determine if they are valid. 9140 func (s *SetVaultAccessPolicyInput) Validate() error { 9141 invalidParams := request.ErrInvalidParams{Context: "SetVaultAccessPolicyInput"} 9142 if s.AccountId == nil { 9143 invalidParams.Add(request.NewErrParamRequired("AccountId")) 9144 } 9145 if s.AccountId != nil && len(*s.AccountId) < 1 { 9146 invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) 9147 } 9148 if s.VaultName == nil { 9149 invalidParams.Add(request.NewErrParamRequired("VaultName")) 9150 } 9151 if s.VaultName != nil && len(*s.VaultName) < 1 { 9152 invalidParams.Add(request.NewErrParamMinLen("VaultName", 1)) 9153 } 9154 9155 if invalidParams.Len() > 0 { 9156 return invalidParams 9157 } 9158 return nil 9159 } 9160 9161 // SetAccountId sets the AccountId field's value. 9162 func (s *SetVaultAccessPolicyInput) SetAccountId(v string) *SetVaultAccessPolicyInput { 9163 s.AccountId = &v 9164 return s 9165 } 9166 9167 // SetPolicy sets the Policy field's value. 9168 func (s *SetVaultAccessPolicyInput) SetPolicy(v *VaultAccessPolicy) *SetVaultAccessPolicyInput { 9169 s.Policy = v 9170 return s 9171 } 9172 9173 // SetVaultName sets the VaultName field's value. 9174 func (s *SetVaultAccessPolicyInput) SetVaultName(v string) *SetVaultAccessPolicyInput { 9175 s.VaultName = &v 9176 return s 9177 } 9178 9179 type SetVaultAccessPolicyOutput struct { 9180 _ struct{} `type:"structure" nopayload:"true"` 9181 } 9182 9183 // String returns the string representation. 9184 // 9185 // API parameter values that are decorated as "sensitive" in the API will not 9186 // be included in the string output. The member name will be present, but the 9187 // value will be replaced with "sensitive". 9188 func (s SetVaultAccessPolicyOutput) String() string { 9189 return awsutil.Prettify(s) 9190 } 9191 9192 // GoString returns the string representation. 9193 // 9194 // API parameter values that are decorated as "sensitive" in the API will not 9195 // be included in the string output. The member name will be present, but the 9196 // value will be replaced with "sensitive". 9197 func (s SetVaultAccessPolicyOutput) GoString() string { 9198 return s.String() 9199 } 9200 9201 // Provides options to configure notifications that will be sent when specific 9202 // events happen to a vault. 9203 type SetVaultNotificationsInput struct { 9204 _ struct{} `type:"structure" payload:"VaultNotificationConfig"` 9205 9206 // The AccountId value is the AWS account ID of the account that owns the vault. 9207 // You can either specify an AWS account ID or optionally a single '-' (hyphen), 9208 // in which case Amazon S3 Glacier uses the AWS account ID associated with the 9209 // credentials used to sign the request. If you use an account ID, do not include 9210 // any hyphens ('-') in the ID. 9211 // 9212 // AccountId is a required field 9213 AccountId *string `location:"uri" locationName:"accountId" type:"string" required:"true"` 9214 9215 // The name of the vault. 9216 // 9217 // VaultName is a required field 9218 VaultName *string `location:"uri" locationName:"vaultName" type:"string" required:"true"` 9219 9220 // Provides options for specifying notification configuration. 9221 VaultNotificationConfig *VaultNotificationConfig `locationName:"vaultNotificationConfig" type:"structure"` 9222 } 9223 9224 // String returns the string representation. 9225 // 9226 // API parameter values that are decorated as "sensitive" in the API will not 9227 // be included in the string output. The member name will be present, but the 9228 // value will be replaced with "sensitive". 9229 func (s SetVaultNotificationsInput) String() string { 9230 return awsutil.Prettify(s) 9231 } 9232 9233 // GoString returns the string representation. 9234 // 9235 // API parameter values that are decorated as "sensitive" in the API will not 9236 // be included in the string output. The member name will be present, but the 9237 // value will be replaced with "sensitive". 9238 func (s SetVaultNotificationsInput) GoString() string { 9239 return s.String() 9240 } 9241 9242 // Validate inspects the fields of the type to determine if they are valid. 9243 func (s *SetVaultNotificationsInput) Validate() error { 9244 invalidParams := request.ErrInvalidParams{Context: "SetVaultNotificationsInput"} 9245 if s.AccountId == nil { 9246 invalidParams.Add(request.NewErrParamRequired("AccountId")) 9247 } 9248 if s.AccountId != nil && len(*s.AccountId) < 1 { 9249 invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) 9250 } 9251 if s.VaultName == nil { 9252 invalidParams.Add(request.NewErrParamRequired("VaultName")) 9253 } 9254 if s.VaultName != nil && len(*s.VaultName) < 1 { 9255 invalidParams.Add(request.NewErrParamMinLen("VaultName", 1)) 9256 } 9257 9258 if invalidParams.Len() > 0 { 9259 return invalidParams 9260 } 9261 return nil 9262 } 9263 9264 // SetAccountId sets the AccountId field's value. 9265 func (s *SetVaultNotificationsInput) SetAccountId(v string) *SetVaultNotificationsInput { 9266 s.AccountId = &v 9267 return s 9268 } 9269 9270 // SetVaultName sets the VaultName field's value. 9271 func (s *SetVaultNotificationsInput) SetVaultName(v string) *SetVaultNotificationsInput { 9272 s.VaultName = &v 9273 return s 9274 } 9275 9276 // SetVaultNotificationConfig sets the VaultNotificationConfig field's value. 9277 func (s *SetVaultNotificationsInput) SetVaultNotificationConfig(v *VaultNotificationConfig) *SetVaultNotificationsInput { 9278 s.VaultNotificationConfig = v 9279 return s 9280 } 9281 9282 type SetVaultNotificationsOutput struct { 9283 _ struct{} `type:"structure" nopayload:"true"` 9284 } 9285 9286 // String returns the string representation. 9287 // 9288 // API parameter values that are decorated as "sensitive" in the API will not 9289 // be included in the string output. The member name will be present, but the 9290 // value will be replaced with "sensitive". 9291 func (s SetVaultNotificationsOutput) String() string { 9292 return awsutil.Prettify(s) 9293 } 9294 9295 // GoString returns the string representation. 9296 // 9297 // API parameter values that are decorated as "sensitive" in the API will not 9298 // be included in the string output. The member name will be present, but the 9299 // value will be replaced with "sensitive". 9300 func (s SetVaultNotificationsOutput) GoString() string { 9301 return s.String() 9302 } 9303 9304 // Provides options to add an archive to a vault. 9305 type UploadArchiveInput struct { 9306 _ struct{} `type:"structure" payload:"Body"` 9307 9308 // The AccountId value is the AWS account ID of the account that owns the vault. 9309 // You can either specify an AWS account ID or optionally a single '-' (hyphen), 9310 // in which case Amazon S3 Glacier uses the AWS account ID associated with the 9311 // credentials used to sign the request. If you use an account ID, do not include 9312 // any hyphens ('-') in the ID. 9313 // 9314 // AccountId is a required field 9315 AccountId *string `location:"uri" locationName:"accountId" type:"string" required:"true"` 9316 9317 // The optional description of the archive you are uploading. 9318 ArchiveDescription *string `location:"header" locationName:"x-amz-archive-description" type:"string"` 9319 9320 // The data to upload. 9321 Body io.ReadSeeker `locationName:"body" type:"blob"` 9322 9323 // The SHA256 tree hash of the data being uploaded. 9324 Checksum *string `location:"header" locationName:"x-amz-sha256-tree-hash" type:"string"` 9325 9326 // The name of the vault. 9327 // 9328 // VaultName is a required field 9329 VaultName *string `location:"uri" locationName:"vaultName" type:"string" required:"true"` 9330 } 9331 9332 // String returns the string representation. 9333 // 9334 // API parameter values that are decorated as "sensitive" in the API will not 9335 // be included in the string output. The member name will be present, but the 9336 // value will be replaced with "sensitive". 9337 func (s UploadArchiveInput) String() string { 9338 return awsutil.Prettify(s) 9339 } 9340 9341 // GoString returns the string representation. 9342 // 9343 // API parameter values that are decorated as "sensitive" in the API will not 9344 // be included in the string output. The member name will be present, but the 9345 // value will be replaced with "sensitive". 9346 func (s UploadArchiveInput) GoString() string { 9347 return s.String() 9348 } 9349 9350 // Validate inspects the fields of the type to determine if they are valid. 9351 func (s *UploadArchiveInput) Validate() error { 9352 invalidParams := request.ErrInvalidParams{Context: "UploadArchiveInput"} 9353 if s.AccountId == nil { 9354 invalidParams.Add(request.NewErrParamRequired("AccountId")) 9355 } 9356 if s.AccountId != nil && len(*s.AccountId) < 1 { 9357 invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) 9358 } 9359 if s.VaultName == nil { 9360 invalidParams.Add(request.NewErrParamRequired("VaultName")) 9361 } 9362 if s.VaultName != nil && len(*s.VaultName) < 1 { 9363 invalidParams.Add(request.NewErrParamMinLen("VaultName", 1)) 9364 } 9365 9366 if invalidParams.Len() > 0 { 9367 return invalidParams 9368 } 9369 return nil 9370 } 9371 9372 // SetAccountId sets the AccountId field's value. 9373 func (s *UploadArchiveInput) SetAccountId(v string) *UploadArchiveInput { 9374 s.AccountId = &v 9375 return s 9376 } 9377 9378 // SetArchiveDescription sets the ArchiveDescription field's value. 9379 func (s *UploadArchiveInput) SetArchiveDescription(v string) *UploadArchiveInput { 9380 s.ArchiveDescription = &v 9381 return s 9382 } 9383 9384 // SetBody sets the Body field's value. 9385 func (s *UploadArchiveInput) SetBody(v io.ReadSeeker) *UploadArchiveInput { 9386 s.Body = v 9387 return s 9388 } 9389 9390 // SetChecksum sets the Checksum field's value. 9391 func (s *UploadArchiveInput) SetChecksum(v string) *UploadArchiveInput { 9392 s.Checksum = &v 9393 return s 9394 } 9395 9396 // SetVaultName sets the VaultName field's value. 9397 func (s *UploadArchiveInput) SetVaultName(v string) *UploadArchiveInput { 9398 s.VaultName = &v 9399 return s 9400 } 9401 9402 // A list of in-progress multipart uploads for a vault. 9403 type UploadListElement struct { 9404 _ struct{} `type:"structure"` 9405 9406 // The description of the archive that was specified in the Initiate Multipart 9407 // Upload request. 9408 ArchiveDescription *string `type:"string"` 9409 9410 // The UTC time at which the multipart upload was initiated. 9411 CreationDate *string `type:"string"` 9412 9413 // The ID of a multipart upload. 9414 MultipartUploadId *string `type:"string"` 9415 9416 // The part size, in bytes, specified in the Initiate Multipart Upload request. 9417 // This is the size of all the parts in the upload except the last part, which 9418 // may be smaller than this size. 9419 PartSizeInBytes *int64 `type:"long"` 9420 9421 // The Amazon Resource Name (ARN) of the vault that contains the archive. 9422 VaultARN *string `type:"string"` 9423 } 9424 9425 // String returns the string representation. 9426 // 9427 // API parameter values that are decorated as "sensitive" in the API will not 9428 // be included in the string output. The member name will be present, but the 9429 // value will be replaced with "sensitive". 9430 func (s UploadListElement) String() string { 9431 return awsutil.Prettify(s) 9432 } 9433 9434 // GoString returns the string representation. 9435 // 9436 // API parameter values that are decorated as "sensitive" in the API will not 9437 // be included in the string output. The member name will be present, but the 9438 // value will be replaced with "sensitive". 9439 func (s UploadListElement) GoString() string { 9440 return s.String() 9441 } 9442 9443 // SetArchiveDescription sets the ArchiveDescription field's value. 9444 func (s *UploadListElement) SetArchiveDescription(v string) *UploadListElement { 9445 s.ArchiveDescription = &v 9446 return s 9447 } 9448 9449 // SetCreationDate sets the CreationDate field's value. 9450 func (s *UploadListElement) SetCreationDate(v string) *UploadListElement { 9451 s.CreationDate = &v 9452 return s 9453 } 9454 9455 // SetMultipartUploadId sets the MultipartUploadId field's value. 9456 func (s *UploadListElement) SetMultipartUploadId(v string) *UploadListElement { 9457 s.MultipartUploadId = &v 9458 return s 9459 } 9460 9461 // SetPartSizeInBytes sets the PartSizeInBytes field's value. 9462 func (s *UploadListElement) SetPartSizeInBytes(v int64) *UploadListElement { 9463 s.PartSizeInBytes = &v 9464 return s 9465 } 9466 9467 // SetVaultARN sets the VaultARN field's value. 9468 func (s *UploadListElement) SetVaultARN(v string) *UploadListElement { 9469 s.VaultARN = &v 9470 return s 9471 } 9472 9473 // Provides options to upload a part of an archive in a multipart upload operation. 9474 type UploadMultipartPartInput struct { 9475 _ struct{} `type:"structure" payload:"Body"` 9476 9477 // The AccountId value is the AWS account ID of the account that owns the vault. 9478 // You can either specify an AWS account ID or optionally a single '-' (hyphen), 9479 // in which case Amazon S3 Glacier uses the AWS account ID associated with the 9480 // credentials used to sign the request. If you use an account ID, do not include 9481 // any hyphens ('-') in the ID. 9482 // 9483 // AccountId is a required field 9484 AccountId *string `location:"uri" locationName:"accountId" type:"string" required:"true"` 9485 9486 // The data to upload. 9487 Body io.ReadSeeker `locationName:"body" type:"blob"` 9488 9489 // The SHA256 tree hash of the data being uploaded. 9490 Checksum *string `location:"header" locationName:"x-amz-sha256-tree-hash" type:"string"` 9491 9492 // Identifies the range of bytes in the assembled archive that will be uploaded 9493 // in this part. Amazon S3 Glacier uses this information to assemble the archive 9494 // in the proper sequence. The format of this header follows RFC 2616. An example 9495 // header is Content-Range:bytes 0-4194303/*. 9496 Range *string `location:"header" locationName:"Content-Range" type:"string"` 9497 9498 // The upload ID of the multipart upload. 9499 // 9500 // UploadId is a required field 9501 UploadId *string `location:"uri" locationName:"uploadId" type:"string" required:"true"` 9502 9503 // The name of the vault. 9504 // 9505 // VaultName is a required field 9506 VaultName *string `location:"uri" locationName:"vaultName" type:"string" required:"true"` 9507 } 9508 9509 // String returns the string representation. 9510 // 9511 // API parameter values that are decorated as "sensitive" in the API will not 9512 // be included in the string output. The member name will be present, but the 9513 // value will be replaced with "sensitive". 9514 func (s UploadMultipartPartInput) String() string { 9515 return awsutil.Prettify(s) 9516 } 9517 9518 // GoString returns the string representation. 9519 // 9520 // API parameter values that are decorated as "sensitive" in the API will not 9521 // be included in the string output. The member name will be present, but the 9522 // value will be replaced with "sensitive". 9523 func (s UploadMultipartPartInput) GoString() string { 9524 return s.String() 9525 } 9526 9527 // Validate inspects the fields of the type to determine if they are valid. 9528 func (s *UploadMultipartPartInput) Validate() error { 9529 invalidParams := request.ErrInvalidParams{Context: "UploadMultipartPartInput"} 9530 if s.AccountId == nil { 9531 invalidParams.Add(request.NewErrParamRequired("AccountId")) 9532 } 9533 if s.AccountId != nil && len(*s.AccountId) < 1 { 9534 invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) 9535 } 9536 if s.UploadId == nil { 9537 invalidParams.Add(request.NewErrParamRequired("UploadId")) 9538 } 9539 if s.UploadId != nil && len(*s.UploadId) < 1 { 9540 invalidParams.Add(request.NewErrParamMinLen("UploadId", 1)) 9541 } 9542 if s.VaultName == nil { 9543 invalidParams.Add(request.NewErrParamRequired("VaultName")) 9544 } 9545 if s.VaultName != nil && len(*s.VaultName) < 1 { 9546 invalidParams.Add(request.NewErrParamMinLen("VaultName", 1)) 9547 } 9548 9549 if invalidParams.Len() > 0 { 9550 return invalidParams 9551 } 9552 return nil 9553 } 9554 9555 // SetAccountId sets the AccountId field's value. 9556 func (s *UploadMultipartPartInput) SetAccountId(v string) *UploadMultipartPartInput { 9557 s.AccountId = &v 9558 return s 9559 } 9560 9561 // SetBody sets the Body field's value. 9562 func (s *UploadMultipartPartInput) SetBody(v io.ReadSeeker) *UploadMultipartPartInput { 9563 s.Body = v 9564 return s 9565 } 9566 9567 // SetChecksum sets the Checksum field's value. 9568 func (s *UploadMultipartPartInput) SetChecksum(v string) *UploadMultipartPartInput { 9569 s.Checksum = &v 9570 return s 9571 } 9572 9573 // SetRange sets the Range field's value. 9574 func (s *UploadMultipartPartInput) SetRange(v string) *UploadMultipartPartInput { 9575 s.Range = &v 9576 return s 9577 } 9578 9579 // SetUploadId sets the UploadId field's value. 9580 func (s *UploadMultipartPartInput) SetUploadId(v string) *UploadMultipartPartInput { 9581 s.UploadId = &v 9582 return s 9583 } 9584 9585 // SetVaultName sets the VaultName field's value. 9586 func (s *UploadMultipartPartInput) SetVaultName(v string) *UploadMultipartPartInput { 9587 s.VaultName = &v 9588 return s 9589 } 9590 9591 // Contains the Amazon S3 Glacier response to your request. 9592 type UploadMultipartPartOutput struct { 9593 _ struct{} `type:"structure" nopayload:"true"` 9594 9595 // The SHA256 tree hash that Amazon S3 Glacier computed for the uploaded part. 9596 Checksum *string `location:"header" locationName:"x-amz-sha256-tree-hash" type:"string"` 9597 } 9598 9599 // String returns the string representation. 9600 // 9601 // API parameter values that are decorated as "sensitive" in the API will not 9602 // be included in the string output. The member name will be present, but the 9603 // value will be replaced with "sensitive". 9604 func (s UploadMultipartPartOutput) String() string { 9605 return awsutil.Prettify(s) 9606 } 9607 9608 // GoString returns the string representation. 9609 // 9610 // API parameter values that are decorated as "sensitive" in the API will not 9611 // be included in the string output. The member name will be present, but the 9612 // value will be replaced with "sensitive". 9613 func (s UploadMultipartPartOutput) GoString() string { 9614 return s.String() 9615 } 9616 9617 // SetChecksum sets the Checksum field's value. 9618 func (s *UploadMultipartPartOutput) SetChecksum(v string) *UploadMultipartPartOutput { 9619 s.Checksum = &v 9620 return s 9621 } 9622 9623 // Contains the vault access policy. 9624 type VaultAccessPolicy struct { 9625 _ struct{} `type:"structure"` 9626 9627 // The vault access policy. 9628 Policy *string `type:"string"` 9629 } 9630 9631 // String returns the string representation. 9632 // 9633 // API parameter values that are decorated as "sensitive" in the API will not 9634 // be included in the string output. The member name will be present, but the 9635 // value will be replaced with "sensitive". 9636 func (s VaultAccessPolicy) String() string { 9637 return awsutil.Prettify(s) 9638 } 9639 9640 // GoString returns the string representation. 9641 // 9642 // API parameter values that are decorated as "sensitive" in the API will not 9643 // be included in the string output. The member name will be present, but the 9644 // value will be replaced with "sensitive". 9645 func (s VaultAccessPolicy) GoString() string { 9646 return s.String() 9647 } 9648 9649 // SetPolicy sets the Policy field's value. 9650 func (s *VaultAccessPolicy) SetPolicy(v string) *VaultAccessPolicy { 9651 s.Policy = &v 9652 return s 9653 } 9654 9655 // Contains the vault lock policy. 9656 type VaultLockPolicy struct { 9657 _ struct{} `type:"structure"` 9658 9659 // The vault lock policy. 9660 Policy *string `type:"string"` 9661 } 9662 9663 // String returns the string representation. 9664 // 9665 // API parameter values that are decorated as "sensitive" in the API will not 9666 // be included in the string output. The member name will be present, but the 9667 // value will be replaced with "sensitive". 9668 func (s VaultLockPolicy) String() string { 9669 return awsutil.Prettify(s) 9670 } 9671 9672 // GoString returns the string representation. 9673 // 9674 // API parameter values that are decorated as "sensitive" in the API will not 9675 // be included in the string output. The member name will be present, but the 9676 // value will be replaced with "sensitive". 9677 func (s VaultLockPolicy) GoString() string { 9678 return s.String() 9679 } 9680 9681 // SetPolicy sets the Policy field's value. 9682 func (s *VaultLockPolicy) SetPolicy(v string) *VaultLockPolicy { 9683 s.Policy = &v 9684 return s 9685 } 9686 9687 // Represents a vault's notification configuration. 9688 type VaultNotificationConfig struct { 9689 _ struct{} `type:"structure"` 9690 9691 // A list of one or more events for which Amazon S3 Glacier will send a notification 9692 // to the specified Amazon SNS topic. 9693 Events []*string `type:"list"` 9694 9695 // The Amazon Simple Notification Service (Amazon SNS) topic Amazon Resource 9696 // Name (ARN). 9697 SNSTopic *string `type:"string"` 9698 } 9699 9700 // String returns the string representation. 9701 // 9702 // API parameter values that are decorated as "sensitive" in the API will not 9703 // be included in the string output. The member name will be present, but the 9704 // value will be replaced with "sensitive". 9705 func (s VaultNotificationConfig) String() string { 9706 return awsutil.Prettify(s) 9707 } 9708 9709 // GoString returns the string representation. 9710 // 9711 // API parameter values that are decorated as "sensitive" in the API will not 9712 // be included in the string output. The member name will be present, but the 9713 // value will be replaced with "sensitive". 9714 func (s VaultNotificationConfig) GoString() string { 9715 return s.String() 9716 } 9717 9718 // SetEvents sets the Events field's value. 9719 func (s *VaultNotificationConfig) SetEvents(v []*string) *VaultNotificationConfig { 9720 s.Events = v 9721 return s 9722 } 9723 9724 // SetSNSTopic sets the SNSTopic field's value. 9725 func (s *VaultNotificationConfig) SetSNSTopic(v string) *VaultNotificationConfig { 9726 s.SNSTopic = &v 9727 return s 9728 } 9729 9730 const ( 9731 // ActionCodeArchiveRetrieval is a ActionCode enum value 9732 ActionCodeArchiveRetrieval = "ArchiveRetrieval" 9733 9734 // ActionCodeInventoryRetrieval is a ActionCode enum value 9735 ActionCodeInventoryRetrieval = "InventoryRetrieval" 9736 9737 // ActionCodeSelect is a ActionCode enum value 9738 ActionCodeSelect = "Select" 9739 ) 9740 9741 // ActionCode_Values returns all elements of the ActionCode enum 9742 func ActionCode_Values() []string { 9743 return []string{ 9744 ActionCodeArchiveRetrieval, 9745 ActionCodeInventoryRetrieval, 9746 ActionCodeSelect, 9747 } 9748 } 9749 9750 const ( 9751 // CannedACLPrivate is a CannedACL enum value 9752 CannedACLPrivate = "private" 9753 9754 // CannedACLPublicRead is a CannedACL enum value 9755 CannedACLPublicRead = "public-read" 9756 9757 // CannedACLPublicReadWrite is a CannedACL enum value 9758 CannedACLPublicReadWrite = "public-read-write" 9759 9760 // CannedACLAwsExecRead is a CannedACL enum value 9761 CannedACLAwsExecRead = "aws-exec-read" 9762 9763 // CannedACLAuthenticatedRead is a CannedACL enum value 9764 CannedACLAuthenticatedRead = "authenticated-read" 9765 9766 // CannedACLBucketOwnerRead is a CannedACL enum value 9767 CannedACLBucketOwnerRead = "bucket-owner-read" 9768 9769 // CannedACLBucketOwnerFullControl is a CannedACL enum value 9770 CannedACLBucketOwnerFullControl = "bucket-owner-full-control" 9771 ) 9772 9773 // CannedACL_Values returns all elements of the CannedACL enum 9774 func CannedACL_Values() []string { 9775 return []string{ 9776 CannedACLPrivate, 9777 CannedACLPublicRead, 9778 CannedACLPublicReadWrite, 9779 CannedACLAwsExecRead, 9780 CannedACLAuthenticatedRead, 9781 CannedACLBucketOwnerRead, 9782 CannedACLBucketOwnerFullControl, 9783 } 9784 } 9785 9786 const ( 9787 // EncryptionTypeAwsKms is a EncryptionType enum value 9788 EncryptionTypeAwsKms = "aws:kms" 9789 9790 // EncryptionTypeAes256 is a EncryptionType enum value 9791 EncryptionTypeAes256 = "AES256" 9792 ) 9793 9794 // EncryptionType_Values returns all elements of the EncryptionType enum 9795 func EncryptionType_Values() []string { 9796 return []string{ 9797 EncryptionTypeAwsKms, 9798 EncryptionTypeAes256, 9799 } 9800 } 9801 9802 const ( 9803 // ExpressionTypeSql is a ExpressionType enum value 9804 ExpressionTypeSql = "SQL" 9805 ) 9806 9807 // ExpressionType_Values returns all elements of the ExpressionType enum 9808 func ExpressionType_Values() []string { 9809 return []string{ 9810 ExpressionTypeSql, 9811 } 9812 } 9813 9814 const ( 9815 // FileHeaderInfoUse is a FileHeaderInfo enum value 9816 FileHeaderInfoUse = "USE" 9817 9818 // FileHeaderInfoIgnore is a FileHeaderInfo enum value 9819 FileHeaderInfoIgnore = "IGNORE" 9820 9821 // FileHeaderInfoNone is a FileHeaderInfo enum value 9822 FileHeaderInfoNone = "NONE" 9823 ) 9824 9825 // FileHeaderInfo_Values returns all elements of the FileHeaderInfo enum 9826 func FileHeaderInfo_Values() []string { 9827 return []string{ 9828 FileHeaderInfoUse, 9829 FileHeaderInfoIgnore, 9830 FileHeaderInfoNone, 9831 } 9832 } 9833 9834 const ( 9835 // PermissionFullControl is a Permission enum value 9836 PermissionFullControl = "FULL_CONTROL" 9837 9838 // PermissionWrite is a Permission enum value 9839 PermissionWrite = "WRITE" 9840 9841 // PermissionWriteAcp is a Permission enum value 9842 PermissionWriteAcp = "WRITE_ACP" 9843 9844 // PermissionRead is a Permission enum value 9845 PermissionRead = "READ" 9846 9847 // PermissionReadAcp is a Permission enum value 9848 PermissionReadAcp = "READ_ACP" 9849 ) 9850 9851 // Permission_Values returns all elements of the Permission enum 9852 func Permission_Values() []string { 9853 return []string{ 9854 PermissionFullControl, 9855 PermissionWrite, 9856 PermissionWriteAcp, 9857 PermissionRead, 9858 PermissionReadAcp, 9859 } 9860 } 9861 9862 const ( 9863 // QuoteFieldsAlways is a QuoteFields enum value 9864 QuoteFieldsAlways = "ALWAYS" 9865 9866 // QuoteFieldsAsneeded is a QuoteFields enum value 9867 QuoteFieldsAsneeded = "ASNEEDED" 9868 ) 9869 9870 // QuoteFields_Values returns all elements of the QuoteFields enum 9871 func QuoteFields_Values() []string { 9872 return []string{ 9873 QuoteFieldsAlways, 9874 QuoteFieldsAsneeded, 9875 } 9876 } 9877 9878 const ( 9879 // StatusCodeInProgress is a StatusCode enum value 9880 StatusCodeInProgress = "InProgress" 9881 9882 // StatusCodeSucceeded is a StatusCode enum value 9883 StatusCodeSucceeded = "Succeeded" 9884 9885 // StatusCodeFailed is a StatusCode enum value 9886 StatusCodeFailed = "Failed" 9887 ) 9888 9889 // StatusCode_Values returns all elements of the StatusCode enum 9890 func StatusCode_Values() []string { 9891 return []string{ 9892 StatusCodeInProgress, 9893 StatusCodeSucceeded, 9894 StatusCodeFailed, 9895 } 9896 } 9897 9898 const ( 9899 // StorageClassStandard is a StorageClass enum value 9900 StorageClassStandard = "STANDARD" 9901 9902 // StorageClassReducedRedundancy is a StorageClass enum value 9903 StorageClassReducedRedundancy = "REDUCED_REDUNDANCY" 9904 9905 // StorageClassStandardIa is a StorageClass enum value 9906 StorageClassStandardIa = "STANDARD_IA" 9907 ) 9908 9909 // StorageClass_Values returns all elements of the StorageClass enum 9910 func StorageClass_Values() []string { 9911 return []string{ 9912 StorageClassStandard, 9913 StorageClassReducedRedundancy, 9914 StorageClassStandardIa, 9915 } 9916 } 9917 9918 const ( 9919 // TypeAmazonCustomerByEmail is a Type enum value 9920 TypeAmazonCustomerByEmail = "AmazonCustomerByEmail" 9921 9922 // TypeCanonicalUser is a Type enum value 9923 TypeCanonicalUser = "CanonicalUser" 9924 9925 // TypeGroup is a Type enum value 9926 TypeGroup = "Group" 9927 ) 9928 9929 // Type_Values returns all elements of the Type enum 9930 func Type_Values() []string { 9931 return []string{ 9932 TypeAmazonCustomerByEmail, 9933 TypeCanonicalUser, 9934 TypeGroup, 9935 } 9936 }