service/emrserverless/api.go (3,138 lines of code) (raw):
// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT.
package emrserverless
import (
"fmt"
"time"
"github.com/aws/aws-sdk-go/aws"
"github.com/aws/aws-sdk-go/aws/awsutil"
"github.com/aws/aws-sdk-go/aws/request"
"github.com/aws/aws-sdk-go/private/protocol"
"github.com/aws/aws-sdk-go/private/protocol/restjson"
)
const opCancelJobRun = "CancelJobRun"
// CancelJobRunRequest generates a "aws/request.Request" representing the
// client's request for the CancelJobRun operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See CancelJobRun for more information on using the CancelJobRun
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
// // Example sending a request using the CancelJobRunRequest method.
// req, resp := client.CancelJobRunRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/CancelJobRun
func (c *EMRServerless) CancelJobRunRequest(input *CancelJobRunInput) (req *request.Request, output *CancelJobRunOutput) {
op := &request.Operation{
Name: opCancelJobRun,
HTTPMethod: "DELETE",
HTTPPath: "/applications/{applicationId}/jobruns/{jobRunId}",
}
if input == nil {
input = &CancelJobRunInput{}
}
output = &CancelJobRunOutput{}
req = c.newRequest(op, input, output)
return
}
// CancelJobRun API operation for EMR Serverless.
//
// Cancels a job run.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for EMR Serverless's
// API operation CancelJobRun for usage and error information.
//
// Returned Error Types:
//
// - ValidationException
// The input fails to satisfy the constraints specified by an Amazon Web Services
// service.
//
// - ResourceNotFoundException
// The specified resource was not found.
//
// - InternalServerException
// Request processing failed because of an error or failure with the service.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/CancelJobRun
func (c *EMRServerless) CancelJobRun(input *CancelJobRunInput) (*CancelJobRunOutput, error) {
req, out := c.CancelJobRunRequest(input)
return out, req.Send()
}
// CancelJobRunWithContext is the same as CancelJobRun with the addition of
// the ability to pass a context and additional request options.
//
// See CancelJobRun for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *EMRServerless) CancelJobRunWithContext(ctx aws.Context, input *CancelJobRunInput, opts ...request.Option) (*CancelJobRunOutput, error) {
req, out := c.CancelJobRunRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opCreateApplication = "CreateApplication"
// CreateApplicationRequest generates a "aws/request.Request" representing the
// client's request for the CreateApplication operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See CreateApplication for more information on using the CreateApplication
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
// // Example sending a request using the CreateApplicationRequest method.
// req, resp := client.CreateApplicationRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/CreateApplication
func (c *EMRServerless) CreateApplicationRequest(input *CreateApplicationInput) (req *request.Request, output *CreateApplicationOutput) {
op := &request.Operation{
Name: opCreateApplication,
HTTPMethod: "POST",
HTTPPath: "/applications",
}
if input == nil {
input = &CreateApplicationInput{}
}
output = &CreateApplicationOutput{}
req = c.newRequest(op, input, output)
return
}
// CreateApplication API operation for EMR Serverless.
//
// Creates an application.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for EMR Serverless's
// API operation CreateApplication for usage and error information.
//
// Returned Error Types:
//
// - ValidationException
// The input fails to satisfy the constraints specified by an Amazon Web Services
// service.
//
// - ResourceNotFoundException
// The specified resource was not found.
//
// - InternalServerException
// Request processing failed because of an error or failure with the service.
//
// - ConflictException
// The request could not be processed because of conflict in the current state
// of the resource.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/CreateApplication
func (c *EMRServerless) CreateApplication(input *CreateApplicationInput) (*CreateApplicationOutput, error) {
req, out := c.CreateApplicationRequest(input)
return out, req.Send()
}
// CreateApplicationWithContext is the same as CreateApplication with the addition of
// the ability to pass a context and additional request options.
//
// See CreateApplication for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *EMRServerless) CreateApplicationWithContext(ctx aws.Context, input *CreateApplicationInput, opts ...request.Option) (*CreateApplicationOutput, error) {
req, out := c.CreateApplicationRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opDeleteApplication = "DeleteApplication"
// DeleteApplicationRequest generates a "aws/request.Request" representing the
// client's request for the DeleteApplication operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See DeleteApplication for more information on using the DeleteApplication
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
// // Example sending a request using the DeleteApplicationRequest method.
// req, resp := client.DeleteApplicationRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/DeleteApplication
func (c *EMRServerless) DeleteApplicationRequest(input *DeleteApplicationInput) (req *request.Request, output *DeleteApplicationOutput) {
op := &request.Operation{
Name: opDeleteApplication,
HTTPMethod: "DELETE",
HTTPPath: "/applications/{applicationId}",
}
if input == nil {
input = &DeleteApplicationInput{}
}
output = &DeleteApplicationOutput{}
req = c.newRequest(op, input, output)
req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
return
}
// DeleteApplication API operation for EMR Serverless.
//
// Deletes an application. An application has to be in a stopped or created
// state in order to be deleted.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for EMR Serverless's
// API operation DeleteApplication for usage and error information.
//
// Returned Error Types:
//
// - ValidationException
// The input fails to satisfy the constraints specified by an Amazon Web Services
// service.
//
// - ResourceNotFoundException
// The specified resource was not found.
//
// - InternalServerException
// Request processing failed because of an error or failure with the service.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/DeleteApplication
func (c *EMRServerless) DeleteApplication(input *DeleteApplicationInput) (*DeleteApplicationOutput, error) {
req, out := c.DeleteApplicationRequest(input)
return out, req.Send()
}
// DeleteApplicationWithContext is the same as DeleteApplication with the addition of
// the ability to pass a context and additional request options.
//
// See DeleteApplication for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *EMRServerless) DeleteApplicationWithContext(ctx aws.Context, input *DeleteApplicationInput, opts ...request.Option) (*DeleteApplicationOutput, error) {
req, out := c.DeleteApplicationRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opGetApplication = "GetApplication"
// GetApplicationRequest generates a "aws/request.Request" representing the
// client's request for the GetApplication operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See GetApplication for more information on using the GetApplication
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
// // Example sending a request using the GetApplicationRequest method.
// req, resp := client.GetApplicationRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/GetApplication
func (c *EMRServerless) GetApplicationRequest(input *GetApplicationInput) (req *request.Request, output *GetApplicationOutput) {
op := &request.Operation{
Name: opGetApplication,
HTTPMethod: "GET",
HTTPPath: "/applications/{applicationId}",
}
if input == nil {
input = &GetApplicationInput{}
}
output = &GetApplicationOutput{}
req = c.newRequest(op, input, output)
return
}
// GetApplication API operation for EMR Serverless.
//
// Displays detailed information about a specified application.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for EMR Serverless's
// API operation GetApplication for usage and error information.
//
// Returned Error Types:
//
// - ValidationException
// The input fails to satisfy the constraints specified by an Amazon Web Services
// service.
//
// - ResourceNotFoundException
// The specified resource was not found.
//
// - InternalServerException
// Request processing failed because of an error or failure with the service.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/GetApplication
func (c *EMRServerless) GetApplication(input *GetApplicationInput) (*GetApplicationOutput, error) {
req, out := c.GetApplicationRequest(input)
return out, req.Send()
}
// GetApplicationWithContext is the same as GetApplication with the addition of
// the ability to pass a context and additional request options.
//
// See GetApplication for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *EMRServerless) GetApplicationWithContext(ctx aws.Context, input *GetApplicationInput, opts ...request.Option) (*GetApplicationOutput, error) {
req, out := c.GetApplicationRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opGetDashboardForJobRun = "GetDashboardForJobRun"
// GetDashboardForJobRunRequest generates a "aws/request.Request" representing the
// client's request for the GetDashboardForJobRun operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See GetDashboardForJobRun for more information on using the GetDashboardForJobRun
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
// // Example sending a request using the GetDashboardForJobRunRequest method.
// req, resp := client.GetDashboardForJobRunRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/GetDashboardForJobRun
func (c *EMRServerless) GetDashboardForJobRunRequest(input *GetDashboardForJobRunInput) (req *request.Request, output *GetDashboardForJobRunOutput) {
op := &request.Operation{
Name: opGetDashboardForJobRun,
HTTPMethod: "GET",
HTTPPath: "/applications/{applicationId}/jobruns/{jobRunId}/dashboard",
}
if input == nil {
input = &GetDashboardForJobRunInput{}
}
output = &GetDashboardForJobRunOutput{}
req = c.newRequest(op, input, output)
return
}
// GetDashboardForJobRun API operation for EMR Serverless.
//
// Creates and returns a URL that you can use to access the application UIs
// for a job run.
//
// For jobs in a running state, the application UI is a live user interface
// such as the Spark or Tez web UI. For completed jobs, the application UI is
// a persistent application user interface such as the Spark History Server
// or persistent Tez UI.
//
// The URL is valid for one hour after you generate it. To access the application
// UI after that hour elapses, you must invoke the API again to generate a new
// URL.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for EMR Serverless's
// API operation GetDashboardForJobRun for usage and error information.
//
// Returned Error Types:
//
// - ValidationException
// The input fails to satisfy the constraints specified by an Amazon Web Services
// service.
//
// - ResourceNotFoundException
// The specified resource was not found.
//
// - InternalServerException
// Request processing failed because of an error or failure with the service.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/GetDashboardForJobRun
func (c *EMRServerless) GetDashboardForJobRun(input *GetDashboardForJobRunInput) (*GetDashboardForJobRunOutput, error) {
req, out := c.GetDashboardForJobRunRequest(input)
return out, req.Send()
}
// GetDashboardForJobRunWithContext is the same as GetDashboardForJobRun with the addition of
// the ability to pass a context and additional request options.
//
// See GetDashboardForJobRun for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *EMRServerless) GetDashboardForJobRunWithContext(ctx aws.Context, input *GetDashboardForJobRunInput, opts ...request.Option) (*GetDashboardForJobRunOutput, error) {
req, out := c.GetDashboardForJobRunRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opGetJobRun = "GetJobRun"
// GetJobRunRequest generates a "aws/request.Request" representing the
// client's request for the GetJobRun operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See GetJobRun for more information on using the GetJobRun
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
// // Example sending a request using the GetJobRunRequest method.
// req, resp := client.GetJobRunRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/GetJobRun
func (c *EMRServerless) GetJobRunRequest(input *GetJobRunInput) (req *request.Request, output *GetJobRunOutput) {
op := &request.Operation{
Name: opGetJobRun,
HTTPMethod: "GET",
HTTPPath: "/applications/{applicationId}/jobruns/{jobRunId}",
}
if input == nil {
input = &GetJobRunInput{}
}
output = &GetJobRunOutput{}
req = c.newRequest(op, input, output)
return
}
// GetJobRun API operation for EMR Serverless.
//
// Displays detailed information about a job run.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for EMR Serverless's
// API operation GetJobRun for usage and error information.
//
// Returned Error Types:
//
// - ValidationException
// The input fails to satisfy the constraints specified by an Amazon Web Services
// service.
//
// - ResourceNotFoundException
// The specified resource was not found.
//
// - InternalServerException
// Request processing failed because of an error or failure with the service.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/GetJobRun
func (c *EMRServerless) GetJobRun(input *GetJobRunInput) (*GetJobRunOutput, error) {
req, out := c.GetJobRunRequest(input)
return out, req.Send()
}
// GetJobRunWithContext is the same as GetJobRun with the addition of
// the ability to pass a context and additional request options.
//
// See GetJobRun for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *EMRServerless) GetJobRunWithContext(ctx aws.Context, input *GetJobRunInput, opts ...request.Option) (*GetJobRunOutput, error) {
req, out := c.GetJobRunRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opListApplications = "ListApplications"
// ListApplicationsRequest generates a "aws/request.Request" representing the
// client's request for the ListApplications operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See ListApplications for more information on using the ListApplications
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
// // Example sending a request using the ListApplicationsRequest method.
// req, resp := client.ListApplicationsRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/ListApplications
func (c *EMRServerless) ListApplicationsRequest(input *ListApplicationsInput) (req *request.Request, output *ListApplicationsOutput) {
op := &request.Operation{
Name: opListApplications,
HTTPMethod: "GET",
HTTPPath: "/applications",
Paginator: &request.Paginator{
InputTokens: []string{"nextToken"},
OutputTokens: []string{"nextToken"},
LimitToken: "maxResults",
TruncationToken: "",
},
}
if input == nil {
input = &ListApplicationsInput{}
}
output = &ListApplicationsOutput{}
req = c.newRequest(op, input, output)
return
}
// ListApplications API operation for EMR Serverless.
//
// Lists applications based on a set of parameters.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for EMR Serverless's
// API operation ListApplications for usage and error information.
//
// Returned Error Types:
//
// - ValidationException
// The input fails to satisfy the constraints specified by an Amazon Web Services
// service.
//
// - InternalServerException
// Request processing failed because of an error or failure with the service.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/ListApplications
func (c *EMRServerless) ListApplications(input *ListApplicationsInput) (*ListApplicationsOutput, error) {
req, out := c.ListApplicationsRequest(input)
return out, req.Send()
}
// ListApplicationsWithContext is the same as ListApplications with the addition of
// the ability to pass a context and additional request options.
//
// See ListApplications for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *EMRServerless) ListApplicationsWithContext(ctx aws.Context, input *ListApplicationsInput, opts ...request.Option) (*ListApplicationsOutput, error) {
req, out := c.ListApplicationsRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
// ListApplicationsPages iterates over the pages of a ListApplications operation,
// calling the "fn" function with the response data for each page. To stop
// iterating, return false from the fn function.
//
// See ListApplications method for more information on how to use this operation.
//
// Note: This operation can generate multiple requests to a service.
//
// // Example iterating over at most 3 pages of a ListApplications operation.
// pageNum := 0
// err := client.ListApplicationsPages(params,
// func(page *emrserverless.ListApplicationsOutput, lastPage bool) bool {
// pageNum++
// fmt.Println(page)
// return pageNum <= 3
// })
func (c *EMRServerless) ListApplicationsPages(input *ListApplicationsInput, fn func(*ListApplicationsOutput, bool) bool) error {
return c.ListApplicationsPagesWithContext(aws.BackgroundContext(), input, fn)
}
// ListApplicationsPagesWithContext same as ListApplicationsPages except
// it takes a Context and allows setting request options on the pages.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *EMRServerless) ListApplicationsPagesWithContext(ctx aws.Context, input *ListApplicationsInput, fn func(*ListApplicationsOutput, bool) bool, opts ...request.Option) error {
p := request.Pagination{
NewRequest: func() (*request.Request, error) {
var inCpy *ListApplicationsInput
if input != nil {
tmp := *input
inCpy = &tmp
}
req, _ := c.ListApplicationsRequest(inCpy)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return req, nil
},
}
for p.Next() {
if !fn(p.Page().(*ListApplicationsOutput), !p.HasNextPage()) {
break
}
}
return p.Err()
}
const opListJobRunAttempts = "ListJobRunAttempts"
// ListJobRunAttemptsRequest generates a "aws/request.Request" representing the
// client's request for the ListJobRunAttempts operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See ListJobRunAttempts for more information on using the ListJobRunAttempts
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
// // Example sending a request using the ListJobRunAttemptsRequest method.
// req, resp := client.ListJobRunAttemptsRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/ListJobRunAttempts
func (c *EMRServerless) ListJobRunAttemptsRequest(input *ListJobRunAttemptsInput) (req *request.Request, output *ListJobRunAttemptsOutput) {
op := &request.Operation{
Name: opListJobRunAttempts,
HTTPMethod: "GET",
HTTPPath: "/applications/{applicationId}/jobruns/{jobRunId}/attempts",
Paginator: &request.Paginator{
InputTokens: []string{"nextToken"},
OutputTokens: []string{"nextToken"},
LimitToken: "maxResults",
TruncationToken: "",
},
}
if input == nil {
input = &ListJobRunAttemptsInput{}
}
output = &ListJobRunAttemptsOutput{}
req = c.newRequest(op, input, output)
return
}
// ListJobRunAttempts API operation for EMR Serverless.
//
// Lists all attempt of a job run.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for EMR Serverless's
// API operation ListJobRunAttempts for usage and error information.
//
// Returned Error Types:
//
// - ValidationException
// The input fails to satisfy the constraints specified by an Amazon Web Services
// service.
//
// - ResourceNotFoundException
// The specified resource was not found.
//
// - InternalServerException
// Request processing failed because of an error or failure with the service.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/ListJobRunAttempts
func (c *EMRServerless) ListJobRunAttempts(input *ListJobRunAttemptsInput) (*ListJobRunAttemptsOutput, error) {
req, out := c.ListJobRunAttemptsRequest(input)
return out, req.Send()
}
// ListJobRunAttemptsWithContext is the same as ListJobRunAttempts with the addition of
// the ability to pass a context and additional request options.
//
// See ListJobRunAttempts for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *EMRServerless) ListJobRunAttemptsWithContext(ctx aws.Context, input *ListJobRunAttemptsInput, opts ...request.Option) (*ListJobRunAttemptsOutput, error) {
req, out := c.ListJobRunAttemptsRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
// ListJobRunAttemptsPages iterates over the pages of a ListJobRunAttempts operation,
// calling the "fn" function with the response data for each page. To stop
// iterating, return false from the fn function.
//
// See ListJobRunAttempts method for more information on how to use this operation.
//
// Note: This operation can generate multiple requests to a service.
//
// // Example iterating over at most 3 pages of a ListJobRunAttempts operation.
// pageNum := 0
// err := client.ListJobRunAttemptsPages(params,
// func(page *emrserverless.ListJobRunAttemptsOutput, lastPage bool) bool {
// pageNum++
// fmt.Println(page)
// return pageNum <= 3
// })
func (c *EMRServerless) ListJobRunAttemptsPages(input *ListJobRunAttemptsInput, fn func(*ListJobRunAttemptsOutput, bool) bool) error {
return c.ListJobRunAttemptsPagesWithContext(aws.BackgroundContext(), input, fn)
}
// ListJobRunAttemptsPagesWithContext same as ListJobRunAttemptsPages except
// it takes a Context and allows setting request options on the pages.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *EMRServerless) ListJobRunAttemptsPagesWithContext(ctx aws.Context, input *ListJobRunAttemptsInput, fn func(*ListJobRunAttemptsOutput, bool) bool, opts ...request.Option) error {
p := request.Pagination{
NewRequest: func() (*request.Request, error) {
var inCpy *ListJobRunAttemptsInput
if input != nil {
tmp := *input
inCpy = &tmp
}
req, _ := c.ListJobRunAttemptsRequest(inCpy)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return req, nil
},
}
for p.Next() {
if !fn(p.Page().(*ListJobRunAttemptsOutput), !p.HasNextPage()) {
break
}
}
return p.Err()
}
const opListJobRuns = "ListJobRuns"
// ListJobRunsRequest generates a "aws/request.Request" representing the
// client's request for the ListJobRuns operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See ListJobRuns for more information on using the ListJobRuns
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
// // Example sending a request using the ListJobRunsRequest method.
// req, resp := client.ListJobRunsRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/ListJobRuns
func (c *EMRServerless) ListJobRunsRequest(input *ListJobRunsInput) (req *request.Request, output *ListJobRunsOutput) {
op := &request.Operation{
Name: opListJobRuns,
HTTPMethod: "GET",
HTTPPath: "/applications/{applicationId}/jobruns",
Paginator: &request.Paginator{
InputTokens: []string{"nextToken"},
OutputTokens: []string{"nextToken"},
LimitToken: "maxResults",
TruncationToken: "",
},
}
if input == nil {
input = &ListJobRunsInput{}
}
output = &ListJobRunsOutput{}
req = c.newRequest(op, input, output)
return
}
// ListJobRuns API operation for EMR Serverless.
//
// Lists job runs based on a set of parameters.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for EMR Serverless's
// API operation ListJobRuns for usage and error information.
//
// Returned Error Types:
//
// - ValidationException
// The input fails to satisfy the constraints specified by an Amazon Web Services
// service.
//
// - InternalServerException
// Request processing failed because of an error or failure with the service.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/ListJobRuns
func (c *EMRServerless) ListJobRuns(input *ListJobRunsInput) (*ListJobRunsOutput, error) {
req, out := c.ListJobRunsRequest(input)
return out, req.Send()
}
// ListJobRunsWithContext is the same as ListJobRuns with the addition of
// the ability to pass a context and additional request options.
//
// See ListJobRuns for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *EMRServerless) ListJobRunsWithContext(ctx aws.Context, input *ListJobRunsInput, opts ...request.Option) (*ListJobRunsOutput, error) {
req, out := c.ListJobRunsRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
// ListJobRunsPages iterates over the pages of a ListJobRuns operation,
// calling the "fn" function with the response data for each page. To stop
// iterating, return false from the fn function.
//
// See ListJobRuns method for more information on how to use this operation.
//
// Note: This operation can generate multiple requests to a service.
//
// // Example iterating over at most 3 pages of a ListJobRuns operation.
// pageNum := 0
// err := client.ListJobRunsPages(params,
// func(page *emrserverless.ListJobRunsOutput, lastPage bool) bool {
// pageNum++
// fmt.Println(page)
// return pageNum <= 3
// })
func (c *EMRServerless) ListJobRunsPages(input *ListJobRunsInput, fn func(*ListJobRunsOutput, bool) bool) error {
return c.ListJobRunsPagesWithContext(aws.BackgroundContext(), input, fn)
}
// ListJobRunsPagesWithContext same as ListJobRunsPages except
// it takes a Context and allows setting request options on the pages.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *EMRServerless) ListJobRunsPagesWithContext(ctx aws.Context, input *ListJobRunsInput, fn func(*ListJobRunsOutput, bool) bool, opts ...request.Option) error {
p := request.Pagination{
NewRequest: func() (*request.Request, error) {
var inCpy *ListJobRunsInput
if input != nil {
tmp := *input
inCpy = &tmp
}
req, _ := c.ListJobRunsRequest(inCpy)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return req, nil
},
}
for p.Next() {
if !fn(p.Page().(*ListJobRunsOutput), !p.HasNextPage()) {
break
}
}
return p.Err()
}
const opListTagsForResource = "ListTagsForResource"
// ListTagsForResourceRequest generates a "aws/request.Request" representing the
// client's request for the ListTagsForResource operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See ListTagsForResource for more information on using the ListTagsForResource
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
// // Example sending a request using the ListTagsForResourceRequest method.
// req, resp := client.ListTagsForResourceRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/ListTagsForResource
func (c *EMRServerless) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) {
op := &request.Operation{
Name: opListTagsForResource,
HTTPMethod: "GET",
HTTPPath: "/tags/{resourceArn}",
}
if input == nil {
input = &ListTagsForResourceInput{}
}
output = &ListTagsForResourceOutput{}
req = c.newRequest(op, input, output)
return
}
// ListTagsForResource API operation for EMR Serverless.
//
// Lists the tags assigned to the resources.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for EMR Serverless's
// API operation ListTagsForResource for usage and error information.
//
// Returned Error Types:
//
// - ValidationException
// The input fails to satisfy the constraints specified by an Amazon Web Services
// service.
//
// - ResourceNotFoundException
// The specified resource was not found.
//
// - InternalServerException
// Request processing failed because of an error or failure with the service.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/ListTagsForResource
func (c *EMRServerless) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) {
req, out := c.ListTagsForResourceRequest(input)
return out, req.Send()
}
// ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of
// the ability to pass a context and additional request options.
//
// See ListTagsForResource for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *EMRServerless) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) {
req, out := c.ListTagsForResourceRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opStartApplication = "StartApplication"
// StartApplicationRequest generates a "aws/request.Request" representing the
// client's request for the StartApplication operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See StartApplication for more information on using the StartApplication
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
// // Example sending a request using the StartApplicationRequest method.
// req, resp := client.StartApplicationRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/StartApplication
func (c *EMRServerless) StartApplicationRequest(input *StartApplicationInput) (req *request.Request, output *StartApplicationOutput) {
op := &request.Operation{
Name: opStartApplication,
HTTPMethod: "POST",
HTTPPath: "/applications/{applicationId}/start",
}
if input == nil {
input = &StartApplicationInput{}
}
output = &StartApplicationOutput{}
req = c.newRequest(op, input, output)
req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
return
}
// StartApplication API operation for EMR Serverless.
//
// Starts a specified application and initializes initial capacity if configured.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for EMR Serverless's
// API operation StartApplication for usage and error information.
//
// Returned Error Types:
//
// - ValidationException
// The input fails to satisfy the constraints specified by an Amazon Web Services
// service.
//
// - ResourceNotFoundException
// The specified resource was not found.
//
// - InternalServerException
// Request processing failed because of an error or failure with the service.
//
// - ServiceQuotaExceededException
// The maximum number of resources per account has been reached.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/StartApplication
func (c *EMRServerless) StartApplication(input *StartApplicationInput) (*StartApplicationOutput, error) {
req, out := c.StartApplicationRequest(input)
return out, req.Send()
}
// StartApplicationWithContext is the same as StartApplication with the addition of
// the ability to pass a context and additional request options.
//
// See StartApplication for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *EMRServerless) StartApplicationWithContext(ctx aws.Context, input *StartApplicationInput, opts ...request.Option) (*StartApplicationOutput, error) {
req, out := c.StartApplicationRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opStartJobRun = "StartJobRun"
// StartJobRunRequest generates a "aws/request.Request" representing the
// client's request for the StartJobRun operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See StartJobRun for more information on using the StartJobRun
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
// // Example sending a request using the StartJobRunRequest method.
// req, resp := client.StartJobRunRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/StartJobRun
func (c *EMRServerless) StartJobRunRequest(input *StartJobRunInput) (req *request.Request, output *StartJobRunOutput) {
op := &request.Operation{
Name: opStartJobRun,
HTTPMethod: "POST",
HTTPPath: "/applications/{applicationId}/jobruns",
}
if input == nil {
input = &StartJobRunInput{}
}
output = &StartJobRunOutput{}
req = c.newRequest(op, input, output)
return
}
// StartJobRun API operation for EMR Serverless.
//
// Starts a job run.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for EMR Serverless's
// API operation StartJobRun for usage and error information.
//
// Returned Error Types:
//
// - ValidationException
// The input fails to satisfy the constraints specified by an Amazon Web Services
// service.
//
// - ResourceNotFoundException
// The specified resource was not found.
//
// - InternalServerException
// Request processing failed because of an error or failure with the service.
//
// - ConflictException
// The request could not be processed because of conflict in the current state
// of the resource.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/StartJobRun
func (c *EMRServerless) StartJobRun(input *StartJobRunInput) (*StartJobRunOutput, error) {
req, out := c.StartJobRunRequest(input)
return out, req.Send()
}
// StartJobRunWithContext is the same as StartJobRun with the addition of
// the ability to pass a context and additional request options.
//
// See StartJobRun for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *EMRServerless) StartJobRunWithContext(ctx aws.Context, input *StartJobRunInput, opts ...request.Option) (*StartJobRunOutput, error) {
req, out := c.StartJobRunRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opStopApplication = "StopApplication"
// StopApplicationRequest generates a "aws/request.Request" representing the
// client's request for the StopApplication operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See StopApplication for more information on using the StopApplication
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
// // Example sending a request using the StopApplicationRequest method.
// req, resp := client.StopApplicationRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/StopApplication
func (c *EMRServerless) StopApplicationRequest(input *StopApplicationInput) (req *request.Request, output *StopApplicationOutput) {
op := &request.Operation{
Name: opStopApplication,
HTTPMethod: "POST",
HTTPPath: "/applications/{applicationId}/stop",
}
if input == nil {
input = &StopApplicationInput{}
}
output = &StopApplicationOutput{}
req = c.newRequest(op, input, output)
req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
return
}
// StopApplication API operation for EMR Serverless.
//
// Stops a specified application and releases initial capacity if configured.
// All scheduled and running jobs must be completed or cancelled before stopping
// an application.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for EMR Serverless's
// API operation StopApplication for usage and error information.
//
// Returned Error Types:
//
// - ValidationException
// The input fails to satisfy the constraints specified by an Amazon Web Services
// service.
//
// - ResourceNotFoundException
// The specified resource was not found.
//
// - InternalServerException
// Request processing failed because of an error or failure with the service.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/StopApplication
func (c *EMRServerless) StopApplication(input *StopApplicationInput) (*StopApplicationOutput, error) {
req, out := c.StopApplicationRequest(input)
return out, req.Send()
}
// StopApplicationWithContext is the same as StopApplication with the addition of
// the ability to pass a context and additional request options.
//
// See StopApplication for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *EMRServerless) StopApplicationWithContext(ctx aws.Context, input *StopApplicationInput, opts ...request.Option) (*StopApplicationOutput, error) {
req, out := c.StopApplicationRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opTagResource = "TagResource"
// TagResourceRequest generates a "aws/request.Request" representing the
// client's request for the TagResource operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See TagResource for more information on using the TagResource
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
// // Example sending a request using the TagResourceRequest method.
// req, resp := client.TagResourceRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/TagResource
func (c *EMRServerless) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) {
op := &request.Operation{
Name: opTagResource,
HTTPMethod: "POST",
HTTPPath: "/tags/{resourceArn}",
}
if input == nil {
input = &TagResourceInput{}
}
output = &TagResourceOutput{}
req = c.newRequest(op, input, output)
req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
return
}
// TagResource API operation for EMR Serverless.
//
// Assigns tags to resources. A tag is a label that you assign to an Amazon
// Web Services resource. Each tag consists of a key and an optional value,
// both of which you define. Tags enable you to categorize your Amazon Web Services
// resources by attributes such as purpose, owner, or environment. When you
// have many resources of the same type, you can quickly identify a specific
// resource based on the tags you've assigned to it.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for EMR Serverless's
// API operation TagResource for usage and error information.
//
// Returned Error Types:
//
// - ValidationException
// The input fails to satisfy the constraints specified by an Amazon Web Services
// service.
//
// - ResourceNotFoundException
// The specified resource was not found.
//
// - InternalServerException
// Request processing failed because of an error or failure with the service.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/TagResource
func (c *EMRServerless) TagResource(input *TagResourceInput) (*TagResourceOutput, error) {
req, out := c.TagResourceRequest(input)
return out, req.Send()
}
// TagResourceWithContext is the same as TagResource with the addition of
// the ability to pass a context and additional request options.
//
// See TagResource for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *EMRServerless) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) {
req, out := c.TagResourceRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opUntagResource = "UntagResource"
// UntagResourceRequest generates a "aws/request.Request" representing the
// client's request for the UntagResource operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See UntagResource for more information on using the UntagResource
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
// // Example sending a request using the UntagResourceRequest method.
// req, resp := client.UntagResourceRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/UntagResource
func (c *EMRServerless) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) {
op := &request.Operation{
Name: opUntagResource,
HTTPMethod: "DELETE",
HTTPPath: "/tags/{resourceArn}",
}
if input == nil {
input = &UntagResourceInput{}
}
output = &UntagResourceOutput{}
req = c.newRequest(op, input, output)
req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
return
}
// UntagResource API operation for EMR Serverless.
//
// Removes tags from resources.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for EMR Serverless's
// API operation UntagResource for usage and error information.
//
// Returned Error Types:
//
// - ValidationException
// The input fails to satisfy the constraints specified by an Amazon Web Services
// service.
//
// - ResourceNotFoundException
// The specified resource was not found.
//
// - InternalServerException
// Request processing failed because of an error or failure with the service.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/UntagResource
func (c *EMRServerless) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) {
req, out := c.UntagResourceRequest(input)
return out, req.Send()
}
// UntagResourceWithContext is the same as UntagResource with the addition of
// the ability to pass a context and additional request options.
//
// See UntagResource for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *EMRServerless) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) {
req, out := c.UntagResourceRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opUpdateApplication = "UpdateApplication"
// UpdateApplicationRequest generates a "aws/request.Request" representing the
// client's request for the UpdateApplication operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See UpdateApplication for more information on using the UpdateApplication
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
// // Example sending a request using the UpdateApplicationRequest method.
// req, resp := client.UpdateApplicationRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/UpdateApplication
func (c *EMRServerless) UpdateApplicationRequest(input *UpdateApplicationInput) (req *request.Request, output *UpdateApplicationOutput) {
op := &request.Operation{
Name: opUpdateApplication,
HTTPMethod: "PATCH",
HTTPPath: "/applications/{applicationId}",
}
if input == nil {
input = &UpdateApplicationInput{}
}
output = &UpdateApplicationOutput{}
req = c.newRequest(op, input, output)
return
}
// UpdateApplication API operation for EMR Serverless.
//
// Updates a specified application. An application has to be in a stopped or
// created state in order to be updated.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for EMR Serverless's
// API operation UpdateApplication for usage and error information.
//
// Returned Error Types:
//
// - ValidationException
// The input fails to satisfy the constraints specified by an Amazon Web Services
// service.
//
// - ResourceNotFoundException
// The specified resource was not found.
//
// - InternalServerException
// Request processing failed because of an error or failure with the service.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/UpdateApplication
func (c *EMRServerless) UpdateApplication(input *UpdateApplicationInput) (*UpdateApplicationOutput, error) {
req, out := c.UpdateApplicationRequest(input)
return out, req.Send()
}
// UpdateApplicationWithContext is the same as UpdateApplication with the addition of
// the ability to pass a context and additional request options.
//
// See UpdateApplication for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *EMRServerless) UpdateApplicationWithContext(ctx aws.Context, input *UpdateApplicationInput, opts ...request.Option) (*UpdateApplicationOutput, error) {
req, out := c.UpdateApplicationRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
// Information about an application. Amazon EMR Serverless uses applications
// to run jobs.
type Application struct {
_ struct{} `type:"structure"`
// The ID of the application.
//
// ApplicationId is a required field
ApplicationId *string `locationName:"applicationId" min:"1" type:"string" required:"true"`
// The CPU architecture of an application.
Architecture *string `locationName:"architecture" type:"string" enum:"Architecture"`
// The ARN of the application.
//
// Arn is a required field
Arn *string `locationName:"arn" min:"60" type:"string" required:"true"`
// The configuration for an application to automatically start on job submission.
AutoStartConfiguration *AutoStartConfig `locationName:"autoStartConfiguration" type:"structure"`
// The configuration for an application to automatically stop after a certain
// amount of time being idle.
AutoStopConfiguration *AutoStopConfig `locationName:"autoStopConfiguration" type:"structure"`
// The date and time when the application run was created.
//
// CreatedAt is a required field
CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"`
// The image configuration applied to all worker types.
ImageConfiguration *ImageConfiguration `locationName:"imageConfiguration" type:"structure"`
// The initial capacity of the application.
InitialCapacity map[string]*InitialCapacityConfig `locationName:"initialCapacity" type:"map"`
// The interactive configuration object that enables the interactive use cases
// for an application.
InteractiveConfiguration *InteractiveConfiguration `locationName:"interactiveConfiguration" type:"structure"`
// The maximum capacity of the application. This is cumulative across all workers
// at any given point in time during the lifespan of the application is created.
// No new resources will be created once any one of the defined limits is hit.
MaximumCapacity *MaximumAllowedResources `locationName:"maximumCapacity" type:"structure"`
// The configuration setting for monitoring.
MonitoringConfiguration *MonitoringConfiguration `locationName:"monitoringConfiguration" type:"structure"`
// The name of the application.
Name *string `locationName:"name" min:"1" type:"string"`
// The network configuration for customer VPC connectivity for the application.
NetworkConfiguration *NetworkConfiguration `locationName:"networkConfiguration" type:"structure"`
// The Amazon EMR release associated with the application.
//
// ReleaseLabel is a required field
ReleaseLabel *string `locationName:"releaseLabel" min:"1" type:"string" required:"true"`
// The Configuration (https://docs.aws.amazon.com/emr-serverless/latest/APIReference/API_Configuration.html)
// specifications of an application. Each configuration consists of a classification
// and properties. You use this parameter when creating or updating an application.
// To see the runtimeConfiguration object of an application, run the GetApplication
// (https://docs.aws.amazon.com/emr-serverless/latest/APIReference/API_GetApplication.html)
// API operation.
RuntimeConfiguration []*Configuration `locationName:"runtimeConfiguration" type:"list"`
// The state of the application.
//
// State is a required field
State *string `locationName:"state" type:"string" required:"true" enum:"ApplicationState"`
// The state details of the application.
StateDetails *string `locationName:"stateDetails" min:"1" type:"string"`
// The tags assigned to the application.
Tags map[string]*string `locationName:"tags" type:"map"`
// The type of application, such as Spark or Hive.
//
// Type is a required field
Type *string `locationName:"type" min:"1" type:"string" required:"true"`
// The date and time when the application run was last updated.
//
// UpdatedAt is a required field
UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" required:"true"`
// The specification applied to each worker type.
WorkerTypeSpecifications map[string]*WorkerTypeSpecification `locationName:"workerTypeSpecifications" type:"map"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s Application) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s Application) GoString() string {
return s.String()
}
// SetApplicationId sets the ApplicationId field's value.
func (s *Application) SetApplicationId(v string) *Application {
s.ApplicationId = &v
return s
}
// SetArchitecture sets the Architecture field's value.
func (s *Application) SetArchitecture(v string) *Application {
s.Architecture = &v
return s
}
// SetArn sets the Arn field's value.
func (s *Application) SetArn(v string) *Application {
s.Arn = &v
return s
}
// SetAutoStartConfiguration sets the AutoStartConfiguration field's value.
func (s *Application) SetAutoStartConfiguration(v *AutoStartConfig) *Application {
s.AutoStartConfiguration = v
return s
}
// SetAutoStopConfiguration sets the AutoStopConfiguration field's value.
func (s *Application) SetAutoStopConfiguration(v *AutoStopConfig) *Application {
s.AutoStopConfiguration = v
return s
}
// SetCreatedAt sets the CreatedAt field's value.
func (s *Application) SetCreatedAt(v time.Time) *Application {
s.CreatedAt = &v
return s
}
// SetImageConfiguration sets the ImageConfiguration field's value.
func (s *Application) SetImageConfiguration(v *ImageConfiguration) *Application {
s.ImageConfiguration = v
return s
}
// SetInitialCapacity sets the InitialCapacity field's value.
func (s *Application) SetInitialCapacity(v map[string]*InitialCapacityConfig) *Application {
s.InitialCapacity = v
return s
}
// SetInteractiveConfiguration sets the InteractiveConfiguration field's value.
func (s *Application) SetInteractiveConfiguration(v *InteractiveConfiguration) *Application {
s.InteractiveConfiguration = v
return s
}
// SetMaximumCapacity sets the MaximumCapacity field's value.
func (s *Application) SetMaximumCapacity(v *MaximumAllowedResources) *Application {
s.MaximumCapacity = v
return s
}
// SetMonitoringConfiguration sets the MonitoringConfiguration field's value.
func (s *Application) SetMonitoringConfiguration(v *MonitoringConfiguration) *Application {
s.MonitoringConfiguration = v
return s
}
// SetName sets the Name field's value.
func (s *Application) SetName(v string) *Application {
s.Name = &v
return s
}
// SetNetworkConfiguration sets the NetworkConfiguration field's value.
func (s *Application) SetNetworkConfiguration(v *NetworkConfiguration) *Application {
s.NetworkConfiguration = v
return s
}
// SetReleaseLabel sets the ReleaseLabel field's value.
func (s *Application) SetReleaseLabel(v string) *Application {
s.ReleaseLabel = &v
return s
}
// SetRuntimeConfiguration sets the RuntimeConfiguration field's value.
func (s *Application) SetRuntimeConfiguration(v []*Configuration) *Application {
s.RuntimeConfiguration = v
return s
}
// SetState sets the State field's value.
func (s *Application) SetState(v string) *Application {
s.State = &v
return s
}
// SetStateDetails sets the StateDetails field's value.
func (s *Application) SetStateDetails(v string) *Application {
s.StateDetails = &v
return s
}
// SetTags sets the Tags field's value.
func (s *Application) SetTags(v map[string]*string) *Application {
s.Tags = v
return s
}
// SetType sets the Type field's value.
func (s *Application) SetType(v string) *Application {
s.Type = &v
return s
}
// SetUpdatedAt sets the UpdatedAt field's value.
func (s *Application) SetUpdatedAt(v time.Time) *Application {
s.UpdatedAt = &v
return s
}
// SetWorkerTypeSpecifications sets the WorkerTypeSpecifications field's value.
func (s *Application) SetWorkerTypeSpecifications(v map[string]*WorkerTypeSpecification) *Application {
s.WorkerTypeSpecifications = v
return s
}
// The summary of attributes associated with an application.
type ApplicationSummary struct {
_ struct{} `type:"structure"`
// The CPU architecture of an application.
Architecture *string `locationName:"architecture" type:"string" enum:"Architecture"`
// The ARN of the application.
//
// Arn is a required field
Arn *string `locationName:"arn" min:"60" type:"string" required:"true"`
// The date and time when the application was created.
//
// CreatedAt is a required field
CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"`
// The ID of the application.
//
// Id is a required field
Id *string `locationName:"id" min:"1" type:"string" required:"true"`
// The name of the application.
Name *string `locationName:"name" min:"1" type:"string"`
// The Amazon EMR release associated with the application.
//
// ReleaseLabel is a required field
ReleaseLabel *string `locationName:"releaseLabel" min:"1" type:"string" required:"true"`
// The state of the application.
//
// State is a required field
State *string `locationName:"state" type:"string" required:"true" enum:"ApplicationState"`
// The state details of the application.
StateDetails *string `locationName:"stateDetails" min:"1" type:"string"`
// The type of application, such as Spark or Hive.
//
// Type is a required field
Type *string `locationName:"type" min:"1" type:"string" required:"true"`
// The date and time when the application was last updated.
//
// UpdatedAt is a required field
UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" required:"true"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ApplicationSummary) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ApplicationSummary) GoString() string {
return s.String()
}
// SetArchitecture sets the Architecture field's value.
func (s *ApplicationSummary) SetArchitecture(v string) *ApplicationSummary {
s.Architecture = &v
return s
}
// SetArn sets the Arn field's value.
func (s *ApplicationSummary) SetArn(v string) *ApplicationSummary {
s.Arn = &v
return s
}
// SetCreatedAt sets the CreatedAt field's value.
func (s *ApplicationSummary) SetCreatedAt(v time.Time) *ApplicationSummary {
s.CreatedAt = &v
return s
}
// SetId sets the Id field's value.
func (s *ApplicationSummary) SetId(v string) *ApplicationSummary {
s.Id = &v
return s
}
// SetName sets the Name field's value.
func (s *ApplicationSummary) SetName(v string) *ApplicationSummary {
s.Name = &v
return s
}
// SetReleaseLabel sets the ReleaseLabel field's value.
func (s *ApplicationSummary) SetReleaseLabel(v string) *ApplicationSummary {
s.ReleaseLabel = &v
return s
}
// SetState sets the State field's value.
func (s *ApplicationSummary) SetState(v string) *ApplicationSummary {
s.State = &v
return s
}
// SetStateDetails sets the StateDetails field's value.
func (s *ApplicationSummary) SetStateDetails(v string) *ApplicationSummary {
s.StateDetails = &v
return s
}
// SetType sets the Type field's value.
func (s *ApplicationSummary) SetType(v string) *ApplicationSummary {
s.Type = &v
return s
}
// SetUpdatedAt sets the UpdatedAt field's value.
func (s *ApplicationSummary) SetUpdatedAt(v time.Time) *ApplicationSummary {
s.UpdatedAt = &v
return s
}
// The configuration for an application to automatically start on job submission.
type AutoStartConfig struct {
_ struct{} `type:"structure"`
// Enables the application to automatically start on job submission. Defaults
// to true.
Enabled *bool `locationName:"enabled" type:"boolean"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s AutoStartConfig) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s AutoStartConfig) GoString() string {
return s.String()
}
// SetEnabled sets the Enabled field's value.
func (s *AutoStartConfig) SetEnabled(v bool) *AutoStartConfig {
s.Enabled = &v
return s
}
// The configuration for an application to automatically stop after a certain
// amount of time being idle.
type AutoStopConfig struct {
_ struct{} `type:"structure"`
// Enables the application to automatically stop after a certain amount of time
// being idle. Defaults to true.
Enabled *bool `locationName:"enabled" type:"boolean"`
// The amount of idle time in minutes after which your application will automatically
// stop. Defaults to 15 minutes.
IdleTimeoutMinutes *int64 `locationName:"idleTimeoutMinutes" min:"1" type:"integer"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s AutoStopConfig) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s AutoStopConfig) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *AutoStopConfig) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "AutoStopConfig"}
if s.IdleTimeoutMinutes != nil && *s.IdleTimeoutMinutes < 1 {
invalidParams.Add(request.NewErrParamMinValue("IdleTimeoutMinutes", 1))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetEnabled sets the Enabled field's value.
func (s *AutoStopConfig) SetEnabled(v bool) *AutoStopConfig {
s.Enabled = &v
return s
}
// SetIdleTimeoutMinutes sets the IdleTimeoutMinutes field's value.
func (s *AutoStopConfig) SetIdleTimeoutMinutes(v int64) *AutoStopConfig {
s.IdleTimeoutMinutes = &v
return s
}
type CancelJobRunInput struct {
_ struct{} `type:"structure" nopayload:"true"`
// The ID of the application on which the job run will be canceled.
//
// ApplicationId is a required field
ApplicationId *string `location:"uri" locationName:"applicationId" min:"1" type:"string" required:"true"`
// The ID of the job run to cancel.
//
// JobRunId is a required field
JobRunId *string `location:"uri" locationName:"jobRunId" min:"1" type:"string" required:"true"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s CancelJobRunInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s CancelJobRunInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *CancelJobRunInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "CancelJobRunInput"}
if s.ApplicationId == nil {
invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
}
if s.ApplicationId != nil && len(*s.ApplicationId) < 1 {
invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 1))
}
if s.JobRunId == nil {
invalidParams.Add(request.NewErrParamRequired("JobRunId"))
}
if s.JobRunId != nil && len(*s.JobRunId) < 1 {
invalidParams.Add(request.NewErrParamMinLen("JobRunId", 1))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetApplicationId sets the ApplicationId field's value.
func (s *CancelJobRunInput) SetApplicationId(v string) *CancelJobRunInput {
s.ApplicationId = &v
return s
}
// SetJobRunId sets the JobRunId field's value.
func (s *CancelJobRunInput) SetJobRunId(v string) *CancelJobRunInput {
s.JobRunId = &v
return s
}
type CancelJobRunOutput struct {
_ struct{} `type:"structure"`
// The output contains the application ID on which the job run is cancelled.
//
// ApplicationId is a required field
ApplicationId *string `locationName:"applicationId" min:"1" type:"string" required:"true"`
// The output contains the ID of the cancelled job run.
//
// JobRunId is a required field
JobRunId *string `locationName:"jobRunId" min:"1" type:"string" required:"true"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s CancelJobRunOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s CancelJobRunOutput) GoString() string {
return s.String()
}
// SetApplicationId sets the ApplicationId field's value.
func (s *CancelJobRunOutput) SetApplicationId(v string) *CancelJobRunOutput {
s.ApplicationId = &v
return s
}
// SetJobRunId sets the JobRunId field's value.
func (s *CancelJobRunOutput) SetJobRunId(v string) *CancelJobRunOutput {
s.JobRunId = &v
return s
}
// The Amazon CloudWatch configuration for monitoring logs. You can configure
// your jobs to send log information to CloudWatch.
type CloudWatchLoggingConfiguration struct {
_ struct{} `type:"structure"`
// Enables CloudWatch logging.
//
// Enabled is a required field
Enabled *bool `locationName:"enabled" type:"boolean" required:"true"`
// The Key Management Service (KMS) key ARN to encrypt the logs that you store
// in CloudWatch Logs.
EncryptionKeyArn *string `locationName:"encryptionKeyArn" min:"20" type:"string"`
// The name of the log group in Amazon CloudWatch Logs where you want to publish
// your logs.
LogGroupName *string `locationName:"logGroupName" min:"1" type:"string"`
// Prefix for the CloudWatch log stream name.
LogStreamNamePrefix *string `locationName:"logStreamNamePrefix" min:"1" type:"string"`
// The types of logs that you want to publish to CloudWatch. If you don't specify
// any log types, driver STDOUT and STDERR logs will be published to CloudWatch
// Logs by default. For more information including the supported worker types
// for Hive and Spark, see Logging for EMR Serverless with CloudWatch (https://docs.aws.amazon.com/emr/latest/EMR-Serverless-UserGuide/logging.html#jobs-log-storage-cw).
//
// * Key Valid Values: SPARK_DRIVER, SPARK_EXECUTOR, HIVE_DRIVER, TEZ_TASK
//
// * Array Members Valid Values: STDOUT, STDERR, HIVE_LOG, TEZ_AM, SYSTEM_LOGS
LogTypes map[string][]*string `locationName:"logTypes" min:"1" type:"map"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s CloudWatchLoggingConfiguration) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s CloudWatchLoggingConfiguration) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *CloudWatchLoggingConfiguration) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "CloudWatchLoggingConfiguration"}
if s.Enabled == nil {
invalidParams.Add(request.NewErrParamRequired("Enabled"))
}
if s.EncryptionKeyArn != nil && len(*s.EncryptionKeyArn) < 20 {
invalidParams.Add(request.NewErrParamMinLen("EncryptionKeyArn", 20))
}
if s.LogGroupName != nil && len(*s.LogGroupName) < 1 {
invalidParams.Add(request.NewErrParamMinLen("LogGroupName", 1))
}
if s.LogStreamNamePrefix != nil && len(*s.LogStreamNamePrefix) < 1 {
invalidParams.Add(request.NewErrParamMinLen("LogStreamNamePrefix", 1))
}
if s.LogTypes != nil && len(s.LogTypes) < 1 {
invalidParams.Add(request.NewErrParamMinLen("LogTypes", 1))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetEnabled sets the Enabled field's value.
func (s *CloudWatchLoggingConfiguration) SetEnabled(v bool) *CloudWatchLoggingConfiguration {
s.Enabled = &v
return s
}
// SetEncryptionKeyArn sets the EncryptionKeyArn field's value.
func (s *CloudWatchLoggingConfiguration) SetEncryptionKeyArn(v string) *CloudWatchLoggingConfiguration {
s.EncryptionKeyArn = &v
return s
}
// SetLogGroupName sets the LogGroupName field's value.
func (s *CloudWatchLoggingConfiguration) SetLogGroupName(v string) *CloudWatchLoggingConfiguration {
s.LogGroupName = &v
return s
}
// SetLogStreamNamePrefix sets the LogStreamNamePrefix field's value.
func (s *CloudWatchLoggingConfiguration) SetLogStreamNamePrefix(v string) *CloudWatchLoggingConfiguration {
s.LogStreamNamePrefix = &v
return s
}
// SetLogTypes sets the LogTypes field's value.
func (s *CloudWatchLoggingConfiguration) SetLogTypes(v map[string][]*string) *CloudWatchLoggingConfiguration {
s.LogTypes = v
return s
}
// A configuration specification to be used when provisioning an application.
// A configuration consists of a classification, properties, and optional nested
// configurations. A classification refers to an application-specific configuration
// file. Properties are the settings you want to change in that file.
type Configuration struct {
_ struct{} `type:"structure"`
// The classification within a configuration.
//
// Classification is a required field
Classification *string `locationName:"classification" min:"1" type:"string" required:"true"`
// A list of additional configurations to apply within a configuration object.
Configurations []*Configuration `locationName:"configurations" type:"list"`
// A set of properties specified within a configuration classification.
//
// Properties is a sensitive parameter and its value will be
// replaced with "sensitive" in string returned by Configuration's
// String and GoString methods.
Properties map[string]*string `locationName:"properties" type:"map" sensitive:"true"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s Configuration) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s Configuration) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *Configuration) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "Configuration"}
if s.Classification == nil {
invalidParams.Add(request.NewErrParamRequired("Classification"))
}
if s.Classification != nil && len(*s.Classification) < 1 {
invalidParams.Add(request.NewErrParamMinLen("Classification", 1))
}
if s.Configurations != nil {
for i, v := range s.Configurations {
if v == nil {
continue
}
if err := v.Validate(); err != nil {
invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Configurations", i), err.(request.ErrInvalidParams))
}
}
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetClassification sets the Classification field's value.
func (s *Configuration) SetClassification(v string) *Configuration {
s.Classification = &v
return s
}
// SetConfigurations sets the Configurations field's value.
func (s *Configuration) SetConfigurations(v []*Configuration) *Configuration {
s.Configurations = v
return s
}
// SetProperties sets the Properties field's value.
func (s *Configuration) SetProperties(v map[string]*string) *Configuration {
s.Properties = v
return s
}
// A configuration specification to be used to override existing configurations.
type ConfigurationOverrides struct {
_ struct{} `type:"structure"`
// The override configurations for the application.
ApplicationConfiguration []*Configuration `locationName:"applicationConfiguration" type:"list"`
// The override configurations for monitoring.
MonitoringConfiguration *MonitoringConfiguration `locationName:"monitoringConfiguration" type:"structure"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ConfigurationOverrides) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ConfigurationOverrides) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *ConfigurationOverrides) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "ConfigurationOverrides"}
if s.ApplicationConfiguration != nil {
for i, v := range s.ApplicationConfiguration {
if v == nil {
continue
}
if err := v.Validate(); err != nil {
invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ApplicationConfiguration", i), err.(request.ErrInvalidParams))
}
}
}
if s.MonitoringConfiguration != nil {
if err := s.MonitoringConfiguration.Validate(); err != nil {
invalidParams.AddNested("MonitoringConfiguration", err.(request.ErrInvalidParams))
}
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetApplicationConfiguration sets the ApplicationConfiguration field's value.
func (s *ConfigurationOverrides) SetApplicationConfiguration(v []*Configuration) *ConfigurationOverrides {
s.ApplicationConfiguration = v
return s
}
// SetMonitoringConfiguration sets the MonitoringConfiguration field's value.
func (s *ConfigurationOverrides) SetMonitoringConfiguration(v *MonitoringConfiguration) *ConfigurationOverrides {
s.MonitoringConfiguration = v
return s
}
// The request could not be processed because of conflict in the current state
// of the resource.
type ConflictException struct {
_ struct{} `type:"structure"`
RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
Message_ *string `locationName:"message" min:"1" type:"string"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ConflictException) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ConflictException) GoString() string {
return s.String()
}
func newErrorConflictException(v protocol.ResponseMetadata) error {
return &ConflictException{
RespMetadata: v,
}
}
// Code returns the exception type name.
func (s *ConflictException) Code() string {
return "ConflictException"
}
// Message returns the exception's message.
func (s *ConflictException) Message() string {
if s.Message_ != nil {
return *s.Message_
}
return ""
}
// OrigErr always returns nil, satisfies awserr.Error interface.
func (s *ConflictException) OrigErr() error {
return nil
}
func (s *ConflictException) Error() string {
return fmt.Sprintf("%s: %s", s.Code(), s.Message())
}
// Status code returns the HTTP status code for the request's response error.
func (s *ConflictException) StatusCode() int {
return s.RespMetadata.StatusCode
}
// RequestID returns the service's response RequestID for request.
func (s *ConflictException) RequestID() string {
return s.RespMetadata.RequestID
}
type CreateApplicationInput struct {
_ struct{} `type:"structure"`
// The CPU architecture of an application.
Architecture *string `locationName:"architecture" type:"string" enum:"Architecture"`
// The configuration for an application to automatically start on job submission.
AutoStartConfiguration *AutoStartConfig `locationName:"autoStartConfiguration" type:"structure"`
// The configuration for an application to automatically stop after a certain
// amount of time being idle.
AutoStopConfiguration *AutoStopConfig `locationName:"autoStopConfiguration" type:"structure"`
// The client idempotency token of the application to create. Its value must
// be unique for each request.
ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"`
// The image configuration for all worker types. You can either set this parameter
// or imageConfiguration for each worker type in workerTypeSpecifications.
ImageConfiguration *ImageConfigurationInput_ `locationName:"imageConfiguration" type:"structure"`
// The capacity to initialize when the application is created.
InitialCapacity map[string]*InitialCapacityConfig `locationName:"initialCapacity" type:"map"`
// The interactive configuration object that enables the interactive use cases
// to use when running an application.
InteractiveConfiguration *InteractiveConfiguration `locationName:"interactiveConfiguration" type:"structure"`
// The maximum capacity to allocate when the application is created. This is
// cumulative across all workers at any given point in time, not just when an
// application is created. No new resources will be created once any one of
// the defined limits is hit.
MaximumCapacity *MaximumAllowedResources `locationName:"maximumCapacity" type:"structure"`
// The configuration setting for monitoring.
MonitoringConfiguration *MonitoringConfiguration `locationName:"monitoringConfiguration" type:"structure"`
// The name of the application.
Name *string `locationName:"name" min:"1" type:"string"`
// The network configuration for customer VPC connectivity.
NetworkConfiguration *NetworkConfiguration `locationName:"networkConfiguration" type:"structure"`
// The Amazon EMR release associated with the application.
//
// ReleaseLabel is a required field
ReleaseLabel *string `locationName:"releaseLabel" min:"1" type:"string" required:"true"`
// The Configuration (https://docs.aws.amazon.com/emr-serverless/latest/APIReference/API_Configuration.html)
// specifications to use when creating an application. Each configuration consists
// of a classification and properties. This configuration is applied to all
// the job runs submitted under the application.
RuntimeConfiguration []*Configuration `locationName:"runtimeConfiguration" type:"list"`
// The tags assigned to the application.
Tags map[string]*string `locationName:"tags" type:"map"`
// The type of application you want to start, such as Spark or Hive.
//
// Type is a required field
Type *string `locationName:"type" min:"1" type:"string" required:"true"`
// The key-value pairs that specify worker type to WorkerTypeSpecificationInput.
// This parameter must contain all valid worker types for a Spark or Hive application.
// Valid worker types include Driver and Executor for Spark applications and
// HiveDriver and TezTask for Hive applications. You can either set image details
// in this parameter for each worker type, or in imageConfiguration for all
// worker types.
WorkerTypeSpecifications map[string]*WorkerTypeSpecificationInput_ `locationName:"workerTypeSpecifications" type:"map"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s CreateApplicationInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s CreateApplicationInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *CreateApplicationInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "CreateApplicationInput"}
if s.ClientToken != nil && len(*s.ClientToken) < 1 {
invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1))
}
if s.Name != nil && len(*s.Name) < 1 {
invalidParams.Add(request.NewErrParamMinLen("Name", 1))
}
if s.ReleaseLabel == nil {
invalidParams.Add(request.NewErrParamRequired("ReleaseLabel"))
}
if s.ReleaseLabel != nil && len(*s.ReleaseLabel) < 1 {
invalidParams.Add(request.NewErrParamMinLen("ReleaseLabel", 1))
}
if s.Type == nil {
invalidParams.Add(request.NewErrParamRequired("Type"))
}
if s.Type != nil && len(*s.Type) < 1 {
invalidParams.Add(request.NewErrParamMinLen("Type", 1))
}
if s.AutoStopConfiguration != nil {
if err := s.AutoStopConfiguration.Validate(); err != nil {
invalidParams.AddNested("AutoStopConfiguration", err.(request.ErrInvalidParams))
}
}
if s.ImageConfiguration != nil {
if err := s.ImageConfiguration.Validate(); err != nil {
invalidParams.AddNested("ImageConfiguration", err.(request.ErrInvalidParams))
}
}
if s.InitialCapacity != nil {
for i, v := range s.InitialCapacity {
if v == nil {
continue
}
if err := v.Validate(); err != nil {
invalidParams.AddNested(fmt.Sprintf("%s[%v]", "InitialCapacity", i), err.(request.ErrInvalidParams))
}
}
}
if s.MaximumCapacity != nil {
if err := s.MaximumCapacity.Validate(); err != nil {
invalidParams.AddNested("MaximumCapacity", err.(request.ErrInvalidParams))
}
}
if s.MonitoringConfiguration != nil {
if err := s.MonitoringConfiguration.Validate(); err != nil {
invalidParams.AddNested("MonitoringConfiguration", err.(request.ErrInvalidParams))
}
}
if s.RuntimeConfiguration != nil {
for i, v := range s.RuntimeConfiguration {
if v == nil {
continue
}
if err := v.Validate(); err != nil {
invalidParams.AddNested(fmt.Sprintf("%s[%v]", "RuntimeConfiguration", i), err.(request.ErrInvalidParams))
}
}
}
if s.WorkerTypeSpecifications != nil {
for i, v := range s.WorkerTypeSpecifications {
if v == nil {
continue
}
if err := v.Validate(); err != nil {
invalidParams.AddNested(fmt.Sprintf("%s[%v]", "WorkerTypeSpecifications", i), err.(request.ErrInvalidParams))
}
}
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetArchitecture sets the Architecture field's value.
func (s *CreateApplicationInput) SetArchitecture(v string) *CreateApplicationInput {
s.Architecture = &v
return s
}
// SetAutoStartConfiguration sets the AutoStartConfiguration field's value.
func (s *CreateApplicationInput) SetAutoStartConfiguration(v *AutoStartConfig) *CreateApplicationInput {
s.AutoStartConfiguration = v
return s
}
// SetAutoStopConfiguration sets the AutoStopConfiguration field's value.
func (s *CreateApplicationInput) SetAutoStopConfiguration(v *AutoStopConfig) *CreateApplicationInput {
s.AutoStopConfiguration = v
return s
}
// SetClientToken sets the ClientToken field's value.
func (s *CreateApplicationInput) SetClientToken(v string) *CreateApplicationInput {
s.ClientToken = &v
return s
}
// SetImageConfiguration sets the ImageConfiguration field's value.
func (s *CreateApplicationInput) SetImageConfiguration(v *ImageConfigurationInput_) *CreateApplicationInput {
s.ImageConfiguration = v
return s
}
// SetInitialCapacity sets the InitialCapacity field's value.
func (s *CreateApplicationInput) SetInitialCapacity(v map[string]*InitialCapacityConfig) *CreateApplicationInput {
s.InitialCapacity = v
return s
}
// SetInteractiveConfiguration sets the InteractiveConfiguration field's value.
func (s *CreateApplicationInput) SetInteractiveConfiguration(v *InteractiveConfiguration) *CreateApplicationInput {
s.InteractiveConfiguration = v
return s
}
// SetMaximumCapacity sets the MaximumCapacity field's value.
func (s *CreateApplicationInput) SetMaximumCapacity(v *MaximumAllowedResources) *CreateApplicationInput {
s.MaximumCapacity = v
return s
}
// SetMonitoringConfiguration sets the MonitoringConfiguration field's value.
func (s *CreateApplicationInput) SetMonitoringConfiguration(v *MonitoringConfiguration) *CreateApplicationInput {
s.MonitoringConfiguration = v
return s
}
// SetName sets the Name field's value.
func (s *CreateApplicationInput) SetName(v string) *CreateApplicationInput {
s.Name = &v
return s
}
// SetNetworkConfiguration sets the NetworkConfiguration field's value.
func (s *CreateApplicationInput) SetNetworkConfiguration(v *NetworkConfiguration) *CreateApplicationInput {
s.NetworkConfiguration = v
return s
}
// SetReleaseLabel sets the ReleaseLabel field's value.
func (s *CreateApplicationInput) SetReleaseLabel(v string) *CreateApplicationInput {
s.ReleaseLabel = &v
return s
}
// SetRuntimeConfiguration sets the RuntimeConfiguration field's value.
func (s *CreateApplicationInput) SetRuntimeConfiguration(v []*Configuration) *CreateApplicationInput {
s.RuntimeConfiguration = v
return s
}
// SetTags sets the Tags field's value.
func (s *CreateApplicationInput) SetTags(v map[string]*string) *CreateApplicationInput {
s.Tags = v
return s
}
// SetType sets the Type field's value.
func (s *CreateApplicationInput) SetType(v string) *CreateApplicationInput {
s.Type = &v
return s
}
// SetWorkerTypeSpecifications sets the WorkerTypeSpecifications field's value.
func (s *CreateApplicationInput) SetWorkerTypeSpecifications(v map[string]*WorkerTypeSpecificationInput_) *CreateApplicationInput {
s.WorkerTypeSpecifications = v
return s
}
type CreateApplicationOutput struct {
_ struct{} `type:"structure"`
// The output contains the application ID.
//
// ApplicationId is a required field
ApplicationId *string `locationName:"applicationId" min:"1" type:"string" required:"true"`
// The output contains the ARN of the application.
//
// Arn is a required field
Arn *string `locationName:"arn" min:"60" type:"string" required:"true"`
// The output contains the name of the application.
Name *string `locationName:"name" min:"1" type:"string"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s CreateApplicationOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s CreateApplicationOutput) GoString() string {
return s.String()
}
// SetApplicationId sets the ApplicationId field's value.
func (s *CreateApplicationOutput) SetApplicationId(v string) *CreateApplicationOutput {
s.ApplicationId = &v
return s
}
// SetArn sets the Arn field's value.
func (s *CreateApplicationOutput) SetArn(v string) *CreateApplicationOutput {
s.Arn = &v
return s
}
// SetName sets the Name field's value.
func (s *CreateApplicationOutput) SetName(v string) *CreateApplicationOutput {
s.Name = &v
return s
}
type DeleteApplicationInput struct {
_ struct{} `type:"structure" nopayload:"true"`
// The ID of the application that will be deleted.
//
// ApplicationId is a required field
ApplicationId *string `location:"uri" locationName:"applicationId" min:"1" type:"string" required:"true"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s DeleteApplicationInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s DeleteApplicationInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *DeleteApplicationInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "DeleteApplicationInput"}
if s.ApplicationId == nil {
invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
}
if s.ApplicationId != nil && len(*s.ApplicationId) < 1 {
invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 1))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetApplicationId sets the ApplicationId field's value.
func (s *DeleteApplicationInput) SetApplicationId(v string) *DeleteApplicationInput {
s.ApplicationId = &v
return s
}
type DeleteApplicationOutput struct {
_ struct{} `type:"structure"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s DeleteApplicationOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s DeleteApplicationOutput) GoString() string {
return s.String()
}
type GetApplicationInput struct {
_ struct{} `type:"structure" nopayload:"true"`
// The ID of the application that will be described.
//
// ApplicationId is a required field
ApplicationId *string `location:"uri" locationName:"applicationId" min:"1" type:"string" required:"true"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s GetApplicationInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s GetApplicationInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *GetApplicationInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "GetApplicationInput"}
if s.ApplicationId == nil {
invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
}
if s.ApplicationId != nil && len(*s.ApplicationId) < 1 {
invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 1))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetApplicationId sets the ApplicationId field's value.
func (s *GetApplicationInput) SetApplicationId(v string) *GetApplicationInput {
s.ApplicationId = &v
return s
}
type GetApplicationOutput struct {
_ struct{} `type:"structure"`
// The output displays information about the specified application.
//
// Application is a required field
Application *Application `locationName:"application" type:"structure" required:"true"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s GetApplicationOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s GetApplicationOutput) GoString() string {
return s.String()
}
// SetApplication sets the Application field's value.
func (s *GetApplicationOutput) SetApplication(v *Application) *GetApplicationOutput {
s.Application = v
return s
}
type GetDashboardForJobRunInput struct {
_ struct{} `type:"structure" nopayload:"true"`
// The ID of the application.
//
// ApplicationId is a required field
ApplicationId *string `location:"uri" locationName:"applicationId" min:"1" type:"string" required:"true"`
// An optimal parameter that indicates the amount of attempts for the job. If
// not specified, this value defaults to the attempt of the latest job.
Attempt *int64 `location:"querystring" locationName:"attempt" min:"1" type:"integer"`
// The ID of the job run.
//
// JobRunId is a required field
JobRunId *string `location:"uri" locationName:"jobRunId" min:"1" type:"string" required:"true"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s GetDashboardForJobRunInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s GetDashboardForJobRunInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *GetDashboardForJobRunInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "GetDashboardForJobRunInput"}
if s.ApplicationId == nil {
invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
}
if s.ApplicationId != nil && len(*s.ApplicationId) < 1 {
invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 1))
}
if s.Attempt != nil && *s.Attempt < 1 {
invalidParams.Add(request.NewErrParamMinValue("Attempt", 1))
}
if s.JobRunId == nil {
invalidParams.Add(request.NewErrParamRequired("JobRunId"))
}
if s.JobRunId != nil && len(*s.JobRunId) < 1 {
invalidParams.Add(request.NewErrParamMinLen("JobRunId", 1))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetApplicationId sets the ApplicationId field's value.
func (s *GetDashboardForJobRunInput) SetApplicationId(v string) *GetDashboardForJobRunInput {
s.ApplicationId = &v
return s
}
// SetAttempt sets the Attempt field's value.
func (s *GetDashboardForJobRunInput) SetAttempt(v int64) *GetDashboardForJobRunInput {
s.Attempt = &v
return s
}
// SetJobRunId sets the JobRunId field's value.
func (s *GetDashboardForJobRunInput) SetJobRunId(v string) *GetDashboardForJobRunInput {
s.JobRunId = &v
return s
}
type GetDashboardForJobRunOutput struct {
_ struct{} `type:"structure"`
// The URL to view job run's dashboard.
Url *string `locationName:"url" min:"1" type:"string"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s GetDashboardForJobRunOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s GetDashboardForJobRunOutput) GoString() string {
return s.String()
}
// SetUrl sets the Url field's value.
func (s *GetDashboardForJobRunOutput) SetUrl(v string) *GetDashboardForJobRunOutput {
s.Url = &v
return s
}
type GetJobRunInput struct {
_ struct{} `type:"structure" nopayload:"true"`
// The ID of the application on which the job run is submitted.
//
// ApplicationId is a required field
ApplicationId *string `location:"uri" locationName:"applicationId" min:"1" type:"string" required:"true"`
// An optimal parameter that indicates the amount of attempts for the job. If
// not specified, this value defaults to the attempt of the latest job.
Attempt *int64 `location:"querystring" locationName:"attempt" min:"1" type:"integer"`
// The ID of the job run.
//
// JobRunId is a required field
JobRunId *string `location:"uri" locationName:"jobRunId" min:"1" type:"string" required:"true"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s GetJobRunInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s GetJobRunInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *GetJobRunInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "GetJobRunInput"}
if s.ApplicationId == nil {
invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
}
if s.ApplicationId != nil && len(*s.ApplicationId) < 1 {
invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 1))
}
if s.Attempt != nil && *s.Attempt < 1 {
invalidParams.Add(request.NewErrParamMinValue("Attempt", 1))
}
if s.JobRunId == nil {
invalidParams.Add(request.NewErrParamRequired("JobRunId"))
}
if s.JobRunId != nil && len(*s.JobRunId) < 1 {
invalidParams.Add(request.NewErrParamMinLen("JobRunId", 1))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetApplicationId sets the ApplicationId field's value.
func (s *GetJobRunInput) SetApplicationId(v string) *GetJobRunInput {
s.ApplicationId = &v
return s
}
// SetAttempt sets the Attempt field's value.
func (s *GetJobRunInput) SetAttempt(v int64) *GetJobRunInput {
s.Attempt = &v
return s
}
// SetJobRunId sets the JobRunId field's value.
func (s *GetJobRunInput) SetJobRunId(v string) *GetJobRunInput {
s.JobRunId = &v
return s
}
type GetJobRunOutput struct {
_ struct{} `type:"structure"`
// The output displays information about the job run.
//
// JobRun is a required field
JobRun *JobRun `locationName:"jobRun" type:"structure" required:"true"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s GetJobRunOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s GetJobRunOutput) GoString() string {
return s.String()
}
// SetJobRun sets the JobRun field's value.
func (s *GetJobRunOutput) SetJobRun(v *JobRun) *GetJobRunOutput {
s.JobRun = v
return s
}
// The configurations for the Hive job driver.
type Hive struct {
_ struct{} `type:"structure"`
// The query file for the Hive job run.
//
// InitQueryFile is a sensitive parameter and its value will be
// replaced with "sensitive" in string returned by Hive's
// String and GoString methods.
InitQueryFile *string `locationName:"initQueryFile" min:"1" type:"string" sensitive:"true"`
// The parameters for the Hive job run.
//
// Parameters is a sensitive parameter and its value will be
// replaced with "sensitive" in string returned by Hive's
// String and GoString methods.
Parameters *string `locationName:"parameters" min:"1" type:"string" sensitive:"true"`
// The query for the Hive job run.
//
// Query is a sensitive parameter and its value will be
// replaced with "sensitive" in string returned by Hive's
// String and GoString methods.
//
// Query is a required field
Query *string `locationName:"query" min:"1" type:"string" required:"true" sensitive:"true"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s Hive) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s Hive) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *Hive) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "Hive"}
if s.InitQueryFile != nil && len(*s.InitQueryFile) < 1 {
invalidParams.Add(request.NewErrParamMinLen("InitQueryFile", 1))
}
if s.Parameters != nil && len(*s.Parameters) < 1 {
invalidParams.Add(request.NewErrParamMinLen("Parameters", 1))
}
if s.Query == nil {
invalidParams.Add(request.NewErrParamRequired("Query"))
}
if s.Query != nil && len(*s.Query) < 1 {
invalidParams.Add(request.NewErrParamMinLen("Query", 1))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetInitQueryFile sets the InitQueryFile field's value.
func (s *Hive) SetInitQueryFile(v string) *Hive {
s.InitQueryFile = &v
return s
}
// SetParameters sets the Parameters field's value.
func (s *Hive) SetParameters(v string) *Hive {
s.Parameters = &v
return s
}
// SetQuery sets the Query field's value.
func (s *Hive) SetQuery(v string) *Hive {
s.Query = &v
return s
}
// The applied image configuration.
type ImageConfiguration struct {
_ struct{} `type:"structure"`
// The image URI.
//
// ImageUri is a required field
ImageUri *string `locationName:"imageUri" min:"1" type:"string" required:"true"`
// The SHA256 digest of the image URI. This indicates which specific image the
// application is configured for. The image digest doesn't exist until an application
// has started.
ResolvedImageDigest *string `locationName:"resolvedImageDigest" type:"string"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ImageConfiguration) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ImageConfiguration) GoString() string {
return s.String()
}
// SetImageUri sets the ImageUri field's value.
func (s *ImageConfiguration) SetImageUri(v string) *ImageConfiguration {
s.ImageUri = &v
return s
}
// SetResolvedImageDigest sets the ResolvedImageDigest field's value.
func (s *ImageConfiguration) SetResolvedImageDigest(v string) *ImageConfiguration {
s.ResolvedImageDigest = &v
return s
}
// The image configuration.
type ImageConfigurationInput_ struct {
_ struct{} `type:"structure"`
// The URI of an image in the Amazon ECR registry. This field is required when
// you create a new application. If you leave this field blank in an update,
// Amazon EMR will remove the image configuration.
ImageUri *string `locationName:"imageUri" min:"1" type:"string"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ImageConfigurationInput_) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ImageConfigurationInput_) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *ImageConfigurationInput_) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "ImageConfigurationInput_"}
if s.ImageUri != nil && len(*s.ImageUri) < 1 {
invalidParams.Add(request.NewErrParamMinLen("ImageUri", 1))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetImageUri sets the ImageUri field's value.
func (s *ImageConfigurationInput_) SetImageUri(v string) *ImageConfigurationInput_ {
s.ImageUri = &v
return s
}
// The initial capacity configuration per worker.
type InitialCapacityConfig struct {
_ struct{} `type:"structure"`
// The resource configuration of the initial capacity configuration.
WorkerConfiguration *WorkerResourceConfig `locationName:"workerConfiguration" type:"structure"`
// The number of workers in the initial capacity configuration.
//
// WorkerCount is a required field
WorkerCount *int64 `locationName:"workerCount" min:"1" type:"long" required:"true"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s InitialCapacityConfig) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s InitialCapacityConfig) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *InitialCapacityConfig) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "InitialCapacityConfig"}
if s.WorkerCount == nil {
invalidParams.Add(request.NewErrParamRequired("WorkerCount"))
}
if s.WorkerCount != nil && *s.WorkerCount < 1 {
invalidParams.Add(request.NewErrParamMinValue("WorkerCount", 1))
}
if s.WorkerConfiguration != nil {
if err := s.WorkerConfiguration.Validate(); err != nil {
invalidParams.AddNested("WorkerConfiguration", err.(request.ErrInvalidParams))
}
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetWorkerConfiguration sets the WorkerConfiguration field's value.
func (s *InitialCapacityConfig) SetWorkerConfiguration(v *WorkerResourceConfig) *InitialCapacityConfig {
s.WorkerConfiguration = v
return s
}
// SetWorkerCount sets the WorkerCount field's value.
func (s *InitialCapacityConfig) SetWorkerCount(v int64) *InitialCapacityConfig {
s.WorkerCount = &v
return s
}
// The configuration to use to enable the different types of interactive use
// cases in an application.
type InteractiveConfiguration struct {
_ struct{} `type:"structure"`
// Enables an Apache Livy endpoint that you can connect to and run interactive
// jobs.
LivyEndpointEnabled *bool `locationName:"livyEndpointEnabled" type:"boolean"`
// Enables you to connect an application to Amazon EMR Studio to run interactive
// workloads in a notebook.
StudioEnabled *bool `locationName:"studioEnabled" type:"boolean"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s InteractiveConfiguration) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s InteractiveConfiguration) GoString() string {
return s.String()
}
// SetLivyEndpointEnabled sets the LivyEndpointEnabled field's value.
func (s *InteractiveConfiguration) SetLivyEndpointEnabled(v bool) *InteractiveConfiguration {
s.LivyEndpointEnabled = &v
return s
}
// SetStudioEnabled sets the StudioEnabled field's value.
func (s *InteractiveConfiguration) SetStudioEnabled(v bool) *InteractiveConfiguration {
s.StudioEnabled = &v
return s
}
// Request processing failed because of an error or failure with the service.
type InternalServerException struct {
_ struct{} `type:"structure"`
RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
Message_ *string `locationName:"message" min:"1" type:"string"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s InternalServerException) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s InternalServerException) GoString() string {
return s.String()
}
func newErrorInternalServerException(v protocol.ResponseMetadata) error {
return &InternalServerException{
RespMetadata: v,
}
}
// Code returns the exception type name.
func (s *InternalServerException) Code() string {
return "InternalServerException"
}
// Message returns the exception's message.
func (s *InternalServerException) Message() string {
if s.Message_ != nil {
return *s.Message_
}
return ""
}
// OrigErr always returns nil, satisfies awserr.Error interface.
func (s *InternalServerException) OrigErr() error {
return nil
}
func (s *InternalServerException) Error() string {
return fmt.Sprintf("%s: %s", s.Code(), s.Message())
}
// Status code returns the HTTP status code for the request's response error.
func (s *InternalServerException) StatusCode() int {
return s.RespMetadata.StatusCode
}
// RequestID returns the service's response RequestID for request.
func (s *InternalServerException) RequestID() string {
return s.RespMetadata.RequestID
}
// The driver that the job runs on.
type JobDriver struct {
_ struct{} `type:"structure"`
// The job driver parameters specified for Hive.
Hive *Hive `locationName:"hive" type:"structure"`
// The job driver parameters specified for Spark.
SparkSubmit *SparkSubmit `locationName:"sparkSubmit" type:"structure"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s JobDriver) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s JobDriver) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *JobDriver) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "JobDriver"}
if s.Hive != nil {
if err := s.Hive.Validate(); err != nil {
invalidParams.AddNested("Hive", err.(request.ErrInvalidParams))
}
}
if s.SparkSubmit != nil {
if err := s.SparkSubmit.Validate(); err != nil {
invalidParams.AddNested("SparkSubmit", err.(request.ErrInvalidParams))
}
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetHive sets the Hive field's value.
func (s *JobDriver) SetHive(v *Hive) *JobDriver {
s.Hive = v
return s
}
// SetSparkSubmit sets the SparkSubmit field's value.
func (s *JobDriver) SetSparkSubmit(v *SparkSubmit) *JobDriver {
s.SparkSubmit = v
return s
}
// Information about a job run. A job run is a unit of work, such as a Spark
// JAR, Hive query, or SparkSQL query, that you submit to an Amazon EMR Serverless
// application.
type JobRun struct {
_ struct{} `type:"structure"`
// The ID of the application the job is running on.
//
// ApplicationId is a required field
ApplicationId *string `locationName:"applicationId" min:"1" type:"string" required:"true"`
// The execution role ARN of the job run.
//
// Arn is a required field
Arn *string `locationName:"arn" min:"60" type:"string" required:"true"`
// The attempt of the job run.
Attempt *int64 `locationName:"attempt" min:"1" type:"integer"`
// The date and time of when the job run attempt was created.
AttemptCreatedAt *time.Time `locationName:"attemptCreatedAt" type:"timestamp"`
// The date and time of when the job run attempt was last updated.
AttemptUpdatedAt *time.Time `locationName:"attemptUpdatedAt" type:"timestamp"`
// The aggregate vCPU, memory, and storage that Amazon Web Services has billed
// for the job run. The billed resources include a 1-minute minimum usage for
// workers, plus additional storage over 20 GB per worker. Note that billed
// resources do not include usage for idle pre-initialized workers.
BilledResourceUtilization *ResourceUtilization `locationName:"billedResourceUtilization" type:"structure"`
// The configuration settings that are used to override default configuration.
ConfigurationOverrides *ConfigurationOverrides `locationName:"configurationOverrides" type:"structure"`
// The date and time when the job run was created.
//
// CreatedAt is a required field
CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"`
// The user who created the job run.
//
// CreatedBy is a required field
CreatedBy *string `locationName:"createdBy" min:"20" type:"string" required:"true"`
// The execution role ARN of the job run.
//
// ExecutionRole is a required field
ExecutionRole *string `locationName:"executionRole" min:"20" type:"string" required:"true"`
// Returns the job run timeout value from the StartJobRun call. If no timeout
// was specified, then it returns the default timeout of 720 minutes.
ExecutionTimeoutMinutes *int64 `locationName:"executionTimeoutMinutes" type:"long"`
// The job driver for the job run.
//
// JobDriver is a required field
JobDriver *JobDriver `locationName:"jobDriver" type:"structure" required:"true"`
// The ID of the job run.
//
// JobRunId is a required field
JobRunId *string `locationName:"jobRunId" min:"1" type:"string" required:"true"`
// The mode of the job run.
Mode *string `locationName:"mode" type:"string" enum:"JobRunMode"`
// The optional job run name. This doesn't have to be unique.
Name *string `locationName:"name" min:"1" type:"string"`
// The network configuration for customer VPC connectivity.
NetworkConfiguration *NetworkConfiguration `locationName:"networkConfiguration" type:"structure"`
// The Amazon EMR release associated with the application your job is running
// on.
//
// ReleaseLabel is a required field
ReleaseLabel *string `locationName:"releaseLabel" min:"1" type:"string" required:"true"`
// The retry policy of the job run.
RetryPolicy *RetryPolicy `locationName:"retryPolicy" type:"structure"`
// The state of the job run.
//
// State is a required field
State *string `locationName:"state" type:"string" required:"true" enum:"JobRunState"`
// The state details of the job run.
//
// StateDetails is a required field
StateDetails *string `locationName:"stateDetails" min:"1" type:"string" required:"true"`
// The tags assigned to the job run.
Tags map[string]*string `locationName:"tags" type:"map"`
// The job run total execution duration in seconds. This field is only available
// for job runs in a COMPLETED, FAILED, or CANCELLED state.
TotalExecutionDurationSeconds *int64 `locationName:"totalExecutionDurationSeconds" type:"integer"`
// The aggregate vCPU, memory, and storage resources used from the time the
// job starts to execute, until the time the job terminates, rounded up to the
// nearest second.
TotalResourceUtilization *TotalResourceUtilization `locationName:"totalResourceUtilization" type:"structure"`
// The date and time when the job run was updated.
//
// UpdatedAt is a required field
UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" required:"true"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s JobRun) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s JobRun) GoString() string {
return s.String()
}
// SetApplicationId sets the ApplicationId field's value.
func (s *JobRun) SetApplicationId(v string) *JobRun {
s.ApplicationId = &v
return s
}
// SetArn sets the Arn field's value.
func (s *JobRun) SetArn(v string) *JobRun {
s.Arn = &v
return s
}
// SetAttempt sets the Attempt field's value.
func (s *JobRun) SetAttempt(v int64) *JobRun {
s.Attempt = &v
return s
}
// SetAttemptCreatedAt sets the AttemptCreatedAt field's value.
func (s *JobRun) SetAttemptCreatedAt(v time.Time) *JobRun {
s.AttemptCreatedAt = &v
return s
}
// SetAttemptUpdatedAt sets the AttemptUpdatedAt field's value.
func (s *JobRun) SetAttemptUpdatedAt(v time.Time) *JobRun {
s.AttemptUpdatedAt = &v
return s
}
// SetBilledResourceUtilization sets the BilledResourceUtilization field's value.
func (s *JobRun) SetBilledResourceUtilization(v *ResourceUtilization) *JobRun {
s.BilledResourceUtilization = v
return s
}
// SetConfigurationOverrides sets the ConfigurationOverrides field's value.
func (s *JobRun) SetConfigurationOverrides(v *ConfigurationOverrides) *JobRun {
s.ConfigurationOverrides = v
return s
}
// SetCreatedAt sets the CreatedAt field's value.
func (s *JobRun) SetCreatedAt(v time.Time) *JobRun {
s.CreatedAt = &v
return s
}
// SetCreatedBy sets the CreatedBy field's value.
func (s *JobRun) SetCreatedBy(v string) *JobRun {
s.CreatedBy = &v
return s
}
// SetExecutionRole sets the ExecutionRole field's value.
func (s *JobRun) SetExecutionRole(v string) *JobRun {
s.ExecutionRole = &v
return s
}
// SetExecutionTimeoutMinutes sets the ExecutionTimeoutMinutes field's value.
func (s *JobRun) SetExecutionTimeoutMinutes(v int64) *JobRun {
s.ExecutionTimeoutMinutes = &v
return s
}
// SetJobDriver sets the JobDriver field's value.
func (s *JobRun) SetJobDriver(v *JobDriver) *JobRun {
s.JobDriver = v
return s
}
// SetJobRunId sets the JobRunId field's value.
func (s *JobRun) SetJobRunId(v string) *JobRun {
s.JobRunId = &v
return s
}
// SetMode sets the Mode field's value.
func (s *JobRun) SetMode(v string) *JobRun {
s.Mode = &v
return s
}
// SetName sets the Name field's value.
func (s *JobRun) SetName(v string) *JobRun {
s.Name = &v
return s
}
// SetNetworkConfiguration sets the NetworkConfiguration field's value.
func (s *JobRun) SetNetworkConfiguration(v *NetworkConfiguration) *JobRun {
s.NetworkConfiguration = v
return s
}
// SetReleaseLabel sets the ReleaseLabel field's value.
func (s *JobRun) SetReleaseLabel(v string) *JobRun {
s.ReleaseLabel = &v
return s
}
// SetRetryPolicy sets the RetryPolicy field's value.
func (s *JobRun) SetRetryPolicy(v *RetryPolicy) *JobRun {
s.RetryPolicy = v
return s
}
// SetState sets the State field's value.
func (s *JobRun) SetState(v string) *JobRun {
s.State = &v
return s
}
// SetStateDetails sets the StateDetails field's value.
func (s *JobRun) SetStateDetails(v string) *JobRun {
s.StateDetails = &v
return s
}
// SetTags sets the Tags field's value.
func (s *JobRun) SetTags(v map[string]*string) *JobRun {
s.Tags = v
return s
}
// SetTotalExecutionDurationSeconds sets the TotalExecutionDurationSeconds field's value.
func (s *JobRun) SetTotalExecutionDurationSeconds(v int64) *JobRun {
s.TotalExecutionDurationSeconds = &v
return s
}
// SetTotalResourceUtilization sets the TotalResourceUtilization field's value.
func (s *JobRun) SetTotalResourceUtilization(v *TotalResourceUtilization) *JobRun {
s.TotalResourceUtilization = v
return s
}
// SetUpdatedAt sets the UpdatedAt field's value.
func (s *JobRun) SetUpdatedAt(v time.Time) *JobRun {
s.UpdatedAt = &v
return s
}
// The summary of attributes associated with a job run attempt.
type JobRunAttemptSummary struct {
_ struct{} `type:"structure"`
// The ID of the application the job is running on.
//
// ApplicationId is a required field
ApplicationId *string `locationName:"applicationId" min:"1" type:"string" required:"true"`
// The Amazon Resource Name (ARN) of the job run.
//
// Arn is a required field
Arn *string `locationName:"arn" min:"60" type:"string" required:"true"`
// The attempt number of the job run execution.
Attempt *int64 `locationName:"attempt" min:"1" type:"integer"`
// The date and time when the job run attempt was created.
//
// CreatedAt is a required field
CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"`
// The user who created the job run.
//
// CreatedBy is a required field
CreatedBy *string `locationName:"createdBy" min:"20" type:"string" required:"true"`
// The Amazon Resource Name (ARN) of the execution role of the job run..
//
// ExecutionRole is a required field
ExecutionRole *string `locationName:"executionRole" min:"20" type:"string" required:"true"`
// The ID of the job run attempt.
//
// Id is a required field
Id *string `locationName:"id" min:"1" type:"string" required:"true"`
// The date and time of when the job run was created.
//
// JobCreatedAt is a required field
JobCreatedAt *time.Time `locationName:"jobCreatedAt" type:"timestamp" required:"true"`
// The mode of the job run attempt.
Mode *string `locationName:"mode" type:"string" enum:"JobRunMode"`
// The name of the job run attempt.
Name *string `locationName:"name" min:"1" type:"string"`
// The Amazon EMR release label of the job run attempt.
//
// ReleaseLabel is a required field
ReleaseLabel *string `locationName:"releaseLabel" min:"1" type:"string" required:"true"`
// The state of the job run attempt.
//
// State is a required field
State *string `locationName:"state" type:"string" required:"true" enum:"JobRunState"`
// The state details of the job run attempt.
//
// StateDetails is a required field
StateDetails *string `locationName:"stateDetails" min:"1" type:"string" required:"true"`
// The type of the job run, such as Spark or Hive.
Type *string `locationName:"type" type:"string"`
// The date and time of when the job run attempt was last updated.
//
// UpdatedAt is a required field
UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" required:"true"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s JobRunAttemptSummary) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s JobRunAttemptSummary) GoString() string {
return s.String()
}
// SetApplicationId sets the ApplicationId field's value.
func (s *JobRunAttemptSummary) SetApplicationId(v string) *JobRunAttemptSummary {
s.ApplicationId = &v
return s
}
// SetArn sets the Arn field's value.
func (s *JobRunAttemptSummary) SetArn(v string) *JobRunAttemptSummary {
s.Arn = &v
return s
}
// SetAttempt sets the Attempt field's value.
func (s *JobRunAttemptSummary) SetAttempt(v int64) *JobRunAttemptSummary {
s.Attempt = &v
return s
}
// SetCreatedAt sets the CreatedAt field's value.
func (s *JobRunAttemptSummary) SetCreatedAt(v time.Time) *JobRunAttemptSummary {
s.CreatedAt = &v
return s
}
// SetCreatedBy sets the CreatedBy field's value.
func (s *JobRunAttemptSummary) SetCreatedBy(v string) *JobRunAttemptSummary {
s.CreatedBy = &v
return s
}
// SetExecutionRole sets the ExecutionRole field's value.
func (s *JobRunAttemptSummary) SetExecutionRole(v string) *JobRunAttemptSummary {
s.ExecutionRole = &v
return s
}
// SetId sets the Id field's value.
func (s *JobRunAttemptSummary) SetId(v string) *JobRunAttemptSummary {
s.Id = &v
return s
}
// SetJobCreatedAt sets the JobCreatedAt field's value.
func (s *JobRunAttemptSummary) SetJobCreatedAt(v time.Time) *JobRunAttemptSummary {
s.JobCreatedAt = &v
return s
}
// SetMode sets the Mode field's value.
func (s *JobRunAttemptSummary) SetMode(v string) *JobRunAttemptSummary {
s.Mode = &v
return s
}
// SetName sets the Name field's value.
func (s *JobRunAttemptSummary) SetName(v string) *JobRunAttemptSummary {
s.Name = &v
return s
}
// SetReleaseLabel sets the ReleaseLabel field's value.
func (s *JobRunAttemptSummary) SetReleaseLabel(v string) *JobRunAttemptSummary {
s.ReleaseLabel = &v
return s
}
// SetState sets the State field's value.
func (s *JobRunAttemptSummary) SetState(v string) *JobRunAttemptSummary {
s.State = &v
return s
}
// SetStateDetails sets the StateDetails field's value.
func (s *JobRunAttemptSummary) SetStateDetails(v string) *JobRunAttemptSummary {
s.StateDetails = &v
return s
}
// SetType sets the Type field's value.
func (s *JobRunAttemptSummary) SetType(v string) *JobRunAttemptSummary {
s.Type = &v
return s
}
// SetUpdatedAt sets the UpdatedAt field's value.
func (s *JobRunAttemptSummary) SetUpdatedAt(v time.Time) *JobRunAttemptSummary {
s.UpdatedAt = &v
return s
}
// The summary of attributes associated with a job run.
type JobRunSummary struct {
_ struct{} `type:"structure"`
// The ID of the application the job is running on.
//
// ApplicationId is a required field
ApplicationId *string `locationName:"applicationId" min:"1" type:"string" required:"true"`
// The ARN of the job run.
//
// Arn is a required field
Arn *string `locationName:"arn" min:"60" type:"string" required:"true"`
// The attempt number of the job run execution.
Attempt *int64 `locationName:"attempt" min:"1" type:"integer"`
// The date and time of when the job run attempt was created.
AttemptCreatedAt *time.Time `locationName:"attemptCreatedAt" type:"timestamp"`
// The date and time of when the job run attempt was last updated.
AttemptUpdatedAt *time.Time `locationName:"attemptUpdatedAt" type:"timestamp"`
// The date and time when the job run was created.
//
// CreatedAt is a required field
CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"`
// The user who created the job run.
//
// CreatedBy is a required field
CreatedBy *string `locationName:"createdBy" min:"20" type:"string" required:"true"`
// The execution role ARN of the job run.
//
// ExecutionRole is a required field
ExecutionRole *string `locationName:"executionRole" min:"20" type:"string" required:"true"`
// The ID of the job run.
//
// Id is a required field
Id *string `locationName:"id" min:"1" type:"string" required:"true"`
// The mode of the job run.
Mode *string `locationName:"mode" type:"string" enum:"JobRunMode"`
// The optional job run name. This doesn't have to be unique.
Name *string `locationName:"name" min:"1" type:"string"`
// The Amazon EMR release associated with the application your job is running
// on.
//
// ReleaseLabel is a required field
ReleaseLabel *string `locationName:"releaseLabel" min:"1" type:"string" required:"true"`
// The state of the job run.
//
// State is a required field
State *string `locationName:"state" type:"string" required:"true" enum:"JobRunState"`
// The state details of the job run.
//
// StateDetails is a required field
StateDetails *string `locationName:"stateDetails" min:"1" type:"string" required:"true"`
// The type of job run, such as Spark or Hive.
Type *string `locationName:"type" type:"string"`
// The date and time when the job run was last updated.
//
// UpdatedAt is a required field
UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" required:"true"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s JobRunSummary) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s JobRunSummary) GoString() string {
return s.String()
}
// SetApplicationId sets the ApplicationId field's value.
func (s *JobRunSummary) SetApplicationId(v string) *JobRunSummary {
s.ApplicationId = &v
return s
}
// SetArn sets the Arn field's value.
func (s *JobRunSummary) SetArn(v string) *JobRunSummary {
s.Arn = &v
return s
}
// SetAttempt sets the Attempt field's value.
func (s *JobRunSummary) SetAttempt(v int64) *JobRunSummary {
s.Attempt = &v
return s
}
// SetAttemptCreatedAt sets the AttemptCreatedAt field's value.
func (s *JobRunSummary) SetAttemptCreatedAt(v time.Time) *JobRunSummary {
s.AttemptCreatedAt = &v
return s
}
// SetAttemptUpdatedAt sets the AttemptUpdatedAt field's value.
func (s *JobRunSummary) SetAttemptUpdatedAt(v time.Time) *JobRunSummary {
s.AttemptUpdatedAt = &v
return s
}
// SetCreatedAt sets the CreatedAt field's value.
func (s *JobRunSummary) SetCreatedAt(v time.Time) *JobRunSummary {
s.CreatedAt = &v
return s
}
// SetCreatedBy sets the CreatedBy field's value.
func (s *JobRunSummary) SetCreatedBy(v string) *JobRunSummary {
s.CreatedBy = &v
return s
}
// SetExecutionRole sets the ExecutionRole field's value.
func (s *JobRunSummary) SetExecutionRole(v string) *JobRunSummary {
s.ExecutionRole = &v
return s
}
// SetId sets the Id field's value.
func (s *JobRunSummary) SetId(v string) *JobRunSummary {
s.Id = &v
return s
}
// SetMode sets the Mode field's value.
func (s *JobRunSummary) SetMode(v string) *JobRunSummary {
s.Mode = &v
return s
}
// SetName sets the Name field's value.
func (s *JobRunSummary) SetName(v string) *JobRunSummary {
s.Name = &v
return s
}
// SetReleaseLabel sets the ReleaseLabel field's value.
func (s *JobRunSummary) SetReleaseLabel(v string) *JobRunSummary {
s.ReleaseLabel = &v
return s
}
// SetState sets the State field's value.
func (s *JobRunSummary) SetState(v string) *JobRunSummary {
s.State = &v
return s
}
// SetStateDetails sets the StateDetails field's value.
func (s *JobRunSummary) SetStateDetails(v string) *JobRunSummary {
s.StateDetails = &v
return s
}
// SetType sets the Type field's value.
func (s *JobRunSummary) SetType(v string) *JobRunSummary {
s.Type = &v
return s
}
// SetUpdatedAt sets the UpdatedAt field's value.
func (s *JobRunSummary) SetUpdatedAt(v time.Time) *JobRunSummary {
s.UpdatedAt = &v
return s
}
type ListApplicationsInput struct {
_ struct{} `type:"structure" nopayload:"true"`
// The maximum number of applications that can be listed.
MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
// The token for the next set of application results.
NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"`
// An optional filter for application states. Note that if this filter contains
// multiple states, the resulting list will be grouped by the state.
States []*string `location:"querystring" locationName:"states" min:"1" type:"list" enum:"ApplicationState"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListApplicationsInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListApplicationsInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *ListApplicationsInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "ListApplicationsInput"}
if s.MaxResults != nil && *s.MaxResults < 1 {
invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
}
if s.NextToken != nil && len(*s.NextToken) < 1 {
invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
}
if s.States != nil && len(s.States) < 1 {
invalidParams.Add(request.NewErrParamMinLen("States", 1))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetMaxResults sets the MaxResults field's value.
func (s *ListApplicationsInput) SetMaxResults(v int64) *ListApplicationsInput {
s.MaxResults = &v
return s
}
// SetNextToken sets the NextToken field's value.
func (s *ListApplicationsInput) SetNextToken(v string) *ListApplicationsInput {
s.NextToken = &v
return s
}
// SetStates sets the States field's value.
func (s *ListApplicationsInput) SetStates(v []*string) *ListApplicationsInput {
s.States = v
return s
}
type ListApplicationsOutput struct {
_ struct{} `type:"structure"`
// The output lists the specified applications.
//
// Applications is a required field
Applications []*ApplicationSummary `locationName:"applications" type:"list" required:"true"`
// The output displays the token for the next set of application results. This
// is required for pagination and is available as a response of the previous
// request.
NextToken *string `locationName:"nextToken" min:"1" type:"string"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListApplicationsOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListApplicationsOutput) GoString() string {
return s.String()
}
// SetApplications sets the Applications field's value.
func (s *ListApplicationsOutput) SetApplications(v []*ApplicationSummary) *ListApplicationsOutput {
s.Applications = v
return s
}
// SetNextToken sets the NextToken field's value.
func (s *ListApplicationsOutput) SetNextToken(v string) *ListApplicationsOutput {
s.NextToken = &v
return s
}
type ListJobRunAttemptsInput struct {
_ struct{} `type:"structure" nopayload:"true"`
// The ID of the application for which to list job runs.
//
// ApplicationId is a required field
ApplicationId *string `location:"uri" locationName:"applicationId" min:"1" type:"string" required:"true"`
// The ID of the job run to list.
//
// JobRunId is a required field
JobRunId *string `location:"uri" locationName:"jobRunId" min:"1" type:"string" required:"true"`
// The maximum number of job run attempts to list.
MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
// The token for the next set of job run attempt results.
NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListJobRunAttemptsInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListJobRunAttemptsInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *ListJobRunAttemptsInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "ListJobRunAttemptsInput"}
if s.ApplicationId == nil {
invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
}
if s.ApplicationId != nil && len(*s.ApplicationId) < 1 {
invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 1))
}
if s.JobRunId == nil {
invalidParams.Add(request.NewErrParamRequired("JobRunId"))
}
if s.JobRunId != nil && len(*s.JobRunId) < 1 {
invalidParams.Add(request.NewErrParamMinLen("JobRunId", 1))
}
if s.MaxResults != nil && *s.MaxResults < 1 {
invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
}
if s.NextToken != nil && len(*s.NextToken) < 1 {
invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetApplicationId sets the ApplicationId field's value.
func (s *ListJobRunAttemptsInput) SetApplicationId(v string) *ListJobRunAttemptsInput {
s.ApplicationId = &v
return s
}
// SetJobRunId sets the JobRunId field's value.
func (s *ListJobRunAttemptsInput) SetJobRunId(v string) *ListJobRunAttemptsInput {
s.JobRunId = &v
return s
}
// SetMaxResults sets the MaxResults field's value.
func (s *ListJobRunAttemptsInput) SetMaxResults(v int64) *ListJobRunAttemptsInput {
s.MaxResults = &v
return s
}
// SetNextToken sets the NextToken field's value.
func (s *ListJobRunAttemptsInput) SetNextToken(v string) *ListJobRunAttemptsInput {
s.NextToken = &v
return s
}
type ListJobRunAttemptsOutput struct {
_ struct{} `type:"structure"`
// The array of the listed job run attempt objects.
//
// JobRunAttempts is a required field
JobRunAttempts []*JobRunAttemptSummary `locationName:"jobRunAttempts" type:"list" required:"true"`
// The output displays the token for the next set of application results. This
// is required for pagination and is available as a response of the previous
// request.
NextToken *string `locationName:"nextToken" min:"1" type:"string"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListJobRunAttemptsOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListJobRunAttemptsOutput) GoString() string {
return s.String()
}
// SetJobRunAttempts sets the JobRunAttempts field's value.
func (s *ListJobRunAttemptsOutput) SetJobRunAttempts(v []*JobRunAttemptSummary) *ListJobRunAttemptsOutput {
s.JobRunAttempts = v
return s
}
// SetNextToken sets the NextToken field's value.
func (s *ListJobRunAttemptsOutput) SetNextToken(v string) *ListJobRunAttemptsOutput {
s.NextToken = &v
return s
}
type ListJobRunsInput struct {
_ struct{} `type:"structure" nopayload:"true"`
// The ID of the application for which to list the job run.
//
// ApplicationId is a required field
ApplicationId *string `location:"uri" locationName:"applicationId" min:"1" type:"string" required:"true"`
// The lower bound of the option to filter by creation date and time.
CreatedAtAfter *time.Time `location:"querystring" locationName:"createdAtAfter" type:"timestamp"`
// The upper bound of the option to filter by creation date and time.
CreatedAtBefore *time.Time `location:"querystring" locationName:"createdAtBefore" type:"timestamp"`
// The maximum number of job runs that can be listed.
MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
// The mode of the job runs to list.
Mode *string `location:"querystring" locationName:"mode" type:"string" enum:"JobRunMode"`
// The token for the next set of job run results.
NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"`
// An optional filter for job run states. Note that if this filter contains
// multiple states, the resulting list will be grouped by the state.
States []*string `location:"querystring" locationName:"states" type:"list" enum:"JobRunState"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListJobRunsInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListJobRunsInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *ListJobRunsInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "ListJobRunsInput"}
if s.ApplicationId == nil {
invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
}
if s.ApplicationId != nil && len(*s.ApplicationId) < 1 {
invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 1))
}
if s.MaxResults != nil && *s.MaxResults < 1 {
invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
}
if s.NextToken != nil && len(*s.NextToken) < 1 {
invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetApplicationId sets the ApplicationId field's value.
func (s *ListJobRunsInput) SetApplicationId(v string) *ListJobRunsInput {
s.ApplicationId = &v
return s
}
// SetCreatedAtAfter sets the CreatedAtAfter field's value.
func (s *ListJobRunsInput) SetCreatedAtAfter(v time.Time) *ListJobRunsInput {
s.CreatedAtAfter = &v
return s
}
// SetCreatedAtBefore sets the CreatedAtBefore field's value.
func (s *ListJobRunsInput) SetCreatedAtBefore(v time.Time) *ListJobRunsInput {
s.CreatedAtBefore = &v
return s
}
// SetMaxResults sets the MaxResults field's value.
func (s *ListJobRunsInput) SetMaxResults(v int64) *ListJobRunsInput {
s.MaxResults = &v
return s
}
// SetMode sets the Mode field's value.
func (s *ListJobRunsInput) SetMode(v string) *ListJobRunsInput {
s.Mode = &v
return s
}
// SetNextToken sets the NextToken field's value.
func (s *ListJobRunsInput) SetNextToken(v string) *ListJobRunsInput {
s.NextToken = &v
return s
}
// SetStates sets the States field's value.
func (s *ListJobRunsInput) SetStates(v []*string) *ListJobRunsInput {
s.States = v
return s
}
type ListJobRunsOutput struct {
_ struct{} `type:"structure"`
// The output lists information about the specified job runs.
//
// JobRuns is a required field
JobRuns []*JobRunSummary `locationName:"jobRuns" type:"list" required:"true"`
// The output displays the token for the next set of job run results. This is
// required for pagination and is available as a response of the previous request.
NextToken *string `locationName:"nextToken" min:"1" type:"string"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListJobRunsOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListJobRunsOutput) GoString() string {
return s.String()
}
// SetJobRuns sets the JobRuns field's value.
func (s *ListJobRunsOutput) SetJobRuns(v []*JobRunSummary) *ListJobRunsOutput {
s.JobRuns = v
return s
}
// SetNextToken sets the NextToken field's value.
func (s *ListJobRunsOutput) SetNextToken(v string) *ListJobRunsOutput {
s.NextToken = &v
return s
}
type ListTagsForResourceInput struct {
_ struct{} `type:"structure" nopayload:"true"`
// The Amazon Resource Name (ARN) that identifies the resource to list the tags
// for. Currently, the supported resources are Amazon EMR Serverless applications
// and job runs.
//
// ResourceArn is a required field
ResourceArn *string `location:"uri" locationName:"resourceArn" min:"60" type:"string" required:"true"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListTagsForResourceInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListTagsForResourceInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *ListTagsForResourceInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"}
if s.ResourceArn == nil {
invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
}
if s.ResourceArn != nil && len(*s.ResourceArn) < 60 {
invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 60))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetResourceArn sets the ResourceArn field's value.
func (s *ListTagsForResourceInput) SetResourceArn(v string) *ListTagsForResourceInput {
s.ResourceArn = &v
return s
}
type ListTagsForResourceOutput struct {
_ struct{} `type:"structure"`
// The tags for the resource.
Tags map[string]*string `locationName:"tags" type:"map"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListTagsForResourceOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListTagsForResourceOutput) GoString() string {
return s.String()
}
// SetTags sets the Tags field's value.
func (s *ListTagsForResourceOutput) SetTags(v map[string]*string) *ListTagsForResourceOutput {
s.Tags = v
return s
}
// The managed log persistence configuration for a job run.
type ManagedPersistenceMonitoringConfiguration struct {
_ struct{} `type:"structure"`
// Enables managed logging and defaults to true. If set to false, managed logging
// will be turned off.
Enabled *bool `locationName:"enabled" type:"boolean"`
// The KMS key ARN to encrypt the logs stored in managed log persistence.
EncryptionKeyArn *string `locationName:"encryptionKeyArn" min:"20" type:"string"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ManagedPersistenceMonitoringConfiguration) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ManagedPersistenceMonitoringConfiguration) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *ManagedPersistenceMonitoringConfiguration) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "ManagedPersistenceMonitoringConfiguration"}
if s.EncryptionKeyArn != nil && len(*s.EncryptionKeyArn) < 20 {
invalidParams.Add(request.NewErrParamMinLen("EncryptionKeyArn", 20))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetEnabled sets the Enabled field's value.
func (s *ManagedPersistenceMonitoringConfiguration) SetEnabled(v bool) *ManagedPersistenceMonitoringConfiguration {
s.Enabled = &v
return s
}
// SetEncryptionKeyArn sets the EncryptionKeyArn field's value.
func (s *ManagedPersistenceMonitoringConfiguration) SetEncryptionKeyArn(v string) *ManagedPersistenceMonitoringConfiguration {
s.EncryptionKeyArn = &v
return s
}
// The maximum allowed cumulative resources for an application. No new resources
// will be created once the limit is hit.
type MaximumAllowedResources struct {
_ struct{} `type:"structure"`
// The maximum allowed CPU for an application.
//
// Cpu is a required field
Cpu *string `locationName:"cpu" min:"1" type:"string" required:"true"`
// The maximum allowed disk for an application.
Disk *string `locationName:"disk" min:"1" type:"string"`
// The maximum allowed resources for an application.
//
// Memory is a required field
Memory *string `locationName:"memory" min:"1" type:"string" required:"true"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s MaximumAllowedResources) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s MaximumAllowedResources) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *MaximumAllowedResources) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "MaximumAllowedResources"}
if s.Cpu == nil {
invalidParams.Add(request.NewErrParamRequired("Cpu"))
}
if s.Cpu != nil && len(*s.Cpu) < 1 {
invalidParams.Add(request.NewErrParamMinLen("Cpu", 1))
}
if s.Disk != nil && len(*s.Disk) < 1 {
invalidParams.Add(request.NewErrParamMinLen("Disk", 1))
}
if s.Memory == nil {
invalidParams.Add(request.NewErrParamRequired("Memory"))
}
if s.Memory != nil && len(*s.Memory) < 1 {
invalidParams.Add(request.NewErrParamMinLen("Memory", 1))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetCpu sets the Cpu field's value.
func (s *MaximumAllowedResources) SetCpu(v string) *MaximumAllowedResources {
s.Cpu = &v
return s
}
// SetDisk sets the Disk field's value.
func (s *MaximumAllowedResources) SetDisk(v string) *MaximumAllowedResources {
s.Disk = &v
return s
}
// SetMemory sets the Memory field's value.
func (s *MaximumAllowedResources) SetMemory(v string) *MaximumAllowedResources {
s.Memory = &v
return s
}
// The configuration setting for monitoring.
type MonitoringConfiguration struct {
_ struct{} `type:"structure"`
// The Amazon CloudWatch configuration for monitoring logs. You can configure
// your jobs to send log information to CloudWatch.
CloudWatchLoggingConfiguration *CloudWatchLoggingConfiguration `locationName:"cloudWatchLoggingConfiguration" type:"structure"`
// The managed log persistence configuration for a job run.
ManagedPersistenceMonitoringConfiguration *ManagedPersistenceMonitoringConfiguration `locationName:"managedPersistenceMonitoringConfiguration" type:"structure"`
// The monitoring configuration object you can configure to send metrics to
// Amazon Managed Service for Prometheus for a job run.
PrometheusMonitoringConfiguration *PrometheusMonitoringConfiguration `locationName:"prometheusMonitoringConfiguration" type:"structure"`
// The Amazon S3 configuration for monitoring log publishing.
S3MonitoringConfiguration *S3MonitoringConfiguration `locationName:"s3MonitoringConfiguration" type:"structure"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s MonitoringConfiguration) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s MonitoringConfiguration) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *MonitoringConfiguration) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "MonitoringConfiguration"}
if s.CloudWatchLoggingConfiguration != nil {
if err := s.CloudWatchLoggingConfiguration.Validate(); err != nil {
invalidParams.AddNested("CloudWatchLoggingConfiguration", err.(request.ErrInvalidParams))
}
}
if s.ManagedPersistenceMonitoringConfiguration != nil {
if err := s.ManagedPersistenceMonitoringConfiguration.Validate(); err != nil {
invalidParams.AddNested("ManagedPersistenceMonitoringConfiguration", err.(request.ErrInvalidParams))
}
}
if s.PrometheusMonitoringConfiguration != nil {
if err := s.PrometheusMonitoringConfiguration.Validate(); err != nil {
invalidParams.AddNested("PrometheusMonitoringConfiguration", err.(request.ErrInvalidParams))
}
}
if s.S3MonitoringConfiguration != nil {
if err := s.S3MonitoringConfiguration.Validate(); err != nil {
invalidParams.AddNested("S3MonitoringConfiguration", err.(request.ErrInvalidParams))
}
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetCloudWatchLoggingConfiguration sets the CloudWatchLoggingConfiguration field's value.
func (s *MonitoringConfiguration) SetCloudWatchLoggingConfiguration(v *CloudWatchLoggingConfiguration) *MonitoringConfiguration {
s.CloudWatchLoggingConfiguration = v
return s
}
// SetManagedPersistenceMonitoringConfiguration sets the ManagedPersistenceMonitoringConfiguration field's value.
func (s *MonitoringConfiguration) SetManagedPersistenceMonitoringConfiguration(v *ManagedPersistenceMonitoringConfiguration) *MonitoringConfiguration {
s.ManagedPersistenceMonitoringConfiguration = v
return s
}
// SetPrometheusMonitoringConfiguration sets the PrometheusMonitoringConfiguration field's value.
func (s *MonitoringConfiguration) SetPrometheusMonitoringConfiguration(v *PrometheusMonitoringConfiguration) *MonitoringConfiguration {
s.PrometheusMonitoringConfiguration = v
return s
}
// SetS3MonitoringConfiguration sets the S3MonitoringConfiguration field's value.
func (s *MonitoringConfiguration) SetS3MonitoringConfiguration(v *S3MonitoringConfiguration) *MonitoringConfiguration {
s.S3MonitoringConfiguration = v
return s
}
// The network configuration for customer VPC connectivity.
type NetworkConfiguration struct {
_ struct{} `type:"structure"`
// The array of security group Ids for customer VPC connectivity.
SecurityGroupIds []*string `locationName:"securityGroupIds" type:"list"`
// The array of subnet Ids for customer VPC connectivity.
SubnetIds []*string `locationName:"subnetIds" type:"list"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s NetworkConfiguration) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s NetworkConfiguration) GoString() string {
return s.String()
}
// SetSecurityGroupIds sets the SecurityGroupIds field's value.
func (s *NetworkConfiguration) SetSecurityGroupIds(v []*string) *NetworkConfiguration {
s.SecurityGroupIds = v
return s
}
// SetSubnetIds sets the SubnetIds field's value.
func (s *NetworkConfiguration) SetSubnetIds(v []*string) *NetworkConfiguration {
s.SubnetIds = v
return s
}
// The monitoring configuration object you can configure to send metrics to
// Amazon Managed Service for Prometheus for a job run.
type PrometheusMonitoringConfiguration struct {
_ struct{} `type:"structure"`
// The remote write URL in the Amazon Managed Service for Prometheus workspace
// to send metrics to.
RemoteWriteUrl *string `locationName:"remoteWriteUrl" min:"1" type:"string"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s PrometheusMonitoringConfiguration) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s PrometheusMonitoringConfiguration) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *PrometheusMonitoringConfiguration) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "PrometheusMonitoringConfiguration"}
if s.RemoteWriteUrl != nil && len(*s.RemoteWriteUrl) < 1 {
invalidParams.Add(request.NewErrParamMinLen("RemoteWriteUrl", 1))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetRemoteWriteUrl sets the RemoteWriteUrl field's value.
func (s *PrometheusMonitoringConfiguration) SetRemoteWriteUrl(v string) *PrometheusMonitoringConfiguration {
s.RemoteWriteUrl = &v
return s
}
// The specified resource was not found.
type ResourceNotFoundException struct {
_ struct{} `type:"structure"`
RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
Message_ *string `locationName:"message" min:"1" type:"string"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ResourceNotFoundException) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ResourceNotFoundException) GoString() string {
return s.String()
}
func newErrorResourceNotFoundException(v protocol.ResponseMetadata) error {
return &ResourceNotFoundException{
RespMetadata: v,
}
}
// Code returns the exception type name.
func (s *ResourceNotFoundException) Code() string {
return "ResourceNotFoundException"
}
// Message returns the exception's message.
func (s *ResourceNotFoundException) Message() string {
if s.Message_ != nil {
return *s.Message_
}
return ""
}
// OrigErr always returns nil, satisfies awserr.Error interface.
func (s *ResourceNotFoundException) OrigErr() error {
return nil
}
func (s *ResourceNotFoundException) Error() string {
return fmt.Sprintf("%s: %s", s.Code(), s.Message())
}
// Status code returns the HTTP status code for the request's response error.
func (s *ResourceNotFoundException) StatusCode() int {
return s.RespMetadata.StatusCode
}
// RequestID returns the service's response RequestID for request.
func (s *ResourceNotFoundException) RequestID() string {
return s.RespMetadata.RequestID
}
// The resource utilization for memory, storage, and vCPU for jobs.
type ResourceUtilization struct {
_ struct{} `type:"structure"`
// The aggregated memory used per hour from the time the job starts executing
// until the job is terminated.
MemoryGBHour *float64 `locationName:"memoryGBHour" type:"double"`
// The aggregated storage used per hour from the time the job starts executing
// until the job is terminated.
StorageGBHour *float64 `locationName:"storageGBHour" type:"double"`
// The aggregated vCPU used per hour from the time the job starts executing
// until the job is terminated.
VCPUHour *float64 `locationName:"vCPUHour" type:"double"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ResourceUtilization) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ResourceUtilization) GoString() string {
return s.String()
}
// SetMemoryGBHour sets the MemoryGBHour field's value.
func (s *ResourceUtilization) SetMemoryGBHour(v float64) *ResourceUtilization {
s.MemoryGBHour = &v
return s
}
// SetStorageGBHour sets the StorageGBHour field's value.
func (s *ResourceUtilization) SetStorageGBHour(v float64) *ResourceUtilization {
s.StorageGBHour = &v
return s
}
// SetVCPUHour sets the VCPUHour field's value.
func (s *ResourceUtilization) SetVCPUHour(v float64) *ResourceUtilization {
s.VCPUHour = &v
return s
}
// The retry policy to use for a job run.
type RetryPolicy struct {
_ struct{} `type:"structure"`
// Maximum number of attempts for the job run. This parameter is only applicable
// for BATCH mode.
MaxAttempts *int64 `locationName:"maxAttempts" min:"1" type:"integer"`
// Maximum number of failed attempts per hour. This [arameter is only applicable
// for STREAMING mode.
MaxFailedAttemptsPerHour *int64 `locationName:"maxFailedAttemptsPerHour" min:"1" type:"integer"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s RetryPolicy) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s RetryPolicy) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *RetryPolicy) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "RetryPolicy"}
if s.MaxAttempts != nil && *s.MaxAttempts < 1 {
invalidParams.Add(request.NewErrParamMinValue("MaxAttempts", 1))
}
if s.MaxFailedAttemptsPerHour != nil && *s.MaxFailedAttemptsPerHour < 1 {
invalidParams.Add(request.NewErrParamMinValue("MaxFailedAttemptsPerHour", 1))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetMaxAttempts sets the MaxAttempts field's value.
func (s *RetryPolicy) SetMaxAttempts(v int64) *RetryPolicy {
s.MaxAttempts = &v
return s
}
// SetMaxFailedAttemptsPerHour sets the MaxFailedAttemptsPerHour field's value.
func (s *RetryPolicy) SetMaxFailedAttemptsPerHour(v int64) *RetryPolicy {
s.MaxFailedAttemptsPerHour = &v
return s
}
// The Amazon S3 configuration for monitoring log publishing. You can configure
// your jobs to send log information to Amazon S3.
type S3MonitoringConfiguration struct {
_ struct{} `type:"structure"`
// The KMS key ARN to encrypt the logs published to the given Amazon S3 destination.
EncryptionKeyArn *string `locationName:"encryptionKeyArn" min:"20" type:"string"`
// The Amazon S3 destination URI for log publishing.
LogUri *string `locationName:"logUri" min:"1" type:"string"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s S3MonitoringConfiguration) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s S3MonitoringConfiguration) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *S3MonitoringConfiguration) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "S3MonitoringConfiguration"}
if s.EncryptionKeyArn != nil && len(*s.EncryptionKeyArn) < 20 {
invalidParams.Add(request.NewErrParamMinLen("EncryptionKeyArn", 20))
}
if s.LogUri != nil && len(*s.LogUri) < 1 {
invalidParams.Add(request.NewErrParamMinLen("LogUri", 1))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetEncryptionKeyArn sets the EncryptionKeyArn field's value.
func (s *S3MonitoringConfiguration) SetEncryptionKeyArn(v string) *S3MonitoringConfiguration {
s.EncryptionKeyArn = &v
return s
}
// SetLogUri sets the LogUri field's value.
func (s *S3MonitoringConfiguration) SetLogUri(v string) *S3MonitoringConfiguration {
s.LogUri = &v
return s
}
// The maximum number of resources per account has been reached.
type ServiceQuotaExceededException struct {
_ struct{} `type:"structure"`
RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
Message_ *string `locationName:"message" min:"1" type:"string"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ServiceQuotaExceededException) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ServiceQuotaExceededException) GoString() string {
return s.String()
}
func newErrorServiceQuotaExceededException(v protocol.ResponseMetadata) error {
return &ServiceQuotaExceededException{
RespMetadata: v,
}
}
// Code returns the exception type name.
func (s *ServiceQuotaExceededException) Code() string {
return "ServiceQuotaExceededException"
}
// Message returns the exception's message.
func (s *ServiceQuotaExceededException) Message() string {
if s.Message_ != nil {
return *s.Message_
}
return ""
}
// OrigErr always returns nil, satisfies awserr.Error interface.
func (s *ServiceQuotaExceededException) OrigErr() error {
return nil
}
func (s *ServiceQuotaExceededException) Error() string {
return fmt.Sprintf("%s: %s", s.Code(), s.Message())
}
// Status code returns the HTTP status code for the request's response error.
func (s *ServiceQuotaExceededException) StatusCode() int {
return s.RespMetadata.StatusCode
}
// RequestID returns the service's response RequestID for request.
func (s *ServiceQuotaExceededException) RequestID() string {
return s.RespMetadata.RequestID
}
// The configurations for the Spark submit job driver.
type SparkSubmit struct {
_ struct{} `type:"structure"`
// The entry point for the Spark submit job run.
//
// EntryPoint is a sensitive parameter and its value will be
// replaced with "sensitive" in string returned by SparkSubmit's
// String and GoString methods.
//
// EntryPoint is a required field
EntryPoint *string `locationName:"entryPoint" min:"1" type:"string" required:"true" sensitive:"true"`
// The arguments for the Spark submit job run.
EntryPointArguments []*string `locationName:"entryPointArguments" type:"list" sensitive:"true"`
// The parameters for the Spark submit job run.
//
// SparkSubmitParameters is a sensitive parameter and its value will be
// replaced with "sensitive" in string returned by SparkSubmit's
// String and GoString methods.
SparkSubmitParameters *string `locationName:"sparkSubmitParameters" min:"1" type:"string" sensitive:"true"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s SparkSubmit) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s SparkSubmit) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *SparkSubmit) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "SparkSubmit"}
if s.EntryPoint == nil {
invalidParams.Add(request.NewErrParamRequired("EntryPoint"))
}
if s.EntryPoint != nil && len(*s.EntryPoint) < 1 {
invalidParams.Add(request.NewErrParamMinLen("EntryPoint", 1))
}
if s.SparkSubmitParameters != nil && len(*s.SparkSubmitParameters) < 1 {
invalidParams.Add(request.NewErrParamMinLen("SparkSubmitParameters", 1))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetEntryPoint sets the EntryPoint field's value.
func (s *SparkSubmit) SetEntryPoint(v string) *SparkSubmit {
s.EntryPoint = &v
return s
}
// SetEntryPointArguments sets the EntryPointArguments field's value.
func (s *SparkSubmit) SetEntryPointArguments(v []*string) *SparkSubmit {
s.EntryPointArguments = v
return s
}
// SetSparkSubmitParameters sets the SparkSubmitParameters field's value.
func (s *SparkSubmit) SetSparkSubmitParameters(v string) *SparkSubmit {
s.SparkSubmitParameters = &v
return s
}
type StartApplicationInput struct {
_ struct{} `type:"structure" nopayload:"true"`
// The ID of the application to start.
//
// ApplicationId is a required field
ApplicationId *string `location:"uri" locationName:"applicationId" min:"1" type:"string" required:"true"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s StartApplicationInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s StartApplicationInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *StartApplicationInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "StartApplicationInput"}
if s.ApplicationId == nil {
invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
}
if s.ApplicationId != nil && len(*s.ApplicationId) < 1 {
invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 1))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetApplicationId sets the ApplicationId field's value.
func (s *StartApplicationInput) SetApplicationId(v string) *StartApplicationInput {
s.ApplicationId = &v
return s
}
type StartApplicationOutput struct {
_ struct{} `type:"structure"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s StartApplicationOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s StartApplicationOutput) GoString() string {
return s.String()
}
type StartJobRunInput struct {
_ struct{} `type:"structure"`
// The ID of the application on which to run the job.
//
// ApplicationId is a required field
ApplicationId *string `location:"uri" locationName:"applicationId" min:"1" type:"string" required:"true"`
// The client idempotency token of the job run to start. Its value must be unique
// for each request.
ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"`
// The configuration overrides for the job run.
ConfigurationOverrides *ConfigurationOverrides `locationName:"configurationOverrides" type:"structure"`
// The execution role ARN for the job run.
//
// ExecutionRoleArn is a required field
ExecutionRoleArn *string `locationName:"executionRoleArn" min:"20" type:"string" required:"true"`
// The maximum duration for the job run to run. If the job run runs beyond this
// duration, it will be automatically cancelled.
ExecutionTimeoutMinutes *int64 `locationName:"executionTimeoutMinutes" type:"long"`
// The job driver for the job run.
JobDriver *JobDriver `locationName:"jobDriver" type:"structure"`
// The mode of the job run when it starts.
Mode *string `locationName:"mode" type:"string" enum:"JobRunMode"`
// The optional job run name. This doesn't have to be unique.
Name *string `locationName:"name" min:"1" type:"string"`
// The retry policy when job run starts.
RetryPolicy *RetryPolicy `locationName:"retryPolicy" type:"structure"`
// The tags assigned to the job run.
Tags map[string]*string `locationName:"tags" type:"map"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s StartJobRunInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s StartJobRunInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *StartJobRunInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "StartJobRunInput"}
if s.ApplicationId == nil {
invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
}
if s.ApplicationId != nil && len(*s.ApplicationId) < 1 {
invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 1))
}
if s.ClientToken != nil && len(*s.ClientToken) < 1 {
invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1))
}
if s.ExecutionRoleArn == nil {
invalidParams.Add(request.NewErrParamRequired("ExecutionRoleArn"))
}
if s.ExecutionRoleArn != nil && len(*s.ExecutionRoleArn) < 20 {
invalidParams.Add(request.NewErrParamMinLen("ExecutionRoleArn", 20))
}
if s.Name != nil && len(*s.Name) < 1 {
invalidParams.Add(request.NewErrParamMinLen("Name", 1))
}
if s.ConfigurationOverrides != nil {
if err := s.ConfigurationOverrides.Validate(); err != nil {
invalidParams.AddNested("ConfigurationOverrides", err.(request.ErrInvalidParams))
}
}
if s.JobDriver != nil {
if err := s.JobDriver.Validate(); err != nil {
invalidParams.AddNested("JobDriver", err.(request.ErrInvalidParams))
}
}
if s.RetryPolicy != nil {
if err := s.RetryPolicy.Validate(); err != nil {
invalidParams.AddNested("RetryPolicy", err.(request.ErrInvalidParams))
}
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetApplicationId sets the ApplicationId field's value.
func (s *StartJobRunInput) SetApplicationId(v string) *StartJobRunInput {
s.ApplicationId = &v
return s
}
// SetClientToken sets the ClientToken field's value.
func (s *StartJobRunInput) SetClientToken(v string) *StartJobRunInput {
s.ClientToken = &v
return s
}
// SetConfigurationOverrides sets the ConfigurationOverrides field's value.
func (s *StartJobRunInput) SetConfigurationOverrides(v *ConfigurationOverrides) *StartJobRunInput {
s.ConfigurationOverrides = v
return s
}
// SetExecutionRoleArn sets the ExecutionRoleArn field's value.
func (s *StartJobRunInput) SetExecutionRoleArn(v string) *StartJobRunInput {
s.ExecutionRoleArn = &v
return s
}
// SetExecutionTimeoutMinutes sets the ExecutionTimeoutMinutes field's value.
func (s *StartJobRunInput) SetExecutionTimeoutMinutes(v int64) *StartJobRunInput {
s.ExecutionTimeoutMinutes = &v
return s
}
// SetJobDriver sets the JobDriver field's value.
func (s *StartJobRunInput) SetJobDriver(v *JobDriver) *StartJobRunInput {
s.JobDriver = v
return s
}
// SetMode sets the Mode field's value.
func (s *StartJobRunInput) SetMode(v string) *StartJobRunInput {
s.Mode = &v
return s
}
// SetName sets the Name field's value.
func (s *StartJobRunInput) SetName(v string) *StartJobRunInput {
s.Name = &v
return s
}
// SetRetryPolicy sets the RetryPolicy field's value.
func (s *StartJobRunInput) SetRetryPolicy(v *RetryPolicy) *StartJobRunInput {
s.RetryPolicy = v
return s
}
// SetTags sets the Tags field's value.
func (s *StartJobRunInput) SetTags(v map[string]*string) *StartJobRunInput {
s.Tags = v
return s
}
type StartJobRunOutput struct {
_ struct{} `type:"structure"`
// This output displays the application ID on which the job run was submitted.
//
// ApplicationId is a required field
ApplicationId *string `locationName:"applicationId" min:"1" type:"string" required:"true"`
// This output displays the ARN of the job run..
//
// Arn is a required field
Arn *string `locationName:"arn" min:"60" type:"string" required:"true"`
// The output contains the ID of the started job run.
//
// JobRunId is a required field
JobRunId *string `locationName:"jobRunId" min:"1" type:"string" required:"true"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s StartJobRunOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s StartJobRunOutput) GoString() string {
return s.String()
}
// SetApplicationId sets the ApplicationId field's value.
func (s *StartJobRunOutput) SetApplicationId(v string) *StartJobRunOutput {
s.ApplicationId = &v
return s
}
// SetArn sets the Arn field's value.
func (s *StartJobRunOutput) SetArn(v string) *StartJobRunOutput {
s.Arn = &v
return s
}
// SetJobRunId sets the JobRunId field's value.
func (s *StartJobRunOutput) SetJobRunId(v string) *StartJobRunOutput {
s.JobRunId = &v
return s
}
type StopApplicationInput struct {
_ struct{} `type:"structure" nopayload:"true"`
// The ID of the application to stop.
//
// ApplicationId is a required field
ApplicationId *string `location:"uri" locationName:"applicationId" min:"1" type:"string" required:"true"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s StopApplicationInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s StopApplicationInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *StopApplicationInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "StopApplicationInput"}
if s.ApplicationId == nil {
invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
}
if s.ApplicationId != nil && len(*s.ApplicationId) < 1 {
invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 1))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetApplicationId sets the ApplicationId field's value.
func (s *StopApplicationInput) SetApplicationId(v string) *StopApplicationInput {
s.ApplicationId = &v
return s
}
type StopApplicationOutput struct {
_ struct{} `type:"structure"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s StopApplicationOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s StopApplicationOutput) GoString() string {
return s.String()
}
type TagResourceInput struct {
_ struct{} `type:"structure"`
// The Amazon Resource Name (ARN) that identifies the resource to list the tags
// for. Currently, the supported resources are Amazon EMR Serverless applications
// and job runs.
//
// ResourceArn is a required field
ResourceArn *string `location:"uri" locationName:"resourceArn" min:"60" type:"string" required:"true"`
// The tags to add to the resource. A tag is an array of key-value pairs.
//
// Tags is a required field
Tags map[string]*string `locationName:"tags" type:"map" required:"true"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s TagResourceInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s TagResourceInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *TagResourceInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"}
if s.ResourceArn == nil {
invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
}
if s.ResourceArn != nil && len(*s.ResourceArn) < 60 {
invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 60))
}
if s.Tags == nil {
invalidParams.Add(request.NewErrParamRequired("Tags"))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetResourceArn sets the ResourceArn field's value.
func (s *TagResourceInput) SetResourceArn(v string) *TagResourceInput {
s.ResourceArn = &v
return s
}
// SetTags sets the Tags field's value.
func (s *TagResourceInput) SetTags(v map[string]*string) *TagResourceInput {
s.Tags = v
return s
}
type TagResourceOutput struct {
_ struct{} `type:"structure"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s TagResourceOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s TagResourceOutput) GoString() string {
return s.String()
}
// The aggregate vCPU, memory, and storage resources used from the time job
// start executing till the time job is terminated, rounded up to the nearest
// second.
type TotalResourceUtilization struct {
_ struct{} `type:"structure"`
// The aggregated memory used per hour from the time job start executing till
// the time job is terminated.
MemoryGBHour *float64 `locationName:"memoryGBHour" type:"double"`
// The aggregated storage used per hour from the time job start executing till
// the time job is terminated.
StorageGBHour *float64 `locationName:"storageGBHour" type:"double"`
// The aggregated vCPU used per hour from the time job start executing till
// the time job is terminated.
VCPUHour *float64 `locationName:"vCPUHour" type:"double"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s TotalResourceUtilization) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s TotalResourceUtilization) GoString() string {
return s.String()
}
// SetMemoryGBHour sets the MemoryGBHour field's value.
func (s *TotalResourceUtilization) SetMemoryGBHour(v float64) *TotalResourceUtilization {
s.MemoryGBHour = &v
return s
}
// SetStorageGBHour sets the StorageGBHour field's value.
func (s *TotalResourceUtilization) SetStorageGBHour(v float64) *TotalResourceUtilization {
s.StorageGBHour = &v
return s
}
// SetVCPUHour sets the VCPUHour field's value.
func (s *TotalResourceUtilization) SetVCPUHour(v float64) *TotalResourceUtilization {
s.VCPUHour = &v
return s
}
type UntagResourceInput struct {
_ struct{} `type:"structure" nopayload:"true"`
// The Amazon Resource Name (ARN) that identifies the resource to list the tags
// for. Currently, the supported resources are Amazon EMR Serverless applications
// and job runs.
//
// ResourceArn is a required field
ResourceArn *string `location:"uri" locationName:"resourceArn" min:"60" type:"string" required:"true"`
// The keys of the tags to be removed.
//
// TagKeys is a required field
TagKeys []*string `location:"querystring" locationName:"tagKeys" min:"1" type:"list" required:"true"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s UntagResourceInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s UntagResourceInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *UntagResourceInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "UntagResourceInput"}
if s.ResourceArn == nil {
invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
}
if s.ResourceArn != nil && len(*s.ResourceArn) < 60 {
invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 60))
}
if s.TagKeys == nil {
invalidParams.Add(request.NewErrParamRequired("TagKeys"))
}
if s.TagKeys != nil && len(s.TagKeys) < 1 {
invalidParams.Add(request.NewErrParamMinLen("TagKeys", 1))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetResourceArn sets the ResourceArn field's value.
func (s *UntagResourceInput) SetResourceArn(v string) *UntagResourceInput {
s.ResourceArn = &v
return s
}
// SetTagKeys sets the TagKeys field's value.
func (s *UntagResourceInput) SetTagKeys(v []*string) *UntagResourceInput {
s.TagKeys = v
return s
}
type UntagResourceOutput struct {
_ struct{} `type:"structure"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s UntagResourceOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s UntagResourceOutput) GoString() string {
return s.String()
}
type UpdateApplicationInput struct {
_ struct{} `type:"structure"`
// The ID of the application to update.
//
// ApplicationId is a required field
ApplicationId *string `location:"uri" locationName:"applicationId" min:"1" type:"string" required:"true"`
// The CPU architecture of an application.
Architecture *string `locationName:"architecture" type:"string" enum:"Architecture"`
// The configuration for an application to automatically start on job submission.
AutoStartConfiguration *AutoStartConfig `locationName:"autoStartConfiguration" type:"structure"`
// The configuration for an application to automatically stop after a certain
// amount of time being idle.
AutoStopConfiguration *AutoStopConfig `locationName:"autoStopConfiguration" type:"structure"`
// The client idempotency token of the application to update. Its value must
// be unique for each request.
ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"`
// The image configuration to be used for all worker types. You can either set
// this parameter or imageConfiguration for each worker type in WorkerTypeSpecificationInput.
ImageConfiguration *ImageConfigurationInput_ `locationName:"imageConfiguration" type:"structure"`
// The capacity to initialize when the application is updated.
InitialCapacity map[string]*InitialCapacityConfig `locationName:"initialCapacity" type:"map"`
// The interactive configuration object that contains new interactive use cases
// when the application is updated.
InteractiveConfiguration *InteractiveConfiguration `locationName:"interactiveConfiguration" type:"structure"`
// The maximum capacity to allocate when the application is updated. This is
// cumulative across all workers at any given point in time during the lifespan
// of the application. No new resources will be created once any one of the
// defined limits is hit.
MaximumCapacity *MaximumAllowedResources `locationName:"maximumCapacity" type:"structure"`
// The configuration setting for monitoring.
MonitoringConfiguration *MonitoringConfiguration `locationName:"monitoringConfiguration" type:"structure"`
// The network configuration for customer VPC connectivity.
NetworkConfiguration *NetworkConfiguration `locationName:"networkConfiguration" type:"structure"`
// The Amazon EMR release label for the application. You can change the release
// label to use a different release of Amazon EMR.
ReleaseLabel *string `locationName:"releaseLabel" min:"1" type:"string"`
// The Configuration (https://docs.aws.amazon.com/emr-serverless/latest/APIReference/API_Configuration.html)
// specifications to use when updating an application. Each configuration consists
// of a classification and properties. This configuration is applied across
// all the job runs submitted under the application.
RuntimeConfiguration []*Configuration `locationName:"runtimeConfiguration" type:"list"`
// The key-value pairs that specify worker type to WorkerTypeSpecificationInput.
// This parameter must contain all valid worker types for a Spark or Hive application.
// Valid worker types include Driver and Executor for Spark applications and
// HiveDriver and TezTask for Hive applications. You can either set image details
// in this parameter for each worker type, or in imageConfiguration for all
// worker types.
WorkerTypeSpecifications map[string]*WorkerTypeSpecificationInput_ `locationName:"workerTypeSpecifications" type:"map"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s UpdateApplicationInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s UpdateApplicationInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *UpdateApplicationInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "UpdateApplicationInput"}
if s.ApplicationId == nil {
invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
}
if s.ApplicationId != nil && len(*s.ApplicationId) < 1 {
invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 1))
}
if s.ClientToken != nil && len(*s.ClientToken) < 1 {
invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1))
}
if s.ReleaseLabel != nil && len(*s.ReleaseLabel) < 1 {
invalidParams.Add(request.NewErrParamMinLen("ReleaseLabel", 1))
}
if s.AutoStopConfiguration != nil {
if err := s.AutoStopConfiguration.Validate(); err != nil {
invalidParams.AddNested("AutoStopConfiguration", err.(request.ErrInvalidParams))
}
}
if s.ImageConfiguration != nil {
if err := s.ImageConfiguration.Validate(); err != nil {
invalidParams.AddNested("ImageConfiguration", err.(request.ErrInvalidParams))
}
}
if s.InitialCapacity != nil {
for i, v := range s.InitialCapacity {
if v == nil {
continue
}
if err := v.Validate(); err != nil {
invalidParams.AddNested(fmt.Sprintf("%s[%v]", "InitialCapacity", i), err.(request.ErrInvalidParams))
}
}
}
if s.MaximumCapacity != nil {
if err := s.MaximumCapacity.Validate(); err != nil {
invalidParams.AddNested("MaximumCapacity", err.(request.ErrInvalidParams))
}
}
if s.MonitoringConfiguration != nil {
if err := s.MonitoringConfiguration.Validate(); err != nil {
invalidParams.AddNested("MonitoringConfiguration", err.(request.ErrInvalidParams))
}
}
if s.RuntimeConfiguration != nil {
for i, v := range s.RuntimeConfiguration {
if v == nil {
continue
}
if err := v.Validate(); err != nil {
invalidParams.AddNested(fmt.Sprintf("%s[%v]", "RuntimeConfiguration", i), err.(request.ErrInvalidParams))
}
}
}
if s.WorkerTypeSpecifications != nil {
for i, v := range s.WorkerTypeSpecifications {
if v == nil {
continue
}
if err := v.Validate(); err != nil {
invalidParams.AddNested(fmt.Sprintf("%s[%v]", "WorkerTypeSpecifications", i), err.(request.ErrInvalidParams))
}
}
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetApplicationId sets the ApplicationId field's value.
func (s *UpdateApplicationInput) SetApplicationId(v string) *UpdateApplicationInput {
s.ApplicationId = &v
return s
}
// SetArchitecture sets the Architecture field's value.
func (s *UpdateApplicationInput) SetArchitecture(v string) *UpdateApplicationInput {
s.Architecture = &v
return s
}
// SetAutoStartConfiguration sets the AutoStartConfiguration field's value.
func (s *UpdateApplicationInput) SetAutoStartConfiguration(v *AutoStartConfig) *UpdateApplicationInput {
s.AutoStartConfiguration = v
return s
}
// SetAutoStopConfiguration sets the AutoStopConfiguration field's value.
func (s *UpdateApplicationInput) SetAutoStopConfiguration(v *AutoStopConfig) *UpdateApplicationInput {
s.AutoStopConfiguration = v
return s
}
// SetClientToken sets the ClientToken field's value.
func (s *UpdateApplicationInput) SetClientToken(v string) *UpdateApplicationInput {
s.ClientToken = &v
return s
}
// SetImageConfiguration sets the ImageConfiguration field's value.
func (s *UpdateApplicationInput) SetImageConfiguration(v *ImageConfigurationInput_) *UpdateApplicationInput {
s.ImageConfiguration = v
return s
}
// SetInitialCapacity sets the InitialCapacity field's value.
func (s *UpdateApplicationInput) SetInitialCapacity(v map[string]*InitialCapacityConfig) *UpdateApplicationInput {
s.InitialCapacity = v
return s
}
// SetInteractiveConfiguration sets the InteractiveConfiguration field's value.
func (s *UpdateApplicationInput) SetInteractiveConfiguration(v *InteractiveConfiguration) *UpdateApplicationInput {
s.InteractiveConfiguration = v
return s
}
// SetMaximumCapacity sets the MaximumCapacity field's value.
func (s *UpdateApplicationInput) SetMaximumCapacity(v *MaximumAllowedResources) *UpdateApplicationInput {
s.MaximumCapacity = v
return s
}
// SetMonitoringConfiguration sets the MonitoringConfiguration field's value.
func (s *UpdateApplicationInput) SetMonitoringConfiguration(v *MonitoringConfiguration) *UpdateApplicationInput {
s.MonitoringConfiguration = v
return s
}
// SetNetworkConfiguration sets the NetworkConfiguration field's value.
func (s *UpdateApplicationInput) SetNetworkConfiguration(v *NetworkConfiguration) *UpdateApplicationInput {
s.NetworkConfiguration = v
return s
}
// SetReleaseLabel sets the ReleaseLabel field's value.
func (s *UpdateApplicationInput) SetReleaseLabel(v string) *UpdateApplicationInput {
s.ReleaseLabel = &v
return s
}
// SetRuntimeConfiguration sets the RuntimeConfiguration field's value.
func (s *UpdateApplicationInput) SetRuntimeConfiguration(v []*Configuration) *UpdateApplicationInput {
s.RuntimeConfiguration = v
return s
}
// SetWorkerTypeSpecifications sets the WorkerTypeSpecifications field's value.
func (s *UpdateApplicationInput) SetWorkerTypeSpecifications(v map[string]*WorkerTypeSpecificationInput_) *UpdateApplicationInput {
s.WorkerTypeSpecifications = v
return s
}
type UpdateApplicationOutput struct {
_ struct{} `type:"structure"`
// Information about the updated application.
//
// Application is a required field
Application *Application `locationName:"application" type:"structure" required:"true"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s UpdateApplicationOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s UpdateApplicationOutput) GoString() string {
return s.String()
}
// SetApplication sets the Application field's value.
func (s *UpdateApplicationOutput) SetApplication(v *Application) *UpdateApplicationOutput {
s.Application = v
return s
}
// The input fails to satisfy the constraints specified by an Amazon Web Services
// service.
type ValidationException struct {
_ struct{} `type:"structure"`
RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
Message_ *string `locationName:"message" min:"1" type:"string"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ValidationException) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ValidationException) GoString() string {
return s.String()
}
func newErrorValidationException(v protocol.ResponseMetadata) error {
return &ValidationException{
RespMetadata: v,
}
}
// Code returns the exception type name.
func (s *ValidationException) Code() string {
return "ValidationException"
}
// Message returns the exception's message.
func (s *ValidationException) Message() string {
if s.Message_ != nil {
return *s.Message_
}
return ""
}
// OrigErr always returns nil, satisfies awserr.Error interface.
func (s *ValidationException) OrigErr() error {
return nil
}
func (s *ValidationException) Error() string {
return fmt.Sprintf("%s: %s", s.Code(), s.Message())
}
// Status code returns the HTTP status code for the request's response error.
func (s *ValidationException) StatusCode() int {
return s.RespMetadata.StatusCode
}
// RequestID returns the service's response RequestID for request.
func (s *ValidationException) RequestID() string {
return s.RespMetadata.RequestID
}
// The cumulative configuration requirements for every worker instance of the
// worker type.
type WorkerResourceConfig struct {
_ struct{} `type:"structure"`
// The CPU requirements for every worker instance of the worker type.
//
// Cpu is a required field
Cpu *string `locationName:"cpu" min:"1" type:"string" required:"true"`
// The disk requirements for every worker instance of the worker type.
Disk *string `locationName:"disk" min:"1" type:"string"`
// The disk type for every worker instance of the work type. Shuffle optimized
// disks have higher performance characteristics and are better for shuffle
// heavy workloads. Default is STANDARD.
DiskType *string `locationName:"diskType" type:"string"`
// The memory requirements for every worker instance of the worker type.
//
// Memory is a required field
Memory *string `locationName:"memory" min:"1" type:"string" required:"true"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s WorkerResourceConfig) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s WorkerResourceConfig) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *WorkerResourceConfig) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "WorkerResourceConfig"}
if s.Cpu == nil {
invalidParams.Add(request.NewErrParamRequired("Cpu"))
}
if s.Cpu != nil && len(*s.Cpu) < 1 {
invalidParams.Add(request.NewErrParamMinLen("Cpu", 1))
}
if s.Disk != nil && len(*s.Disk) < 1 {
invalidParams.Add(request.NewErrParamMinLen("Disk", 1))
}
if s.Memory == nil {
invalidParams.Add(request.NewErrParamRequired("Memory"))
}
if s.Memory != nil && len(*s.Memory) < 1 {
invalidParams.Add(request.NewErrParamMinLen("Memory", 1))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetCpu sets the Cpu field's value.
func (s *WorkerResourceConfig) SetCpu(v string) *WorkerResourceConfig {
s.Cpu = &v
return s
}
// SetDisk sets the Disk field's value.
func (s *WorkerResourceConfig) SetDisk(v string) *WorkerResourceConfig {
s.Disk = &v
return s
}
// SetDiskType sets the DiskType field's value.
func (s *WorkerResourceConfig) SetDiskType(v string) *WorkerResourceConfig {
s.DiskType = &v
return s
}
// SetMemory sets the Memory field's value.
func (s *WorkerResourceConfig) SetMemory(v string) *WorkerResourceConfig {
s.Memory = &v
return s
}
// The specifications for a worker type.
type WorkerTypeSpecification struct {
_ struct{} `type:"structure"`
// The image configuration for a worker type.
ImageConfiguration *ImageConfiguration `locationName:"imageConfiguration" type:"structure"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s WorkerTypeSpecification) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s WorkerTypeSpecification) GoString() string {
return s.String()
}
// SetImageConfiguration sets the ImageConfiguration field's value.
func (s *WorkerTypeSpecification) SetImageConfiguration(v *ImageConfiguration) *WorkerTypeSpecification {
s.ImageConfiguration = v
return s
}
// The specifications for a worker type.
type WorkerTypeSpecificationInput_ struct {
_ struct{} `type:"structure"`
// The image configuration for a worker type.
ImageConfiguration *ImageConfigurationInput_ `locationName:"imageConfiguration" type:"structure"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s WorkerTypeSpecificationInput_) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s WorkerTypeSpecificationInput_) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *WorkerTypeSpecificationInput_) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "WorkerTypeSpecificationInput_"}
if s.ImageConfiguration != nil {
if err := s.ImageConfiguration.Validate(); err != nil {
invalidParams.AddNested("ImageConfiguration", err.(request.ErrInvalidParams))
}
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetImageConfiguration sets the ImageConfiguration field's value.
func (s *WorkerTypeSpecificationInput_) SetImageConfiguration(v *ImageConfigurationInput_) *WorkerTypeSpecificationInput_ {
s.ImageConfiguration = v
return s
}
const (
// ApplicationStateCreating is a ApplicationState enum value
ApplicationStateCreating = "CREATING"
// ApplicationStateCreated is a ApplicationState enum value
ApplicationStateCreated = "CREATED"
// ApplicationStateStarting is a ApplicationState enum value
ApplicationStateStarting = "STARTING"
// ApplicationStateStarted is a ApplicationState enum value
ApplicationStateStarted = "STARTED"
// ApplicationStateStopping is a ApplicationState enum value
ApplicationStateStopping = "STOPPING"
// ApplicationStateStopped is a ApplicationState enum value
ApplicationStateStopped = "STOPPED"
// ApplicationStateTerminated is a ApplicationState enum value
ApplicationStateTerminated = "TERMINATED"
)
// ApplicationState_Values returns all elements of the ApplicationState enum
func ApplicationState_Values() []string {
return []string{
ApplicationStateCreating,
ApplicationStateCreated,
ApplicationStateStarting,
ApplicationStateStarted,
ApplicationStateStopping,
ApplicationStateStopped,
ApplicationStateTerminated,
}
}
const (
// ArchitectureArm64 is a Architecture enum value
ArchitectureArm64 = "ARM64"
// ArchitectureX8664 is a Architecture enum value
ArchitectureX8664 = "X86_64"
)
// Architecture_Values returns all elements of the Architecture enum
func Architecture_Values() []string {
return []string{
ArchitectureArm64,
ArchitectureX8664,
}
}
const (
// JobRunModeBatch is a JobRunMode enum value
JobRunModeBatch = "BATCH"
// JobRunModeStreaming is a JobRunMode enum value
JobRunModeStreaming = "STREAMING"
)
// JobRunMode_Values returns all elements of the JobRunMode enum
func JobRunMode_Values() []string {
return []string{
JobRunModeBatch,
JobRunModeStreaming,
}
}
const (
// JobRunStateSubmitted is a JobRunState enum value
JobRunStateSubmitted = "SUBMITTED"
// JobRunStatePending is a JobRunState enum value
JobRunStatePending = "PENDING"
// JobRunStateScheduled is a JobRunState enum value
JobRunStateScheduled = "SCHEDULED"
// JobRunStateRunning is a JobRunState enum value
JobRunStateRunning = "RUNNING"
// JobRunStateSuccess is a JobRunState enum value
JobRunStateSuccess = "SUCCESS"
// JobRunStateFailed is a JobRunState enum value
JobRunStateFailed = "FAILED"
// JobRunStateCancelling is a JobRunState enum value
JobRunStateCancelling = "CANCELLING"
// JobRunStateCancelled is a JobRunState enum value
JobRunStateCancelled = "CANCELLED"
)
// JobRunState_Values returns all elements of the JobRunState enum
func JobRunState_Values() []string {
return []string{
JobRunStateSubmitted,
JobRunStatePending,
JobRunStateScheduled,
JobRunStateRunning,
JobRunStateSuccess,
JobRunStateFailed,
JobRunStateCancelling,
JobRunStateCancelled,
}
}