1// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. 2 3package iotjobsdataplane 4 5import ( 6 "fmt" 7 8 "github.com/aws/aws-sdk-go/aws" 9 "github.com/aws/aws-sdk-go/aws/awsutil" 10 "github.com/aws/aws-sdk-go/aws/request" 11 "github.com/aws/aws-sdk-go/private/protocol" 12) 13 14const opDescribeJobExecution = "DescribeJobExecution" 15 16// DescribeJobExecutionRequest generates a "aws/request.Request" representing the 17// client's request for the DescribeJobExecution operation. The "output" return 18// value will be populated with the request's response once the request completes 19// successfully. 20// 21// Use "Send" method on the returned Request to send the API call to the service. 22// the "output" return value is not valid until after Send returns without error. 23// 24// See DescribeJobExecution for more information on using the DescribeJobExecution 25// API call, and error handling. 26// 27// This method is useful when you want to inject custom logic or configuration 28// into the SDK's request lifecycle. Such as custom headers, or retry logic. 29// 30// 31// // Example sending a request using the DescribeJobExecutionRequest method. 32// req, resp := client.DescribeJobExecutionRequest(params) 33// 34// err := req.Send() 35// if err == nil { // resp is now filled 36// fmt.Println(resp) 37// } 38// 39// See also, https://docs.aws.amazon.com/goto/WebAPI/iot-jobs-data-2017-09-29/DescribeJobExecution 40func (c *IoTJobsDataPlane) DescribeJobExecutionRequest(input *DescribeJobExecutionInput) (req *request.Request, output *DescribeJobExecutionOutput) { 41 op := &request.Operation{ 42 Name: opDescribeJobExecution, 43 HTTPMethod: "GET", 44 HTTPPath: "/things/{thingName}/jobs/{jobId}", 45 } 46 47 if input == nil { 48 input = &DescribeJobExecutionInput{} 49 } 50 51 output = &DescribeJobExecutionOutput{} 52 req = c.newRequest(op, input, output) 53 return 54} 55 56// DescribeJobExecution API operation for AWS IoT Jobs Data Plane. 57// 58// Gets details of a job execution. 59// 60// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 61// with awserr.Error's Code and Message methods to get detailed information about 62// the error. 63// 64// See the AWS API reference guide for AWS IoT Jobs Data Plane's 65// API operation DescribeJobExecution for usage and error information. 66// 67// Returned Error Types: 68// * InvalidRequestException 69// The contents of the request were invalid. For example, this code is returned 70// when an UpdateJobExecution request contains invalid status details. The message 71// contains details about the error. 72// 73// * ResourceNotFoundException 74// The specified resource does not exist. 75// 76// * ThrottlingException 77// The rate exceeds the limit. 78// 79// * ServiceUnavailableException 80// The service is temporarily unavailable. 81// 82// * CertificateValidationException 83// The certificate is invalid. 84// 85// * TerminalStateException 86// The job is in a terminal state. 87// 88// See also, https://docs.aws.amazon.com/goto/WebAPI/iot-jobs-data-2017-09-29/DescribeJobExecution 89func (c *IoTJobsDataPlane) DescribeJobExecution(input *DescribeJobExecutionInput) (*DescribeJobExecutionOutput, error) { 90 req, out := c.DescribeJobExecutionRequest(input) 91 return out, req.Send() 92} 93 94// DescribeJobExecutionWithContext is the same as DescribeJobExecution with the addition of 95// the ability to pass a context and additional request options. 96// 97// See DescribeJobExecution for details on how to use this API operation. 98// 99// The context must be non-nil and will be used for request cancellation. If 100// the context is nil a panic will occur. In the future the SDK may create 101// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 102// for more information on using Contexts. 103func (c *IoTJobsDataPlane) DescribeJobExecutionWithContext(ctx aws.Context, input *DescribeJobExecutionInput, opts ...request.Option) (*DescribeJobExecutionOutput, error) { 104 req, out := c.DescribeJobExecutionRequest(input) 105 req.SetContext(ctx) 106 req.ApplyOptions(opts...) 107 return out, req.Send() 108} 109 110const opGetPendingJobExecutions = "GetPendingJobExecutions" 111 112// GetPendingJobExecutionsRequest generates a "aws/request.Request" representing the 113// client's request for the GetPendingJobExecutions operation. The "output" return 114// value will be populated with the request's response once the request completes 115// successfully. 116// 117// Use "Send" method on the returned Request to send the API call to the service. 118// the "output" return value is not valid until after Send returns without error. 119// 120// See GetPendingJobExecutions for more information on using the GetPendingJobExecutions 121// API call, and error handling. 122// 123// This method is useful when you want to inject custom logic or configuration 124// into the SDK's request lifecycle. Such as custom headers, or retry logic. 125// 126// 127// // Example sending a request using the GetPendingJobExecutionsRequest method. 128// req, resp := client.GetPendingJobExecutionsRequest(params) 129// 130// err := req.Send() 131// if err == nil { // resp is now filled 132// fmt.Println(resp) 133// } 134// 135// See also, https://docs.aws.amazon.com/goto/WebAPI/iot-jobs-data-2017-09-29/GetPendingJobExecutions 136func (c *IoTJobsDataPlane) GetPendingJobExecutionsRequest(input *GetPendingJobExecutionsInput) (req *request.Request, output *GetPendingJobExecutionsOutput) { 137 op := &request.Operation{ 138 Name: opGetPendingJobExecutions, 139 HTTPMethod: "GET", 140 HTTPPath: "/things/{thingName}/jobs", 141 } 142 143 if input == nil { 144 input = &GetPendingJobExecutionsInput{} 145 } 146 147 output = &GetPendingJobExecutionsOutput{} 148 req = c.newRequest(op, input, output) 149 return 150} 151 152// GetPendingJobExecutions API operation for AWS IoT Jobs Data Plane. 153// 154// Gets the list of all jobs for a thing that are not in a terminal status. 155// 156// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 157// with awserr.Error's Code and Message methods to get detailed information about 158// the error. 159// 160// See the AWS API reference guide for AWS IoT Jobs Data Plane's 161// API operation GetPendingJobExecutions for usage and error information. 162// 163// Returned Error Types: 164// * InvalidRequestException 165// The contents of the request were invalid. For example, this code is returned 166// when an UpdateJobExecution request contains invalid status details. The message 167// contains details about the error. 168// 169// * ResourceNotFoundException 170// The specified resource does not exist. 171// 172// * ThrottlingException 173// The rate exceeds the limit. 174// 175// * ServiceUnavailableException 176// The service is temporarily unavailable. 177// 178// * CertificateValidationException 179// The certificate is invalid. 180// 181// See also, https://docs.aws.amazon.com/goto/WebAPI/iot-jobs-data-2017-09-29/GetPendingJobExecutions 182func (c *IoTJobsDataPlane) GetPendingJobExecutions(input *GetPendingJobExecutionsInput) (*GetPendingJobExecutionsOutput, error) { 183 req, out := c.GetPendingJobExecutionsRequest(input) 184 return out, req.Send() 185} 186 187// GetPendingJobExecutionsWithContext is the same as GetPendingJobExecutions with the addition of 188// the ability to pass a context and additional request options. 189// 190// See GetPendingJobExecutions for details on how to use this API operation. 191// 192// The context must be non-nil and will be used for request cancellation. If 193// the context is nil a panic will occur. In the future the SDK may create 194// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 195// for more information on using Contexts. 196func (c *IoTJobsDataPlane) GetPendingJobExecutionsWithContext(ctx aws.Context, input *GetPendingJobExecutionsInput, opts ...request.Option) (*GetPendingJobExecutionsOutput, error) { 197 req, out := c.GetPendingJobExecutionsRequest(input) 198 req.SetContext(ctx) 199 req.ApplyOptions(opts...) 200 return out, req.Send() 201} 202 203const opStartNextPendingJobExecution = "StartNextPendingJobExecution" 204 205// StartNextPendingJobExecutionRequest generates a "aws/request.Request" representing the 206// client's request for the StartNextPendingJobExecution operation. The "output" return 207// value will be populated with the request's response once the request completes 208// successfully. 209// 210// Use "Send" method on the returned Request to send the API call to the service. 211// the "output" return value is not valid until after Send returns without error. 212// 213// See StartNextPendingJobExecution for more information on using the StartNextPendingJobExecution 214// API call, and error handling. 215// 216// This method is useful when you want to inject custom logic or configuration 217// into the SDK's request lifecycle. Such as custom headers, or retry logic. 218// 219// 220// // Example sending a request using the StartNextPendingJobExecutionRequest method. 221// req, resp := client.StartNextPendingJobExecutionRequest(params) 222// 223// err := req.Send() 224// if err == nil { // resp is now filled 225// fmt.Println(resp) 226// } 227// 228// See also, https://docs.aws.amazon.com/goto/WebAPI/iot-jobs-data-2017-09-29/StartNextPendingJobExecution 229func (c *IoTJobsDataPlane) StartNextPendingJobExecutionRequest(input *StartNextPendingJobExecutionInput) (req *request.Request, output *StartNextPendingJobExecutionOutput) { 230 op := &request.Operation{ 231 Name: opStartNextPendingJobExecution, 232 HTTPMethod: "PUT", 233 HTTPPath: "/things/{thingName}/jobs/$next", 234 } 235 236 if input == nil { 237 input = &StartNextPendingJobExecutionInput{} 238 } 239 240 output = &StartNextPendingJobExecutionOutput{} 241 req = c.newRequest(op, input, output) 242 return 243} 244 245// StartNextPendingJobExecution API operation for AWS IoT Jobs Data Plane. 246// 247// Gets and starts the next pending (status IN_PROGRESS or QUEUED) job execution 248// for a thing. 249// 250// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 251// with awserr.Error's Code and Message methods to get detailed information about 252// the error. 253// 254// See the AWS API reference guide for AWS IoT Jobs Data Plane's 255// API operation StartNextPendingJobExecution for usage and error information. 256// 257// Returned Error Types: 258// * InvalidRequestException 259// The contents of the request were invalid. For example, this code is returned 260// when an UpdateJobExecution request contains invalid status details. The message 261// contains details about the error. 262// 263// * ResourceNotFoundException 264// The specified resource does not exist. 265// 266// * ThrottlingException 267// The rate exceeds the limit. 268// 269// * ServiceUnavailableException 270// The service is temporarily unavailable. 271// 272// * CertificateValidationException 273// The certificate is invalid. 274// 275// See also, https://docs.aws.amazon.com/goto/WebAPI/iot-jobs-data-2017-09-29/StartNextPendingJobExecution 276func (c *IoTJobsDataPlane) StartNextPendingJobExecution(input *StartNextPendingJobExecutionInput) (*StartNextPendingJobExecutionOutput, error) { 277 req, out := c.StartNextPendingJobExecutionRequest(input) 278 return out, req.Send() 279} 280 281// StartNextPendingJobExecutionWithContext is the same as StartNextPendingJobExecution with the addition of 282// the ability to pass a context and additional request options. 283// 284// See StartNextPendingJobExecution for details on how to use this API operation. 285// 286// The context must be non-nil and will be used for request cancellation. If 287// the context is nil a panic will occur. In the future the SDK may create 288// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 289// for more information on using Contexts. 290func (c *IoTJobsDataPlane) StartNextPendingJobExecutionWithContext(ctx aws.Context, input *StartNextPendingJobExecutionInput, opts ...request.Option) (*StartNextPendingJobExecutionOutput, error) { 291 req, out := c.StartNextPendingJobExecutionRequest(input) 292 req.SetContext(ctx) 293 req.ApplyOptions(opts...) 294 return out, req.Send() 295} 296 297const opUpdateJobExecution = "UpdateJobExecution" 298 299// UpdateJobExecutionRequest generates a "aws/request.Request" representing the 300// client's request for the UpdateJobExecution operation. The "output" return 301// value will be populated with the request's response once the request completes 302// successfully. 303// 304// Use "Send" method on the returned Request to send the API call to the service. 305// the "output" return value is not valid until after Send returns without error. 306// 307// See UpdateJobExecution for more information on using the UpdateJobExecution 308// API call, and error handling. 309// 310// This method is useful when you want to inject custom logic or configuration 311// into the SDK's request lifecycle. Such as custom headers, or retry logic. 312// 313// 314// // Example sending a request using the UpdateJobExecutionRequest method. 315// req, resp := client.UpdateJobExecutionRequest(params) 316// 317// err := req.Send() 318// if err == nil { // resp is now filled 319// fmt.Println(resp) 320// } 321// 322// See also, https://docs.aws.amazon.com/goto/WebAPI/iot-jobs-data-2017-09-29/UpdateJobExecution 323func (c *IoTJobsDataPlane) UpdateJobExecutionRequest(input *UpdateJobExecutionInput) (req *request.Request, output *UpdateJobExecutionOutput) { 324 op := &request.Operation{ 325 Name: opUpdateJobExecution, 326 HTTPMethod: "POST", 327 HTTPPath: "/things/{thingName}/jobs/{jobId}", 328 } 329 330 if input == nil { 331 input = &UpdateJobExecutionInput{} 332 } 333 334 output = &UpdateJobExecutionOutput{} 335 req = c.newRequest(op, input, output) 336 return 337} 338 339// UpdateJobExecution API operation for AWS IoT Jobs Data Plane. 340// 341// Updates the status of a job execution. 342// 343// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 344// with awserr.Error's Code and Message methods to get detailed information about 345// the error. 346// 347// See the AWS API reference guide for AWS IoT Jobs Data Plane's 348// API operation UpdateJobExecution for usage and error information. 349// 350// Returned Error Types: 351// * InvalidRequestException 352// The contents of the request were invalid. For example, this code is returned 353// when an UpdateJobExecution request contains invalid status details. The message 354// contains details about the error. 355// 356// * ResourceNotFoundException 357// The specified resource does not exist. 358// 359// * ThrottlingException 360// The rate exceeds the limit. 361// 362// * ServiceUnavailableException 363// The service is temporarily unavailable. 364// 365// * CertificateValidationException 366// The certificate is invalid. 367// 368// * InvalidStateTransitionException 369// An update attempted to change the job execution to a state that is invalid 370// because of the job execution's current state (for example, an attempt to 371// change a request in state SUCCESS to state IN_PROGRESS). In this case, the 372// body of the error message also contains the executionState field. 373// 374// See also, https://docs.aws.amazon.com/goto/WebAPI/iot-jobs-data-2017-09-29/UpdateJobExecution 375func (c *IoTJobsDataPlane) UpdateJobExecution(input *UpdateJobExecutionInput) (*UpdateJobExecutionOutput, error) { 376 req, out := c.UpdateJobExecutionRequest(input) 377 return out, req.Send() 378} 379 380// UpdateJobExecutionWithContext is the same as UpdateJobExecution with the addition of 381// the ability to pass a context and additional request options. 382// 383// See UpdateJobExecution for details on how to use this API operation. 384// 385// The context must be non-nil and will be used for request cancellation. If 386// the context is nil a panic will occur. In the future the SDK may create 387// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 388// for more information on using Contexts. 389func (c *IoTJobsDataPlane) UpdateJobExecutionWithContext(ctx aws.Context, input *UpdateJobExecutionInput, opts ...request.Option) (*UpdateJobExecutionOutput, error) { 390 req, out := c.UpdateJobExecutionRequest(input) 391 req.SetContext(ctx) 392 req.ApplyOptions(opts...) 393 return out, req.Send() 394} 395 396// The certificate is invalid. 397type CertificateValidationException struct { 398 _ struct{} `type:"structure"` 399 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 400 401 // Additional information about the exception. 402 Message_ *string `locationName:"message" type:"string"` 403} 404 405// String returns the string representation. 406// 407// API parameter values that are decorated as "sensitive" in the API will not 408// be included in the string output. The member name will be present, but the 409// value will be replaced with "sensitive". 410func (s CertificateValidationException) String() string { 411 return awsutil.Prettify(s) 412} 413 414// GoString returns the string representation. 415// 416// API parameter values that are decorated as "sensitive" in the API will not 417// be included in the string output. The member name will be present, but the 418// value will be replaced with "sensitive". 419func (s CertificateValidationException) GoString() string { 420 return s.String() 421} 422 423func newErrorCertificateValidationException(v protocol.ResponseMetadata) error { 424 return &CertificateValidationException{ 425 RespMetadata: v, 426 } 427} 428 429// Code returns the exception type name. 430func (s *CertificateValidationException) Code() string { 431 return "CertificateValidationException" 432} 433 434// Message returns the exception's message. 435func (s *CertificateValidationException) Message() string { 436 if s.Message_ != nil { 437 return *s.Message_ 438 } 439 return "" 440} 441 442// OrigErr always returns nil, satisfies awserr.Error interface. 443func (s *CertificateValidationException) OrigErr() error { 444 return nil 445} 446 447func (s *CertificateValidationException) Error() string { 448 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 449} 450 451// Status code returns the HTTP status code for the request's response error. 452func (s *CertificateValidationException) StatusCode() int { 453 return s.RespMetadata.StatusCode 454} 455 456// RequestID returns the service's response RequestID for request. 457func (s *CertificateValidationException) RequestID() string { 458 return s.RespMetadata.RequestID 459} 460 461type DescribeJobExecutionInput struct { 462 _ struct{} `type:"structure" nopayload:"true"` 463 464 // Optional. A number that identifies a particular job execution on a particular 465 // device. If not specified, the latest job execution is returned. 466 ExecutionNumber *int64 `location:"querystring" locationName:"executionNumber" type:"long"` 467 468 // Optional. When set to true, the response contains the job document. The default 469 // is false. 470 IncludeJobDocument *bool `location:"querystring" locationName:"includeJobDocument" type:"boolean"` 471 472 // The unique identifier assigned to this job when it was created. 473 // 474 // JobId is a required field 475 JobId *string `location:"uri" locationName:"jobId" type:"string" required:"true"` 476 477 // The thing name associated with the device the job execution is running on. 478 // 479 // ThingName is a required field 480 ThingName *string `location:"uri" locationName:"thingName" min:"1" type:"string" required:"true"` 481} 482 483// String returns the string representation. 484// 485// API parameter values that are decorated as "sensitive" in the API will not 486// be included in the string output. The member name will be present, but the 487// value will be replaced with "sensitive". 488func (s DescribeJobExecutionInput) String() string { 489 return awsutil.Prettify(s) 490} 491 492// GoString returns the string representation. 493// 494// API parameter values that are decorated as "sensitive" in the API will not 495// be included in the string output. The member name will be present, but the 496// value will be replaced with "sensitive". 497func (s DescribeJobExecutionInput) GoString() string { 498 return s.String() 499} 500 501// Validate inspects the fields of the type to determine if they are valid. 502func (s *DescribeJobExecutionInput) Validate() error { 503 invalidParams := request.ErrInvalidParams{Context: "DescribeJobExecutionInput"} 504 if s.JobId == nil { 505 invalidParams.Add(request.NewErrParamRequired("JobId")) 506 } 507 if s.JobId != nil && len(*s.JobId) < 1 { 508 invalidParams.Add(request.NewErrParamMinLen("JobId", 1)) 509 } 510 if s.ThingName == nil { 511 invalidParams.Add(request.NewErrParamRequired("ThingName")) 512 } 513 if s.ThingName != nil && len(*s.ThingName) < 1 { 514 invalidParams.Add(request.NewErrParamMinLen("ThingName", 1)) 515 } 516 517 if invalidParams.Len() > 0 { 518 return invalidParams 519 } 520 return nil 521} 522 523// SetExecutionNumber sets the ExecutionNumber field's value. 524func (s *DescribeJobExecutionInput) SetExecutionNumber(v int64) *DescribeJobExecutionInput { 525 s.ExecutionNumber = &v 526 return s 527} 528 529// SetIncludeJobDocument sets the IncludeJobDocument field's value. 530func (s *DescribeJobExecutionInput) SetIncludeJobDocument(v bool) *DescribeJobExecutionInput { 531 s.IncludeJobDocument = &v 532 return s 533} 534 535// SetJobId sets the JobId field's value. 536func (s *DescribeJobExecutionInput) SetJobId(v string) *DescribeJobExecutionInput { 537 s.JobId = &v 538 return s 539} 540 541// SetThingName sets the ThingName field's value. 542func (s *DescribeJobExecutionInput) SetThingName(v string) *DescribeJobExecutionInput { 543 s.ThingName = &v 544 return s 545} 546 547type DescribeJobExecutionOutput struct { 548 _ struct{} `type:"structure"` 549 550 // Contains data about a job execution. 551 Execution *JobExecution `locationName:"execution" type:"structure"` 552} 553 554// String returns the string representation. 555// 556// API parameter values that are decorated as "sensitive" in the API will not 557// be included in the string output. The member name will be present, but the 558// value will be replaced with "sensitive". 559func (s DescribeJobExecutionOutput) String() string { 560 return awsutil.Prettify(s) 561} 562 563// GoString returns the string representation. 564// 565// API parameter values that are decorated as "sensitive" in the API will not 566// be included in the string output. The member name will be present, but the 567// value will be replaced with "sensitive". 568func (s DescribeJobExecutionOutput) GoString() string { 569 return s.String() 570} 571 572// SetExecution sets the Execution field's value. 573func (s *DescribeJobExecutionOutput) SetExecution(v *JobExecution) *DescribeJobExecutionOutput { 574 s.Execution = v 575 return s 576} 577 578type GetPendingJobExecutionsInput struct { 579 _ struct{} `type:"structure" nopayload:"true"` 580 581 // The name of the thing that is executing the job. 582 // 583 // ThingName is a required field 584 ThingName *string `location:"uri" locationName:"thingName" min:"1" type:"string" required:"true"` 585} 586 587// String returns the string representation. 588// 589// API parameter values that are decorated as "sensitive" in the API will not 590// be included in the string output. The member name will be present, but the 591// value will be replaced with "sensitive". 592func (s GetPendingJobExecutionsInput) String() string { 593 return awsutil.Prettify(s) 594} 595 596// GoString returns the string representation. 597// 598// API parameter values that are decorated as "sensitive" in the API will not 599// be included in the string output. The member name will be present, but the 600// value will be replaced with "sensitive". 601func (s GetPendingJobExecutionsInput) GoString() string { 602 return s.String() 603} 604 605// Validate inspects the fields of the type to determine if they are valid. 606func (s *GetPendingJobExecutionsInput) Validate() error { 607 invalidParams := request.ErrInvalidParams{Context: "GetPendingJobExecutionsInput"} 608 if s.ThingName == nil { 609 invalidParams.Add(request.NewErrParamRequired("ThingName")) 610 } 611 if s.ThingName != nil && len(*s.ThingName) < 1 { 612 invalidParams.Add(request.NewErrParamMinLen("ThingName", 1)) 613 } 614 615 if invalidParams.Len() > 0 { 616 return invalidParams 617 } 618 return nil 619} 620 621// SetThingName sets the ThingName field's value. 622func (s *GetPendingJobExecutionsInput) SetThingName(v string) *GetPendingJobExecutionsInput { 623 s.ThingName = &v 624 return s 625} 626 627type GetPendingJobExecutionsOutput struct { 628 _ struct{} `type:"structure"` 629 630 // A list of JobExecutionSummary objects with status IN_PROGRESS. 631 InProgressJobs []*JobExecutionSummary `locationName:"inProgressJobs" type:"list"` 632 633 // A list of JobExecutionSummary objects with status QUEUED. 634 QueuedJobs []*JobExecutionSummary `locationName:"queuedJobs" type:"list"` 635} 636 637// String returns the string representation. 638// 639// API parameter values that are decorated as "sensitive" in the API will not 640// be included in the string output. The member name will be present, but the 641// value will be replaced with "sensitive". 642func (s GetPendingJobExecutionsOutput) String() string { 643 return awsutil.Prettify(s) 644} 645 646// GoString returns the string representation. 647// 648// API parameter values that are decorated as "sensitive" in the API will not 649// be included in the string output. The member name will be present, but the 650// value will be replaced with "sensitive". 651func (s GetPendingJobExecutionsOutput) GoString() string { 652 return s.String() 653} 654 655// SetInProgressJobs sets the InProgressJobs field's value. 656func (s *GetPendingJobExecutionsOutput) SetInProgressJobs(v []*JobExecutionSummary) *GetPendingJobExecutionsOutput { 657 s.InProgressJobs = v 658 return s 659} 660 661// SetQueuedJobs sets the QueuedJobs field's value. 662func (s *GetPendingJobExecutionsOutput) SetQueuedJobs(v []*JobExecutionSummary) *GetPendingJobExecutionsOutput { 663 s.QueuedJobs = v 664 return s 665} 666 667// The contents of the request were invalid. For example, this code is returned 668// when an UpdateJobExecution request contains invalid status details. The message 669// contains details about the error. 670type InvalidRequestException struct { 671 _ struct{} `type:"structure"` 672 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 673 674 // The message for the exception. 675 Message_ *string `locationName:"message" type:"string"` 676} 677 678// String returns the string representation. 679// 680// API parameter values that are decorated as "sensitive" in the API will not 681// be included in the string output. The member name will be present, but the 682// value will be replaced with "sensitive". 683func (s InvalidRequestException) String() string { 684 return awsutil.Prettify(s) 685} 686 687// GoString returns the string representation. 688// 689// API parameter values that are decorated as "sensitive" in the API will not 690// be included in the string output. The member name will be present, but the 691// value will be replaced with "sensitive". 692func (s InvalidRequestException) GoString() string { 693 return s.String() 694} 695 696func newErrorInvalidRequestException(v protocol.ResponseMetadata) error { 697 return &InvalidRequestException{ 698 RespMetadata: v, 699 } 700} 701 702// Code returns the exception type name. 703func (s *InvalidRequestException) Code() string { 704 return "InvalidRequestException" 705} 706 707// Message returns the exception's message. 708func (s *InvalidRequestException) Message() string { 709 if s.Message_ != nil { 710 return *s.Message_ 711 } 712 return "" 713} 714 715// OrigErr always returns nil, satisfies awserr.Error interface. 716func (s *InvalidRequestException) OrigErr() error { 717 return nil 718} 719 720func (s *InvalidRequestException) Error() string { 721 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 722} 723 724// Status code returns the HTTP status code for the request's response error. 725func (s *InvalidRequestException) StatusCode() int { 726 return s.RespMetadata.StatusCode 727} 728 729// RequestID returns the service's response RequestID for request. 730func (s *InvalidRequestException) RequestID() string { 731 return s.RespMetadata.RequestID 732} 733 734// An update attempted to change the job execution to a state that is invalid 735// because of the job execution's current state (for example, an attempt to 736// change a request in state SUCCESS to state IN_PROGRESS). In this case, the 737// body of the error message also contains the executionState field. 738type InvalidStateTransitionException struct { 739 _ struct{} `type:"structure"` 740 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 741 742 Message_ *string `locationName:"message" type:"string"` 743} 744 745// String returns the string representation. 746// 747// API parameter values that are decorated as "sensitive" in the API will not 748// be included in the string output. The member name will be present, but the 749// value will be replaced with "sensitive". 750func (s InvalidStateTransitionException) String() string { 751 return awsutil.Prettify(s) 752} 753 754// GoString returns the string representation. 755// 756// API parameter values that are decorated as "sensitive" in the API will not 757// be included in the string output. The member name will be present, but the 758// value will be replaced with "sensitive". 759func (s InvalidStateTransitionException) GoString() string { 760 return s.String() 761} 762 763func newErrorInvalidStateTransitionException(v protocol.ResponseMetadata) error { 764 return &InvalidStateTransitionException{ 765 RespMetadata: v, 766 } 767} 768 769// Code returns the exception type name. 770func (s *InvalidStateTransitionException) Code() string { 771 return "InvalidStateTransitionException" 772} 773 774// Message returns the exception's message. 775func (s *InvalidStateTransitionException) Message() string { 776 if s.Message_ != nil { 777 return *s.Message_ 778 } 779 return "" 780} 781 782// OrigErr always returns nil, satisfies awserr.Error interface. 783func (s *InvalidStateTransitionException) OrigErr() error { 784 return nil 785} 786 787func (s *InvalidStateTransitionException) Error() string { 788 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 789} 790 791// Status code returns the HTTP status code for the request's response error. 792func (s *InvalidStateTransitionException) StatusCode() int { 793 return s.RespMetadata.StatusCode 794} 795 796// RequestID returns the service's response RequestID for request. 797func (s *InvalidStateTransitionException) RequestID() string { 798 return s.RespMetadata.RequestID 799} 800 801// Contains data about a job execution. 802type JobExecution struct { 803 _ struct{} `type:"structure"` 804 805 // The estimated number of seconds that remain before the job execution status 806 // will be changed to TIMED_OUT. 807 ApproximateSecondsBeforeTimedOut *int64 `locationName:"approximateSecondsBeforeTimedOut" type:"long"` 808 809 // A number that identifies a particular job execution on a particular device. 810 // It can be used later in commands that return or update job execution information. 811 ExecutionNumber *int64 `locationName:"executionNumber" type:"long"` 812 813 // The content of the job document. 814 JobDocument *string `locationName:"jobDocument" type:"string"` 815 816 // The unique identifier you assigned to this job when it was created. 817 JobId *string `locationName:"jobId" min:"1" type:"string"` 818 819 // The time, in milliseconds since the epoch, when the job execution was last 820 // updated. 821 LastUpdatedAt *int64 `locationName:"lastUpdatedAt" type:"long"` 822 823 // The time, in milliseconds since the epoch, when the job execution was enqueued. 824 QueuedAt *int64 `locationName:"queuedAt" type:"long"` 825 826 // The time, in milliseconds since the epoch, when the job execution was started. 827 StartedAt *int64 `locationName:"startedAt" type:"long"` 828 829 // The status of the job execution. Can be one of: "QUEUED", "IN_PROGRESS", 830 // "FAILED", "SUCCESS", "CANCELED", "REJECTED", or "REMOVED". 831 Status *string `locationName:"status" type:"string" enum:"JobExecutionStatus"` 832 833 // A collection of name/value pairs that describe the status of the job execution. 834 StatusDetails map[string]*string `locationName:"statusDetails" type:"map"` 835 836 // The name of the thing that is executing the job. 837 ThingName *string `locationName:"thingName" min:"1" type:"string"` 838 839 // The version of the job execution. Job execution versions are incremented 840 // each time they are updated by a device. 841 VersionNumber *int64 `locationName:"versionNumber" type:"long"` 842} 843 844// String returns the string representation. 845// 846// API parameter values that are decorated as "sensitive" in the API will not 847// be included in the string output. The member name will be present, but the 848// value will be replaced with "sensitive". 849func (s JobExecution) String() string { 850 return awsutil.Prettify(s) 851} 852 853// GoString returns the string representation. 854// 855// API parameter values that are decorated as "sensitive" in the API will not 856// be included in the string output. The member name will be present, but the 857// value will be replaced with "sensitive". 858func (s JobExecution) GoString() string { 859 return s.String() 860} 861 862// SetApproximateSecondsBeforeTimedOut sets the ApproximateSecondsBeforeTimedOut field's value. 863func (s *JobExecution) SetApproximateSecondsBeforeTimedOut(v int64) *JobExecution { 864 s.ApproximateSecondsBeforeTimedOut = &v 865 return s 866} 867 868// SetExecutionNumber sets the ExecutionNumber field's value. 869func (s *JobExecution) SetExecutionNumber(v int64) *JobExecution { 870 s.ExecutionNumber = &v 871 return s 872} 873 874// SetJobDocument sets the JobDocument field's value. 875func (s *JobExecution) SetJobDocument(v string) *JobExecution { 876 s.JobDocument = &v 877 return s 878} 879 880// SetJobId sets the JobId field's value. 881func (s *JobExecution) SetJobId(v string) *JobExecution { 882 s.JobId = &v 883 return s 884} 885 886// SetLastUpdatedAt sets the LastUpdatedAt field's value. 887func (s *JobExecution) SetLastUpdatedAt(v int64) *JobExecution { 888 s.LastUpdatedAt = &v 889 return s 890} 891 892// SetQueuedAt sets the QueuedAt field's value. 893func (s *JobExecution) SetQueuedAt(v int64) *JobExecution { 894 s.QueuedAt = &v 895 return s 896} 897 898// SetStartedAt sets the StartedAt field's value. 899func (s *JobExecution) SetStartedAt(v int64) *JobExecution { 900 s.StartedAt = &v 901 return s 902} 903 904// SetStatus sets the Status field's value. 905func (s *JobExecution) SetStatus(v string) *JobExecution { 906 s.Status = &v 907 return s 908} 909 910// SetStatusDetails sets the StatusDetails field's value. 911func (s *JobExecution) SetStatusDetails(v map[string]*string) *JobExecution { 912 s.StatusDetails = v 913 return s 914} 915 916// SetThingName sets the ThingName field's value. 917func (s *JobExecution) SetThingName(v string) *JobExecution { 918 s.ThingName = &v 919 return s 920} 921 922// SetVersionNumber sets the VersionNumber field's value. 923func (s *JobExecution) SetVersionNumber(v int64) *JobExecution { 924 s.VersionNumber = &v 925 return s 926} 927 928// Contains data about the state of a job execution. 929type JobExecutionState struct { 930 _ struct{} `type:"structure"` 931 932 // The status of the job execution. Can be one of: "QUEUED", "IN_PROGRESS", 933 // "FAILED", "SUCCESS", "CANCELED", "REJECTED", or "REMOVED". 934 Status *string `locationName:"status" type:"string" enum:"JobExecutionStatus"` 935 936 // A collection of name/value pairs that describe the status of the job execution. 937 StatusDetails map[string]*string `locationName:"statusDetails" type:"map"` 938 939 // The version of the job execution. Job execution versions are incremented 940 // each time they are updated by a device. 941 VersionNumber *int64 `locationName:"versionNumber" type:"long"` 942} 943 944// String returns the string representation. 945// 946// API parameter values that are decorated as "sensitive" in the API will not 947// be included in the string output. The member name will be present, but the 948// value will be replaced with "sensitive". 949func (s JobExecutionState) String() string { 950 return awsutil.Prettify(s) 951} 952 953// GoString returns the string representation. 954// 955// API parameter values that are decorated as "sensitive" in the API will not 956// be included in the string output. The member name will be present, but the 957// value will be replaced with "sensitive". 958func (s JobExecutionState) GoString() string { 959 return s.String() 960} 961 962// SetStatus sets the Status field's value. 963func (s *JobExecutionState) SetStatus(v string) *JobExecutionState { 964 s.Status = &v 965 return s 966} 967 968// SetStatusDetails sets the StatusDetails field's value. 969func (s *JobExecutionState) SetStatusDetails(v map[string]*string) *JobExecutionState { 970 s.StatusDetails = v 971 return s 972} 973 974// SetVersionNumber sets the VersionNumber field's value. 975func (s *JobExecutionState) SetVersionNumber(v int64) *JobExecutionState { 976 s.VersionNumber = &v 977 return s 978} 979 980// Contains a subset of information about a job execution. 981type JobExecutionSummary struct { 982 _ struct{} `type:"structure"` 983 984 // A number that identifies a particular job execution on a particular device. 985 ExecutionNumber *int64 `locationName:"executionNumber" type:"long"` 986 987 // The unique identifier you assigned to this job when it was created. 988 JobId *string `locationName:"jobId" min:"1" type:"string"` 989 990 // The time, in milliseconds since the epoch, when the job execution was last 991 // updated. 992 LastUpdatedAt *int64 `locationName:"lastUpdatedAt" type:"long"` 993 994 // The time, in milliseconds since the epoch, when the job execution was enqueued. 995 QueuedAt *int64 `locationName:"queuedAt" type:"long"` 996 997 // The time, in milliseconds since the epoch, when the job execution started. 998 StartedAt *int64 `locationName:"startedAt" type:"long"` 999 1000 // The version of the job execution. Job execution versions are incremented 1001 // each time AWS IoT Jobs receives an update from a device. 1002 VersionNumber *int64 `locationName:"versionNumber" type:"long"` 1003} 1004 1005// String returns the string representation. 1006// 1007// API parameter values that are decorated as "sensitive" in the API will not 1008// be included in the string output. The member name will be present, but the 1009// value will be replaced with "sensitive". 1010func (s JobExecutionSummary) String() string { 1011 return awsutil.Prettify(s) 1012} 1013 1014// GoString returns the string representation. 1015// 1016// API parameter values that are decorated as "sensitive" in the API will not 1017// be included in the string output. The member name will be present, but the 1018// value will be replaced with "sensitive". 1019func (s JobExecutionSummary) GoString() string { 1020 return s.String() 1021} 1022 1023// SetExecutionNumber sets the ExecutionNumber field's value. 1024func (s *JobExecutionSummary) SetExecutionNumber(v int64) *JobExecutionSummary { 1025 s.ExecutionNumber = &v 1026 return s 1027} 1028 1029// SetJobId sets the JobId field's value. 1030func (s *JobExecutionSummary) SetJobId(v string) *JobExecutionSummary { 1031 s.JobId = &v 1032 return s 1033} 1034 1035// SetLastUpdatedAt sets the LastUpdatedAt field's value. 1036func (s *JobExecutionSummary) SetLastUpdatedAt(v int64) *JobExecutionSummary { 1037 s.LastUpdatedAt = &v 1038 return s 1039} 1040 1041// SetQueuedAt sets the QueuedAt field's value. 1042func (s *JobExecutionSummary) SetQueuedAt(v int64) *JobExecutionSummary { 1043 s.QueuedAt = &v 1044 return s 1045} 1046 1047// SetStartedAt sets the StartedAt field's value. 1048func (s *JobExecutionSummary) SetStartedAt(v int64) *JobExecutionSummary { 1049 s.StartedAt = &v 1050 return s 1051} 1052 1053// SetVersionNumber sets the VersionNumber field's value. 1054func (s *JobExecutionSummary) SetVersionNumber(v int64) *JobExecutionSummary { 1055 s.VersionNumber = &v 1056 return s 1057} 1058 1059// The specified resource does not exist. 1060type ResourceNotFoundException struct { 1061 _ struct{} `type:"structure"` 1062 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 1063 1064 // The message for the exception. 1065 Message_ *string `locationName:"message" type:"string"` 1066} 1067 1068// String returns the string representation. 1069// 1070// API parameter values that are decorated as "sensitive" in the API will not 1071// be included in the string output. The member name will be present, but the 1072// value will be replaced with "sensitive". 1073func (s ResourceNotFoundException) String() string { 1074 return awsutil.Prettify(s) 1075} 1076 1077// GoString returns the string representation. 1078// 1079// API parameter values that are decorated as "sensitive" in the API will not 1080// be included in the string output. The member name will be present, but the 1081// value will be replaced with "sensitive". 1082func (s ResourceNotFoundException) GoString() string { 1083 return s.String() 1084} 1085 1086func newErrorResourceNotFoundException(v protocol.ResponseMetadata) error { 1087 return &ResourceNotFoundException{ 1088 RespMetadata: v, 1089 } 1090} 1091 1092// Code returns the exception type name. 1093func (s *ResourceNotFoundException) Code() string { 1094 return "ResourceNotFoundException" 1095} 1096 1097// Message returns the exception's message. 1098func (s *ResourceNotFoundException) Message() string { 1099 if s.Message_ != nil { 1100 return *s.Message_ 1101 } 1102 return "" 1103} 1104 1105// OrigErr always returns nil, satisfies awserr.Error interface. 1106func (s *ResourceNotFoundException) OrigErr() error { 1107 return nil 1108} 1109 1110func (s *ResourceNotFoundException) Error() string { 1111 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 1112} 1113 1114// Status code returns the HTTP status code for the request's response error. 1115func (s *ResourceNotFoundException) StatusCode() int { 1116 return s.RespMetadata.StatusCode 1117} 1118 1119// RequestID returns the service's response RequestID for request. 1120func (s *ResourceNotFoundException) RequestID() string { 1121 return s.RespMetadata.RequestID 1122} 1123 1124// The service is temporarily unavailable. 1125type ServiceUnavailableException struct { 1126 _ struct{} `type:"structure"` 1127 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 1128 1129 // The message for the exception. 1130 Message_ *string `locationName:"message" type:"string"` 1131} 1132 1133// String returns the string representation. 1134// 1135// API parameter values that are decorated as "sensitive" in the API will not 1136// be included in the string output. The member name will be present, but the 1137// value will be replaced with "sensitive". 1138func (s ServiceUnavailableException) String() string { 1139 return awsutil.Prettify(s) 1140} 1141 1142// GoString returns the string representation. 1143// 1144// API parameter values that are decorated as "sensitive" in the API will not 1145// be included in the string output. The member name will be present, but the 1146// value will be replaced with "sensitive". 1147func (s ServiceUnavailableException) GoString() string { 1148 return s.String() 1149} 1150 1151func newErrorServiceUnavailableException(v protocol.ResponseMetadata) error { 1152 return &ServiceUnavailableException{ 1153 RespMetadata: v, 1154 } 1155} 1156 1157// Code returns the exception type name. 1158func (s *ServiceUnavailableException) Code() string { 1159 return "ServiceUnavailableException" 1160} 1161 1162// Message returns the exception's message. 1163func (s *ServiceUnavailableException) Message() string { 1164 if s.Message_ != nil { 1165 return *s.Message_ 1166 } 1167 return "" 1168} 1169 1170// OrigErr always returns nil, satisfies awserr.Error interface. 1171func (s *ServiceUnavailableException) OrigErr() error { 1172 return nil 1173} 1174 1175func (s *ServiceUnavailableException) Error() string { 1176 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 1177} 1178 1179// Status code returns the HTTP status code for the request's response error. 1180func (s *ServiceUnavailableException) StatusCode() int { 1181 return s.RespMetadata.StatusCode 1182} 1183 1184// RequestID returns the service's response RequestID for request. 1185func (s *ServiceUnavailableException) RequestID() string { 1186 return s.RespMetadata.RequestID 1187} 1188 1189type StartNextPendingJobExecutionInput struct { 1190 _ struct{} `type:"structure"` 1191 1192 // A collection of name/value pairs that describe the status of the job execution. 1193 // If not specified, the statusDetails are unchanged. 1194 StatusDetails map[string]*string `locationName:"statusDetails" type:"map"` 1195 1196 // Specifies the amount of time this device has to finish execution of this 1197 // job. If the job execution status is not set to a terminal state before this 1198 // timer expires, or before the timer is reset (by calling UpdateJobExecution, 1199 // setting the status to IN_PROGRESS and specifying a new timeout value in field 1200 // stepTimeoutInMinutes) the job execution status will be automatically set 1201 // to TIMED_OUT. Note that setting this timeout has no effect on that job execution 1202 // timeout which may have been specified when the job was created (CreateJob 1203 // using field timeoutConfig). 1204 StepTimeoutInMinutes *int64 `locationName:"stepTimeoutInMinutes" type:"long"` 1205 1206 // The name of the thing associated with the device. 1207 // 1208 // ThingName is a required field 1209 ThingName *string `location:"uri" locationName:"thingName" min:"1" type:"string" required:"true"` 1210} 1211 1212// String returns the string representation. 1213// 1214// API parameter values that are decorated as "sensitive" in the API will not 1215// be included in the string output. The member name will be present, but the 1216// value will be replaced with "sensitive". 1217func (s StartNextPendingJobExecutionInput) String() string { 1218 return awsutil.Prettify(s) 1219} 1220 1221// GoString returns the string representation. 1222// 1223// API parameter values that are decorated as "sensitive" in the API will not 1224// be included in the string output. The member name will be present, but the 1225// value will be replaced with "sensitive". 1226func (s StartNextPendingJobExecutionInput) GoString() string { 1227 return s.String() 1228} 1229 1230// Validate inspects the fields of the type to determine if they are valid. 1231func (s *StartNextPendingJobExecutionInput) Validate() error { 1232 invalidParams := request.ErrInvalidParams{Context: "StartNextPendingJobExecutionInput"} 1233 if s.ThingName == nil { 1234 invalidParams.Add(request.NewErrParamRequired("ThingName")) 1235 } 1236 if s.ThingName != nil && len(*s.ThingName) < 1 { 1237 invalidParams.Add(request.NewErrParamMinLen("ThingName", 1)) 1238 } 1239 1240 if invalidParams.Len() > 0 { 1241 return invalidParams 1242 } 1243 return nil 1244} 1245 1246// SetStatusDetails sets the StatusDetails field's value. 1247func (s *StartNextPendingJobExecutionInput) SetStatusDetails(v map[string]*string) *StartNextPendingJobExecutionInput { 1248 s.StatusDetails = v 1249 return s 1250} 1251 1252// SetStepTimeoutInMinutes sets the StepTimeoutInMinutes field's value. 1253func (s *StartNextPendingJobExecutionInput) SetStepTimeoutInMinutes(v int64) *StartNextPendingJobExecutionInput { 1254 s.StepTimeoutInMinutes = &v 1255 return s 1256} 1257 1258// SetThingName sets the ThingName field's value. 1259func (s *StartNextPendingJobExecutionInput) SetThingName(v string) *StartNextPendingJobExecutionInput { 1260 s.ThingName = &v 1261 return s 1262} 1263 1264type StartNextPendingJobExecutionOutput struct { 1265 _ struct{} `type:"structure"` 1266 1267 // A JobExecution object. 1268 Execution *JobExecution `locationName:"execution" type:"structure"` 1269} 1270 1271// String returns the string representation. 1272// 1273// API parameter values that are decorated as "sensitive" in the API will not 1274// be included in the string output. The member name will be present, but the 1275// value will be replaced with "sensitive". 1276func (s StartNextPendingJobExecutionOutput) String() string { 1277 return awsutil.Prettify(s) 1278} 1279 1280// GoString returns the string representation. 1281// 1282// API parameter values that are decorated as "sensitive" in the API will not 1283// be included in the string output. The member name will be present, but the 1284// value will be replaced with "sensitive". 1285func (s StartNextPendingJobExecutionOutput) GoString() string { 1286 return s.String() 1287} 1288 1289// SetExecution sets the Execution field's value. 1290func (s *StartNextPendingJobExecutionOutput) SetExecution(v *JobExecution) *StartNextPendingJobExecutionOutput { 1291 s.Execution = v 1292 return s 1293} 1294 1295// The job is in a terminal state. 1296type TerminalStateException struct { 1297 _ struct{} `type:"structure"` 1298 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 1299 1300 Message_ *string `locationName:"message" type:"string"` 1301} 1302 1303// String returns the string representation. 1304// 1305// API parameter values that are decorated as "sensitive" in the API will not 1306// be included in the string output. The member name will be present, but the 1307// value will be replaced with "sensitive". 1308func (s TerminalStateException) String() string { 1309 return awsutil.Prettify(s) 1310} 1311 1312// GoString returns the string representation. 1313// 1314// API parameter values that are decorated as "sensitive" in the API will not 1315// be included in the string output. The member name will be present, but the 1316// value will be replaced with "sensitive". 1317func (s TerminalStateException) GoString() string { 1318 return s.String() 1319} 1320 1321func newErrorTerminalStateException(v protocol.ResponseMetadata) error { 1322 return &TerminalStateException{ 1323 RespMetadata: v, 1324 } 1325} 1326 1327// Code returns the exception type name. 1328func (s *TerminalStateException) Code() string { 1329 return "TerminalStateException" 1330} 1331 1332// Message returns the exception's message. 1333func (s *TerminalStateException) Message() string { 1334 if s.Message_ != nil { 1335 return *s.Message_ 1336 } 1337 return "" 1338} 1339 1340// OrigErr always returns nil, satisfies awserr.Error interface. 1341func (s *TerminalStateException) OrigErr() error { 1342 return nil 1343} 1344 1345func (s *TerminalStateException) Error() string { 1346 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 1347} 1348 1349// Status code returns the HTTP status code for the request's response error. 1350func (s *TerminalStateException) StatusCode() int { 1351 return s.RespMetadata.StatusCode 1352} 1353 1354// RequestID returns the service's response RequestID for request. 1355func (s *TerminalStateException) RequestID() string { 1356 return s.RespMetadata.RequestID 1357} 1358 1359// The rate exceeds the limit. 1360type ThrottlingException struct { 1361 _ struct{} `type:"structure"` 1362 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 1363 1364 // The message associated with the exception. 1365 Message_ *string `locationName:"message" type:"string"` 1366 1367 // The payload associated with the exception. 1368 // Payload is automatically base64 encoded/decoded by the SDK. 1369 Payload []byte `locationName:"payload" type:"blob"` 1370} 1371 1372// String returns the string representation. 1373// 1374// API parameter values that are decorated as "sensitive" in the API will not 1375// be included in the string output. The member name will be present, but the 1376// value will be replaced with "sensitive". 1377func (s ThrottlingException) String() string { 1378 return awsutil.Prettify(s) 1379} 1380 1381// GoString returns the string representation. 1382// 1383// API parameter values that are decorated as "sensitive" in the API will not 1384// be included in the string output. The member name will be present, but the 1385// value will be replaced with "sensitive". 1386func (s ThrottlingException) GoString() string { 1387 return s.String() 1388} 1389 1390func newErrorThrottlingException(v protocol.ResponseMetadata) error { 1391 return &ThrottlingException{ 1392 RespMetadata: v, 1393 } 1394} 1395 1396// Code returns the exception type name. 1397func (s *ThrottlingException) Code() string { 1398 return "ThrottlingException" 1399} 1400 1401// Message returns the exception's message. 1402func (s *ThrottlingException) Message() string { 1403 if s.Message_ != nil { 1404 return *s.Message_ 1405 } 1406 return "" 1407} 1408 1409// OrigErr always returns nil, satisfies awserr.Error interface. 1410func (s *ThrottlingException) OrigErr() error { 1411 return nil 1412} 1413 1414func (s *ThrottlingException) Error() string { 1415 return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) 1416} 1417 1418// Status code returns the HTTP status code for the request's response error. 1419func (s *ThrottlingException) StatusCode() int { 1420 return s.RespMetadata.StatusCode 1421} 1422 1423// RequestID returns the service's response RequestID for request. 1424func (s *ThrottlingException) RequestID() string { 1425 return s.RespMetadata.RequestID 1426} 1427 1428type UpdateJobExecutionInput struct { 1429 _ struct{} `type:"structure"` 1430 1431 // Optional. A number that identifies a particular job execution on a particular 1432 // device. 1433 ExecutionNumber *int64 `locationName:"executionNumber" type:"long"` 1434 1435 // Optional. The expected current version of the job execution. Each time you 1436 // update the job execution, its version is incremented. If the version of the 1437 // job execution stored in Jobs does not match, the update is rejected with 1438 // a VersionMismatch error, and an ErrorResponse that contains the current job 1439 // execution status data is returned. (This makes it unnecessary to perform 1440 // a separate DescribeJobExecution request in order to obtain the job execution 1441 // status data.) 1442 ExpectedVersion *int64 `locationName:"expectedVersion" type:"long"` 1443 1444 // Optional. When set to true, the response contains the job document. The default 1445 // is false. 1446 IncludeJobDocument *bool `locationName:"includeJobDocument" type:"boolean"` 1447 1448 // Optional. When included and set to true, the response contains the JobExecutionState 1449 // data. The default is false. 1450 IncludeJobExecutionState *bool `locationName:"includeJobExecutionState" type:"boolean"` 1451 1452 // The unique identifier assigned to this job when it was created. 1453 // 1454 // JobId is a required field 1455 JobId *string `location:"uri" locationName:"jobId" min:"1" type:"string" required:"true"` 1456 1457 // The new status for the job execution (IN_PROGRESS, FAILED, SUCCESS, or REJECTED). 1458 // This must be specified on every update. 1459 // 1460 // Status is a required field 1461 Status *string `locationName:"status" type:"string" required:"true" enum:"JobExecutionStatus"` 1462 1463 // Optional. A collection of name/value pairs that describe the status of the 1464 // job execution. If not specified, the statusDetails are unchanged. 1465 StatusDetails map[string]*string `locationName:"statusDetails" type:"map"` 1466 1467 // Specifies the amount of time this device has to finish execution of this 1468 // job. If the job execution status is not set to a terminal state before this 1469 // timer expires, or before the timer is reset (by again calling UpdateJobExecution, 1470 // setting the status to IN_PROGRESS and specifying a new timeout value in this 1471 // field) the job execution status will be automatically set to TIMED_OUT. Note 1472 // that setting or resetting this timeout has no effect on that job execution 1473 // timeout which may have been specified when the job was created (CreateJob 1474 // using field timeoutConfig). 1475 StepTimeoutInMinutes *int64 `locationName:"stepTimeoutInMinutes" type:"long"` 1476 1477 // The name of the thing associated with the device. 1478 // 1479 // ThingName is a required field 1480 ThingName *string `location:"uri" locationName:"thingName" min:"1" type:"string" required:"true"` 1481} 1482 1483// String returns the string representation. 1484// 1485// API parameter values that are decorated as "sensitive" in the API will not 1486// be included in the string output. The member name will be present, but the 1487// value will be replaced with "sensitive". 1488func (s UpdateJobExecutionInput) String() string { 1489 return awsutil.Prettify(s) 1490} 1491 1492// GoString returns the string representation. 1493// 1494// API parameter values that are decorated as "sensitive" in the API will not 1495// be included in the string output. The member name will be present, but the 1496// value will be replaced with "sensitive". 1497func (s UpdateJobExecutionInput) GoString() string { 1498 return s.String() 1499} 1500 1501// Validate inspects the fields of the type to determine if they are valid. 1502func (s *UpdateJobExecutionInput) Validate() error { 1503 invalidParams := request.ErrInvalidParams{Context: "UpdateJobExecutionInput"} 1504 if s.JobId == nil { 1505 invalidParams.Add(request.NewErrParamRequired("JobId")) 1506 } 1507 if s.JobId != nil && len(*s.JobId) < 1 { 1508 invalidParams.Add(request.NewErrParamMinLen("JobId", 1)) 1509 } 1510 if s.Status == nil { 1511 invalidParams.Add(request.NewErrParamRequired("Status")) 1512 } 1513 if s.ThingName == nil { 1514 invalidParams.Add(request.NewErrParamRequired("ThingName")) 1515 } 1516 if s.ThingName != nil && len(*s.ThingName) < 1 { 1517 invalidParams.Add(request.NewErrParamMinLen("ThingName", 1)) 1518 } 1519 1520 if invalidParams.Len() > 0 { 1521 return invalidParams 1522 } 1523 return nil 1524} 1525 1526// SetExecutionNumber sets the ExecutionNumber field's value. 1527func (s *UpdateJobExecutionInput) SetExecutionNumber(v int64) *UpdateJobExecutionInput { 1528 s.ExecutionNumber = &v 1529 return s 1530} 1531 1532// SetExpectedVersion sets the ExpectedVersion field's value. 1533func (s *UpdateJobExecutionInput) SetExpectedVersion(v int64) *UpdateJobExecutionInput { 1534 s.ExpectedVersion = &v 1535 return s 1536} 1537 1538// SetIncludeJobDocument sets the IncludeJobDocument field's value. 1539func (s *UpdateJobExecutionInput) SetIncludeJobDocument(v bool) *UpdateJobExecutionInput { 1540 s.IncludeJobDocument = &v 1541 return s 1542} 1543 1544// SetIncludeJobExecutionState sets the IncludeJobExecutionState field's value. 1545func (s *UpdateJobExecutionInput) SetIncludeJobExecutionState(v bool) *UpdateJobExecutionInput { 1546 s.IncludeJobExecutionState = &v 1547 return s 1548} 1549 1550// SetJobId sets the JobId field's value. 1551func (s *UpdateJobExecutionInput) SetJobId(v string) *UpdateJobExecutionInput { 1552 s.JobId = &v 1553 return s 1554} 1555 1556// SetStatus sets the Status field's value. 1557func (s *UpdateJobExecutionInput) SetStatus(v string) *UpdateJobExecutionInput { 1558 s.Status = &v 1559 return s 1560} 1561 1562// SetStatusDetails sets the StatusDetails field's value. 1563func (s *UpdateJobExecutionInput) SetStatusDetails(v map[string]*string) *UpdateJobExecutionInput { 1564 s.StatusDetails = v 1565 return s 1566} 1567 1568// SetStepTimeoutInMinutes sets the StepTimeoutInMinutes field's value. 1569func (s *UpdateJobExecutionInput) SetStepTimeoutInMinutes(v int64) *UpdateJobExecutionInput { 1570 s.StepTimeoutInMinutes = &v 1571 return s 1572} 1573 1574// SetThingName sets the ThingName field's value. 1575func (s *UpdateJobExecutionInput) SetThingName(v string) *UpdateJobExecutionInput { 1576 s.ThingName = &v 1577 return s 1578} 1579 1580type UpdateJobExecutionOutput struct { 1581 _ struct{} `type:"structure"` 1582 1583 // A JobExecutionState object. 1584 ExecutionState *JobExecutionState `locationName:"executionState" type:"structure"` 1585 1586 // The contents of the Job Documents. 1587 JobDocument *string `locationName:"jobDocument" type:"string"` 1588} 1589 1590// String returns the string representation. 1591// 1592// API parameter values that are decorated as "sensitive" in the API will not 1593// be included in the string output. The member name will be present, but the 1594// value will be replaced with "sensitive". 1595func (s UpdateJobExecutionOutput) String() string { 1596 return awsutil.Prettify(s) 1597} 1598 1599// GoString returns the string representation. 1600// 1601// API parameter values that are decorated as "sensitive" in the API will not 1602// be included in the string output. The member name will be present, but the 1603// value will be replaced with "sensitive". 1604func (s UpdateJobExecutionOutput) GoString() string { 1605 return s.String() 1606} 1607 1608// SetExecutionState sets the ExecutionState field's value. 1609func (s *UpdateJobExecutionOutput) SetExecutionState(v *JobExecutionState) *UpdateJobExecutionOutput { 1610 s.ExecutionState = v 1611 return s 1612} 1613 1614// SetJobDocument sets the JobDocument field's value. 1615func (s *UpdateJobExecutionOutput) SetJobDocument(v string) *UpdateJobExecutionOutput { 1616 s.JobDocument = &v 1617 return s 1618} 1619 1620const ( 1621 // JobExecutionStatusQueued is a JobExecutionStatus enum value 1622 JobExecutionStatusQueued = "QUEUED" 1623 1624 // JobExecutionStatusInProgress is a JobExecutionStatus enum value 1625 JobExecutionStatusInProgress = "IN_PROGRESS" 1626 1627 // JobExecutionStatusSucceeded is a JobExecutionStatus enum value 1628 JobExecutionStatusSucceeded = "SUCCEEDED" 1629 1630 // JobExecutionStatusFailed is a JobExecutionStatus enum value 1631 JobExecutionStatusFailed = "FAILED" 1632 1633 // JobExecutionStatusTimedOut is a JobExecutionStatus enum value 1634 JobExecutionStatusTimedOut = "TIMED_OUT" 1635 1636 // JobExecutionStatusRejected is a JobExecutionStatus enum value 1637 JobExecutionStatusRejected = "REJECTED" 1638 1639 // JobExecutionStatusRemoved is a JobExecutionStatus enum value 1640 JobExecutionStatusRemoved = "REMOVED" 1641 1642 // JobExecutionStatusCanceled is a JobExecutionStatus enum value 1643 JobExecutionStatusCanceled = "CANCELED" 1644) 1645 1646// JobExecutionStatus_Values returns all elements of the JobExecutionStatus enum 1647func JobExecutionStatus_Values() []string { 1648 return []string{ 1649 JobExecutionStatusQueued, 1650 JobExecutionStatusInProgress, 1651 JobExecutionStatusSucceeded, 1652 JobExecutionStatusFailed, 1653 JobExecutionStatusTimedOut, 1654 JobExecutionStatusRejected, 1655 JobExecutionStatusRemoved, 1656 JobExecutionStatusCanceled, 1657 } 1658} 1659