1// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. 2 3package qldb 4 5import ( 6 "fmt" 7 "time" 8 9 "github.com/aws/aws-sdk-go/aws" 10 "github.com/aws/aws-sdk-go/aws/awsutil" 11 "github.com/aws/aws-sdk-go/aws/request" 12 "github.com/aws/aws-sdk-go/private/protocol" 13 "github.com/aws/aws-sdk-go/private/protocol/restjson" 14) 15 16const opCancelJournalKinesisStream = "CancelJournalKinesisStream" 17 18// CancelJournalKinesisStreamRequest generates a "aws/request.Request" representing the 19// client's request for the CancelJournalKinesisStream 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 CancelJournalKinesisStream for more information on using the CancelJournalKinesisStream 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 CancelJournalKinesisStreamRequest method. 34// req, resp := client.CancelJournalKinesisStreamRequest(params) 35// 36// err := req.Send() 37// if err == nil { // resp is now filled 38// fmt.Println(resp) 39// } 40// 41// See also, https://docs.aws.amazon.com/goto/WebAPI/qldb-2019-01-02/CancelJournalKinesisStream 42func (c *QLDB) CancelJournalKinesisStreamRequest(input *CancelJournalKinesisStreamInput) (req *request.Request, output *CancelJournalKinesisStreamOutput) { 43 op := &request.Operation{ 44 Name: opCancelJournalKinesisStream, 45 HTTPMethod: "DELETE", 46 HTTPPath: "/ledgers/{name}/journal-kinesis-streams/{streamId}", 47 } 48 49 if input == nil { 50 input = &CancelJournalKinesisStreamInput{} 51 } 52 53 output = &CancelJournalKinesisStreamOutput{} 54 req = c.newRequest(op, input, output) 55 return 56} 57 58// CancelJournalKinesisStream API operation for Amazon QLDB. 59// 60// Ends a given Amazon QLDB journal stream. Before a stream can be canceled, 61// its current status must be ACTIVE. 62// 63// You can't restart a stream after you cancel it. Canceled QLDB stream resources 64// are subject to a 7-day retention period, so they are automatically deleted 65// after this limit expires. 66// 67// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 68// with awserr.Error's Code and Message methods to get detailed information about 69// the error. 70// 71// See the AWS API reference guide for Amazon QLDB's 72// API operation CancelJournalKinesisStream for usage and error information. 73// 74// Returned Error Types: 75// * InvalidParameterException 76// One or more parameters in the request aren't valid. 77// 78// * ResourceNotFoundException 79// The specified resource doesn't exist. 80// 81// * ResourcePreconditionNotMetException 82// The operation failed because a condition wasn't satisfied in advance. 83// 84// See also, https://docs.aws.amazon.com/goto/WebAPI/qldb-2019-01-02/CancelJournalKinesisStream 85func (c *QLDB) CancelJournalKinesisStream(input *CancelJournalKinesisStreamInput) (*CancelJournalKinesisStreamOutput, error) { 86 req, out := c.CancelJournalKinesisStreamRequest(input) 87 return out, req.Send() 88} 89 90// CancelJournalKinesisStreamWithContext is the same as CancelJournalKinesisStream with the addition of 91// the ability to pass a context and additional request options. 92// 93// See CancelJournalKinesisStream for details on how to use this API operation. 94// 95// The context must be non-nil and will be used for request cancellation. If 96// the context is nil a panic will occur. In the future the SDK may create 97// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 98// for more information on using Contexts. 99func (c *QLDB) CancelJournalKinesisStreamWithContext(ctx aws.Context, input *CancelJournalKinesisStreamInput, opts ...request.Option) (*CancelJournalKinesisStreamOutput, error) { 100 req, out := c.CancelJournalKinesisStreamRequest(input) 101 req.SetContext(ctx) 102 req.ApplyOptions(opts...) 103 return out, req.Send() 104} 105 106const opCreateLedger = "CreateLedger" 107 108// CreateLedgerRequest generates a "aws/request.Request" representing the 109// client's request for the CreateLedger operation. The "output" return 110// value will be populated with the request's response once the request completes 111// successfully. 112// 113// Use "Send" method on the returned Request to send the API call to the service. 114// the "output" return value is not valid until after Send returns without error. 115// 116// See CreateLedger for more information on using the CreateLedger 117// API call, and error handling. 118// 119// This method is useful when you want to inject custom logic or configuration 120// into the SDK's request lifecycle. Such as custom headers, or retry logic. 121// 122// 123// // Example sending a request using the CreateLedgerRequest method. 124// req, resp := client.CreateLedgerRequest(params) 125// 126// err := req.Send() 127// if err == nil { // resp is now filled 128// fmt.Println(resp) 129// } 130// 131// See also, https://docs.aws.amazon.com/goto/WebAPI/qldb-2019-01-02/CreateLedger 132func (c *QLDB) CreateLedgerRequest(input *CreateLedgerInput) (req *request.Request, output *CreateLedgerOutput) { 133 op := &request.Operation{ 134 Name: opCreateLedger, 135 HTTPMethod: "POST", 136 HTTPPath: "/ledgers", 137 } 138 139 if input == nil { 140 input = &CreateLedgerInput{} 141 } 142 143 output = &CreateLedgerOutput{} 144 req = c.newRequest(op, input, output) 145 return 146} 147 148// CreateLedger API operation for Amazon QLDB. 149// 150// Creates a new ledger in your AWS account. 151// 152// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 153// with awserr.Error's Code and Message methods to get detailed information about 154// the error. 155// 156// See the AWS API reference guide for Amazon QLDB's 157// API operation CreateLedger for usage and error information. 158// 159// Returned Error Types: 160// * InvalidParameterException 161// One or more parameters in the request aren't valid. 162// 163// * ResourceAlreadyExistsException 164// The specified resource already exists. 165// 166// * LimitExceededException 167// You have reached the limit on the maximum number of resources allowed. 168// 169// * ResourceInUseException 170// The specified resource can't be modified at this time. 171// 172// See also, https://docs.aws.amazon.com/goto/WebAPI/qldb-2019-01-02/CreateLedger 173func (c *QLDB) CreateLedger(input *CreateLedgerInput) (*CreateLedgerOutput, error) { 174 req, out := c.CreateLedgerRequest(input) 175 return out, req.Send() 176} 177 178// CreateLedgerWithContext is the same as CreateLedger with the addition of 179// the ability to pass a context and additional request options. 180// 181// See CreateLedger for details on how to use this API operation. 182// 183// The context must be non-nil and will be used for request cancellation. If 184// the context is nil a panic will occur. In the future the SDK may create 185// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 186// for more information on using Contexts. 187func (c *QLDB) CreateLedgerWithContext(ctx aws.Context, input *CreateLedgerInput, opts ...request.Option) (*CreateLedgerOutput, error) { 188 req, out := c.CreateLedgerRequest(input) 189 req.SetContext(ctx) 190 req.ApplyOptions(opts...) 191 return out, req.Send() 192} 193 194const opDeleteLedger = "DeleteLedger" 195 196// DeleteLedgerRequest generates a "aws/request.Request" representing the 197// client's request for the DeleteLedger operation. The "output" return 198// value will be populated with the request's response once the request completes 199// successfully. 200// 201// Use "Send" method on the returned Request to send the API call to the service. 202// the "output" return value is not valid until after Send returns without error. 203// 204// See DeleteLedger for more information on using the DeleteLedger 205// API call, and error handling. 206// 207// This method is useful when you want to inject custom logic or configuration 208// into the SDK's request lifecycle. Such as custom headers, or retry logic. 209// 210// 211// // Example sending a request using the DeleteLedgerRequest method. 212// req, resp := client.DeleteLedgerRequest(params) 213// 214// err := req.Send() 215// if err == nil { // resp is now filled 216// fmt.Println(resp) 217// } 218// 219// See also, https://docs.aws.amazon.com/goto/WebAPI/qldb-2019-01-02/DeleteLedger 220func (c *QLDB) DeleteLedgerRequest(input *DeleteLedgerInput) (req *request.Request, output *DeleteLedgerOutput) { 221 op := &request.Operation{ 222 Name: opDeleteLedger, 223 HTTPMethod: "DELETE", 224 HTTPPath: "/ledgers/{name}", 225 } 226 227 if input == nil { 228 input = &DeleteLedgerInput{} 229 } 230 231 output = &DeleteLedgerOutput{} 232 req = c.newRequest(op, input, output) 233 req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 234 return 235} 236 237// DeleteLedger API operation for Amazon QLDB. 238// 239// Deletes a ledger and all of its contents. This action is irreversible. 240// 241// If deletion protection is enabled, you must first disable it before you can 242// delete the ledger using the QLDB API or the AWS Command Line Interface (AWS 243// CLI). You can disable it by calling the UpdateLedger operation to set the 244// flag to false. The QLDB console disables deletion protection for you when 245// you use it to delete a ledger. 246// 247// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 248// with awserr.Error's Code and Message methods to get detailed information about 249// the error. 250// 251// See the AWS API reference guide for Amazon QLDB's 252// API operation DeleteLedger for usage and error information. 253// 254// Returned Error Types: 255// * InvalidParameterException 256// One or more parameters in the request aren't valid. 257// 258// * ResourceNotFoundException 259// The specified resource doesn't exist. 260// 261// * ResourceInUseException 262// The specified resource can't be modified at this time. 263// 264// * ResourcePreconditionNotMetException 265// The operation failed because a condition wasn't satisfied in advance. 266// 267// See also, https://docs.aws.amazon.com/goto/WebAPI/qldb-2019-01-02/DeleteLedger 268func (c *QLDB) DeleteLedger(input *DeleteLedgerInput) (*DeleteLedgerOutput, error) { 269 req, out := c.DeleteLedgerRequest(input) 270 return out, req.Send() 271} 272 273// DeleteLedgerWithContext is the same as DeleteLedger with the addition of 274// the ability to pass a context and additional request options. 275// 276// See DeleteLedger for details on how to use this API operation. 277// 278// The context must be non-nil and will be used for request cancellation. If 279// the context is nil a panic will occur. In the future the SDK may create 280// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 281// for more information on using Contexts. 282func (c *QLDB) DeleteLedgerWithContext(ctx aws.Context, input *DeleteLedgerInput, opts ...request.Option) (*DeleteLedgerOutput, error) { 283 req, out := c.DeleteLedgerRequest(input) 284 req.SetContext(ctx) 285 req.ApplyOptions(opts...) 286 return out, req.Send() 287} 288 289const opDescribeJournalKinesisStream = "DescribeJournalKinesisStream" 290 291// DescribeJournalKinesisStreamRequest generates a "aws/request.Request" representing the 292// client's request for the DescribeJournalKinesisStream operation. The "output" return 293// value will be populated with the request's response once the request completes 294// successfully. 295// 296// Use "Send" method on the returned Request to send the API call to the service. 297// the "output" return value is not valid until after Send returns without error. 298// 299// See DescribeJournalKinesisStream for more information on using the DescribeJournalKinesisStream 300// API call, and error handling. 301// 302// This method is useful when you want to inject custom logic or configuration 303// into the SDK's request lifecycle. Such as custom headers, or retry logic. 304// 305// 306// // Example sending a request using the DescribeJournalKinesisStreamRequest method. 307// req, resp := client.DescribeJournalKinesisStreamRequest(params) 308// 309// err := req.Send() 310// if err == nil { // resp is now filled 311// fmt.Println(resp) 312// } 313// 314// See also, https://docs.aws.amazon.com/goto/WebAPI/qldb-2019-01-02/DescribeJournalKinesisStream 315func (c *QLDB) DescribeJournalKinesisStreamRequest(input *DescribeJournalKinesisStreamInput) (req *request.Request, output *DescribeJournalKinesisStreamOutput) { 316 op := &request.Operation{ 317 Name: opDescribeJournalKinesisStream, 318 HTTPMethod: "GET", 319 HTTPPath: "/ledgers/{name}/journal-kinesis-streams/{streamId}", 320 } 321 322 if input == nil { 323 input = &DescribeJournalKinesisStreamInput{} 324 } 325 326 output = &DescribeJournalKinesisStreamOutput{} 327 req = c.newRequest(op, input, output) 328 return 329} 330 331// DescribeJournalKinesisStream API operation for Amazon QLDB. 332// 333// Returns detailed information about a given Amazon QLDB journal stream. The 334// output includes the Amazon Resource Name (ARN), stream name, current status, 335// creation time, and the parameters of your original stream creation request. 336// 337// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 338// with awserr.Error's Code and Message methods to get detailed information about 339// the error. 340// 341// See the AWS API reference guide for Amazon QLDB's 342// API operation DescribeJournalKinesisStream for usage and error information. 343// 344// Returned Error Types: 345// * InvalidParameterException 346// One or more parameters in the request aren't valid. 347// 348// * ResourceNotFoundException 349// The specified resource doesn't exist. 350// 351// * ResourcePreconditionNotMetException 352// The operation failed because a condition wasn't satisfied in advance. 353// 354// See also, https://docs.aws.amazon.com/goto/WebAPI/qldb-2019-01-02/DescribeJournalKinesisStream 355func (c *QLDB) DescribeJournalKinesisStream(input *DescribeJournalKinesisStreamInput) (*DescribeJournalKinesisStreamOutput, error) { 356 req, out := c.DescribeJournalKinesisStreamRequest(input) 357 return out, req.Send() 358} 359 360// DescribeJournalKinesisStreamWithContext is the same as DescribeJournalKinesisStream with the addition of 361// the ability to pass a context and additional request options. 362// 363// See DescribeJournalKinesisStream for details on how to use this API operation. 364// 365// The context must be non-nil and will be used for request cancellation. If 366// the context is nil a panic will occur. In the future the SDK may create 367// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 368// for more information on using Contexts. 369func (c *QLDB) DescribeJournalKinesisStreamWithContext(ctx aws.Context, input *DescribeJournalKinesisStreamInput, opts ...request.Option) (*DescribeJournalKinesisStreamOutput, error) { 370 req, out := c.DescribeJournalKinesisStreamRequest(input) 371 req.SetContext(ctx) 372 req.ApplyOptions(opts...) 373 return out, req.Send() 374} 375 376const opDescribeJournalS3Export = "DescribeJournalS3Export" 377 378// DescribeJournalS3ExportRequest generates a "aws/request.Request" representing the 379// client's request for the DescribeJournalS3Export operation. The "output" return 380// value will be populated with the request's response once the request completes 381// successfully. 382// 383// Use "Send" method on the returned Request to send the API call to the service. 384// the "output" return value is not valid until after Send returns without error. 385// 386// See DescribeJournalS3Export for more information on using the DescribeJournalS3Export 387// API call, and error handling. 388// 389// This method is useful when you want to inject custom logic or configuration 390// into the SDK's request lifecycle. Such as custom headers, or retry logic. 391// 392// 393// // Example sending a request using the DescribeJournalS3ExportRequest method. 394// req, resp := client.DescribeJournalS3ExportRequest(params) 395// 396// err := req.Send() 397// if err == nil { // resp is now filled 398// fmt.Println(resp) 399// } 400// 401// See also, https://docs.aws.amazon.com/goto/WebAPI/qldb-2019-01-02/DescribeJournalS3Export 402func (c *QLDB) DescribeJournalS3ExportRequest(input *DescribeJournalS3ExportInput) (req *request.Request, output *DescribeJournalS3ExportOutput) { 403 op := &request.Operation{ 404 Name: opDescribeJournalS3Export, 405 HTTPMethod: "GET", 406 HTTPPath: "/ledgers/{name}/journal-s3-exports/{exportId}", 407 } 408 409 if input == nil { 410 input = &DescribeJournalS3ExportInput{} 411 } 412 413 output = &DescribeJournalS3ExportOutput{} 414 req = c.newRequest(op, input, output) 415 return 416} 417 418// DescribeJournalS3Export API operation for Amazon QLDB. 419// 420// Returns information about a journal export job, including the ledger name, 421// export ID, when it was created, current status, and its start and end time 422// export parameters. 423// 424// This action does not return any expired export jobs. For more information, 425// see Export Job Expiration (https://docs.aws.amazon.com/qldb/latest/developerguide/export-journal.request.html#export-journal.request.expiration) 426// in the Amazon QLDB Developer Guide. 427// 428// If the export job with the given ExportId doesn't exist, then throws ResourceNotFoundException. 429// 430// If the ledger with the given Name doesn't exist, then throws ResourceNotFoundException. 431// 432// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 433// with awserr.Error's Code and Message methods to get detailed information about 434// the error. 435// 436// See the AWS API reference guide for Amazon QLDB's 437// API operation DescribeJournalS3Export for usage and error information. 438// 439// Returned Error Types: 440// * ResourceNotFoundException 441// The specified resource doesn't exist. 442// 443// See also, https://docs.aws.amazon.com/goto/WebAPI/qldb-2019-01-02/DescribeJournalS3Export 444func (c *QLDB) DescribeJournalS3Export(input *DescribeJournalS3ExportInput) (*DescribeJournalS3ExportOutput, error) { 445 req, out := c.DescribeJournalS3ExportRequest(input) 446 return out, req.Send() 447} 448 449// DescribeJournalS3ExportWithContext is the same as DescribeJournalS3Export with the addition of 450// the ability to pass a context and additional request options. 451// 452// See DescribeJournalS3Export for details on how to use this API operation. 453// 454// The context must be non-nil and will be used for request cancellation. If 455// the context is nil a panic will occur. In the future the SDK may create 456// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 457// for more information on using Contexts. 458func (c *QLDB) DescribeJournalS3ExportWithContext(ctx aws.Context, input *DescribeJournalS3ExportInput, opts ...request.Option) (*DescribeJournalS3ExportOutput, error) { 459 req, out := c.DescribeJournalS3ExportRequest(input) 460 req.SetContext(ctx) 461 req.ApplyOptions(opts...) 462 return out, req.Send() 463} 464 465const opDescribeLedger = "DescribeLedger" 466 467// DescribeLedgerRequest generates a "aws/request.Request" representing the 468// client's request for the DescribeLedger operation. The "output" return 469// value will be populated with the request's response once the request completes 470// successfully. 471// 472// Use "Send" method on the returned Request to send the API call to the service. 473// the "output" return value is not valid until after Send returns without error. 474// 475// See DescribeLedger for more information on using the DescribeLedger 476// API call, and error handling. 477// 478// This method is useful when you want to inject custom logic or configuration 479// into the SDK's request lifecycle. Such as custom headers, or retry logic. 480// 481// 482// // Example sending a request using the DescribeLedgerRequest method. 483// req, resp := client.DescribeLedgerRequest(params) 484// 485// err := req.Send() 486// if err == nil { // resp is now filled 487// fmt.Println(resp) 488// } 489// 490// See also, https://docs.aws.amazon.com/goto/WebAPI/qldb-2019-01-02/DescribeLedger 491func (c *QLDB) DescribeLedgerRequest(input *DescribeLedgerInput) (req *request.Request, output *DescribeLedgerOutput) { 492 op := &request.Operation{ 493 Name: opDescribeLedger, 494 HTTPMethod: "GET", 495 HTTPPath: "/ledgers/{name}", 496 } 497 498 if input == nil { 499 input = &DescribeLedgerInput{} 500 } 501 502 output = &DescribeLedgerOutput{} 503 req = c.newRequest(op, input, output) 504 return 505} 506 507// DescribeLedger API operation for Amazon QLDB. 508// 509// Returns information about a ledger, including its state and when it was created. 510// 511// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 512// with awserr.Error's Code and Message methods to get detailed information about 513// the error. 514// 515// See the AWS API reference guide for Amazon QLDB's 516// API operation DescribeLedger for usage and error information. 517// 518// Returned Error Types: 519// * InvalidParameterException 520// One or more parameters in the request aren't valid. 521// 522// * ResourceNotFoundException 523// The specified resource doesn't exist. 524// 525// See also, https://docs.aws.amazon.com/goto/WebAPI/qldb-2019-01-02/DescribeLedger 526func (c *QLDB) DescribeLedger(input *DescribeLedgerInput) (*DescribeLedgerOutput, error) { 527 req, out := c.DescribeLedgerRequest(input) 528 return out, req.Send() 529} 530 531// DescribeLedgerWithContext is the same as DescribeLedger with the addition of 532// the ability to pass a context and additional request options. 533// 534// See DescribeLedger for details on how to use this API operation. 535// 536// The context must be non-nil and will be used for request cancellation. If 537// the context is nil a panic will occur. In the future the SDK may create 538// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 539// for more information on using Contexts. 540func (c *QLDB) DescribeLedgerWithContext(ctx aws.Context, input *DescribeLedgerInput, opts ...request.Option) (*DescribeLedgerOutput, error) { 541 req, out := c.DescribeLedgerRequest(input) 542 req.SetContext(ctx) 543 req.ApplyOptions(opts...) 544 return out, req.Send() 545} 546 547const opExportJournalToS3 = "ExportJournalToS3" 548 549// ExportJournalToS3Request generates a "aws/request.Request" representing the 550// client's request for the ExportJournalToS3 operation. The "output" return 551// value will be populated with the request's response once the request completes 552// successfully. 553// 554// Use "Send" method on the returned Request to send the API call to the service. 555// the "output" return value is not valid until after Send returns without error. 556// 557// See ExportJournalToS3 for more information on using the ExportJournalToS3 558// API call, and error handling. 559// 560// This method is useful when you want to inject custom logic or configuration 561// into the SDK's request lifecycle. Such as custom headers, or retry logic. 562// 563// 564// // Example sending a request using the ExportJournalToS3Request method. 565// req, resp := client.ExportJournalToS3Request(params) 566// 567// err := req.Send() 568// if err == nil { // resp is now filled 569// fmt.Println(resp) 570// } 571// 572// See also, https://docs.aws.amazon.com/goto/WebAPI/qldb-2019-01-02/ExportJournalToS3 573func (c *QLDB) ExportJournalToS3Request(input *ExportJournalToS3Input) (req *request.Request, output *ExportJournalToS3Output) { 574 op := &request.Operation{ 575 Name: opExportJournalToS3, 576 HTTPMethod: "POST", 577 HTTPPath: "/ledgers/{name}/journal-s3-exports", 578 } 579 580 if input == nil { 581 input = &ExportJournalToS3Input{} 582 } 583 584 output = &ExportJournalToS3Output{} 585 req = c.newRequest(op, input, output) 586 return 587} 588 589// ExportJournalToS3 API operation for Amazon QLDB. 590// 591// Exports journal contents within a date and time range from a ledger into 592// a specified Amazon Simple Storage Service (Amazon S3) bucket. The data is 593// written as files in Amazon Ion format. 594// 595// If the ledger with the given Name doesn't exist, then throws ResourceNotFoundException. 596// 597// If the ledger with the given Name is in CREATING status, then throws ResourcePreconditionNotMetException. 598// 599// You can initiate up to two concurrent journal export requests for each ledger. 600// Beyond this limit, journal export requests throw LimitExceededException. 601// 602// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 603// with awserr.Error's Code and Message methods to get detailed information about 604// the error. 605// 606// See the AWS API reference guide for Amazon QLDB's 607// API operation ExportJournalToS3 for usage and error information. 608// 609// Returned Error Types: 610// * ResourceNotFoundException 611// The specified resource doesn't exist. 612// 613// * ResourcePreconditionNotMetException 614// The operation failed because a condition wasn't satisfied in advance. 615// 616// See also, https://docs.aws.amazon.com/goto/WebAPI/qldb-2019-01-02/ExportJournalToS3 617func (c *QLDB) ExportJournalToS3(input *ExportJournalToS3Input) (*ExportJournalToS3Output, error) { 618 req, out := c.ExportJournalToS3Request(input) 619 return out, req.Send() 620} 621 622// ExportJournalToS3WithContext is the same as ExportJournalToS3 with the addition of 623// the ability to pass a context and additional request options. 624// 625// See ExportJournalToS3 for details on how to use this API operation. 626// 627// The context must be non-nil and will be used for request cancellation. If 628// the context is nil a panic will occur. In the future the SDK may create 629// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 630// for more information on using Contexts. 631func (c *QLDB) ExportJournalToS3WithContext(ctx aws.Context, input *ExportJournalToS3Input, opts ...request.Option) (*ExportJournalToS3Output, error) { 632 req, out := c.ExportJournalToS3Request(input) 633 req.SetContext(ctx) 634 req.ApplyOptions(opts...) 635 return out, req.Send() 636} 637 638const opGetBlock = "GetBlock" 639 640// GetBlockRequest generates a "aws/request.Request" representing the 641// client's request for the GetBlock operation. The "output" return 642// value will be populated with the request's response once the request completes 643// successfully. 644// 645// Use "Send" method on the returned Request to send the API call to the service. 646// the "output" return value is not valid until after Send returns without error. 647// 648// See GetBlock for more information on using the GetBlock 649// API call, and error handling. 650// 651// This method is useful when you want to inject custom logic or configuration 652// into the SDK's request lifecycle. Such as custom headers, or retry logic. 653// 654// 655// // Example sending a request using the GetBlockRequest method. 656// req, resp := client.GetBlockRequest(params) 657// 658// err := req.Send() 659// if err == nil { // resp is now filled 660// fmt.Println(resp) 661// } 662// 663// See also, https://docs.aws.amazon.com/goto/WebAPI/qldb-2019-01-02/GetBlock 664func (c *QLDB) GetBlockRequest(input *GetBlockInput) (req *request.Request, output *GetBlockOutput) { 665 op := &request.Operation{ 666 Name: opGetBlock, 667 HTTPMethod: "POST", 668 HTTPPath: "/ledgers/{name}/block", 669 } 670 671 if input == nil { 672 input = &GetBlockInput{} 673 } 674 675 output = &GetBlockOutput{} 676 req = c.newRequest(op, input, output) 677 return 678} 679 680// GetBlock API operation for Amazon QLDB. 681// 682// Returns a journal block object at a specified address in a ledger. Also returns 683// a proof of the specified block for verification if DigestTipAddress is provided. 684// 685// If the specified ledger doesn't exist or is in DELETING status, then throws 686// ResourceNotFoundException. 687// 688// If the specified ledger is in CREATING status, then throws ResourcePreconditionNotMetException. 689// 690// If no block exists with the specified address, then throws InvalidParameterException. 691// 692// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 693// with awserr.Error's Code and Message methods to get detailed information about 694// the error. 695// 696// See the AWS API reference guide for Amazon QLDB's 697// API operation GetBlock for usage and error information. 698// 699// Returned Error Types: 700// * InvalidParameterException 701// One or more parameters in the request aren't valid. 702// 703// * ResourceNotFoundException 704// The specified resource doesn't exist. 705// 706// * ResourcePreconditionNotMetException 707// The operation failed because a condition wasn't satisfied in advance. 708// 709// See also, https://docs.aws.amazon.com/goto/WebAPI/qldb-2019-01-02/GetBlock 710func (c *QLDB) GetBlock(input *GetBlockInput) (*GetBlockOutput, error) { 711 req, out := c.GetBlockRequest(input) 712 return out, req.Send() 713} 714 715// GetBlockWithContext is the same as GetBlock with the addition of 716// the ability to pass a context and additional request options. 717// 718// See GetBlock for details on how to use this API operation. 719// 720// The context must be non-nil and will be used for request cancellation. If 721// the context is nil a panic will occur. In the future the SDK may create 722// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 723// for more information on using Contexts. 724func (c *QLDB) GetBlockWithContext(ctx aws.Context, input *GetBlockInput, opts ...request.Option) (*GetBlockOutput, error) { 725 req, out := c.GetBlockRequest(input) 726 req.SetContext(ctx) 727 req.ApplyOptions(opts...) 728 return out, req.Send() 729} 730 731const opGetDigest = "GetDigest" 732 733// GetDigestRequest generates a "aws/request.Request" representing the 734// client's request for the GetDigest operation. The "output" return 735// value will be populated with the request's response once the request completes 736// successfully. 737// 738// Use "Send" method on the returned Request to send the API call to the service. 739// the "output" return value is not valid until after Send returns without error. 740// 741// See GetDigest for more information on using the GetDigest 742// API call, and error handling. 743// 744// This method is useful when you want to inject custom logic or configuration 745// into the SDK's request lifecycle. Such as custom headers, or retry logic. 746// 747// 748// // Example sending a request using the GetDigestRequest method. 749// req, resp := client.GetDigestRequest(params) 750// 751// err := req.Send() 752// if err == nil { // resp is now filled 753// fmt.Println(resp) 754// } 755// 756// See also, https://docs.aws.amazon.com/goto/WebAPI/qldb-2019-01-02/GetDigest 757func (c *QLDB) GetDigestRequest(input *GetDigestInput) (req *request.Request, output *GetDigestOutput) { 758 op := &request.Operation{ 759 Name: opGetDigest, 760 HTTPMethod: "POST", 761 HTTPPath: "/ledgers/{name}/digest", 762 } 763 764 if input == nil { 765 input = &GetDigestInput{} 766 } 767 768 output = &GetDigestOutput{} 769 req = c.newRequest(op, input, output) 770 return 771} 772 773// GetDigest API operation for Amazon QLDB. 774// 775// Returns the digest of a ledger at the latest committed block in the journal. 776// The response includes a 256-bit hash value and a block address. 777// 778// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 779// with awserr.Error's Code and Message methods to get detailed information about 780// the error. 781// 782// See the AWS API reference guide for Amazon QLDB's 783// API operation GetDigest for usage and error information. 784// 785// Returned Error Types: 786// * InvalidParameterException 787// One or more parameters in the request aren't valid. 788// 789// * ResourceNotFoundException 790// The specified resource doesn't exist. 791// 792// * ResourcePreconditionNotMetException 793// The operation failed because a condition wasn't satisfied in advance. 794// 795// See also, https://docs.aws.amazon.com/goto/WebAPI/qldb-2019-01-02/GetDigest 796func (c *QLDB) GetDigest(input *GetDigestInput) (*GetDigestOutput, error) { 797 req, out := c.GetDigestRequest(input) 798 return out, req.Send() 799} 800 801// GetDigestWithContext is the same as GetDigest with the addition of 802// the ability to pass a context and additional request options. 803// 804// See GetDigest for details on how to use this API operation. 805// 806// The context must be non-nil and will be used for request cancellation. If 807// the context is nil a panic will occur. In the future the SDK may create 808// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 809// for more information on using Contexts. 810func (c *QLDB) GetDigestWithContext(ctx aws.Context, input *GetDigestInput, opts ...request.Option) (*GetDigestOutput, error) { 811 req, out := c.GetDigestRequest(input) 812 req.SetContext(ctx) 813 req.ApplyOptions(opts...) 814 return out, req.Send() 815} 816 817const opGetRevision = "GetRevision" 818 819// GetRevisionRequest generates a "aws/request.Request" representing the 820// client's request for the GetRevision operation. The "output" return 821// value will be populated with the request's response once the request completes 822// successfully. 823// 824// Use "Send" method on the returned Request to send the API call to the service. 825// the "output" return value is not valid until after Send returns without error. 826// 827// See GetRevision for more information on using the GetRevision 828// API call, and error handling. 829// 830// This method is useful when you want to inject custom logic or configuration 831// into the SDK's request lifecycle. Such as custom headers, or retry logic. 832// 833// 834// // Example sending a request using the GetRevisionRequest method. 835// req, resp := client.GetRevisionRequest(params) 836// 837// err := req.Send() 838// if err == nil { // resp is now filled 839// fmt.Println(resp) 840// } 841// 842// See also, https://docs.aws.amazon.com/goto/WebAPI/qldb-2019-01-02/GetRevision 843func (c *QLDB) GetRevisionRequest(input *GetRevisionInput) (req *request.Request, output *GetRevisionOutput) { 844 op := &request.Operation{ 845 Name: opGetRevision, 846 HTTPMethod: "POST", 847 HTTPPath: "/ledgers/{name}/revision", 848 } 849 850 if input == nil { 851 input = &GetRevisionInput{} 852 } 853 854 output = &GetRevisionOutput{} 855 req = c.newRequest(op, input, output) 856 return 857} 858 859// GetRevision API operation for Amazon QLDB. 860// 861// Returns a revision data object for a specified document ID and block address. 862// Also returns a proof of the specified revision for verification if DigestTipAddress 863// is provided. 864// 865// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 866// with awserr.Error's Code and Message methods to get detailed information about 867// the error. 868// 869// See the AWS API reference guide for Amazon QLDB's 870// API operation GetRevision for usage and error information. 871// 872// Returned Error Types: 873// * InvalidParameterException 874// One or more parameters in the request aren't valid. 875// 876// * ResourceNotFoundException 877// The specified resource doesn't exist. 878// 879// * ResourcePreconditionNotMetException 880// The operation failed because a condition wasn't satisfied in advance. 881// 882// See also, https://docs.aws.amazon.com/goto/WebAPI/qldb-2019-01-02/GetRevision 883func (c *QLDB) GetRevision(input *GetRevisionInput) (*GetRevisionOutput, error) { 884 req, out := c.GetRevisionRequest(input) 885 return out, req.Send() 886} 887 888// GetRevisionWithContext is the same as GetRevision with the addition of 889// the ability to pass a context and additional request options. 890// 891// See GetRevision for details on how to use this API operation. 892// 893// The context must be non-nil and will be used for request cancellation. If 894// the context is nil a panic will occur. In the future the SDK may create 895// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 896// for more information on using Contexts. 897func (c *QLDB) GetRevisionWithContext(ctx aws.Context, input *GetRevisionInput, opts ...request.Option) (*GetRevisionOutput, error) { 898 req, out := c.GetRevisionRequest(input) 899 req.SetContext(ctx) 900 req.ApplyOptions(opts...) 901 return out, req.Send() 902} 903 904const opListJournalKinesisStreamsForLedger = "ListJournalKinesisStreamsForLedger" 905 906// ListJournalKinesisStreamsForLedgerRequest generates a "aws/request.Request" representing the 907// client's request for the ListJournalKinesisStreamsForLedger operation. The "output" return 908// value will be populated with the request's response once the request completes 909// successfully. 910// 911// Use "Send" method on the returned Request to send the API call to the service. 912// the "output" return value is not valid until after Send returns without error. 913// 914// See ListJournalKinesisStreamsForLedger for more information on using the ListJournalKinesisStreamsForLedger 915// API call, and error handling. 916// 917// This method is useful when you want to inject custom logic or configuration 918// into the SDK's request lifecycle. Such as custom headers, or retry logic. 919// 920// 921// // Example sending a request using the ListJournalKinesisStreamsForLedgerRequest method. 922// req, resp := client.ListJournalKinesisStreamsForLedgerRequest(params) 923// 924// err := req.Send() 925// if err == nil { // resp is now filled 926// fmt.Println(resp) 927// } 928// 929// See also, https://docs.aws.amazon.com/goto/WebAPI/qldb-2019-01-02/ListJournalKinesisStreamsForLedger 930func (c *QLDB) ListJournalKinesisStreamsForLedgerRequest(input *ListJournalKinesisStreamsForLedgerInput) (req *request.Request, output *ListJournalKinesisStreamsForLedgerOutput) { 931 op := &request.Operation{ 932 Name: opListJournalKinesisStreamsForLedger, 933 HTTPMethod: "GET", 934 HTTPPath: "/ledgers/{name}/journal-kinesis-streams", 935 Paginator: &request.Paginator{ 936 InputTokens: []string{"NextToken"}, 937 OutputTokens: []string{"NextToken"}, 938 LimitToken: "MaxResults", 939 TruncationToken: "", 940 }, 941 } 942 943 if input == nil { 944 input = &ListJournalKinesisStreamsForLedgerInput{} 945 } 946 947 output = &ListJournalKinesisStreamsForLedgerOutput{} 948 req = c.newRequest(op, input, output) 949 return 950} 951 952// ListJournalKinesisStreamsForLedger API operation for Amazon QLDB. 953// 954// Returns an array of all Amazon QLDB journal stream descriptors for a given 955// ledger. The output of each stream descriptor includes the same details that 956// are returned by DescribeJournalKinesisStream. 957// 958// This action returns a maximum of MaxResults items. It is paginated so that 959// you can retrieve all the items by calling ListJournalKinesisStreamsForLedger 960// multiple times. 961// 962// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 963// with awserr.Error's Code and Message methods to get detailed information about 964// the error. 965// 966// See the AWS API reference guide for Amazon QLDB's 967// API operation ListJournalKinesisStreamsForLedger for usage and error information. 968// 969// Returned Error Types: 970// * InvalidParameterException 971// One or more parameters in the request aren't valid. 972// 973// * ResourceNotFoundException 974// The specified resource doesn't exist. 975// 976// * ResourcePreconditionNotMetException 977// The operation failed because a condition wasn't satisfied in advance. 978// 979// See also, https://docs.aws.amazon.com/goto/WebAPI/qldb-2019-01-02/ListJournalKinesisStreamsForLedger 980func (c *QLDB) ListJournalKinesisStreamsForLedger(input *ListJournalKinesisStreamsForLedgerInput) (*ListJournalKinesisStreamsForLedgerOutput, error) { 981 req, out := c.ListJournalKinesisStreamsForLedgerRequest(input) 982 return out, req.Send() 983} 984 985// ListJournalKinesisStreamsForLedgerWithContext is the same as ListJournalKinesisStreamsForLedger with the addition of 986// the ability to pass a context and additional request options. 987// 988// See ListJournalKinesisStreamsForLedger for details on how to use this API operation. 989// 990// The context must be non-nil and will be used for request cancellation. If 991// the context is nil a panic will occur. In the future the SDK may create 992// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 993// for more information on using Contexts. 994func (c *QLDB) ListJournalKinesisStreamsForLedgerWithContext(ctx aws.Context, input *ListJournalKinesisStreamsForLedgerInput, opts ...request.Option) (*ListJournalKinesisStreamsForLedgerOutput, error) { 995 req, out := c.ListJournalKinesisStreamsForLedgerRequest(input) 996 req.SetContext(ctx) 997 req.ApplyOptions(opts...) 998 return out, req.Send() 999} 1000 1001// ListJournalKinesisStreamsForLedgerPages iterates over the pages of a ListJournalKinesisStreamsForLedger operation, 1002// calling the "fn" function with the response data for each page. To stop 1003// iterating, return false from the fn function. 1004// 1005// See ListJournalKinesisStreamsForLedger method for more information on how to use this operation. 1006// 1007// Note: This operation can generate multiple requests to a service. 1008// 1009// // Example iterating over at most 3 pages of a ListJournalKinesisStreamsForLedger operation. 1010// pageNum := 0 1011// err := client.ListJournalKinesisStreamsForLedgerPages(params, 1012// func(page *qldb.ListJournalKinesisStreamsForLedgerOutput, lastPage bool) bool { 1013// pageNum++ 1014// fmt.Println(page) 1015// return pageNum <= 3 1016// }) 1017// 1018func (c *QLDB) ListJournalKinesisStreamsForLedgerPages(input *ListJournalKinesisStreamsForLedgerInput, fn func(*ListJournalKinesisStreamsForLedgerOutput, bool) bool) error { 1019 return c.ListJournalKinesisStreamsForLedgerPagesWithContext(aws.BackgroundContext(), input, fn) 1020} 1021 1022// ListJournalKinesisStreamsForLedgerPagesWithContext same as ListJournalKinesisStreamsForLedgerPages except 1023// it takes a Context and allows setting request options on the pages. 1024// 1025// The context must be non-nil and will be used for request cancellation. If 1026// the context is nil a panic will occur. In the future the SDK may create 1027// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1028// for more information on using Contexts. 1029func (c *QLDB) ListJournalKinesisStreamsForLedgerPagesWithContext(ctx aws.Context, input *ListJournalKinesisStreamsForLedgerInput, fn func(*ListJournalKinesisStreamsForLedgerOutput, bool) bool, opts ...request.Option) error { 1030 p := request.Pagination{ 1031 NewRequest: func() (*request.Request, error) { 1032 var inCpy *ListJournalKinesisStreamsForLedgerInput 1033 if input != nil { 1034 tmp := *input 1035 inCpy = &tmp 1036 } 1037 req, _ := c.ListJournalKinesisStreamsForLedgerRequest(inCpy) 1038 req.SetContext(ctx) 1039 req.ApplyOptions(opts...) 1040 return req, nil 1041 }, 1042 } 1043 1044 for p.Next() { 1045 if !fn(p.Page().(*ListJournalKinesisStreamsForLedgerOutput), !p.HasNextPage()) { 1046 break 1047 } 1048 } 1049 1050 return p.Err() 1051} 1052 1053const opListJournalS3Exports = "ListJournalS3Exports" 1054 1055// ListJournalS3ExportsRequest generates a "aws/request.Request" representing the 1056// client's request for the ListJournalS3Exports operation. The "output" return 1057// value will be populated with the request's response once the request completes 1058// successfully. 1059// 1060// Use "Send" method on the returned Request to send the API call to the service. 1061// the "output" return value is not valid until after Send returns without error. 1062// 1063// See ListJournalS3Exports for more information on using the ListJournalS3Exports 1064// API call, and error handling. 1065// 1066// This method is useful when you want to inject custom logic or configuration 1067// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1068// 1069// 1070// // Example sending a request using the ListJournalS3ExportsRequest method. 1071// req, resp := client.ListJournalS3ExportsRequest(params) 1072// 1073// err := req.Send() 1074// if err == nil { // resp is now filled 1075// fmt.Println(resp) 1076// } 1077// 1078// See also, https://docs.aws.amazon.com/goto/WebAPI/qldb-2019-01-02/ListJournalS3Exports 1079func (c *QLDB) ListJournalS3ExportsRequest(input *ListJournalS3ExportsInput) (req *request.Request, output *ListJournalS3ExportsOutput) { 1080 op := &request.Operation{ 1081 Name: opListJournalS3Exports, 1082 HTTPMethod: "GET", 1083 HTTPPath: "/journal-s3-exports", 1084 Paginator: &request.Paginator{ 1085 InputTokens: []string{"NextToken"}, 1086 OutputTokens: []string{"NextToken"}, 1087 LimitToken: "MaxResults", 1088 TruncationToken: "", 1089 }, 1090 } 1091 1092 if input == nil { 1093 input = &ListJournalS3ExportsInput{} 1094 } 1095 1096 output = &ListJournalS3ExportsOutput{} 1097 req = c.newRequest(op, input, output) 1098 return 1099} 1100 1101// ListJournalS3Exports API operation for Amazon QLDB. 1102// 1103// Returns an array of journal export job descriptions for all ledgers that 1104// are associated with the current AWS account and Region. 1105// 1106// This action returns a maximum of MaxResults items, and is paginated so that 1107// you can retrieve all the items by calling ListJournalS3Exports multiple times. 1108// 1109// This action does not return any expired export jobs. For more information, 1110// see Export Job Expiration (https://docs.aws.amazon.com/qldb/latest/developerguide/export-journal.request.html#export-journal.request.expiration) 1111// in the Amazon QLDB Developer Guide. 1112// 1113// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1114// with awserr.Error's Code and Message methods to get detailed information about 1115// the error. 1116// 1117// See the AWS API reference guide for Amazon QLDB's 1118// API operation ListJournalS3Exports for usage and error information. 1119// See also, https://docs.aws.amazon.com/goto/WebAPI/qldb-2019-01-02/ListJournalS3Exports 1120func (c *QLDB) ListJournalS3Exports(input *ListJournalS3ExportsInput) (*ListJournalS3ExportsOutput, error) { 1121 req, out := c.ListJournalS3ExportsRequest(input) 1122 return out, req.Send() 1123} 1124 1125// ListJournalS3ExportsWithContext is the same as ListJournalS3Exports with the addition of 1126// the ability to pass a context and additional request options. 1127// 1128// See ListJournalS3Exports for details on how to use this API operation. 1129// 1130// The context must be non-nil and will be used for request cancellation. If 1131// the context is nil a panic will occur. In the future the SDK may create 1132// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1133// for more information on using Contexts. 1134func (c *QLDB) ListJournalS3ExportsWithContext(ctx aws.Context, input *ListJournalS3ExportsInput, opts ...request.Option) (*ListJournalS3ExportsOutput, error) { 1135 req, out := c.ListJournalS3ExportsRequest(input) 1136 req.SetContext(ctx) 1137 req.ApplyOptions(opts...) 1138 return out, req.Send() 1139} 1140 1141// ListJournalS3ExportsPages iterates over the pages of a ListJournalS3Exports operation, 1142// calling the "fn" function with the response data for each page. To stop 1143// iterating, return false from the fn function. 1144// 1145// See ListJournalS3Exports method for more information on how to use this operation. 1146// 1147// Note: This operation can generate multiple requests to a service. 1148// 1149// // Example iterating over at most 3 pages of a ListJournalS3Exports operation. 1150// pageNum := 0 1151// err := client.ListJournalS3ExportsPages(params, 1152// func(page *qldb.ListJournalS3ExportsOutput, lastPage bool) bool { 1153// pageNum++ 1154// fmt.Println(page) 1155// return pageNum <= 3 1156// }) 1157// 1158func (c *QLDB) ListJournalS3ExportsPages(input *ListJournalS3ExportsInput, fn func(*ListJournalS3ExportsOutput, bool) bool) error { 1159 return c.ListJournalS3ExportsPagesWithContext(aws.BackgroundContext(), input, fn) 1160} 1161 1162// ListJournalS3ExportsPagesWithContext same as ListJournalS3ExportsPages except 1163// it takes a Context and allows setting request options on the pages. 1164// 1165// The context must be non-nil and will be used for request cancellation. If 1166// the context is nil a panic will occur. In the future the SDK may create 1167// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1168// for more information on using Contexts. 1169func (c *QLDB) ListJournalS3ExportsPagesWithContext(ctx aws.Context, input *ListJournalS3ExportsInput, fn func(*ListJournalS3ExportsOutput, bool) bool, opts ...request.Option) error { 1170 p := request.Pagination{ 1171 NewRequest: func() (*request.Request, error) { 1172 var inCpy *ListJournalS3ExportsInput 1173 if input != nil { 1174 tmp := *input 1175 inCpy = &tmp 1176 } 1177 req, _ := c.ListJournalS3ExportsRequest(inCpy) 1178 req.SetContext(ctx) 1179 req.ApplyOptions(opts...) 1180 return req, nil 1181 }, 1182 } 1183 1184 for p.Next() { 1185 if !fn(p.Page().(*ListJournalS3ExportsOutput), !p.HasNextPage()) { 1186 break 1187 } 1188 } 1189 1190 return p.Err() 1191} 1192 1193const opListJournalS3ExportsForLedger = "ListJournalS3ExportsForLedger" 1194 1195// ListJournalS3ExportsForLedgerRequest generates a "aws/request.Request" representing the 1196// client's request for the ListJournalS3ExportsForLedger operation. The "output" return 1197// value will be populated with the request's response once the request completes 1198// successfully. 1199// 1200// Use "Send" method on the returned Request to send the API call to the service. 1201// the "output" return value is not valid until after Send returns without error. 1202// 1203// See ListJournalS3ExportsForLedger for more information on using the ListJournalS3ExportsForLedger 1204// API call, and error handling. 1205// 1206// This method is useful when you want to inject custom logic or configuration 1207// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1208// 1209// 1210// // Example sending a request using the ListJournalS3ExportsForLedgerRequest method. 1211// req, resp := client.ListJournalS3ExportsForLedgerRequest(params) 1212// 1213// err := req.Send() 1214// if err == nil { // resp is now filled 1215// fmt.Println(resp) 1216// } 1217// 1218// See also, https://docs.aws.amazon.com/goto/WebAPI/qldb-2019-01-02/ListJournalS3ExportsForLedger 1219func (c *QLDB) ListJournalS3ExportsForLedgerRequest(input *ListJournalS3ExportsForLedgerInput) (req *request.Request, output *ListJournalS3ExportsForLedgerOutput) { 1220 op := &request.Operation{ 1221 Name: opListJournalS3ExportsForLedger, 1222 HTTPMethod: "GET", 1223 HTTPPath: "/ledgers/{name}/journal-s3-exports", 1224 Paginator: &request.Paginator{ 1225 InputTokens: []string{"NextToken"}, 1226 OutputTokens: []string{"NextToken"}, 1227 LimitToken: "MaxResults", 1228 TruncationToken: "", 1229 }, 1230 } 1231 1232 if input == nil { 1233 input = &ListJournalS3ExportsForLedgerInput{} 1234 } 1235 1236 output = &ListJournalS3ExportsForLedgerOutput{} 1237 req = c.newRequest(op, input, output) 1238 return 1239} 1240 1241// ListJournalS3ExportsForLedger API operation for Amazon QLDB. 1242// 1243// Returns an array of journal export job descriptions for a specified ledger. 1244// 1245// This action returns a maximum of MaxResults items, and is paginated so that 1246// you can retrieve all the items by calling ListJournalS3ExportsForLedger multiple 1247// times. 1248// 1249// This action does not return any expired export jobs. For more information, 1250// see Export Job Expiration (https://docs.aws.amazon.com/qldb/latest/developerguide/export-journal.request.html#export-journal.request.expiration) 1251// in the Amazon QLDB Developer Guide. 1252// 1253// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1254// with awserr.Error's Code and Message methods to get detailed information about 1255// the error. 1256// 1257// See the AWS API reference guide for Amazon QLDB's 1258// API operation ListJournalS3ExportsForLedger for usage and error information. 1259// See also, https://docs.aws.amazon.com/goto/WebAPI/qldb-2019-01-02/ListJournalS3ExportsForLedger 1260func (c *QLDB) ListJournalS3ExportsForLedger(input *ListJournalS3ExportsForLedgerInput) (*ListJournalS3ExportsForLedgerOutput, error) { 1261 req, out := c.ListJournalS3ExportsForLedgerRequest(input) 1262 return out, req.Send() 1263} 1264 1265// ListJournalS3ExportsForLedgerWithContext is the same as ListJournalS3ExportsForLedger with the addition of 1266// the ability to pass a context and additional request options. 1267// 1268// See ListJournalS3ExportsForLedger for details on how to use this API operation. 1269// 1270// The context must be non-nil and will be used for request cancellation. If 1271// the context is nil a panic will occur. In the future the SDK may create 1272// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1273// for more information on using Contexts. 1274func (c *QLDB) ListJournalS3ExportsForLedgerWithContext(ctx aws.Context, input *ListJournalS3ExportsForLedgerInput, opts ...request.Option) (*ListJournalS3ExportsForLedgerOutput, error) { 1275 req, out := c.ListJournalS3ExportsForLedgerRequest(input) 1276 req.SetContext(ctx) 1277 req.ApplyOptions(opts...) 1278 return out, req.Send() 1279} 1280 1281// ListJournalS3ExportsForLedgerPages iterates over the pages of a ListJournalS3ExportsForLedger operation, 1282// calling the "fn" function with the response data for each page. To stop 1283// iterating, return false from the fn function. 1284// 1285// See ListJournalS3ExportsForLedger method for more information on how to use this operation. 1286// 1287// Note: This operation can generate multiple requests to a service. 1288// 1289// // Example iterating over at most 3 pages of a ListJournalS3ExportsForLedger operation. 1290// pageNum := 0 1291// err := client.ListJournalS3ExportsForLedgerPages(params, 1292// func(page *qldb.ListJournalS3ExportsForLedgerOutput, lastPage bool) bool { 1293// pageNum++ 1294// fmt.Println(page) 1295// return pageNum <= 3 1296// }) 1297// 1298func (c *QLDB) ListJournalS3ExportsForLedgerPages(input *ListJournalS3ExportsForLedgerInput, fn func(*ListJournalS3ExportsForLedgerOutput, bool) bool) error { 1299 return c.ListJournalS3ExportsForLedgerPagesWithContext(aws.BackgroundContext(), input, fn) 1300} 1301 1302// ListJournalS3ExportsForLedgerPagesWithContext same as ListJournalS3ExportsForLedgerPages except 1303// it takes a Context and allows setting request options on the pages. 1304// 1305// The context must be non-nil and will be used for request cancellation. If 1306// the context is nil a panic will occur. In the future the SDK may create 1307// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1308// for more information on using Contexts. 1309func (c *QLDB) ListJournalS3ExportsForLedgerPagesWithContext(ctx aws.Context, input *ListJournalS3ExportsForLedgerInput, fn func(*ListJournalS3ExportsForLedgerOutput, bool) bool, opts ...request.Option) error { 1310 p := request.Pagination{ 1311 NewRequest: func() (*request.Request, error) { 1312 var inCpy *ListJournalS3ExportsForLedgerInput 1313 if input != nil { 1314 tmp := *input 1315 inCpy = &tmp 1316 } 1317 req, _ := c.ListJournalS3ExportsForLedgerRequest(inCpy) 1318 req.SetContext(ctx) 1319 req.ApplyOptions(opts...) 1320 return req, nil 1321 }, 1322 } 1323 1324 for p.Next() { 1325 if !fn(p.Page().(*ListJournalS3ExportsForLedgerOutput), !p.HasNextPage()) { 1326 break 1327 } 1328 } 1329 1330 return p.Err() 1331} 1332 1333const opListLedgers = "ListLedgers" 1334 1335// ListLedgersRequest generates a "aws/request.Request" representing the 1336// client's request for the ListLedgers operation. The "output" return 1337// value will be populated with the request's response once the request completes 1338// successfully. 1339// 1340// Use "Send" method on the returned Request to send the API call to the service. 1341// the "output" return value is not valid until after Send returns without error. 1342// 1343// See ListLedgers for more information on using the ListLedgers 1344// API call, and error handling. 1345// 1346// This method is useful when you want to inject custom logic or configuration 1347// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1348// 1349// 1350// // Example sending a request using the ListLedgersRequest method. 1351// req, resp := client.ListLedgersRequest(params) 1352// 1353// err := req.Send() 1354// if err == nil { // resp is now filled 1355// fmt.Println(resp) 1356// } 1357// 1358// See also, https://docs.aws.amazon.com/goto/WebAPI/qldb-2019-01-02/ListLedgers 1359func (c *QLDB) ListLedgersRequest(input *ListLedgersInput) (req *request.Request, output *ListLedgersOutput) { 1360 op := &request.Operation{ 1361 Name: opListLedgers, 1362 HTTPMethod: "GET", 1363 HTTPPath: "/ledgers", 1364 Paginator: &request.Paginator{ 1365 InputTokens: []string{"NextToken"}, 1366 OutputTokens: []string{"NextToken"}, 1367 LimitToken: "MaxResults", 1368 TruncationToken: "", 1369 }, 1370 } 1371 1372 if input == nil { 1373 input = &ListLedgersInput{} 1374 } 1375 1376 output = &ListLedgersOutput{} 1377 req = c.newRequest(op, input, output) 1378 return 1379} 1380 1381// ListLedgers API operation for Amazon QLDB. 1382// 1383// Returns an array of ledger summaries that are associated with the current 1384// AWS account and Region. 1385// 1386// This action returns a maximum of 100 items and is paginated so that you can 1387// retrieve all the items by calling ListLedgers multiple times. 1388// 1389// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1390// with awserr.Error's Code and Message methods to get detailed information about 1391// the error. 1392// 1393// See the AWS API reference guide for Amazon QLDB's 1394// API operation ListLedgers for usage and error information. 1395// See also, https://docs.aws.amazon.com/goto/WebAPI/qldb-2019-01-02/ListLedgers 1396func (c *QLDB) ListLedgers(input *ListLedgersInput) (*ListLedgersOutput, error) { 1397 req, out := c.ListLedgersRequest(input) 1398 return out, req.Send() 1399} 1400 1401// ListLedgersWithContext is the same as ListLedgers with the addition of 1402// the ability to pass a context and additional request options. 1403// 1404// See ListLedgers for details on how to use this API operation. 1405// 1406// The context must be non-nil and will be used for request cancellation. If 1407// the context is nil a panic will occur. In the future the SDK may create 1408// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1409// for more information on using Contexts. 1410func (c *QLDB) ListLedgersWithContext(ctx aws.Context, input *ListLedgersInput, opts ...request.Option) (*ListLedgersOutput, error) { 1411 req, out := c.ListLedgersRequest(input) 1412 req.SetContext(ctx) 1413 req.ApplyOptions(opts...) 1414 return out, req.Send() 1415} 1416 1417// ListLedgersPages iterates over the pages of a ListLedgers operation, 1418// calling the "fn" function with the response data for each page. To stop 1419// iterating, return false from the fn function. 1420// 1421// See ListLedgers method for more information on how to use this operation. 1422// 1423// Note: This operation can generate multiple requests to a service. 1424// 1425// // Example iterating over at most 3 pages of a ListLedgers operation. 1426// pageNum := 0 1427// err := client.ListLedgersPages(params, 1428// func(page *qldb.ListLedgersOutput, lastPage bool) bool { 1429// pageNum++ 1430// fmt.Println(page) 1431// return pageNum <= 3 1432// }) 1433// 1434func (c *QLDB) ListLedgersPages(input *ListLedgersInput, fn func(*ListLedgersOutput, bool) bool) error { 1435 return c.ListLedgersPagesWithContext(aws.BackgroundContext(), input, fn) 1436} 1437 1438// ListLedgersPagesWithContext same as ListLedgersPages except 1439// it takes a Context and allows setting request options on the pages. 1440// 1441// The context must be non-nil and will be used for request cancellation. If 1442// the context is nil a panic will occur. In the future the SDK may create 1443// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1444// for more information on using Contexts. 1445func (c *QLDB) ListLedgersPagesWithContext(ctx aws.Context, input *ListLedgersInput, fn func(*ListLedgersOutput, bool) bool, opts ...request.Option) error { 1446 p := request.Pagination{ 1447 NewRequest: func() (*request.Request, error) { 1448 var inCpy *ListLedgersInput 1449 if input != nil { 1450 tmp := *input 1451 inCpy = &tmp 1452 } 1453 req, _ := c.ListLedgersRequest(inCpy) 1454 req.SetContext(ctx) 1455 req.ApplyOptions(opts...) 1456 return req, nil 1457 }, 1458 } 1459 1460 for p.Next() { 1461 if !fn(p.Page().(*ListLedgersOutput), !p.HasNextPage()) { 1462 break 1463 } 1464 } 1465 1466 return p.Err() 1467} 1468 1469const opListTagsForResource = "ListTagsForResource" 1470 1471// ListTagsForResourceRequest generates a "aws/request.Request" representing the 1472// client's request for the ListTagsForResource operation. The "output" return 1473// value will be populated with the request's response once the request completes 1474// successfully. 1475// 1476// Use "Send" method on the returned Request to send the API call to the service. 1477// the "output" return value is not valid until after Send returns without error. 1478// 1479// See ListTagsForResource for more information on using the ListTagsForResource 1480// API call, and error handling. 1481// 1482// This method is useful when you want to inject custom logic or configuration 1483// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1484// 1485// 1486// // Example sending a request using the ListTagsForResourceRequest method. 1487// req, resp := client.ListTagsForResourceRequest(params) 1488// 1489// err := req.Send() 1490// if err == nil { // resp is now filled 1491// fmt.Println(resp) 1492// } 1493// 1494// See also, https://docs.aws.amazon.com/goto/WebAPI/qldb-2019-01-02/ListTagsForResource 1495func (c *QLDB) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) { 1496 op := &request.Operation{ 1497 Name: opListTagsForResource, 1498 HTTPMethod: "GET", 1499 HTTPPath: "/tags/{resourceArn}", 1500 } 1501 1502 if input == nil { 1503 input = &ListTagsForResourceInput{} 1504 } 1505 1506 output = &ListTagsForResourceOutput{} 1507 req = c.newRequest(op, input, output) 1508 return 1509} 1510 1511// ListTagsForResource API operation for Amazon QLDB. 1512// 1513// Returns all tags for a specified Amazon QLDB resource. 1514// 1515// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1516// with awserr.Error's Code and Message methods to get detailed information about 1517// the error. 1518// 1519// See the AWS API reference guide for Amazon QLDB's 1520// API operation ListTagsForResource for usage and error information. 1521// 1522// Returned Error Types: 1523// * InvalidParameterException 1524// One or more parameters in the request aren't valid. 1525// 1526// * ResourceNotFoundException 1527// The specified resource doesn't exist. 1528// 1529// See also, https://docs.aws.amazon.com/goto/WebAPI/qldb-2019-01-02/ListTagsForResource 1530func (c *QLDB) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) { 1531 req, out := c.ListTagsForResourceRequest(input) 1532 return out, req.Send() 1533} 1534 1535// ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of 1536// the ability to pass a context and additional request options. 1537// 1538// See ListTagsForResource for details on how to use this API operation. 1539// 1540// The context must be non-nil and will be used for request cancellation. If 1541// the context is nil a panic will occur. In the future the SDK may create 1542// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1543// for more information on using Contexts. 1544func (c *QLDB) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) { 1545 req, out := c.ListTagsForResourceRequest(input) 1546 req.SetContext(ctx) 1547 req.ApplyOptions(opts...) 1548 return out, req.Send() 1549} 1550 1551const opStreamJournalToKinesis = "StreamJournalToKinesis" 1552 1553// StreamJournalToKinesisRequest generates a "aws/request.Request" representing the 1554// client's request for the StreamJournalToKinesis operation. The "output" return 1555// value will be populated with the request's response once the request completes 1556// successfully. 1557// 1558// Use "Send" method on the returned Request to send the API call to the service. 1559// the "output" return value is not valid until after Send returns without error. 1560// 1561// See StreamJournalToKinesis for more information on using the StreamJournalToKinesis 1562// API call, and error handling. 1563// 1564// This method is useful when you want to inject custom logic or configuration 1565// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1566// 1567// 1568// // Example sending a request using the StreamJournalToKinesisRequest method. 1569// req, resp := client.StreamJournalToKinesisRequest(params) 1570// 1571// err := req.Send() 1572// if err == nil { // resp is now filled 1573// fmt.Println(resp) 1574// } 1575// 1576// See also, https://docs.aws.amazon.com/goto/WebAPI/qldb-2019-01-02/StreamJournalToKinesis 1577func (c *QLDB) StreamJournalToKinesisRequest(input *StreamJournalToKinesisInput) (req *request.Request, output *StreamJournalToKinesisOutput) { 1578 op := &request.Operation{ 1579 Name: opStreamJournalToKinesis, 1580 HTTPMethod: "POST", 1581 HTTPPath: "/ledgers/{name}/journal-kinesis-streams", 1582 } 1583 1584 if input == nil { 1585 input = &StreamJournalToKinesisInput{} 1586 } 1587 1588 output = &StreamJournalToKinesisOutput{} 1589 req = c.newRequest(op, input, output) 1590 return 1591} 1592 1593// StreamJournalToKinesis API operation for Amazon QLDB. 1594// 1595// Creates a stream for a given Amazon QLDB ledger that delivers the journal 1596// data to a specified Amazon Kinesis Data Streams resource. The stream captures 1597// every document revision that is committed to your journal and sends it to 1598// the Kinesis data stream. 1599// 1600// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1601// with awserr.Error's Code and Message methods to get detailed information about 1602// the error. 1603// 1604// See the AWS API reference guide for Amazon QLDB's 1605// API operation StreamJournalToKinesis for usage and error information. 1606// 1607// Returned Error Types: 1608// * InvalidParameterException 1609// One or more parameters in the request aren't valid. 1610// 1611// * ResourceNotFoundException 1612// The specified resource doesn't exist. 1613// 1614// * ResourcePreconditionNotMetException 1615// The operation failed because a condition wasn't satisfied in advance. 1616// 1617// See also, https://docs.aws.amazon.com/goto/WebAPI/qldb-2019-01-02/StreamJournalToKinesis 1618func (c *QLDB) StreamJournalToKinesis(input *StreamJournalToKinesisInput) (*StreamJournalToKinesisOutput, error) { 1619 req, out := c.StreamJournalToKinesisRequest(input) 1620 return out, req.Send() 1621} 1622 1623// StreamJournalToKinesisWithContext is the same as StreamJournalToKinesis with the addition of 1624// the ability to pass a context and additional request options. 1625// 1626// See StreamJournalToKinesis for details on how to use this API operation. 1627// 1628// The context must be non-nil and will be used for request cancellation. If 1629// the context is nil a panic will occur. In the future the SDK may create 1630// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1631// for more information on using Contexts. 1632func (c *QLDB) StreamJournalToKinesisWithContext(ctx aws.Context, input *StreamJournalToKinesisInput, opts ...request.Option) (*StreamJournalToKinesisOutput, error) { 1633 req, out := c.StreamJournalToKinesisRequest(input) 1634 req.SetContext(ctx) 1635 req.ApplyOptions(opts...) 1636 return out, req.Send() 1637} 1638 1639const opTagResource = "TagResource" 1640 1641// TagResourceRequest generates a "aws/request.Request" representing the 1642// client's request for the TagResource operation. The "output" return 1643// value will be populated with the request's response once the request completes 1644// successfully. 1645// 1646// Use "Send" method on the returned Request to send the API call to the service. 1647// the "output" return value is not valid until after Send returns without error. 1648// 1649// See TagResource for more information on using the TagResource 1650// API call, and error handling. 1651// 1652// This method is useful when you want to inject custom logic or configuration 1653// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1654// 1655// 1656// // Example sending a request using the TagResourceRequest method. 1657// req, resp := client.TagResourceRequest(params) 1658// 1659// err := req.Send() 1660// if err == nil { // resp is now filled 1661// fmt.Println(resp) 1662// } 1663// 1664// See also, https://docs.aws.amazon.com/goto/WebAPI/qldb-2019-01-02/TagResource 1665func (c *QLDB) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) { 1666 op := &request.Operation{ 1667 Name: opTagResource, 1668 HTTPMethod: "POST", 1669 HTTPPath: "/tags/{resourceArn}", 1670 } 1671 1672 if input == nil { 1673 input = &TagResourceInput{} 1674 } 1675 1676 output = &TagResourceOutput{} 1677 req = c.newRequest(op, input, output) 1678 req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 1679 return 1680} 1681 1682// TagResource API operation for Amazon QLDB. 1683// 1684// Adds one or more tags to a specified Amazon QLDB resource. 1685// 1686// A resource can have up to 50 tags. If you try to create more than 50 tags 1687// for a resource, your request fails and returns an error. 1688// 1689// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1690// with awserr.Error's Code and Message methods to get detailed information about 1691// the error. 1692// 1693// See the AWS API reference guide for Amazon QLDB's 1694// API operation TagResource for usage and error information. 1695// 1696// Returned Error Types: 1697// * InvalidParameterException 1698// One or more parameters in the request aren't valid. 1699// 1700// * ResourceNotFoundException 1701// The specified resource doesn't exist. 1702// 1703// See also, https://docs.aws.amazon.com/goto/WebAPI/qldb-2019-01-02/TagResource 1704func (c *QLDB) TagResource(input *TagResourceInput) (*TagResourceOutput, error) { 1705 req, out := c.TagResourceRequest(input) 1706 return out, req.Send() 1707} 1708 1709// TagResourceWithContext is the same as TagResource with the addition of 1710// the ability to pass a context and additional request options. 1711// 1712// See TagResource for details on how to use this API operation. 1713// 1714// The context must be non-nil and will be used for request cancellation. If 1715// the context is nil a panic will occur. In the future the SDK may create 1716// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1717// for more information on using Contexts. 1718func (c *QLDB) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) { 1719 req, out := c.TagResourceRequest(input) 1720 req.SetContext(ctx) 1721 req.ApplyOptions(opts...) 1722 return out, req.Send() 1723} 1724 1725const opUntagResource = "UntagResource" 1726 1727// UntagResourceRequest generates a "aws/request.Request" representing the 1728// client's request for the UntagResource operation. The "output" return 1729// value will be populated with the request's response once the request completes 1730// successfully. 1731// 1732// Use "Send" method on the returned Request to send the API call to the service. 1733// the "output" return value is not valid until after Send returns without error. 1734// 1735// See UntagResource for more information on using the UntagResource 1736// API call, and error handling. 1737// 1738// This method is useful when you want to inject custom logic or configuration 1739// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1740// 1741// 1742// // Example sending a request using the UntagResourceRequest method. 1743// req, resp := client.UntagResourceRequest(params) 1744// 1745// err := req.Send() 1746// if err == nil { // resp is now filled 1747// fmt.Println(resp) 1748// } 1749// 1750// See also, https://docs.aws.amazon.com/goto/WebAPI/qldb-2019-01-02/UntagResource 1751func (c *QLDB) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) { 1752 op := &request.Operation{ 1753 Name: opUntagResource, 1754 HTTPMethod: "DELETE", 1755 HTTPPath: "/tags/{resourceArn}", 1756 } 1757 1758 if input == nil { 1759 input = &UntagResourceInput{} 1760 } 1761 1762 output = &UntagResourceOutput{} 1763 req = c.newRequest(op, input, output) 1764 req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 1765 return 1766} 1767 1768// UntagResource API operation for Amazon QLDB. 1769// 1770// Removes one or more tags from a specified Amazon QLDB resource. You can specify 1771// up to 50 tag keys to remove. 1772// 1773// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1774// with awserr.Error's Code and Message methods to get detailed information about 1775// the error. 1776// 1777// See the AWS API reference guide for Amazon QLDB's 1778// API operation UntagResource for usage and error information. 1779// 1780// Returned Error Types: 1781// * InvalidParameterException 1782// One or more parameters in the request aren't valid. 1783// 1784// * ResourceNotFoundException 1785// The specified resource doesn't exist. 1786// 1787// See also, https://docs.aws.amazon.com/goto/WebAPI/qldb-2019-01-02/UntagResource 1788func (c *QLDB) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) { 1789 req, out := c.UntagResourceRequest(input) 1790 return out, req.Send() 1791} 1792 1793// UntagResourceWithContext is the same as UntagResource with the addition of 1794// the ability to pass a context and additional request options. 1795// 1796// See UntagResource for details on how to use this API operation. 1797// 1798// The context must be non-nil and will be used for request cancellation. If 1799// the context is nil a panic will occur. In the future the SDK may create 1800// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1801// for more information on using Contexts. 1802func (c *QLDB) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) { 1803 req, out := c.UntagResourceRequest(input) 1804 req.SetContext(ctx) 1805 req.ApplyOptions(opts...) 1806 return out, req.Send() 1807} 1808 1809const opUpdateLedger = "UpdateLedger" 1810 1811// UpdateLedgerRequest generates a "aws/request.Request" representing the 1812// client's request for the UpdateLedger operation. The "output" return 1813// value will be populated with the request's response once the request completes 1814// successfully. 1815// 1816// Use "Send" method on the returned Request to send the API call to the service. 1817// the "output" return value is not valid until after Send returns without error. 1818// 1819// See UpdateLedger for more information on using the UpdateLedger 1820// API call, and error handling. 1821// 1822// This method is useful when you want to inject custom logic or configuration 1823// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1824// 1825// 1826// // Example sending a request using the UpdateLedgerRequest method. 1827// req, resp := client.UpdateLedgerRequest(params) 1828// 1829// err := req.Send() 1830// if err == nil { // resp is now filled 1831// fmt.Println(resp) 1832// } 1833// 1834// See also, https://docs.aws.amazon.com/goto/WebAPI/qldb-2019-01-02/UpdateLedger 1835func (c *QLDB) UpdateLedgerRequest(input *UpdateLedgerInput) (req *request.Request, output *UpdateLedgerOutput) { 1836 op := &request.Operation{ 1837 Name: opUpdateLedger, 1838 HTTPMethod: "PATCH", 1839 HTTPPath: "/ledgers/{name}", 1840 } 1841 1842 if input == nil { 1843 input = &UpdateLedgerInput{} 1844 } 1845 1846 output = &UpdateLedgerOutput{} 1847 req = c.newRequest(op, input, output) 1848 return 1849} 1850 1851// UpdateLedger API operation for Amazon QLDB. 1852// 1853// Updates properties on a ledger. 1854// 1855// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1856// with awserr.Error's Code and Message methods to get detailed information about 1857// the error. 1858// 1859// See the AWS API reference guide for Amazon QLDB's 1860// API operation UpdateLedger for usage and error information. 1861// 1862// Returned Error Types: 1863// * InvalidParameterException 1864// One or more parameters in the request aren't valid. 1865// 1866// * ResourceNotFoundException 1867// The specified resource doesn't exist. 1868// 1869// See also, https://docs.aws.amazon.com/goto/WebAPI/qldb-2019-01-02/UpdateLedger 1870func (c *QLDB) UpdateLedger(input *UpdateLedgerInput) (*UpdateLedgerOutput, error) { 1871 req, out := c.UpdateLedgerRequest(input) 1872 return out, req.Send() 1873} 1874 1875// UpdateLedgerWithContext is the same as UpdateLedger with the addition of 1876// the ability to pass a context and additional request options. 1877// 1878// See UpdateLedger for details on how to use this API operation. 1879// 1880// The context must be non-nil and will be used for request cancellation. If 1881// the context is nil a panic will occur. In the future the SDK may create 1882// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1883// for more information on using Contexts. 1884func (c *QLDB) UpdateLedgerWithContext(ctx aws.Context, input *UpdateLedgerInput, opts ...request.Option) (*UpdateLedgerOutput, error) { 1885 req, out := c.UpdateLedgerRequest(input) 1886 req.SetContext(ctx) 1887 req.ApplyOptions(opts...) 1888 return out, req.Send() 1889} 1890 1891type CancelJournalKinesisStreamInput struct { 1892 _ struct{} `type:"structure"` 1893 1894 // The name of the ledger. 1895 // 1896 // LedgerName is a required field 1897 LedgerName *string `location:"uri" locationName:"name" min:"1" type:"string" required:"true"` 1898 1899 // The unique ID that QLDB assigns to each QLDB journal stream. 1900 // 1901 // StreamId is a required field 1902 StreamId *string `location:"uri" locationName:"streamId" min:"22" type:"string" required:"true"` 1903} 1904 1905// String returns the string representation 1906func (s CancelJournalKinesisStreamInput) String() string { 1907 return awsutil.Prettify(s) 1908} 1909 1910// GoString returns the string representation 1911func (s CancelJournalKinesisStreamInput) GoString() string { 1912 return s.String() 1913} 1914 1915// Validate inspects the fields of the type to determine if they are valid. 1916func (s *CancelJournalKinesisStreamInput) Validate() error { 1917 invalidParams := request.ErrInvalidParams{Context: "CancelJournalKinesisStreamInput"} 1918 if s.LedgerName == nil { 1919 invalidParams.Add(request.NewErrParamRequired("LedgerName")) 1920 } 1921 if s.LedgerName != nil && len(*s.LedgerName) < 1 { 1922 invalidParams.Add(request.NewErrParamMinLen("LedgerName", 1)) 1923 } 1924 if s.StreamId == nil { 1925 invalidParams.Add(request.NewErrParamRequired("StreamId")) 1926 } 1927 if s.StreamId != nil && len(*s.StreamId) < 22 { 1928 invalidParams.Add(request.NewErrParamMinLen("StreamId", 22)) 1929 } 1930 1931 if invalidParams.Len() > 0 { 1932 return invalidParams 1933 } 1934 return nil 1935} 1936 1937// SetLedgerName sets the LedgerName field's value. 1938func (s *CancelJournalKinesisStreamInput) SetLedgerName(v string) *CancelJournalKinesisStreamInput { 1939 s.LedgerName = &v 1940 return s 1941} 1942 1943// SetStreamId sets the StreamId field's value. 1944func (s *CancelJournalKinesisStreamInput) SetStreamId(v string) *CancelJournalKinesisStreamInput { 1945 s.StreamId = &v 1946 return s 1947} 1948 1949type CancelJournalKinesisStreamOutput struct { 1950 _ struct{} `type:"structure"` 1951 1952 // The unique ID that QLDB assigns to each QLDB journal stream. 1953 StreamId *string `min:"22" type:"string"` 1954} 1955 1956// String returns the string representation 1957func (s CancelJournalKinesisStreamOutput) String() string { 1958 return awsutil.Prettify(s) 1959} 1960 1961// GoString returns the string representation 1962func (s CancelJournalKinesisStreamOutput) GoString() string { 1963 return s.String() 1964} 1965 1966// SetStreamId sets the StreamId field's value. 1967func (s *CancelJournalKinesisStreamOutput) SetStreamId(v string) *CancelJournalKinesisStreamOutput { 1968 s.StreamId = &v 1969 return s 1970} 1971 1972type CreateLedgerInput struct { 1973 _ struct{} `type:"structure"` 1974 1975 // The flag that prevents a ledger from being deleted by any user. If not provided 1976 // on ledger creation, this feature is enabled (true) by default. 1977 // 1978 // If deletion protection is enabled, you must first disable it before you can 1979 // delete the ledger using the QLDB API or the AWS Command Line Interface (AWS 1980 // CLI). You can disable it by calling the UpdateLedger operation to set the 1981 // flag to false. The QLDB console disables deletion protection for you when 1982 // you use it to delete a ledger. 1983 DeletionProtection *bool `type:"boolean"` 1984 1985 // The name of the ledger that you want to create. The name must be unique among 1986 // all of your ledgers in the current AWS Region. 1987 // 1988 // Name is a required field 1989 Name *string `min:"1" type:"string" required:"true"` 1990 1991 // The permissions mode to assign to the ledger that you want to create. 1992 // 1993 // PermissionsMode is a required field 1994 PermissionsMode *string `type:"string" required:"true" enum:"PermissionsMode"` 1995 1996 // The key-value pairs to add as tags to the ledger that you want to create. 1997 // Tag keys are case sensitive. Tag values are case sensitive and can be null. 1998 Tags map[string]*string `type:"map"` 1999} 2000 2001// String returns the string representation 2002func (s CreateLedgerInput) String() string { 2003 return awsutil.Prettify(s) 2004} 2005 2006// GoString returns the string representation 2007func (s CreateLedgerInput) GoString() string { 2008 return s.String() 2009} 2010 2011// Validate inspects the fields of the type to determine if they are valid. 2012func (s *CreateLedgerInput) Validate() error { 2013 invalidParams := request.ErrInvalidParams{Context: "CreateLedgerInput"} 2014 if s.Name == nil { 2015 invalidParams.Add(request.NewErrParamRequired("Name")) 2016 } 2017 if s.Name != nil && len(*s.Name) < 1 { 2018 invalidParams.Add(request.NewErrParamMinLen("Name", 1)) 2019 } 2020 if s.PermissionsMode == nil { 2021 invalidParams.Add(request.NewErrParamRequired("PermissionsMode")) 2022 } 2023 2024 if invalidParams.Len() > 0 { 2025 return invalidParams 2026 } 2027 return nil 2028} 2029 2030// SetDeletionProtection sets the DeletionProtection field's value. 2031func (s *CreateLedgerInput) SetDeletionProtection(v bool) *CreateLedgerInput { 2032 s.DeletionProtection = &v 2033 return s 2034} 2035 2036// SetName sets the Name field's value. 2037func (s *CreateLedgerInput) SetName(v string) *CreateLedgerInput { 2038 s.Name = &v 2039 return s 2040} 2041 2042// SetPermissionsMode sets the PermissionsMode field's value. 2043func (s *CreateLedgerInput) SetPermissionsMode(v string) *CreateLedgerInput { 2044 s.PermissionsMode = &v 2045 return s 2046} 2047 2048// SetTags sets the Tags field's value. 2049func (s *CreateLedgerInput) SetTags(v map[string]*string) *CreateLedgerInput { 2050 s.Tags = v 2051 return s 2052} 2053 2054type CreateLedgerOutput struct { 2055 _ struct{} `type:"structure"` 2056 2057 // The Amazon Resource Name (ARN) for the ledger. 2058 Arn *string `min:"20" type:"string"` 2059 2060 // The date and time, in epoch time format, when the ledger was created. (Epoch 2061 // time format is the number of seconds elapsed since 12:00:00 AM January 1, 2062 // 1970 UTC.) 2063 CreationDateTime *time.Time `type:"timestamp"` 2064 2065 // The flag that prevents a ledger from being deleted by any user. If not provided 2066 // on ledger creation, this feature is enabled (true) by default. 2067 // 2068 // If deletion protection is enabled, you must first disable it before you can 2069 // delete the ledger using the QLDB API or the AWS Command Line Interface (AWS 2070 // CLI). You can disable it by calling the UpdateLedger operation to set the 2071 // flag to false. The QLDB console disables deletion protection for you when 2072 // you use it to delete a ledger. 2073 DeletionProtection *bool `type:"boolean"` 2074 2075 // The name of the ledger. 2076 Name *string `min:"1" type:"string"` 2077 2078 // The current status of the ledger. 2079 State *string `type:"string" enum:"LedgerState"` 2080} 2081 2082// String returns the string representation 2083func (s CreateLedgerOutput) String() string { 2084 return awsutil.Prettify(s) 2085} 2086 2087// GoString returns the string representation 2088func (s CreateLedgerOutput) GoString() string { 2089 return s.String() 2090} 2091 2092// SetArn sets the Arn field's value. 2093func (s *CreateLedgerOutput) SetArn(v string) *CreateLedgerOutput { 2094 s.Arn = &v 2095 return s 2096} 2097 2098// SetCreationDateTime sets the CreationDateTime field's value. 2099func (s *CreateLedgerOutput) SetCreationDateTime(v time.Time) *CreateLedgerOutput { 2100 s.CreationDateTime = &v 2101 return s 2102} 2103 2104// SetDeletionProtection sets the DeletionProtection field's value. 2105func (s *CreateLedgerOutput) SetDeletionProtection(v bool) *CreateLedgerOutput { 2106 s.DeletionProtection = &v 2107 return s 2108} 2109 2110// SetName sets the Name field's value. 2111func (s *CreateLedgerOutput) SetName(v string) *CreateLedgerOutput { 2112 s.Name = &v 2113 return s 2114} 2115 2116// SetState sets the State field's value. 2117func (s *CreateLedgerOutput) SetState(v string) *CreateLedgerOutput { 2118 s.State = &v 2119 return s 2120} 2121 2122type DeleteLedgerInput struct { 2123 _ struct{} `type:"structure"` 2124 2125 // The name of the ledger that you want to delete. 2126 // 2127 // Name is a required field 2128 Name *string `location:"uri" locationName:"name" min:"1" type:"string" required:"true"` 2129} 2130 2131// String returns the string representation 2132func (s DeleteLedgerInput) String() string { 2133 return awsutil.Prettify(s) 2134} 2135 2136// GoString returns the string representation 2137func (s DeleteLedgerInput) GoString() string { 2138 return s.String() 2139} 2140 2141// Validate inspects the fields of the type to determine if they are valid. 2142func (s *DeleteLedgerInput) Validate() error { 2143 invalidParams := request.ErrInvalidParams{Context: "DeleteLedgerInput"} 2144 if s.Name == nil { 2145 invalidParams.Add(request.NewErrParamRequired("Name")) 2146 } 2147 if s.Name != nil && len(*s.Name) < 1 { 2148 invalidParams.Add(request.NewErrParamMinLen("Name", 1)) 2149 } 2150 2151 if invalidParams.Len() > 0 { 2152 return invalidParams 2153 } 2154 return nil 2155} 2156 2157// SetName sets the Name field's value. 2158func (s *DeleteLedgerInput) SetName(v string) *DeleteLedgerInput { 2159 s.Name = &v 2160 return s 2161} 2162 2163type DeleteLedgerOutput struct { 2164 _ struct{} `type:"structure"` 2165} 2166 2167// String returns the string representation 2168func (s DeleteLedgerOutput) String() string { 2169 return awsutil.Prettify(s) 2170} 2171 2172// GoString returns the string representation 2173func (s DeleteLedgerOutput) GoString() string { 2174 return s.String() 2175} 2176 2177type DescribeJournalKinesisStreamInput struct { 2178 _ struct{} `type:"structure"` 2179 2180 // The name of the ledger. 2181 // 2182 // LedgerName is a required field 2183 LedgerName *string `location:"uri" locationName:"name" min:"1" type:"string" required:"true"` 2184 2185 // The unique ID that QLDB assigns to each QLDB journal stream. 2186 // 2187 // StreamId is a required field 2188 StreamId *string `location:"uri" locationName:"streamId" min:"22" type:"string" required:"true"` 2189} 2190 2191// String returns the string representation 2192func (s DescribeJournalKinesisStreamInput) String() string { 2193 return awsutil.Prettify(s) 2194} 2195 2196// GoString returns the string representation 2197func (s DescribeJournalKinesisStreamInput) GoString() string { 2198 return s.String() 2199} 2200 2201// Validate inspects the fields of the type to determine if they are valid. 2202func (s *DescribeJournalKinesisStreamInput) Validate() error { 2203 invalidParams := request.ErrInvalidParams{Context: "DescribeJournalKinesisStreamInput"} 2204 if s.LedgerName == nil { 2205 invalidParams.Add(request.NewErrParamRequired("LedgerName")) 2206 } 2207 if s.LedgerName != nil && len(*s.LedgerName) < 1 { 2208 invalidParams.Add(request.NewErrParamMinLen("LedgerName", 1)) 2209 } 2210 if s.StreamId == nil { 2211 invalidParams.Add(request.NewErrParamRequired("StreamId")) 2212 } 2213 if s.StreamId != nil && len(*s.StreamId) < 22 { 2214 invalidParams.Add(request.NewErrParamMinLen("StreamId", 22)) 2215 } 2216 2217 if invalidParams.Len() > 0 { 2218 return invalidParams 2219 } 2220 return nil 2221} 2222 2223// SetLedgerName sets the LedgerName field's value. 2224func (s *DescribeJournalKinesisStreamInput) SetLedgerName(v string) *DescribeJournalKinesisStreamInput { 2225 s.LedgerName = &v 2226 return s 2227} 2228 2229// SetStreamId sets the StreamId field's value. 2230func (s *DescribeJournalKinesisStreamInput) SetStreamId(v string) *DescribeJournalKinesisStreamInput { 2231 s.StreamId = &v 2232 return s 2233} 2234 2235type DescribeJournalKinesisStreamOutput struct { 2236 _ struct{} `type:"structure"` 2237 2238 // Information about the QLDB journal stream returned by a DescribeJournalS3Export 2239 // request. 2240 Stream *JournalKinesisStreamDescription `type:"structure"` 2241} 2242 2243// String returns the string representation 2244func (s DescribeJournalKinesisStreamOutput) String() string { 2245 return awsutil.Prettify(s) 2246} 2247 2248// GoString returns the string representation 2249func (s DescribeJournalKinesisStreamOutput) GoString() string { 2250 return s.String() 2251} 2252 2253// SetStream sets the Stream field's value. 2254func (s *DescribeJournalKinesisStreamOutput) SetStream(v *JournalKinesisStreamDescription) *DescribeJournalKinesisStreamOutput { 2255 s.Stream = v 2256 return s 2257} 2258 2259type DescribeJournalS3ExportInput struct { 2260 _ struct{} `type:"structure"` 2261 2262 // The unique ID of the journal export job that you want to describe. 2263 // 2264 // ExportId is a required field 2265 ExportId *string `location:"uri" locationName:"exportId" min:"22" type:"string" required:"true"` 2266 2267 // The name of the ledger. 2268 // 2269 // Name is a required field 2270 Name *string `location:"uri" locationName:"name" min:"1" type:"string" required:"true"` 2271} 2272 2273// String returns the string representation 2274func (s DescribeJournalS3ExportInput) String() string { 2275 return awsutil.Prettify(s) 2276} 2277 2278// GoString returns the string representation 2279func (s DescribeJournalS3ExportInput) GoString() string { 2280 return s.String() 2281} 2282 2283// Validate inspects the fields of the type to determine if they are valid. 2284func (s *DescribeJournalS3ExportInput) Validate() error { 2285 invalidParams := request.ErrInvalidParams{Context: "DescribeJournalS3ExportInput"} 2286 if s.ExportId == nil { 2287 invalidParams.Add(request.NewErrParamRequired("ExportId")) 2288 } 2289 if s.ExportId != nil && len(*s.ExportId) < 22 { 2290 invalidParams.Add(request.NewErrParamMinLen("ExportId", 22)) 2291 } 2292 if s.Name == nil { 2293 invalidParams.Add(request.NewErrParamRequired("Name")) 2294 } 2295 if s.Name != nil && len(*s.Name) < 1 { 2296 invalidParams.Add(request.NewErrParamMinLen("Name", 1)) 2297 } 2298 2299 if invalidParams.Len() > 0 { 2300 return invalidParams 2301 } 2302 return nil 2303} 2304 2305// SetExportId sets the ExportId field's value. 2306func (s *DescribeJournalS3ExportInput) SetExportId(v string) *DescribeJournalS3ExportInput { 2307 s.ExportId = &v 2308 return s 2309} 2310 2311// SetName sets the Name field's value. 2312func (s *DescribeJournalS3ExportInput) SetName(v string) *DescribeJournalS3ExportInput { 2313 s.Name = &v 2314 return s 2315} 2316 2317type DescribeJournalS3ExportOutput struct { 2318 _ struct{} `type:"structure"` 2319 2320 // Information about the journal export job returned by a DescribeJournalS3Export 2321 // request. 2322 // 2323 // ExportDescription is a required field 2324 ExportDescription *JournalS3ExportDescription `type:"structure" required:"true"` 2325} 2326 2327// String returns the string representation 2328func (s DescribeJournalS3ExportOutput) String() string { 2329 return awsutil.Prettify(s) 2330} 2331 2332// GoString returns the string representation 2333func (s DescribeJournalS3ExportOutput) GoString() string { 2334 return s.String() 2335} 2336 2337// SetExportDescription sets the ExportDescription field's value. 2338func (s *DescribeJournalS3ExportOutput) SetExportDescription(v *JournalS3ExportDescription) *DescribeJournalS3ExportOutput { 2339 s.ExportDescription = v 2340 return s 2341} 2342 2343type DescribeLedgerInput struct { 2344 _ struct{} `type:"structure"` 2345 2346 // The name of the ledger that you want to describe. 2347 // 2348 // Name is a required field 2349 Name *string `location:"uri" locationName:"name" min:"1" type:"string" required:"true"` 2350} 2351 2352// String returns the string representation 2353func (s DescribeLedgerInput) String() string { 2354 return awsutil.Prettify(s) 2355} 2356 2357// GoString returns the string representation 2358func (s DescribeLedgerInput) GoString() string { 2359 return s.String() 2360} 2361 2362// Validate inspects the fields of the type to determine if they are valid. 2363func (s *DescribeLedgerInput) Validate() error { 2364 invalidParams := request.ErrInvalidParams{Context: "DescribeLedgerInput"} 2365 if s.Name == nil { 2366 invalidParams.Add(request.NewErrParamRequired("Name")) 2367 } 2368 if s.Name != nil && len(*s.Name) < 1 { 2369 invalidParams.Add(request.NewErrParamMinLen("Name", 1)) 2370 } 2371 2372 if invalidParams.Len() > 0 { 2373 return invalidParams 2374 } 2375 return nil 2376} 2377 2378// SetName sets the Name field's value. 2379func (s *DescribeLedgerInput) SetName(v string) *DescribeLedgerInput { 2380 s.Name = &v 2381 return s 2382} 2383 2384type DescribeLedgerOutput struct { 2385 _ struct{} `type:"structure"` 2386 2387 // The Amazon Resource Name (ARN) for the ledger. 2388 Arn *string `min:"20" type:"string"` 2389 2390 // The date and time, in epoch time format, when the ledger was created. (Epoch 2391 // time format is the number of seconds elapsed since 12:00:00 AM January 1, 2392 // 1970 UTC.) 2393 CreationDateTime *time.Time `type:"timestamp"` 2394 2395 // The flag that prevents a ledger from being deleted by any user. If not provided 2396 // on ledger creation, this feature is enabled (true) by default. 2397 // 2398 // If deletion protection is enabled, you must first disable it before you can 2399 // delete the ledger using the QLDB API or the AWS Command Line Interface (AWS 2400 // CLI). You can disable it by calling the UpdateLedger operation to set the 2401 // flag to false. The QLDB console disables deletion protection for you when 2402 // you use it to delete a ledger. 2403 DeletionProtection *bool `type:"boolean"` 2404 2405 // The name of the ledger. 2406 Name *string `min:"1" type:"string"` 2407 2408 // The current status of the ledger. 2409 State *string `type:"string" enum:"LedgerState"` 2410} 2411 2412// String returns the string representation 2413func (s DescribeLedgerOutput) String() string { 2414 return awsutil.Prettify(s) 2415} 2416 2417// GoString returns the string representation 2418func (s DescribeLedgerOutput) GoString() string { 2419 return s.String() 2420} 2421 2422// SetArn sets the Arn field's value. 2423func (s *DescribeLedgerOutput) SetArn(v string) *DescribeLedgerOutput { 2424 s.Arn = &v 2425 return s 2426} 2427 2428// SetCreationDateTime sets the CreationDateTime field's value. 2429func (s *DescribeLedgerOutput) SetCreationDateTime(v time.Time) *DescribeLedgerOutput { 2430 s.CreationDateTime = &v 2431 return s 2432} 2433 2434// SetDeletionProtection sets the DeletionProtection field's value. 2435func (s *DescribeLedgerOutput) SetDeletionProtection(v bool) *DescribeLedgerOutput { 2436 s.DeletionProtection = &v 2437 return s 2438} 2439 2440// SetName sets the Name field's value. 2441func (s *DescribeLedgerOutput) SetName(v string) *DescribeLedgerOutput { 2442 s.Name = &v 2443 return s 2444} 2445 2446// SetState sets the State field's value. 2447func (s *DescribeLedgerOutput) SetState(v string) *DescribeLedgerOutput { 2448 s.State = &v 2449 return s 2450} 2451 2452type ExportJournalToS3Input struct { 2453 _ struct{} `type:"structure"` 2454 2455 // The exclusive end date and time for the range of journal contents that you 2456 // want to export. 2457 // 2458 // The ExclusiveEndTime must be in ISO 8601 date and time format and in Universal 2459 // Coordinated Time (UTC). For example: 2019-06-13T21:36:34Z 2460 // 2461 // The ExclusiveEndTime must be less than or equal to the current UTC date and 2462 // time. 2463 // 2464 // ExclusiveEndTime is a required field 2465 ExclusiveEndTime *time.Time `type:"timestamp" required:"true"` 2466 2467 // The inclusive start date and time for the range of journal contents that 2468 // you want to export. 2469 // 2470 // The InclusiveStartTime must be in ISO 8601 date and time format and in Universal 2471 // Coordinated Time (UTC). For example: 2019-06-13T21:36:34Z 2472 // 2473 // The InclusiveStartTime must be before ExclusiveEndTime. 2474 // 2475 // If you provide an InclusiveStartTime that is before the ledger's CreationDateTime, 2476 // Amazon QLDB defaults it to the ledger's CreationDateTime. 2477 // 2478 // InclusiveStartTime is a required field 2479 InclusiveStartTime *time.Time `type:"timestamp" required:"true"` 2480 2481 // The name of the ledger. 2482 // 2483 // Name is a required field 2484 Name *string `location:"uri" locationName:"name" min:"1" type:"string" required:"true"` 2485 2486 // The Amazon Resource Name (ARN) of the IAM role that grants QLDB permissions 2487 // for a journal export job to do the following: 2488 // 2489 // * Write objects into your Amazon Simple Storage Service (Amazon S3) bucket. 2490 // 2491 // * (Optional) Use your customer master key (CMK) in AWS Key Management 2492 // Service (AWS KMS) for server-side encryption of your exported data. 2493 // 2494 // RoleArn is a required field 2495 RoleArn *string `min:"20" type:"string" required:"true"` 2496 2497 // The configuration settings of the Amazon S3 bucket destination for your export 2498 // request. 2499 // 2500 // S3ExportConfiguration is a required field 2501 S3ExportConfiguration *S3ExportConfiguration `type:"structure" required:"true"` 2502} 2503 2504// String returns the string representation 2505func (s ExportJournalToS3Input) String() string { 2506 return awsutil.Prettify(s) 2507} 2508 2509// GoString returns the string representation 2510func (s ExportJournalToS3Input) GoString() string { 2511 return s.String() 2512} 2513 2514// Validate inspects the fields of the type to determine if they are valid. 2515func (s *ExportJournalToS3Input) Validate() error { 2516 invalidParams := request.ErrInvalidParams{Context: "ExportJournalToS3Input"} 2517 if s.ExclusiveEndTime == nil { 2518 invalidParams.Add(request.NewErrParamRequired("ExclusiveEndTime")) 2519 } 2520 if s.InclusiveStartTime == nil { 2521 invalidParams.Add(request.NewErrParamRequired("InclusiveStartTime")) 2522 } 2523 if s.Name == nil { 2524 invalidParams.Add(request.NewErrParamRequired("Name")) 2525 } 2526 if s.Name != nil && len(*s.Name) < 1 { 2527 invalidParams.Add(request.NewErrParamMinLen("Name", 1)) 2528 } 2529 if s.RoleArn == nil { 2530 invalidParams.Add(request.NewErrParamRequired("RoleArn")) 2531 } 2532 if s.RoleArn != nil && len(*s.RoleArn) < 20 { 2533 invalidParams.Add(request.NewErrParamMinLen("RoleArn", 20)) 2534 } 2535 if s.S3ExportConfiguration == nil { 2536 invalidParams.Add(request.NewErrParamRequired("S3ExportConfiguration")) 2537 } 2538 if s.S3ExportConfiguration != nil { 2539 if err := s.S3ExportConfiguration.Validate(); err != nil { 2540 invalidParams.AddNested("S3ExportConfiguration", err.(request.ErrInvalidParams)) 2541 } 2542 } 2543 2544 if invalidParams.Len() > 0 { 2545 return invalidParams 2546 } 2547 return nil 2548} 2549 2550// SetExclusiveEndTime sets the ExclusiveEndTime field's value. 2551func (s *ExportJournalToS3Input) SetExclusiveEndTime(v time.Time) *ExportJournalToS3Input { 2552 s.ExclusiveEndTime = &v 2553 return s 2554} 2555 2556// SetInclusiveStartTime sets the InclusiveStartTime field's value. 2557func (s *ExportJournalToS3Input) SetInclusiveStartTime(v time.Time) *ExportJournalToS3Input { 2558 s.InclusiveStartTime = &v 2559 return s 2560} 2561 2562// SetName sets the Name field's value. 2563func (s *ExportJournalToS3Input) SetName(v string) *ExportJournalToS3Input { 2564 s.Name = &v 2565 return s 2566} 2567 2568// SetRoleArn sets the RoleArn field's value. 2569func (s *ExportJournalToS3Input) SetRoleArn(v string) *ExportJournalToS3Input { 2570 s.RoleArn = &v 2571 return s 2572} 2573 2574// SetS3ExportConfiguration sets the S3ExportConfiguration field's value. 2575func (s *ExportJournalToS3Input) SetS3ExportConfiguration(v *S3ExportConfiguration) *ExportJournalToS3Input { 2576 s.S3ExportConfiguration = v 2577 return s 2578} 2579 2580type ExportJournalToS3Output struct { 2581 _ struct{} `type:"structure"` 2582 2583 // The unique ID that QLDB assigns to each journal export job. 2584 // 2585 // To describe your export request and check the status of the job, you can 2586 // use ExportId to call DescribeJournalS3Export. 2587 // 2588 // ExportId is a required field 2589 ExportId *string `min:"22" type:"string" required:"true"` 2590} 2591 2592// String returns the string representation 2593func (s ExportJournalToS3Output) String() string { 2594 return awsutil.Prettify(s) 2595} 2596 2597// GoString returns the string representation 2598func (s ExportJournalToS3Output) GoString() string { 2599 return s.String() 2600} 2601 2602// SetExportId sets the ExportId field's value. 2603func (s *ExportJournalToS3Output) SetExportId(v string) *ExportJournalToS3Output { 2604 s.ExportId = &v 2605 return s 2606} 2607 2608type GetBlockInput struct { 2609 _ struct{} `type:"structure"` 2610 2611 // The location of the block that you want to request. An address is an Amazon 2612 // Ion structure that has two fields: strandId and sequenceNo. 2613 // 2614 // For example: {strandId:"BlFTjlSXze9BIh1KOszcE3",sequenceNo:14} 2615 // 2616 // BlockAddress is a required field 2617 BlockAddress *ValueHolder `type:"structure" required:"true" sensitive:"true"` 2618 2619 // The latest block location covered by the digest for which to request a proof. 2620 // An address is an Amazon Ion structure that has two fields: strandId and sequenceNo. 2621 // 2622 // For example: {strandId:"BlFTjlSXze9BIh1KOszcE3",sequenceNo:49} 2623 DigestTipAddress *ValueHolder `type:"structure" sensitive:"true"` 2624 2625 // The name of the ledger. 2626 // 2627 // Name is a required field 2628 Name *string `location:"uri" locationName:"name" min:"1" type:"string" required:"true"` 2629} 2630 2631// String returns the string representation 2632func (s GetBlockInput) String() string { 2633 return awsutil.Prettify(s) 2634} 2635 2636// GoString returns the string representation 2637func (s GetBlockInput) GoString() string { 2638 return s.String() 2639} 2640 2641// Validate inspects the fields of the type to determine if they are valid. 2642func (s *GetBlockInput) Validate() error { 2643 invalidParams := request.ErrInvalidParams{Context: "GetBlockInput"} 2644 if s.BlockAddress == nil { 2645 invalidParams.Add(request.NewErrParamRequired("BlockAddress")) 2646 } 2647 if s.Name == nil { 2648 invalidParams.Add(request.NewErrParamRequired("Name")) 2649 } 2650 if s.Name != nil && len(*s.Name) < 1 { 2651 invalidParams.Add(request.NewErrParamMinLen("Name", 1)) 2652 } 2653 if s.BlockAddress != nil { 2654 if err := s.BlockAddress.Validate(); err != nil { 2655 invalidParams.AddNested("BlockAddress", err.(request.ErrInvalidParams)) 2656 } 2657 } 2658 if s.DigestTipAddress != nil { 2659 if err := s.DigestTipAddress.Validate(); err != nil { 2660 invalidParams.AddNested("DigestTipAddress", err.(request.ErrInvalidParams)) 2661 } 2662 } 2663 2664 if invalidParams.Len() > 0 { 2665 return invalidParams 2666 } 2667 return nil 2668} 2669 2670// SetBlockAddress sets the BlockAddress field's value. 2671func (s *GetBlockInput) SetBlockAddress(v *ValueHolder) *GetBlockInput { 2672 s.BlockAddress = v 2673 return s 2674} 2675 2676// SetDigestTipAddress sets the DigestTipAddress field's value. 2677func (s *GetBlockInput) SetDigestTipAddress(v *ValueHolder) *GetBlockInput { 2678 s.DigestTipAddress = v 2679 return s 2680} 2681 2682// SetName sets the Name field's value. 2683func (s *GetBlockInput) SetName(v string) *GetBlockInput { 2684 s.Name = &v 2685 return s 2686} 2687 2688type GetBlockOutput struct { 2689 _ struct{} `type:"structure"` 2690 2691 // The block data object in Amazon Ion format. 2692 // 2693 // Block is a required field 2694 Block *ValueHolder `type:"structure" required:"true" sensitive:"true"` 2695 2696 // The proof object in Amazon Ion format returned by a GetBlock request. A proof 2697 // contains the list of hash values required to recalculate the specified digest 2698 // using a Merkle tree, starting with the specified block. 2699 Proof *ValueHolder `type:"structure" sensitive:"true"` 2700} 2701 2702// String returns the string representation 2703func (s GetBlockOutput) String() string { 2704 return awsutil.Prettify(s) 2705} 2706 2707// GoString returns the string representation 2708func (s GetBlockOutput) GoString() string { 2709 return s.String() 2710} 2711 2712// SetBlock sets the Block field's value. 2713func (s *GetBlockOutput) SetBlock(v *ValueHolder) *GetBlockOutput { 2714 s.Block = v 2715 return s 2716} 2717 2718// SetProof sets the Proof field's value. 2719func (s *GetBlockOutput) SetProof(v *ValueHolder) *GetBlockOutput { 2720 s.Proof = v 2721 return s 2722} 2723 2724type GetDigestInput struct { 2725 _ struct{} `type:"structure"` 2726 2727 // The name of the ledger. 2728 // 2729 // Name is a required field 2730 Name *string `location:"uri" locationName:"name" min:"1" type:"string" required:"true"` 2731} 2732 2733// String returns the string representation 2734func (s GetDigestInput) String() string { 2735 return awsutil.Prettify(s) 2736} 2737 2738// GoString returns the string representation 2739func (s GetDigestInput) GoString() string { 2740 return s.String() 2741} 2742 2743// Validate inspects the fields of the type to determine if they are valid. 2744func (s *GetDigestInput) Validate() error { 2745 invalidParams := request.ErrInvalidParams{Context: "GetDigestInput"} 2746 if s.Name == nil { 2747 invalidParams.Add(request.NewErrParamRequired("Name")) 2748 } 2749 if s.Name != nil && len(*s.Name) < 1 { 2750 invalidParams.Add(request.NewErrParamMinLen("Name", 1)) 2751 } 2752 2753 if invalidParams.Len() > 0 { 2754 return invalidParams 2755 } 2756 return nil 2757} 2758 2759// SetName sets the Name field's value. 2760func (s *GetDigestInput) SetName(v string) *GetDigestInput { 2761 s.Name = &v 2762 return s 2763} 2764 2765type GetDigestOutput struct { 2766 _ struct{} `type:"structure"` 2767 2768 // The 256-bit hash value representing the digest returned by a GetDigest request. 2769 // 2770 // Digest is automatically base64 encoded/decoded by the SDK. 2771 // 2772 // Digest is a required field 2773 Digest []byte `min:"32" type:"blob" required:"true"` 2774 2775 // The latest block location covered by the digest that you requested. An address 2776 // is an Amazon Ion structure that has two fields: strandId and sequenceNo. 2777 // 2778 // DigestTipAddress is a required field 2779 DigestTipAddress *ValueHolder `type:"structure" required:"true" sensitive:"true"` 2780} 2781 2782// String returns the string representation 2783func (s GetDigestOutput) String() string { 2784 return awsutil.Prettify(s) 2785} 2786 2787// GoString returns the string representation 2788func (s GetDigestOutput) GoString() string { 2789 return s.String() 2790} 2791 2792// SetDigest sets the Digest field's value. 2793func (s *GetDigestOutput) SetDigest(v []byte) *GetDigestOutput { 2794 s.Digest = v 2795 return s 2796} 2797 2798// SetDigestTipAddress sets the DigestTipAddress field's value. 2799func (s *GetDigestOutput) SetDigestTipAddress(v *ValueHolder) *GetDigestOutput { 2800 s.DigestTipAddress = v 2801 return s 2802} 2803 2804type GetRevisionInput struct { 2805 _ struct{} `type:"structure"` 2806 2807 // The block location of the document revision to be verified. An address is 2808 // an Amazon Ion structure that has two fields: strandId and sequenceNo. 2809 // 2810 // For example: {strandId:"BlFTjlSXze9BIh1KOszcE3",sequenceNo:14} 2811 // 2812 // BlockAddress is a required field 2813 BlockAddress *ValueHolder `type:"structure" required:"true" sensitive:"true"` 2814 2815 // The latest block location covered by the digest for which to request a proof. 2816 // An address is an Amazon Ion structure that has two fields: strandId and sequenceNo. 2817 // 2818 // For example: {strandId:"BlFTjlSXze9BIh1KOszcE3",sequenceNo:49} 2819 DigestTipAddress *ValueHolder `type:"structure" sensitive:"true"` 2820 2821 // The unique ID of the document to be verified. 2822 // 2823 // DocumentId is a required field 2824 DocumentId *string `min:"22" type:"string" required:"true"` 2825 2826 // The name of the ledger. 2827 // 2828 // Name is a required field 2829 Name *string `location:"uri" locationName:"name" min:"1" type:"string" required:"true"` 2830} 2831 2832// String returns the string representation 2833func (s GetRevisionInput) String() string { 2834 return awsutil.Prettify(s) 2835} 2836 2837// GoString returns the string representation 2838func (s GetRevisionInput) GoString() string { 2839 return s.String() 2840} 2841 2842// Validate inspects the fields of the type to determine if they are valid. 2843func (s *GetRevisionInput) Validate() error { 2844 invalidParams := request.ErrInvalidParams{Context: "GetRevisionInput"} 2845 if s.BlockAddress == nil { 2846 invalidParams.Add(request.NewErrParamRequired("BlockAddress")) 2847 } 2848 if s.DocumentId == nil { 2849 invalidParams.Add(request.NewErrParamRequired("DocumentId")) 2850 } 2851 if s.DocumentId != nil && len(*s.DocumentId) < 22 { 2852 invalidParams.Add(request.NewErrParamMinLen("DocumentId", 22)) 2853 } 2854 if s.Name == nil { 2855 invalidParams.Add(request.NewErrParamRequired("Name")) 2856 } 2857 if s.Name != nil && len(*s.Name) < 1 { 2858 invalidParams.Add(request.NewErrParamMinLen("Name", 1)) 2859 } 2860 if s.BlockAddress != nil { 2861 if err := s.BlockAddress.Validate(); err != nil { 2862 invalidParams.AddNested("BlockAddress", err.(request.ErrInvalidParams)) 2863 } 2864 } 2865 if s.DigestTipAddress != nil { 2866 if err := s.DigestTipAddress.Validate(); err != nil { 2867 invalidParams.AddNested("DigestTipAddress", err.(request.ErrInvalidParams)) 2868 } 2869 } 2870 2871 if invalidParams.Len() > 0 { 2872 return invalidParams 2873 } 2874 return nil 2875} 2876 2877// SetBlockAddress sets the BlockAddress field's value. 2878func (s *GetRevisionInput) SetBlockAddress(v *ValueHolder) *GetRevisionInput { 2879 s.BlockAddress = v 2880 return s 2881} 2882 2883// SetDigestTipAddress sets the DigestTipAddress field's value. 2884func (s *GetRevisionInput) SetDigestTipAddress(v *ValueHolder) *GetRevisionInput { 2885 s.DigestTipAddress = v 2886 return s 2887} 2888 2889// SetDocumentId sets the DocumentId field's value. 2890func (s *GetRevisionInput) SetDocumentId(v string) *GetRevisionInput { 2891 s.DocumentId = &v 2892 return s 2893} 2894 2895// SetName sets the Name field's value. 2896func (s *GetRevisionInput) SetName(v string) *GetRevisionInput { 2897 s.Name = &v 2898 return s 2899} 2900 2901type GetRevisionOutput struct { 2902 _ struct{} `type:"structure"` 2903 2904 // The proof object in Amazon Ion format returned by a GetRevision request. 2905 // A proof contains the list of hash values that are required to recalculate 2906 // the specified digest using a Merkle tree, starting with the specified document 2907 // revision. 2908 Proof *ValueHolder `type:"structure" sensitive:"true"` 2909 2910 // The document revision data object in Amazon Ion format. 2911 // 2912 // Revision is a required field 2913 Revision *ValueHolder `type:"structure" required:"true" sensitive:"true"` 2914} 2915 2916// String returns the string representation 2917func (s GetRevisionOutput) String() string { 2918 return awsutil.Prettify(s) 2919} 2920 2921// GoString returns the string representation 2922func (s GetRevisionOutput) GoString() string { 2923 return s.String() 2924} 2925 2926// SetProof sets the Proof field's value. 2927func (s *GetRevisionOutput) SetProof(v *ValueHolder) *GetRevisionOutput { 2928 s.Proof = v 2929 return s 2930} 2931 2932// SetRevision sets the Revision field's value. 2933func (s *GetRevisionOutput) SetRevision(v *ValueHolder) *GetRevisionOutput { 2934 s.Revision = v 2935 return s 2936} 2937 2938// One or more parameters in the request aren't valid. 2939type InvalidParameterException struct { 2940 _ struct{} `type:"structure"` 2941 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 2942 2943 Message_ *string `locationName:"Message" type:"string"` 2944 2945 // The name of the invalid parameter. 2946 ParameterName *string `type:"string"` 2947} 2948 2949// String returns the string representation 2950func (s InvalidParameterException) String() string { 2951 return awsutil.Prettify(s) 2952} 2953 2954// GoString returns the string representation 2955func (s InvalidParameterException) GoString() string { 2956 return s.String() 2957} 2958 2959func newErrorInvalidParameterException(v protocol.ResponseMetadata) error { 2960 return &InvalidParameterException{ 2961 RespMetadata: v, 2962 } 2963} 2964 2965// Code returns the exception type name. 2966func (s *InvalidParameterException) Code() string { 2967 return "InvalidParameterException" 2968} 2969 2970// Message returns the exception's message. 2971func (s *InvalidParameterException) Message() string { 2972 if s.Message_ != nil { 2973 return *s.Message_ 2974 } 2975 return "" 2976} 2977 2978// OrigErr always returns nil, satisfies awserr.Error interface. 2979func (s *InvalidParameterException) OrigErr() error { 2980 return nil 2981} 2982 2983func (s *InvalidParameterException) Error() string { 2984 return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) 2985} 2986 2987// Status code returns the HTTP status code for the request's response error. 2988func (s *InvalidParameterException) StatusCode() int { 2989 return s.RespMetadata.StatusCode 2990} 2991 2992// RequestID returns the service's response RequestID for request. 2993func (s *InvalidParameterException) RequestID() string { 2994 return s.RespMetadata.RequestID 2995} 2996 2997// The information about an Amazon QLDB journal stream, including the Amazon 2998// Resource Name (ARN), stream name, creation time, current status, and the 2999// parameters of your original stream creation request. 3000type JournalKinesisStreamDescription struct { 3001 _ struct{} `type:"structure"` 3002 3003 // The Amazon Resource Name (ARN) of the QLDB journal stream. 3004 Arn *string `min:"20" type:"string"` 3005 3006 // The date and time, in epoch time format, when the QLDB journal stream was 3007 // created. (Epoch time format is the number of seconds elapsed since 12:00:00 3008 // AM January 1, 1970 UTC.) 3009 CreationTime *time.Time `type:"timestamp"` 3010 3011 // The error message that describes the reason that a stream has a status of 3012 // IMPAIRED or FAILED. This is not applicable to streams that have other status 3013 // values. 3014 ErrorCause *string `type:"string" enum:"ErrorCause"` 3015 3016 // The exclusive date and time that specifies when the stream ends. If this 3017 // parameter is blank, the stream runs indefinitely until you cancel it. 3018 ExclusiveEndTime *time.Time `type:"timestamp"` 3019 3020 // The inclusive start date and time from which to start streaming journal data. 3021 InclusiveStartTime *time.Time `type:"timestamp"` 3022 3023 // The configuration settings of the Amazon Kinesis Data Streams destination 3024 // for your QLDB journal stream. 3025 // 3026 // KinesisConfiguration is a required field 3027 KinesisConfiguration *KinesisConfiguration `type:"structure" required:"true"` 3028 3029 // The name of the ledger. 3030 // 3031 // LedgerName is a required field 3032 LedgerName *string `min:"1" type:"string" required:"true"` 3033 3034 // The Amazon Resource Name (ARN) of the IAM role that grants QLDB permissions 3035 // for a journal stream to write data records to a Kinesis Data Streams resource. 3036 // 3037 // RoleArn is a required field 3038 RoleArn *string `min:"20" type:"string" required:"true"` 3039 3040 // The current state of the QLDB journal stream. 3041 // 3042 // Status is a required field 3043 Status *string `type:"string" required:"true" enum:"StreamStatus"` 3044 3045 // The unique ID that QLDB assigns to each QLDB journal stream. 3046 // 3047 // StreamId is a required field 3048 StreamId *string `min:"22" type:"string" required:"true"` 3049 3050 // The user-defined name of the QLDB journal stream. 3051 // 3052 // StreamName is a required field 3053 StreamName *string `min:"1" type:"string" required:"true"` 3054} 3055 3056// String returns the string representation 3057func (s JournalKinesisStreamDescription) String() string { 3058 return awsutil.Prettify(s) 3059} 3060 3061// GoString returns the string representation 3062func (s JournalKinesisStreamDescription) GoString() string { 3063 return s.String() 3064} 3065 3066// SetArn sets the Arn field's value. 3067func (s *JournalKinesisStreamDescription) SetArn(v string) *JournalKinesisStreamDescription { 3068 s.Arn = &v 3069 return s 3070} 3071 3072// SetCreationTime sets the CreationTime field's value. 3073func (s *JournalKinesisStreamDescription) SetCreationTime(v time.Time) *JournalKinesisStreamDescription { 3074 s.CreationTime = &v 3075 return s 3076} 3077 3078// SetErrorCause sets the ErrorCause field's value. 3079func (s *JournalKinesisStreamDescription) SetErrorCause(v string) *JournalKinesisStreamDescription { 3080 s.ErrorCause = &v 3081 return s 3082} 3083 3084// SetExclusiveEndTime sets the ExclusiveEndTime field's value. 3085func (s *JournalKinesisStreamDescription) SetExclusiveEndTime(v time.Time) *JournalKinesisStreamDescription { 3086 s.ExclusiveEndTime = &v 3087 return s 3088} 3089 3090// SetInclusiveStartTime sets the InclusiveStartTime field's value. 3091func (s *JournalKinesisStreamDescription) SetInclusiveStartTime(v time.Time) *JournalKinesisStreamDescription { 3092 s.InclusiveStartTime = &v 3093 return s 3094} 3095 3096// SetKinesisConfiguration sets the KinesisConfiguration field's value. 3097func (s *JournalKinesisStreamDescription) SetKinesisConfiguration(v *KinesisConfiguration) *JournalKinesisStreamDescription { 3098 s.KinesisConfiguration = v 3099 return s 3100} 3101 3102// SetLedgerName sets the LedgerName field's value. 3103func (s *JournalKinesisStreamDescription) SetLedgerName(v string) *JournalKinesisStreamDescription { 3104 s.LedgerName = &v 3105 return s 3106} 3107 3108// SetRoleArn sets the RoleArn field's value. 3109func (s *JournalKinesisStreamDescription) SetRoleArn(v string) *JournalKinesisStreamDescription { 3110 s.RoleArn = &v 3111 return s 3112} 3113 3114// SetStatus sets the Status field's value. 3115func (s *JournalKinesisStreamDescription) SetStatus(v string) *JournalKinesisStreamDescription { 3116 s.Status = &v 3117 return s 3118} 3119 3120// SetStreamId sets the StreamId field's value. 3121func (s *JournalKinesisStreamDescription) SetStreamId(v string) *JournalKinesisStreamDescription { 3122 s.StreamId = &v 3123 return s 3124} 3125 3126// SetStreamName sets the StreamName field's value. 3127func (s *JournalKinesisStreamDescription) SetStreamName(v string) *JournalKinesisStreamDescription { 3128 s.StreamName = &v 3129 return s 3130} 3131 3132// The information about a journal export job, including the ledger name, export 3133// ID, when it was created, current status, and its start and end time export 3134// parameters. 3135type JournalS3ExportDescription struct { 3136 _ struct{} `type:"structure"` 3137 3138 // The exclusive end date and time for the range of journal contents that are 3139 // specified in the original export request. 3140 // 3141 // ExclusiveEndTime is a required field 3142 ExclusiveEndTime *time.Time `type:"timestamp" required:"true"` 3143 3144 // The date and time, in epoch time format, when the export job was created. 3145 // (Epoch time format is the number of seconds elapsed since 12:00:00 AM January 3146 // 1, 1970 UTC.) 3147 // 3148 // ExportCreationTime is a required field 3149 ExportCreationTime *time.Time `type:"timestamp" required:"true"` 3150 3151 // The unique ID of the journal export job. 3152 // 3153 // ExportId is a required field 3154 ExportId *string `min:"22" type:"string" required:"true"` 3155 3156 // The inclusive start date and time for the range of journal contents that 3157 // are specified in the original export request. 3158 // 3159 // InclusiveStartTime is a required field 3160 InclusiveStartTime *time.Time `type:"timestamp" required:"true"` 3161 3162 // The name of the ledger. 3163 // 3164 // LedgerName is a required field 3165 LedgerName *string `min:"1" type:"string" required:"true"` 3166 3167 // The Amazon Resource Name (ARN) of the IAM role that grants QLDB permissions 3168 // for a journal export job to do the following: 3169 // 3170 // * Write objects into your Amazon Simple Storage Service (Amazon S3) bucket. 3171 // 3172 // * (Optional) Use your customer master key (CMK) in AWS Key Management 3173 // Service (AWS KMS) for server-side encryption of your exported data. 3174 // 3175 // RoleArn is a required field 3176 RoleArn *string `min:"20" type:"string" required:"true"` 3177 3178 // The Amazon Simple Storage Service (Amazon S3) bucket location in which a 3179 // journal export job writes the journal contents. 3180 // 3181 // S3ExportConfiguration is a required field 3182 S3ExportConfiguration *S3ExportConfiguration `type:"structure" required:"true"` 3183 3184 // The current state of the journal export job. 3185 // 3186 // Status is a required field 3187 Status *string `type:"string" required:"true" enum:"ExportStatus"` 3188} 3189 3190// String returns the string representation 3191func (s JournalS3ExportDescription) String() string { 3192 return awsutil.Prettify(s) 3193} 3194 3195// GoString returns the string representation 3196func (s JournalS3ExportDescription) GoString() string { 3197 return s.String() 3198} 3199 3200// SetExclusiveEndTime sets the ExclusiveEndTime field's value. 3201func (s *JournalS3ExportDescription) SetExclusiveEndTime(v time.Time) *JournalS3ExportDescription { 3202 s.ExclusiveEndTime = &v 3203 return s 3204} 3205 3206// SetExportCreationTime sets the ExportCreationTime field's value. 3207func (s *JournalS3ExportDescription) SetExportCreationTime(v time.Time) *JournalS3ExportDescription { 3208 s.ExportCreationTime = &v 3209 return s 3210} 3211 3212// SetExportId sets the ExportId field's value. 3213func (s *JournalS3ExportDescription) SetExportId(v string) *JournalS3ExportDescription { 3214 s.ExportId = &v 3215 return s 3216} 3217 3218// SetInclusiveStartTime sets the InclusiveStartTime field's value. 3219func (s *JournalS3ExportDescription) SetInclusiveStartTime(v time.Time) *JournalS3ExportDescription { 3220 s.InclusiveStartTime = &v 3221 return s 3222} 3223 3224// SetLedgerName sets the LedgerName field's value. 3225func (s *JournalS3ExportDescription) SetLedgerName(v string) *JournalS3ExportDescription { 3226 s.LedgerName = &v 3227 return s 3228} 3229 3230// SetRoleArn sets the RoleArn field's value. 3231func (s *JournalS3ExportDescription) SetRoleArn(v string) *JournalS3ExportDescription { 3232 s.RoleArn = &v 3233 return s 3234} 3235 3236// SetS3ExportConfiguration sets the S3ExportConfiguration field's value. 3237func (s *JournalS3ExportDescription) SetS3ExportConfiguration(v *S3ExportConfiguration) *JournalS3ExportDescription { 3238 s.S3ExportConfiguration = v 3239 return s 3240} 3241 3242// SetStatus sets the Status field's value. 3243func (s *JournalS3ExportDescription) SetStatus(v string) *JournalS3ExportDescription { 3244 s.Status = &v 3245 return s 3246} 3247 3248// The configuration settings of the Amazon Kinesis Data Streams destination 3249// for your Amazon QLDB journal stream. 3250type KinesisConfiguration struct { 3251 _ struct{} `type:"structure"` 3252 3253 // Enables QLDB to publish multiple stream records in a single Kinesis Data 3254 // Streams record. To learn more, see KPL Key Concepts (https://docs.aws.amazon.com/streams/latest/dev/kinesis-kpl-concepts.html) 3255 // in the Amazon Kinesis Data Streams Developer Guide. 3256 AggregationEnabled *bool `type:"boolean"` 3257 3258 // The Amazon Resource Name (ARN) of the Kinesis data stream resource. 3259 // 3260 // StreamArn is a required field 3261 StreamArn *string `min:"20" type:"string" required:"true"` 3262} 3263 3264// String returns the string representation 3265func (s KinesisConfiguration) String() string { 3266 return awsutil.Prettify(s) 3267} 3268 3269// GoString returns the string representation 3270func (s KinesisConfiguration) GoString() string { 3271 return s.String() 3272} 3273 3274// Validate inspects the fields of the type to determine if they are valid. 3275func (s *KinesisConfiguration) Validate() error { 3276 invalidParams := request.ErrInvalidParams{Context: "KinesisConfiguration"} 3277 if s.StreamArn == nil { 3278 invalidParams.Add(request.NewErrParamRequired("StreamArn")) 3279 } 3280 if s.StreamArn != nil && len(*s.StreamArn) < 20 { 3281 invalidParams.Add(request.NewErrParamMinLen("StreamArn", 20)) 3282 } 3283 3284 if invalidParams.Len() > 0 { 3285 return invalidParams 3286 } 3287 return nil 3288} 3289 3290// SetAggregationEnabled sets the AggregationEnabled field's value. 3291func (s *KinesisConfiguration) SetAggregationEnabled(v bool) *KinesisConfiguration { 3292 s.AggregationEnabled = &v 3293 return s 3294} 3295 3296// SetStreamArn sets the StreamArn field's value. 3297func (s *KinesisConfiguration) SetStreamArn(v string) *KinesisConfiguration { 3298 s.StreamArn = &v 3299 return s 3300} 3301 3302// Information about a ledger, including its name, state, and when it was created. 3303type LedgerSummary struct { 3304 _ struct{} `type:"structure"` 3305 3306 // The date and time, in epoch time format, when the ledger was created. (Epoch 3307 // time format is the number of seconds elapsed since 12:00:00 AM January 1, 3308 // 1970 UTC.) 3309 CreationDateTime *time.Time `type:"timestamp"` 3310 3311 // The name of the ledger. 3312 Name *string `min:"1" type:"string"` 3313 3314 // The current status of the ledger. 3315 State *string `type:"string" enum:"LedgerState"` 3316} 3317 3318// String returns the string representation 3319func (s LedgerSummary) String() string { 3320 return awsutil.Prettify(s) 3321} 3322 3323// GoString returns the string representation 3324func (s LedgerSummary) GoString() string { 3325 return s.String() 3326} 3327 3328// SetCreationDateTime sets the CreationDateTime field's value. 3329func (s *LedgerSummary) SetCreationDateTime(v time.Time) *LedgerSummary { 3330 s.CreationDateTime = &v 3331 return s 3332} 3333 3334// SetName sets the Name field's value. 3335func (s *LedgerSummary) SetName(v string) *LedgerSummary { 3336 s.Name = &v 3337 return s 3338} 3339 3340// SetState sets the State field's value. 3341func (s *LedgerSummary) SetState(v string) *LedgerSummary { 3342 s.State = &v 3343 return s 3344} 3345 3346// You have reached the limit on the maximum number of resources allowed. 3347type LimitExceededException struct { 3348 _ struct{} `type:"structure"` 3349 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 3350 3351 Message_ *string `locationName:"Message" type:"string"` 3352 3353 // The type of resource. 3354 ResourceType *string `type:"string"` 3355} 3356 3357// String returns the string representation 3358func (s LimitExceededException) String() string { 3359 return awsutil.Prettify(s) 3360} 3361 3362// GoString returns the string representation 3363func (s LimitExceededException) GoString() string { 3364 return s.String() 3365} 3366 3367func newErrorLimitExceededException(v protocol.ResponseMetadata) error { 3368 return &LimitExceededException{ 3369 RespMetadata: v, 3370 } 3371} 3372 3373// Code returns the exception type name. 3374func (s *LimitExceededException) Code() string { 3375 return "LimitExceededException" 3376} 3377 3378// Message returns the exception's message. 3379func (s *LimitExceededException) Message() string { 3380 if s.Message_ != nil { 3381 return *s.Message_ 3382 } 3383 return "" 3384} 3385 3386// OrigErr always returns nil, satisfies awserr.Error interface. 3387func (s *LimitExceededException) OrigErr() error { 3388 return nil 3389} 3390 3391func (s *LimitExceededException) Error() string { 3392 return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) 3393} 3394 3395// Status code returns the HTTP status code for the request's response error. 3396func (s *LimitExceededException) StatusCode() int { 3397 return s.RespMetadata.StatusCode 3398} 3399 3400// RequestID returns the service's response RequestID for request. 3401func (s *LimitExceededException) RequestID() string { 3402 return s.RespMetadata.RequestID 3403} 3404 3405type ListJournalKinesisStreamsForLedgerInput struct { 3406 _ struct{} `type:"structure"` 3407 3408 // The name of the ledger. 3409 // 3410 // LedgerName is a required field 3411 LedgerName *string `location:"uri" locationName:"name" min:"1" type:"string" required:"true"` 3412 3413 // The maximum number of results to return in a single ListJournalKinesisStreamsForLedger 3414 // request. (The actual number of results returned might be fewer.) 3415 MaxResults *int64 `location:"querystring" locationName:"max_results" min:"1" type:"integer"` 3416 3417 // A pagination token, indicating that you want to retrieve the next page of 3418 // results. If you received a value for NextToken in the response from a previous 3419 // ListJournalKinesisStreamsForLedger call, you should use that value as input 3420 // here. 3421 NextToken *string `location:"querystring" locationName:"next_token" min:"4" type:"string"` 3422} 3423 3424// String returns the string representation 3425func (s ListJournalKinesisStreamsForLedgerInput) String() string { 3426 return awsutil.Prettify(s) 3427} 3428 3429// GoString returns the string representation 3430func (s ListJournalKinesisStreamsForLedgerInput) GoString() string { 3431 return s.String() 3432} 3433 3434// Validate inspects the fields of the type to determine if they are valid. 3435func (s *ListJournalKinesisStreamsForLedgerInput) Validate() error { 3436 invalidParams := request.ErrInvalidParams{Context: "ListJournalKinesisStreamsForLedgerInput"} 3437 if s.LedgerName == nil { 3438 invalidParams.Add(request.NewErrParamRequired("LedgerName")) 3439 } 3440 if s.LedgerName != nil && len(*s.LedgerName) < 1 { 3441 invalidParams.Add(request.NewErrParamMinLen("LedgerName", 1)) 3442 } 3443 if s.MaxResults != nil && *s.MaxResults < 1 { 3444 invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) 3445 } 3446 if s.NextToken != nil && len(*s.NextToken) < 4 { 3447 invalidParams.Add(request.NewErrParamMinLen("NextToken", 4)) 3448 } 3449 3450 if invalidParams.Len() > 0 { 3451 return invalidParams 3452 } 3453 return nil 3454} 3455 3456// SetLedgerName sets the LedgerName field's value. 3457func (s *ListJournalKinesisStreamsForLedgerInput) SetLedgerName(v string) *ListJournalKinesisStreamsForLedgerInput { 3458 s.LedgerName = &v 3459 return s 3460} 3461 3462// SetMaxResults sets the MaxResults field's value. 3463func (s *ListJournalKinesisStreamsForLedgerInput) SetMaxResults(v int64) *ListJournalKinesisStreamsForLedgerInput { 3464 s.MaxResults = &v 3465 return s 3466} 3467 3468// SetNextToken sets the NextToken field's value. 3469func (s *ListJournalKinesisStreamsForLedgerInput) SetNextToken(v string) *ListJournalKinesisStreamsForLedgerInput { 3470 s.NextToken = &v 3471 return s 3472} 3473 3474type ListJournalKinesisStreamsForLedgerOutput struct { 3475 _ struct{} `type:"structure"` 3476 3477 // * If NextToken is empty, the last page of results has been processed and 3478 // there are no more results to be retrieved. 3479 // 3480 // * If NextToken is not empty, more results are available. To retrieve the 3481 // next page of results, use the value of NextToken in a subsequent ListJournalKinesisStreamsForLedger 3482 // call. 3483 NextToken *string `min:"4" type:"string"` 3484 3485 // The array of QLDB journal stream descriptors that are associated with the 3486 // given ledger. 3487 Streams []*JournalKinesisStreamDescription `type:"list"` 3488} 3489 3490// String returns the string representation 3491func (s ListJournalKinesisStreamsForLedgerOutput) String() string { 3492 return awsutil.Prettify(s) 3493} 3494 3495// GoString returns the string representation 3496func (s ListJournalKinesisStreamsForLedgerOutput) GoString() string { 3497 return s.String() 3498} 3499 3500// SetNextToken sets the NextToken field's value. 3501func (s *ListJournalKinesisStreamsForLedgerOutput) SetNextToken(v string) *ListJournalKinesisStreamsForLedgerOutput { 3502 s.NextToken = &v 3503 return s 3504} 3505 3506// SetStreams sets the Streams field's value. 3507func (s *ListJournalKinesisStreamsForLedgerOutput) SetStreams(v []*JournalKinesisStreamDescription) *ListJournalKinesisStreamsForLedgerOutput { 3508 s.Streams = v 3509 return s 3510} 3511 3512type ListJournalS3ExportsForLedgerInput struct { 3513 _ struct{} `type:"structure"` 3514 3515 // The maximum number of results to return in a single ListJournalS3ExportsForLedger 3516 // request. (The actual number of results returned might be fewer.) 3517 MaxResults *int64 `location:"querystring" locationName:"max_results" min:"1" type:"integer"` 3518 3519 // The name of the ledger. 3520 // 3521 // Name is a required field 3522 Name *string `location:"uri" locationName:"name" min:"1" type:"string" required:"true"` 3523 3524 // A pagination token, indicating that you want to retrieve the next page of 3525 // results. If you received a value for NextToken in the response from a previous 3526 // ListJournalS3ExportsForLedger call, then you should use that value as input 3527 // here. 3528 NextToken *string `location:"querystring" locationName:"next_token" min:"4" type:"string"` 3529} 3530 3531// String returns the string representation 3532func (s ListJournalS3ExportsForLedgerInput) String() string { 3533 return awsutil.Prettify(s) 3534} 3535 3536// GoString returns the string representation 3537func (s ListJournalS3ExportsForLedgerInput) GoString() string { 3538 return s.String() 3539} 3540 3541// Validate inspects the fields of the type to determine if they are valid. 3542func (s *ListJournalS3ExportsForLedgerInput) Validate() error { 3543 invalidParams := request.ErrInvalidParams{Context: "ListJournalS3ExportsForLedgerInput"} 3544 if s.MaxResults != nil && *s.MaxResults < 1 { 3545 invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) 3546 } 3547 if s.Name == nil { 3548 invalidParams.Add(request.NewErrParamRequired("Name")) 3549 } 3550 if s.Name != nil && len(*s.Name) < 1 { 3551 invalidParams.Add(request.NewErrParamMinLen("Name", 1)) 3552 } 3553 if s.NextToken != nil && len(*s.NextToken) < 4 { 3554 invalidParams.Add(request.NewErrParamMinLen("NextToken", 4)) 3555 } 3556 3557 if invalidParams.Len() > 0 { 3558 return invalidParams 3559 } 3560 return nil 3561} 3562 3563// SetMaxResults sets the MaxResults field's value. 3564func (s *ListJournalS3ExportsForLedgerInput) SetMaxResults(v int64) *ListJournalS3ExportsForLedgerInput { 3565 s.MaxResults = &v 3566 return s 3567} 3568 3569// SetName sets the Name field's value. 3570func (s *ListJournalS3ExportsForLedgerInput) SetName(v string) *ListJournalS3ExportsForLedgerInput { 3571 s.Name = &v 3572 return s 3573} 3574 3575// SetNextToken sets the NextToken field's value. 3576func (s *ListJournalS3ExportsForLedgerInput) SetNextToken(v string) *ListJournalS3ExportsForLedgerInput { 3577 s.NextToken = &v 3578 return s 3579} 3580 3581type ListJournalS3ExportsForLedgerOutput struct { 3582 _ struct{} `type:"structure"` 3583 3584 // The array of journal export job descriptions that are associated with the 3585 // specified ledger. 3586 JournalS3Exports []*JournalS3ExportDescription `type:"list"` 3587 3588 // * If NextToken is empty, then the last page of results has been processed 3589 // and there are no more results to be retrieved. 3590 // 3591 // * If NextToken is not empty, then there are more results available. To 3592 // retrieve the next page of results, use the value of NextToken in a subsequent 3593 // ListJournalS3ExportsForLedger call. 3594 NextToken *string `min:"4" type:"string"` 3595} 3596 3597// String returns the string representation 3598func (s ListJournalS3ExportsForLedgerOutput) String() string { 3599 return awsutil.Prettify(s) 3600} 3601 3602// GoString returns the string representation 3603func (s ListJournalS3ExportsForLedgerOutput) GoString() string { 3604 return s.String() 3605} 3606 3607// SetJournalS3Exports sets the JournalS3Exports field's value. 3608func (s *ListJournalS3ExportsForLedgerOutput) SetJournalS3Exports(v []*JournalS3ExportDescription) *ListJournalS3ExportsForLedgerOutput { 3609 s.JournalS3Exports = v 3610 return s 3611} 3612 3613// SetNextToken sets the NextToken field's value. 3614func (s *ListJournalS3ExportsForLedgerOutput) SetNextToken(v string) *ListJournalS3ExportsForLedgerOutput { 3615 s.NextToken = &v 3616 return s 3617} 3618 3619type ListJournalS3ExportsInput struct { 3620 _ struct{} `type:"structure"` 3621 3622 // The maximum number of results to return in a single ListJournalS3Exports 3623 // request. (The actual number of results returned might be fewer.) 3624 MaxResults *int64 `location:"querystring" locationName:"max_results" min:"1" type:"integer"` 3625 3626 // A pagination token, indicating that you want to retrieve the next page of 3627 // results. If you received a value for NextToken in the response from a previous 3628 // ListJournalS3Exports call, then you should use that value as input here. 3629 NextToken *string `location:"querystring" locationName:"next_token" min:"4" type:"string"` 3630} 3631 3632// String returns the string representation 3633func (s ListJournalS3ExportsInput) String() string { 3634 return awsutil.Prettify(s) 3635} 3636 3637// GoString returns the string representation 3638func (s ListJournalS3ExportsInput) GoString() string { 3639 return s.String() 3640} 3641 3642// Validate inspects the fields of the type to determine if they are valid. 3643func (s *ListJournalS3ExportsInput) Validate() error { 3644 invalidParams := request.ErrInvalidParams{Context: "ListJournalS3ExportsInput"} 3645 if s.MaxResults != nil && *s.MaxResults < 1 { 3646 invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) 3647 } 3648 if s.NextToken != nil && len(*s.NextToken) < 4 { 3649 invalidParams.Add(request.NewErrParamMinLen("NextToken", 4)) 3650 } 3651 3652 if invalidParams.Len() > 0 { 3653 return invalidParams 3654 } 3655 return nil 3656} 3657 3658// SetMaxResults sets the MaxResults field's value. 3659func (s *ListJournalS3ExportsInput) SetMaxResults(v int64) *ListJournalS3ExportsInput { 3660 s.MaxResults = &v 3661 return s 3662} 3663 3664// SetNextToken sets the NextToken field's value. 3665func (s *ListJournalS3ExportsInput) SetNextToken(v string) *ListJournalS3ExportsInput { 3666 s.NextToken = &v 3667 return s 3668} 3669 3670type ListJournalS3ExportsOutput struct { 3671 _ struct{} `type:"structure"` 3672 3673 // The array of journal export job descriptions for all ledgers that are associated 3674 // with the current AWS account and Region. 3675 JournalS3Exports []*JournalS3ExportDescription `type:"list"` 3676 3677 // * If NextToken is empty, then the last page of results has been processed 3678 // and there are no more results to be retrieved. 3679 // 3680 // * If NextToken is not empty, then there are more results available. To 3681 // retrieve the next page of results, use the value of NextToken in a subsequent 3682 // ListJournalS3Exports call. 3683 NextToken *string `min:"4" type:"string"` 3684} 3685 3686// String returns the string representation 3687func (s ListJournalS3ExportsOutput) String() string { 3688 return awsutil.Prettify(s) 3689} 3690 3691// GoString returns the string representation 3692func (s ListJournalS3ExportsOutput) GoString() string { 3693 return s.String() 3694} 3695 3696// SetJournalS3Exports sets the JournalS3Exports field's value. 3697func (s *ListJournalS3ExportsOutput) SetJournalS3Exports(v []*JournalS3ExportDescription) *ListJournalS3ExportsOutput { 3698 s.JournalS3Exports = v 3699 return s 3700} 3701 3702// SetNextToken sets the NextToken field's value. 3703func (s *ListJournalS3ExportsOutput) SetNextToken(v string) *ListJournalS3ExportsOutput { 3704 s.NextToken = &v 3705 return s 3706} 3707 3708type ListLedgersInput struct { 3709 _ struct{} `type:"structure"` 3710 3711 // The maximum number of results to return in a single ListLedgers request. 3712 // (The actual number of results returned might be fewer.) 3713 MaxResults *int64 `location:"querystring" locationName:"max_results" min:"1" type:"integer"` 3714 3715 // A pagination token, indicating that you want to retrieve the next page of 3716 // results. If you received a value for NextToken in the response from a previous 3717 // ListLedgers call, then you should use that value as input here. 3718 NextToken *string `location:"querystring" locationName:"next_token" min:"4" type:"string"` 3719} 3720 3721// String returns the string representation 3722func (s ListLedgersInput) String() string { 3723 return awsutil.Prettify(s) 3724} 3725 3726// GoString returns the string representation 3727func (s ListLedgersInput) GoString() string { 3728 return s.String() 3729} 3730 3731// Validate inspects the fields of the type to determine if they are valid. 3732func (s *ListLedgersInput) Validate() error { 3733 invalidParams := request.ErrInvalidParams{Context: "ListLedgersInput"} 3734 if s.MaxResults != nil && *s.MaxResults < 1 { 3735 invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) 3736 } 3737 if s.NextToken != nil && len(*s.NextToken) < 4 { 3738 invalidParams.Add(request.NewErrParamMinLen("NextToken", 4)) 3739 } 3740 3741 if invalidParams.Len() > 0 { 3742 return invalidParams 3743 } 3744 return nil 3745} 3746 3747// SetMaxResults sets the MaxResults field's value. 3748func (s *ListLedgersInput) SetMaxResults(v int64) *ListLedgersInput { 3749 s.MaxResults = &v 3750 return s 3751} 3752 3753// SetNextToken sets the NextToken field's value. 3754func (s *ListLedgersInput) SetNextToken(v string) *ListLedgersInput { 3755 s.NextToken = &v 3756 return s 3757} 3758 3759type ListLedgersOutput struct { 3760 _ struct{} `type:"structure"` 3761 3762 // The array of ledger summaries that are associated with the current AWS account 3763 // and Region. 3764 Ledgers []*LedgerSummary `type:"list"` 3765 3766 // A pagination token, indicating whether there are more results available: 3767 // 3768 // * If NextToken is empty, then the last page of results has been processed 3769 // and there are no more results to be retrieved. 3770 // 3771 // * If NextToken is not empty, then there are more results available. To 3772 // retrieve the next page of results, use the value of NextToken in a subsequent 3773 // ListLedgers call. 3774 NextToken *string `min:"4" type:"string"` 3775} 3776 3777// String returns the string representation 3778func (s ListLedgersOutput) String() string { 3779 return awsutil.Prettify(s) 3780} 3781 3782// GoString returns the string representation 3783func (s ListLedgersOutput) GoString() string { 3784 return s.String() 3785} 3786 3787// SetLedgers sets the Ledgers field's value. 3788func (s *ListLedgersOutput) SetLedgers(v []*LedgerSummary) *ListLedgersOutput { 3789 s.Ledgers = v 3790 return s 3791} 3792 3793// SetNextToken sets the NextToken field's value. 3794func (s *ListLedgersOutput) SetNextToken(v string) *ListLedgersOutput { 3795 s.NextToken = &v 3796 return s 3797} 3798 3799type ListTagsForResourceInput struct { 3800 _ struct{} `type:"structure"` 3801 3802 // The Amazon Resource Name (ARN) for which you want to list the tags. For example: 3803 // 3804 // arn:aws:qldb:us-east-1:123456789012:ledger/exampleLedger 3805 // 3806 // ResourceArn is a required field 3807 ResourceArn *string `location:"uri" locationName:"resourceArn" min:"20" type:"string" required:"true"` 3808} 3809 3810// String returns the string representation 3811func (s ListTagsForResourceInput) String() string { 3812 return awsutil.Prettify(s) 3813} 3814 3815// GoString returns the string representation 3816func (s ListTagsForResourceInput) GoString() string { 3817 return s.String() 3818} 3819 3820// Validate inspects the fields of the type to determine if they are valid. 3821func (s *ListTagsForResourceInput) Validate() error { 3822 invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"} 3823 if s.ResourceArn == nil { 3824 invalidParams.Add(request.NewErrParamRequired("ResourceArn")) 3825 } 3826 if s.ResourceArn != nil && len(*s.ResourceArn) < 20 { 3827 invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 20)) 3828 } 3829 3830 if invalidParams.Len() > 0 { 3831 return invalidParams 3832 } 3833 return nil 3834} 3835 3836// SetResourceArn sets the ResourceArn field's value. 3837func (s *ListTagsForResourceInput) SetResourceArn(v string) *ListTagsForResourceInput { 3838 s.ResourceArn = &v 3839 return s 3840} 3841 3842type ListTagsForResourceOutput struct { 3843 _ struct{} `type:"structure"` 3844 3845 // The tags that are currently associated with the specified Amazon QLDB resource. 3846 Tags map[string]*string `type:"map"` 3847} 3848 3849// String returns the string representation 3850func (s ListTagsForResourceOutput) String() string { 3851 return awsutil.Prettify(s) 3852} 3853 3854// GoString returns the string representation 3855func (s ListTagsForResourceOutput) GoString() string { 3856 return s.String() 3857} 3858 3859// SetTags sets the Tags field's value. 3860func (s *ListTagsForResourceOutput) SetTags(v map[string]*string) *ListTagsForResourceOutput { 3861 s.Tags = v 3862 return s 3863} 3864 3865// The specified resource already exists. 3866type ResourceAlreadyExistsException struct { 3867 _ struct{} `type:"structure"` 3868 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 3869 3870 Message_ *string `locationName:"Message" type:"string"` 3871 3872 // The name of the resource. 3873 ResourceName *string `type:"string"` 3874 3875 // The type of resource. 3876 ResourceType *string `type:"string"` 3877} 3878 3879// String returns the string representation 3880func (s ResourceAlreadyExistsException) String() string { 3881 return awsutil.Prettify(s) 3882} 3883 3884// GoString returns the string representation 3885func (s ResourceAlreadyExistsException) GoString() string { 3886 return s.String() 3887} 3888 3889func newErrorResourceAlreadyExistsException(v protocol.ResponseMetadata) error { 3890 return &ResourceAlreadyExistsException{ 3891 RespMetadata: v, 3892 } 3893} 3894 3895// Code returns the exception type name. 3896func (s *ResourceAlreadyExistsException) Code() string { 3897 return "ResourceAlreadyExistsException" 3898} 3899 3900// Message returns the exception's message. 3901func (s *ResourceAlreadyExistsException) Message() string { 3902 if s.Message_ != nil { 3903 return *s.Message_ 3904 } 3905 return "" 3906} 3907 3908// OrigErr always returns nil, satisfies awserr.Error interface. 3909func (s *ResourceAlreadyExistsException) OrigErr() error { 3910 return nil 3911} 3912 3913func (s *ResourceAlreadyExistsException) Error() string { 3914 return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) 3915} 3916 3917// Status code returns the HTTP status code for the request's response error. 3918func (s *ResourceAlreadyExistsException) StatusCode() int { 3919 return s.RespMetadata.StatusCode 3920} 3921 3922// RequestID returns the service's response RequestID for request. 3923func (s *ResourceAlreadyExistsException) RequestID() string { 3924 return s.RespMetadata.RequestID 3925} 3926 3927// The specified resource can't be modified at this time. 3928type ResourceInUseException struct { 3929 _ struct{} `type:"structure"` 3930 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 3931 3932 Message_ *string `locationName:"Message" type:"string"` 3933 3934 // The name of the resource. 3935 ResourceName *string `type:"string"` 3936 3937 // The type of resource. 3938 ResourceType *string `type:"string"` 3939} 3940 3941// String returns the string representation 3942func (s ResourceInUseException) String() string { 3943 return awsutil.Prettify(s) 3944} 3945 3946// GoString returns the string representation 3947func (s ResourceInUseException) GoString() string { 3948 return s.String() 3949} 3950 3951func newErrorResourceInUseException(v protocol.ResponseMetadata) error { 3952 return &ResourceInUseException{ 3953 RespMetadata: v, 3954 } 3955} 3956 3957// Code returns the exception type name. 3958func (s *ResourceInUseException) Code() string { 3959 return "ResourceInUseException" 3960} 3961 3962// Message returns the exception's message. 3963func (s *ResourceInUseException) Message() string { 3964 if s.Message_ != nil { 3965 return *s.Message_ 3966 } 3967 return "" 3968} 3969 3970// OrigErr always returns nil, satisfies awserr.Error interface. 3971func (s *ResourceInUseException) OrigErr() error { 3972 return nil 3973} 3974 3975func (s *ResourceInUseException) Error() string { 3976 return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) 3977} 3978 3979// Status code returns the HTTP status code for the request's response error. 3980func (s *ResourceInUseException) StatusCode() int { 3981 return s.RespMetadata.StatusCode 3982} 3983 3984// RequestID returns the service's response RequestID for request. 3985func (s *ResourceInUseException) RequestID() string { 3986 return s.RespMetadata.RequestID 3987} 3988 3989// The specified resource doesn't exist. 3990type ResourceNotFoundException struct { 3991 _ struct{} `type:"structure"` 3992 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 3993 3994 Message_ *string `locationName:"Message" type:"string"` 3995 3996 // The name of the resource. 3997 ResourceName *string `type:"string"` 3998 3999 // The type of resource. 4000 ResourceType *string `type:"string"` 4001} 4002 4003// String returns the string representation 4004func (s ResourceNotFoundException) String() string { 4005 return awsutil.Prettify(s) 4006} 4007 4008// GoString returns the string representation 4009func (s ResourceNotFoundException) GoString() string { 4010 return s.String() 4011} 4012 4013func newErrorResourceNotFoundException(v protocol.ResponseMetadata) error { 4014 return &ResourceNotFoundException{ 4015 RespMetadata: v, 4016 } 4017} 4018 4019// Code returns the exception type name. 4020func (s *ResourceNotFoundException) Code() string { 4021 return "ResourceNotFoundException" 4022} 4023 4024// Message returns the exception's message. 4025func (s *ResourceNotFoundException) Message() string { 4026 if s.Message_ != nil { 4027 return *s.Message_ 4028 } 4029 return "" 4030} 4031 4032// OrigErr always returns nil, satisfies awserr.Error interface. 4033func (s *ResourceNotFoundException) OrigErr() error { 4034 return nil 4035} 4036 4037func (s *ResourceNotFoundException) Error() string { 4038 return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) 4039} 4040 4041// Status code returns the HTTP status code for the request's response error. 4042func (s *ResourceNotFoundException) StatusCode() int { 4043 return s.RespMetadata.StatusCode 4044} 4045 4046// RequestID returns the service's response RequestID for request. 4047func (s *ResourceNotFoundException) RequestID() string { 4048 return s.RespMetadata.RequestID 4049} 4050 4051// The operation failed because a condition wasn't satisfied in advance. 4052type ResourcePreconditionNotMetException struct { 4053 _ struct{} `type:"structure"` 4054 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 4055 4056 Message_ *string `locationName:"Message" type:"string"` 4057 4058 // The name of the resource. 4059 ResourceName *string `type:"string"` 4060 4061 // The type of resource. 4062 ResourceType *string `type:"string"` 4063} 4064 4065// String returns the string representation 4066func (s ResourcePreconditionNotMetException) String() string { 4067 return awsutil.Prettify(s) 4068} 4069 4070// GoString returns the string representation 4071func (s ResourcePreconditionNotMetException) GoString() string { 4072 return s.String() 4073} 4074 4075func newErrorResourcePreconditionNotMetException(v protocol.ResponseMetadata) error { 4076 return &ResourcePreconditionNotMetException{ 4077 RespMetadata: v, 4078 } 4079} 4080 4081// Code returns the exception type name. 4082func (s *ResourcePreconditionNotMetException) Code() string { 4083 return "ResourcePreconditionNotMetException" 4084} 4085 4086// Message returns the exception's message. 4087func (s *ResourcePreconditionNotMetException) Message() string { 4088 if s.Message_ != nil { 4089 return *s.Message_ 4090 } 4091 return "" 4092} 4093 4094// OrigErr always returns nil, satisfies awserr.Error interface. 4095func (s *ResourcePreconditionNotMetException) OrigErr() error { 4096 return nil 4097} 4098 4099func (s *ResourcePreconditionNotMetException) Error() string { 4100 return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) 4101} 4102 4103// Status code returns the HTTP status code for the request's response error. 4104func (s *ResourcePreconditionNotMetException) StatusCode() int { 4105 return s.RespMetadata.StatusCode 4106} 4107 4108// RequestID returns the service's response RequestID for request. 4109func (s *ResourcePreconditionNotMetException) RequestID() string { 4110 return s.RespMetadata.RequestID 4111} 4112 4113// The encryption settings that are used by a journal export job to write data 4114// in an Amazon Simple Storage Service (Amazon S3) bucket. 4115type S3EncryptionConfiguration struct { 4116 _ struct{} `type:"structure"` 4117 4118 // The Amazon Resource Name (ARN) for a symmetric customer master key (CMK) 4119 // in AWS Key Management Service (AWS KMS). Amazon QLDB does not support asymmetric 4120 // CMKs. 4121 // 4122 // You must provide a KmsKeyArn if you specify SSE_KMS as the ObjectEncryptionType. 4123 // 4124 // KmsKeyArn is not required if you specify SSE_S3 as the ObjectEncryptionType. 4125 KmsKeyArn *string `min:"20" type:"string"` 4126 4127 // The Amazon S3 object encryption type. 4128 // 4129 // To learn more about server-side encryption options in Amazon S3, see Protecting 4130 // Data Using Server-Side Encryption (https://docs.aws.amazon.com/AmazonS3/latest/dev/serv-side-encryption.html) 4131 // in the Amazon S3 Developer Guide. 4132 // 4133 // ObjectEncryptionType is a required field 4134 ObjectEncryptionType *string `type:"string" required:"true" enum:"S3ObjectEncryptionType"` 4135} 4136 4137// String returns the string representation 4138func (s S3EncryptionConfiguration) String() string { 4139 return awsutil.Prettify(s) 4140} 4141 4142// GoString returns the string representation 4143func (s S3EncryptionConfiguration) GoString() string { 4144 return s.String() 4145} 4146 4147// Validate inspects the fields of the type to determine if they are valid. 4148func (s *S3EncryptionConfiguration) Validate() error { 4149 invalidParams := request.ErrInvalidParams{Context: "S3EncryptionConfiguration"} 4150 if s.KmsKeyArn != nil && len(*s.KmsKeyArn) < 20 { 4151 invalidParams.Add(request.NewErrParamMinLen("KmsKeyArn", 20)) 4152 } 4153 if s.ObjectEncryptionType == nil { 4154 invalidParams.Add(request.NewErrParamRequired("ObjectEncryptionType")) 4155 } 4156 4157 if invalidParams.Len() > 0 { 4158 return invalidParams 4159 } 4160 return nil 4161} 4162 4163// SetKmsKeyArn sets the KmsKeyArn field's value. 4164func (s *S3EncryptionConfiguration) SetKmsKeyArn(v string) *S3EncryptionConfiguration { 4165 s.KmsKeyArn = &v 4166 return s 4167} 4168 4169// SetObjectEncryptionType sets the ObjectEncryptionType field's value. 4170func (s *S3EncryptionConfiguration) SetObjectEncryptionType(v string) *S3EncryptionConfiguration { 4171 s.ObjectEncryptionType = &v 4172 return s 4173} 4174 4175// The Amazon Simple Storage Service (Amazon S3) bucket location in which a 4176// journal export job writes the journal contents. 4177type S3ExportConfiguration struct { 4178 _ struct{} `type:"structure"` 4179 4180 // The Amazon S3 bucket name in which a journal export job writes the journal 4181 // contents. 4182 // 4183 // The bucket name must comply with the Amazon S3 bucket naming conventions. 4184 // For more information, see Bucket Restrictions and Limitations (https://docs.aws.amazon.com/AmazonS3/latest/dev/BucketRestrictions.html) 4185 // in the Amazon S3 Developer Guide. 4186 // 4187 // Bucket is a required field 4188 Bucket *string `min:"3" type:"string" required:"true"` 4189 4190 // The encryption settings that are used by a journal export job to write data 4191 // in an Amazon S3 bucket. 4192 // 4193 // EncryptionConfiguration is a required field 4194 EncryptionConfiguration *S3EncryptionConfiguration `type:"structure" required:"true"` 4195 4196 // The prefix for the Amazon S3 bucket in which a journal export job writes 4197 // the journal contents. 4198 // 4199 // The prefix must comply with Amazon S3 key naming rules and restrictions. 4200 // For more information, see Object Key and Metadata (https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMetadata.html) 4201 // in the Amazon S3 Developer Guide. 4202 // 4203 // The following are examples of valid Prefix values: 4204 // 4205 // * JournalExports-ForMyLedger/Testing/ 4206 // 4207 // * JournalExports 4208 // 4209 // * My:Tests/ 4210 // 4211 // Prefix is a required field 4212 Prefix *string `type:"string" required:"true"` 4213} 4214 4215// String returns the string representation 4216func (s S3ExportConfiguration) String() string { 4217 return awsutil.Prettify(s) 4218} 4219 4220// GoString returns the string representation 4221func (s S3ExportConfiguration) GoString() string { 4222 return s.String() 4223} 4224 4225// Validate inspects the fields of the type to determine if they are valid. 4226func (s *S3ExportConfiguration) Validate() error { 4227 invalidParams := request.ErrInvalidParams{Context: "S3ExportConfiguration"} 4228 if s.Bucket == nil { 4229 invalidParams.Add(request.NewErrParamRequired("Bucket")) 4230 } 4231 if s.Bucket != nil && len(*s.Bucket) < 3 { 4232 invalidParams.Add(request.NewErrParamMinLen("Bucket", 3)) 4233 } 4234 if s.EncryptionConfiguration == nil { 4235 invalidParams.Add(request.NewErrParamRequired("EncryptionConfiguration")) 4236 } 4237 if s.Prefix == nil { 4238 invalidParams.Add(request.NewErrParamRequired("Prefix")) 4239 } 4240 if s.EncryptionConfiguration != nil { 4241 if err := s.EncryptionConfiguration.Validate(); err != nil { 4242 invalidParams.AddNested("EncryptionConfiguration", err.(request.ErrInvalidParams)) 4243 } 4244 } 4245 4246 if invalidParams.Len() > 0 { 4247 return invalidParams 4248 } 4249 return nil 4250} 4251 4252// SetBucket sets the Bucket field's value. 4253func (s *S3ExportConfiguration) SetBucket(v string) *S3ExportConfiguration { 4254 s.Bucket = &v 4255 return s 4256} 4257 4258// SetEncryptionConfiguration sets the EncryptionConfiguration field's value. 4259func (s *S3ExportConfiguration) SetEncryptionConfiguration(v *S3EncryptionConfiguration) *S3ExportConfiguration { 4260 s.EncryptionConfiguration = v 4261 return s 4262} 4263 4264// SetPrefix sets the Prefix field's value. 4265func (s *S3ExportConfiguration) SetPrefix(v string) *S3ExportConfiguration { 4266 s.Prefix = &v 4267 return s 4268} 4269 4270type StreamJournalToKinesisInput struct { 4271 _ struct{} `type:"structure"` 4272 4273 // The exclusive date and time that specifies when the stream ends. If you keep 4274 // this parameter blank, the stream runs indefinitely until you cancel it. 4275 // 4276 // The ExclusiveEndTime must be in ISO 8601 date and time format and in Universal 4277 // Coordinated Time (UTC). For example: 2019-06-13T21:36:34Z 4278 ExclusiveEndTime *time.Time `type:"timestamp"` 4279 4280 // The inclusive start date and time from which to start streaming journal data. 4281 // This parameter must be in ISO 8601 date and time format and in Universal 4282 // Coordinated Time (UTC). For example: 2019-06-13T21:36:34Z 4283 // 4284 // The InclusiveStartTime cannot be in the future and must be before ExclusiveEndTime. 4285 // 4286 // If you provide an InclusiveStartTime that is before the ledger's CreationDateTime, 4287 // QLDB effectively defaults it to the ledger's CreationDateTime. 4288 // 4289 // InclusiveStartTime is a required field 4290 InclusiveStartTime *time.Time `type:"timestamp" required:"true"` 4291 4292 // The configuration settings of the Kinesis Data Streams destination for your 4293 // stream request. 4294 // 4295 // KinesisConfiguration is a required field 4296 KinesisConfiguration *KinesisConfiguration `type:"structure" required:"true"` 4297 4298 // The name of the ledger. 4299 // 4300 // LedgerName is a required field 4301 LedgerName *string `location:"uri" locationName:"name" min:"1" type:"string" required:"true"` 4302 4303 // The Amazon Resource Name (ARN) of the IAM role that grants QLDB permissions 4304 // for a journal stream to write data records to a Kinesis Data Streams resource. 4305 // 4306 // RoleArn is a required field 4307 RoleArn *string `min:"20" type:"string" required:"true"` 4308 4309 // The name that you want to assign to the QLDB journal stream. User-defined 4310 // names can help identify and indicate the purpose of a stream. 4311 // 4312 // Your stream name must be unique among other active streams for a given ledger. 4313 // If you try to create a stream with the same name and configuration of an 4314 // active, existing stream for the same ledger, QLDB simply returns the existing 4315 // stream. Stream names have the same naming constraints as ledger names, as 4316 // defined in Quotas in Amazon QLDB (https://docs.aws.amazon.com/qldb/latest/developerguide/limits.html#limits.naming) 4317 // in the Amazon QLDB Developer Guide. 4318 // 4319 // StreamName is a required field 4320 StreamName *string `min:"1" type:"string" required:"true"` 4321 4322 // The key-value pairs to add as tags to the stream that you want to create. 4323 // Tag keys are case sensitive. Tag values are case sensitive and can be null. 4324 Tags map[string]*string `type:"map"` 4325} 4326 4327// String returns the string representation 4328func (s StreamJournalToKinesisInput) String() string { 4329 return awsutil.Prettify(s) 4330} 4331 4332// GoString returns the string representation 4333func (s StreamJournalToKinesisInput) GoString() string { 4334 return s.String() 4335} 4336 4337// Validate inspects the fields of the type to determine if they are valid. 4338func (s *StreamJournalToKinesisInput) Validate() error { 4339 invalidParams := request.ErrInvalidParams{Context: "StreamJournalToKinesisInput"} 4340 if s.InclusiveStartTime == nil { 4341 invalidParams.Add(request.NewErrParamRequired("InclusiveStartTime")) 4342 } 4343 if s.KinesisConfiguration == nil { 4344 invalidParams.Add(request.NewErrParamRequired("KinesisConfiguration")) 4345 } 4346 if s.LedgerName == nil { 4347 invalidParams.Add(request.NewErrParamRequired("LedgerName")) 4348 } 4349 if s.LedgerName != nil && len(*s.LedgerName) < 1 { 4350 invalidParams.Add(request.NewErrParamMinLen("LedgerName", 1)) 4351 } 4352 if s.RoleArn == nil { 4353 invalidParams.Add(request.NewErrParamRequired("RoleArn")) 4354 } 4355 if s.RoleArn != nil && len(*s.RoleArn) < 20 { 4356 invalidParams.Add(request.NewErrParamMinLen("RoleArn", 20)) 4357 } 4358 if s.StreamName == nil { 4359 invalidParams.Add(request.NewErrParamRequired("StreamName")) 4360 } 4361 if s.StreamName != nil && len(*s.StreamName) < 1 { 4362 invalidParams.Add(request.NewErrParamMinLen("StreamName", 1)) 4363 } 4364 if s.KinesisConfiguration != nil { 4365 if err := s.KinesisConfiguration.Validate(); err != nil { 4366 invalidParams.AddNested("KinesisConfiguration", err.(request.ErrInvalidParams)) 4367 } 4368 } 4369 4370 if invalidParams.Len() > 0 { 4371 return invalidParams 4372 } 4373 return nil 4374} 4375 4376// SetExclusiveEndTime sets the ExclusiveEndTime field's value. 4377func (s *StreamJournalToKinesisInput) SetExclusiveEndTime(v time.Time) *StreamJournalToKinesisInput { 4378 s.ExclusiveEndTime = &v 4379 return s 4380} 4381 4382// SetInclusiveStartTime sets the InclusiveStartTime field's value. 4383func (s *StreamJournalToKinesisInput) SetInclusiveStartTime(v time.Time) *StreamJournalToKinesisInput { 4384 s.InclusiveStartTime = &v 4385 return s 4386} 4387 4388// SetKinesisConfiguration sets the KinesisConfiguration field's value. 4389func (s *StreamJournalToKinesisInput) SetKinesisConfiguration(v *KinesisConfiguration) *StreamJournalToKinesisInput { 4390 s.KinesisConfiguration = v 4391 return s 4392} 4393 4394// SetLedgerName sets the LedgerName field's value. 4395func (s *StreamJournalToKinesisInput) SetLedgerName(v string) *StreamJournalToKinesisInput { 4396 s.LedgerName = &v 4397 return s 4398} 4399 4400// SetRoleArn sets the RoleArn field's value. 4401func (s *StreamJournalToKinesisInput) SetRoleArn(v string) *StreamJournalToKinesisInput { 4402 s.RoleArn = &v 4403 return s 4404} 4405 4406// SetStreamName sets the StreamName field's value. 4407func (s *StreamJournalToKinesisInput) SetStreamName(v string) *StreamJournalToKinesisInput { 4408 s.StreamName = &v 4409 return s 4410} 4411 4412// SetTags sets the Tags field's value. 4413func (s *StreamJournalToKinesisInput) SetTags(v map[string]*string) *StreamJournalToKinesisInput { 4414 s.Tags = v 4415 return s 4416} 4417 4418type StreamJournalToKinesisOutput struct { 4419 _ struct{} `type:"structure"` 4420 4421 // The unique ID that QLDB assigns to each QLDB journal stream. 4422 StreamId *string `min:"22" type:"string"` 4423} 4424 4425// String returns the string representation 4426func (s StreamJournalToKinesisOutput) String() string { 4427 return awsutil.Prettify(s) 4428} 4429 4430// GoString returns the string representation 4431func (s StreamJournalToKinesisOutput) GoString() string { 4432 return s.String() 4433} 4434 4435// SetStreamId sets the StreamId field's value. 4436func (s *StreamJournalToKinesisOutput) SetStreamId(v string) *StreamJournalToKinesisOutput { 4437 s.StreamId = &v 4438 return s 4439} 4440 4441type TagResourceInput struct { 4442 _ struct{} `type:"structure"` 4443 4444 // The Amazon Resource Name (ARN) to which you want to add the tags. For example: 4445 // 4446 // arn:aws:qldb:us-east-1:123456789012:ledger/exampleLedger 4447 // 4448 // ResourceArn is a required field 4449 ResourceArn *string `location:"uri" locationName:"resourceArn" min:"20" type:"string" required:"true"` 4450 4451 // The key-value pairs to add as tags to the specified QLDB resource. Tag keys 4452 // are case sensitive. If you specify a key that already exists for the resource, 4453 // your request fails and returns an error. Tag values are case sensitive and 4454 // can be null. 4455 // 4456 // Tags is a required field 4457 Tags map[string]*string `type:"map" required:"true"` 4458} 4459 4460// String returns the string representation 4461func (s TagResourceInput) String() string { 4462 return awsutil.Prettify(s) 4463} 4464 4465// GoString returns the string representation 4466func (s TagResourceInput) GoString() string { 4467 return s.String() 4468} 4469 4470// Validate inspects the fields of the type to determine if they are valid. 4471func (s *TagResourceInput) Validate() error { 4472 invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"} 4473 if s.ResourceArn == nil { 4474 invalidParams.Add(request.NewErrParamRequired("ResourceArn")) 4475 } 4476 if s.ResourceArn != nil && len(*s.ResourceArn) < 20 { 4477 invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 20)) 4478 } 4479 if s.Tags == nil { 4480 invalidParams.Add(request.NewErrParamRequired("Tags")) 4481 } 4482 4483 if invalidParams.Len() > 0 { 4484 return invalidParams 4485 } 4486 return nil 4487} 4488 4489// SetResourceArn sets the ResourceArn field's value. 4490func (s *TagResourceInput) SetResourceArn(v string) *TagResourceInput { 4491 s.ResourceArn = &v 4492 return s 4493} 4494 4495// SetTags sets the Tags field's value. 4496func (s *TagResourceInput) SetTags(v map[string]*string) *TagResourceInput { 4497 s.Tags = v 4498 return s 4499} 4500 4501type TagResourceOutput struct { 4502 _ struct{} `type:"structure"` 4503} 4504 4505// String returns the string representation 4506func (s TagResourceOutput) String() string { 4507 return awsutil.Prettify(s) 4508} 4509 4510// GoString returns the string representation 4511func (s TagResourceOutput) GoString() string { 4512 return s.String() 4513} 4514 4515type UntagResourceInput struct { 4516 _ struct{} `type:"structure"` 4517 4518 // The Amazon Resource Name (ARN) from which you want to remove the tags. For 4519 // example: 4520 // 4521 // arn:aws:qldb:us-east-1:123456789012:ledger/exampleLedger 4522 // 4523 // ResourceArn is a required field 4524 ResourceArn *string `location:"uri" locationName:"resourceArn" min:"20" type:"string" required:"true"` 4525 4526 // The list of tag keys that you want to remove. 4527 // 4528 // TagKeys is a required field 4529 TagKeys []*string `location:"querystring" locationName:"tagKeys" type:"list" required:"true"` 4530} 4531 4532// String returns the string representation 4533func (s UntagResourceInput) String() string { 4534 return awsutil.Prettify(s) 4535} 4536 4537// GoString returns the string representation 4538func (s UntagResourceInput) GoString() string { 4539 return s.String() 4540} 4541 4542// Validate inspects the fields of the type to determine if they are valid. 4543func (s *UntagResourceInput) Validate() error { 4544 invalidParams := request.ErrInvalidParams{Context: "UntagResourceInput"} 4545 if s.ResourceArn == nil { 4546 invalidParams.Add(request.NewErrParamRequired("ResourceArn")) 4547 } 4548 if s.ResourceArn != nil && len(*s.ResourceArn) < 20 { 4549 invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 20)) 4550 } 4551 if s.TagKeys == nil { 4552 invalidParams.Add(request.NewErrParamRequired("TagKeys")) 4553 } 4554 4555 if invalidParams.Len() > 0 { 4556 return invalidParams 4557 } 4558 return nil 4559} 4560 4561// SetResourceArn sets the ResourceArn field's value. 4562func (s *UntagResourceInput) SetResourceArn(v string) *UntagResourceInput { 4563 s.ResourceArn = &v 4564 return s 4565} 4566 4567// SetTagKeys sets the TagKeys field's value. 4568func (s *UntagResourceInput) SetTagKeys(v []*string) *UntagResourceInput { 4569 s.TagKeys = v 4570 return s 4571} 4572 4573type UntagResourceOutput struct { 4574 _ struct{} `type:"structure"` 4575} 4576 4577// String returns the string representation 4578func (s UntagResourceOutput) String() string { 4579 return awsutil.Prettify(s) 4580} 4581 4582// GoString returns the string representation 4583func (s UntagResourceOutput) GoString() string { 4584 return s.String() 4585} 4586 4587type UpdateLedgerInput struct { 4588 _ struct{} `type:"structure"` 4589 4590 // The flag that prevents a ledger from being deleted by any user. If not provided 4591 // on ledger creation, this feature is enabled (true) by default. 4592 // 4593 // If deletion protection is enabled, you must first disable it before you can 4594 // delete the ledger using the QLDB API or the AWS Command Line Interface (AWS 4595 // CLI). You can disable it by calling the UpdateLedger operation to set the 4596 // flag to false. The QLDB console disables deletion protection for you when 4597 // you use it to delete a ledger. 4598 DeletionProtection *bool `type:"boolean"` 4599 4600 // The name of the ledger. 4601 // 4602 // Name is a required field 4603 Name *string `location:"uri" locationName:"name" min:"1" type:"string" required:"true"` 4604} 4605 4606// String returns the string representation 4607func (s UpdateLedgerInput) String() string { 4608 return awsutil.Prettify(s) 4609} 4610 4611// GoString returns the string representation 4612func (s UpdateLedgerInput) GoString() string { 4613 return s.String() 4614} 4615 4616// Validate inspects the fields of the type to determine if they are valid. 4617func (s *UpdateLedgerInput) Validate() error { 4618 invalidParams := request.ErrInvalidParams{Context: "UpdateLedgerInput"} 4619 if s.Name == nil { 4620 invalidParams.Add(request.NewErrParamRequired("Name")) 4621 } 4622 if s.Name != nil && len(*s.Name) < 1 { 4623 invalidParams.Add(request.NewErrParamMinLen("Name", 1)) 4624 } 4625 4626 if invalidParams.Len() > 0 { 4627 return invalidParams 4628 } 4629 return nil 4630} 4631 4632// SetDeletionProtection sets the DeletionProtection field's value. 4633func (s *UpdateLedgerInput) SetDeletionProtection(v bool) *UpdateLedgerInput { 4634 s.DeletionProtection = &v 4635 return s 4636} 4637 4638// SetName sets the Name field's value. 4639func (s *UpdateLedgerInput) SetName(v string) *UpdateLedgerInput { 4640 s.Name = &v 4641 return s 4642} 4643 4644type UpdateLedgerOutput struct { 4645 _ struct{} `type:"structure"` 4646 4647 // The Amazon Resource Name (ARN) for the ledger. 4648 Arn *string `min:"20" type:"string"` 4649 4650 // The date and time, in epoch time format, when the ledger was created. (Epoch 4651 // time format is the number of seconds elapsed since 12:00:00 AM January 1, 4652 // 1970 UTC.) 4653 CreationDateTime *time.Time `type:"timestamp"` 4654 4655 // The flag that prevents a ledger from being deleted by any user. If not provided 4656 // on ledger creation, this feature is enabled (true) by default. 4657 // 4658 // If deletion protection is enabled, you must first disable it before you can 4659 // delete the ledger using the QLDB API or the AWS Command Line Interface (AWS 4660 // CLI). You can disable it by calling the UpdateLedger operation to set the 4661 // flag to false. The QLDB console disables deletion protection for you when 4662 // you use it to delete a ledger. 4663 DeletionProtection *bool `type:"boolean"` 4664 4665 // The name of the ledger. 4666 Name *string `min:"1" type:"string"` 4667 4668 // The current status of the ledger. 4669 State *string `type:"string" enum:"LedgerState"` 4670} 4671 4672// String returns the string representation 4673func (s UpdateLedgerOutput) String() string { 4674 return awsutil.Prettify(s) 4675} 4676 4677// GoString returns the string representation 4678func (s UpdateLedgerOutput) GoString() string { 4679 return s.String() 4680} 4681 4682// SetArn sets the Arn field's value. 4683func (s *UpdateLedgerOutput) SetArn(v string) *UpdateLedgerOutput { 4684 s.Arn = &v 4685 return s 4686} 4687 4688// SetCreationDateTime sets the CreationDateTime field's value. 4689func (s *UpdateLedgerOutput) SetCreationDateTime(v time.Time) *UpdateLedgerOutput { 4690 s.CreationDateTime = &v 4691 return s 4692} 4693 4694// SetDeletionProtection sets the DeletionProtection field's value. 4695func (s *UpdateLedgerOutput) SetDeletionProtection(v bool) *UpdateLedgerOutput { 4696 s.DeletionProtection = &v 4697 return s 4698} 4699 4700// SetName sets the Name field's value. 4701func (s *UpdateLedgerOutput) SetName(v string) *UpdateLedgerOutput { 4702 s.Name = &v 4703 return s 4704} 4705 4706// SetState sets the State field's value. 4707func (s *UpdateLedgerOutput) SetState(v string) *UpdateLedgerOutput { 4708 s.State = &v 4709 return s 4710} 4711 4712// A structure that can contain an Amazon Ion value in multiple encoding formats. 4713type ValueHolder struct { 4714 _ struct{} `type:"structure" sensitive:"true"` 4715 4716 // An Amazon Ion plaintext value contained in a ValueHolder structure. 4717 IonText *string `min:"1" type:"string" sensitive:"true"` 4718} 4719 4720// String returns the string representation 4721func (s ValueHolder) String() string { 4722 return awsutil.Prettify(s) 4723} 4724 4725// GoString returns the string representation 4726func (s ValueHolder) GoString() string { 4727 return s.String() 4728} 4729 4730// Validate inspects the fields of the type to determine if they are valid. 4731func (s *ValueHolder) Validate() error { 4732 invalidParams := request.ErrInvalidParams{Context: "ValueHolder"} 4733 if s.IonText != nil && len(*s.IonText) < 1 { 4734 invalidParams.Add(request.NewErrParamMinLen("IonText", 1)) 4735 } 4736 4737 if invalidParams.Len() > 0 { 4738 return invalidParams 4739 } 4740 return nil 4741} 4742 4743// SetIonText sets the IonText field's value. 4744func (s *ValueHolder) SetIonText(v string) *ValueHolder { 4745 s.IonText = &v 4746 return s 4747} 4748 4749const ( 4750 // ErrorCauseKinesisStreamNotFound is a ErrorCause enum value 4751 ErrorCauseKinesisStreamNotFound = "KINESIS_STREAM_NOT_FOUND" 4752 4753 // ErrorCauseIamPermissionRevoked is a ErrorCause enum value 4754 ErrorCauseIamPermissionRevoked = "IAM_PERMISSION_REVOKED" 4755) 4756 4757const ( 4758 // ExportStatusInProgress is a ExportStatus enum value 4759 ExportStatusInProgress = "IN_PROGRESS" 4760 4761 // ExportStatusCompleted is a ExportStatus enum value 4762 ExportStatusCompleted = "COMPLETED" 4763 4764 // ExportStatusCancelled is a ExportStatus enum value 4765 ExportStatusCancelled = "CANCELLED" 4766) 4767 4768const ( 4769 // LedgerStateCreating is a LedgerState enum value 4770 LedgerStateCreating = "CREATING" 4771 4772 // LedgerStateActive is a LedgerState enum value 4773 LedgerStateActive = "ACTIVE" 4774 4775 // LedgerStateDeleting is a LedgerState enum value 4776 LedgerStateDeleting = "DELETING" 4777 4778 // LedgerStateDeleted is a LedgerState enum value 4779 LedgerStateDeleted = "DELETED" 4780) 4781 4782const ( 4783 // PermissionsModeAllowAll is a PermissionsMode enum value 4784 PermissionsModeAllowAll = "ALLOW_ALL" 4785) 4786 4787const ( 4788 // S3ObjectEncryptionTypeSseKms is a S3ObjectEncryptionType enum value 4789 S3ObjectEncryptionTypeSseKms = "SSE_KMS" 4790 4791 // S3ObjectEncryptionTypeSseS3 is a S3ObjectEncryptionType enum value 4792 S3ObjectEncryptionTypeSseS3 = "SSE_S3" 4793 4794 // S3ObjectEncryptionTypeNoEncryption is a S3ObjectEncryptionType enum value 4795 S3ObjectEncryptionTypeNoEncryption = "NO_ENCRYPTION" 4796) 4797 4798const ( 4799 // StreamStatusActive is a StreamStatus enum value 4800 StreamStatusActive = "ACTIVE" 4801 4802 // StreamStatusCompleted is a StreamStatus enum value 4803 StreamStatusCompleted = "COMPLETED" 4804 4805 // StreamStatusCanceled is a StreamStatus enum value 4806 StreamStatusCanceled = "CANCELED" 4807 4808 // StreamStatusFailed is a StreamStatus enum value 4809 StreamStatusFailed = "FAILED" 4810 4811 // StreamStatusImpaired is a StreamStatus enum value 4812 StreamStatusImpaired = "IMPAIRED" 4813) 4814