// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. package applicationcostprofiler 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" ) const opDeleteReportDefinition = "DeleteReportDefinition" // DeleteReportDefinitionRequest generates a "aws/request.Request" representing the // client's request for the DeleteReportDefinition 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 DeleteReportDefinition for more information on using the DeleteReportDefinition // 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 DeleteReportDefinitionRequest method. // req, resp := client.DeleteReportDefinitionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/AWSApplicationCostProfiler-2020-09-10/DeleteReportDefinition func (c *ApplicationCostProfiler) DeleteReportDefinitionRequest(input *DeleteReportDefinitionInput) (req *request.Request, output *DeleteReportDefinitionOutput) { op := &request.Operation{ Name: opDeleteReportDefinition, HTTPMethod: "DELETE", HTTPPath: "/reportDefinition/{reportId}", } if input == nil { input = &DeleteReportDefinitionInput{} } output = &DeleteReportDefinitionOutput{} req = c.newRequest(op, input, output) return } // DeleteReportDefinition API operation for AWS Application Cost Profiler. // // Deletes the specified report definition in AWS Application Cost Profiler. // This stops the report from being generated. // // 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 AWS Application Cost Profiler's // API operation DeleteReportDefinition for usage and error information. // // Returned Error Types: // // - InternalServerException // An internal server error occurred. Retry your request. // // - ThrottlingException // The calls to AWS Application Cost Profiler API are throttled. The request // was denied. // // - ValidationException // The input fails to satisfy the constraints for the API. // // - AccessDeniedException // You do not have permission to perform this action. // // See also, https://docs.aws.amazon.com/goto/WebAPI/AWSApplicationCostProfiler-2020-09-10/DeleteReportDefinition func (c *ApplicationCostProfiler) DeleteReportDefinition(input *DeleteReportDefinitionInput) (*DeleteReportDefinitionOutput, error) { req, out := c.DeleteReportDefinitionRequest(input) return out, req.Send() } // DeleteReportDefinitionWithContext is the same as DeleteReportDefinition with the addition of // the ability to pass a context and additional request options. // // See DeleteReportDefinition 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 *ApplicationCostProfiler) DeleteReportDefinitionWithContext(ctx aws.Context, input *DeleteReportDefinitionInput, opts ...request.Option) (*DeleteReportDefinitionOutput, error) { req, out := c.DeleteReportDefinitionRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opGetReportDefinition = "GetReportDefinition" // GetReportDefinitionRequest generates a "aws/request.Request" representing the // client's request for the GetReportDefinition 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 GetReportDefinition for more information on using the GetReportDefinition // 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 GetReportDefinitionRequest method. // req, resp := client.GetReportDefinitionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/AWSApplicationCostProfiler-2020-09-10/GetReportDefinition func (c *ApplicationCostProfiler) GetReportDefinitionRequest(input *GetReportDefinitionInput) (req *request.Request, output *GetReportDefinitionOutput) { op := &request.Operation{ Name: opGetReportDefinition, HTTPMethod: "GET", HTTPPath: "/reportDefinition/{reportId}", } if input == nil { input = &GetReportDefinitionInput{} } output = &GetReportDefinitionOutput{} req = c.newRequest(op, input, output) return } // GetReportDefinition API operation for AWS Application Cost Profiler. // // Retrieves the definition of a report already configured in AWS Application // Cost Profiler. // // 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 AWS Application Cost Profiler's // API operation GetReportDefinition for usage and error information. // // Returned Error Types: // // - InternalServerException // An internal server error occurred. Retry your request. // // - ThrottlingException // The calls to AWS Application Cost Profiler API are throttled. The request // was denied. // // - ValidationException // The input fails to satisfy the constraints for the API. // // - AccessDeniedException // You do not have permission to perform this action. // // See also, https://docs.aws.amazon.com/goto/WebAPI/AWSApplicationCostProfiler-2020-09-10/GetReportDefinition func (c *ApplicationCostProfiler) GetReportDefinition(input *GetReportDefinitionInput) (*GetReportDefinitionOutput, error) { req, out := c.GetReportDefinitionRequest(input) return out, req.Send() } // GetReportDefinitionWithContext is the same as GetReportDefinition with the addition of // the ability to pass a context and additional request options. // // See GetReportDefinition 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 *ApplicationCostProfiler) GetReportDefinitionWithContext(ctx aws.Context, input *GetReportDefinitionInput, opts ...request.Option) (*GetReportDefinitionOutput, error) { req, out := c.GetReportDefinitionRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opImportApplicationUsage = "ImportApplicationUsage" // ImportApplicationUsageRequest generates a "aws/request.Request" representing the // client's request for the ImportApplicationUsage 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 ImportApplicationUsage for more information on using the ImportApplicationUsage // 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 ImportApplicationUsageRequest method. // req, resp := client.ImportApplicationUsageRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/AWSApplicationCostProfiler-2020-09-10/ImportApplicationUsage func (c *ApplicationCostProfiler) ImportApplicationUsageRequest(input *ImportApplicationUsageInput) (req *request.Request, output *ImportApplicationUsageOutput) { op := &request.Operation{ Name: opImportApplicationUsage, HTTPMethod: "POST", HTTPPath: "/importApplicationUsage", } if input == nil { input = &ImportApplicationUsageInput{} } output = &ImportApplicationUsageOutput{} req = c.newRequest(op, input, output) return } // ImportApplicationUsage API operation for AWS Application Cost Profiler. // // Ingests application usage data from Amazon Simple Storage Service (Amazon // S3). // // The data must already exist in the S3 location. As part of the action, AWS // Application Cost Profiler copies the object from your S3 bucket to an S3 // bucket owned by Amazon for processing asynchronously. // // 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 AWS Application Cost Profiler's // API operation ImportApplicationUsage for usage and error information. // // Returned Error Types: // // - InternalServerException // An internal server error occurred. Retry your request. // // - ThrottlingException // The calls to AWS Application Cost Profiler API are throttled. The request // was denied. // // - ValidationException // The input fails to satisfy the constraints for the API. // // - AccessDeniedException // You do not have permission to perform this action. // // See also, https://docs.aws.amazon.com/goto/WebAPI/AWSApplicationCostProfiler-2020-09-10/ImportApplicationUsage func (c *ApplicationCostProfiler) ImportApplicationUsage(input *ImportApplicationUsageInput) (*ImportApplicationUsageOutput, error) { req, out := c.ImportApplicationUsageRequest(input) return out, req.Send() } // ImportApplicationUsageWithContext is the same as ImportApplicationUsage with the addition of // the ability to pass a context and additional request options. // // See ImportApplicationUsage 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 *ApplicationCostProfiler) ImportApplicationUsageWithContext(ctx aws.Context, input *ImportApplicationUsageInput, opts ...request.Option) (*ImportApplicationUsageOutput, error) { req, out := c.ImportApplicationUsageRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opListReportDefinitions = "ListReportDefinitions" // ListReportDefinitionsRequest generates a "aws/request.Request" representing the // client's request for the ListReportDefinitions 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 ListReportDefinitions for more information on using the ListReportDefinitions // 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 ListReportDefinitionsRequest method. // req, resp := client.ListReportDefinitionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/AWSApplicationCostProfiler-2020-09-10/ListReportDefinitions func (c *ApplicationCostProfiler) ListReportDefinitionsRequest(input *ListReportDefinitionsInput) (req *request.Request, output *ListReportDefinitionsOutput) { op := &request.Operation{ Name: opListReportDefinitions, HTTPMethod: "GET", HTTPPath: "/reportDefinition", Paginator: &request.Paginator{ InputTokens: []string{"nextToken"}, OutputTokens: []string{"nextToken"}, LimitToken: "maxResults", TruncationToken: "", }, } if input == nil { input = &ListReportDefinitionsInput{} } output = &ListReportDefinitionsOutput{} req = c.newRequest(op, input, output) return } // ListReportDefinitions API operation for AWS Application Cost Profiler. // // Retrieves a list of all reports and their configurations for your AWS account. // // The maximum number of reports is one. // // 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 AWS Application Cost Profiler's // API operation ListReportDefinitions for usage and error information. // // Returned Error Types: // // - InternalServerException // An internal server error occurred. Retry your request. // // - ThrottlingException // The calls to AWS Application Cost Profiler API are throttled. The request // was denied. // // - ValidationException // The input fails to satisfy the constraints for the API. // // - AccessDeniedException // You do not have permission to perform this action. // // See also, https://docs.aws.amazon.com/goto/WebAPI/AWSApplicationCostProfiler-2020-09-10/ListReportDefinitions func (c *ApplicationCostProfiler) ListReportDefinitions(input *ListReportDefinitionsInput) (*ListReportDefinitionsOutput, error) { req, out := c.ListReportDefinitionsRequest(input) return out, req.Send() } // ListReportDefinitionsWithContext is the same as ListReportDefinitions with the addition of // the ability to pass a context and additional request options. // // See ListReportDefinitions 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 *ApplicationCostProfiler) ListReportDefinitionsWithContext(ctx aws.Context, input *ListReportDefinitionsInput, opts ...request.Option) (*ListReportDefinitionsOutput, error) { req, out := c.ListReportDefinitionsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } // ListReportDefinitionsPages iterates over the pages of a ListReportDefinitions operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListReportDefinitions 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 ListReportDefinitions operation. // pageNum := 0 // err := client.ListReportDefinitionsPages(params, // func(page *applicationcostprofiler.ListReportDefinitionsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) func (c *ApplicationCostProfiler) ListReportDefinitionsPages(input *ListReportDefinitionsInput, fn func(*ListReportDefinitionsOutput, bool) bool) error { return c.ListReportDefinitionsPagesWithContext(aws.BackgroundContext(), input, fn) } // ListReportDefinitionsPagesWithContext same as ListReportDefinitionsPages 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 *ApplicationCostProfiler) ListReportDefinitionsPagesWithContext(ctx aws.Context, input *ListReportDefinitionsInput, fn func(*ListReportDefinitionsOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { var inCpy *ListReportDefinitionsInput if input != nil { tmp := *input inCpy = &tmp } req, _ := c.ListReportDefinitionsRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil }, } for p.Next() { if !fn(p.Page().(*ListReportDefinitionsOutput), !p.HasNextPage()) { break } } return p.Err() } const opPutReportDefinition = "PutReportDefinition" // PutReportDefinitionRequest generates a "aws/request.Request" representing the // client's request for the PutReportDefinition 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 PutReportDefinition for more information on using the PutReportDefinition // 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 PutReportDefinitionRequest method. // req, resp := client.PutReportDefinitionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/AWSApplicationCostProfiler-2020-09-10/PutReportDefinition func (c *ApplicationCostProfiler) PutReportDefinitionRequest(input *PutReportDefinitionInput) (req *request.Request, output *PutReportDefinitionOutput) { op := &request.Operation{ Name: opPutReportDefinition, HTTPMethod: "POST", HTTPPath: "/reportDefinition", } if input == nil { input = &PutReportDefinitionInput{} } output = &PutReportDefinitionOutput{} req = c.newRequest(op, input, output) return } // PutReportDefinition API operation for AWS Application Cost Profiler. // // Creates the report definition for a report in Application Cost Profiler. // // 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 AWS Application Cost Profiler's // API operation PutReportDefinition for usage and error information. // // Returned Error Types: // // - InternalServerException // An internal server error occurred. Retry your request. // // - ThrottlingException // The calls to AWS Application Cost Profiler API are throttled. The request // was denied. // // - ValidationException // The input fails to satisfy the constraints for the API. // // - AccessDeniedException // You do not have permission to perform this action. // // - ServiceQuotaExceededException // Your request exceeds one or more of the service quotas. // // See also, https://docs.aws.amazon.com/goto/WebAPI/AWSApplicationCostProfiler-2020-09-10/PutReportDefinition func (c *ApplicationCostProfiler) PutReportDefinition(input *PutReportDefinitionInput) (*PutReportDefinitionOutput, error) { req, out := c.PutReportDefinitionRequest(input) return out, req.Send() } // PutReportDefinitionWithContext is the same as PutReportDefinition with the addition of // the ability to pass a context and additional request options. // // See PutReportDefinition 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 *ApplicationCostProfiler) PutReportDefinitionWithContext(ctx aws.Context, input *PutReportDefinitionInput, opts ...request.Option) (*PutReportDefinitionOutput, error) { req, out := c.PutReportDefinitionRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opUpdateReportDefinition = "UpdateReportDefinition" // UpdateReportDefinitionRequest generates a "aws/request.Request" representing the // client's request for the UpdateReportDefinition 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 UpdateReportDefinition for more information on using the UpdateReportDefinition // 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 UpdateReportDefinitionRequest method. // req, resp := client.UpdateReportDefinitionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/AWSApplicationCostProfiler-2020-09-10/UpdateReportDefinition func (c *ApplicationCostProfiler) UpdateReportDefinitionRequest(input *UpdateReportDefinitionInput) (req *request.Request, output *UpdateReportDefinitionOutput) { op := &request.Operation{ Name: opUpdateReportDefinition, HTTPMethod: "PUT", HTTPPath: "/reportDefinition/{reportId}", } if input == nil { input = &UpdateReportDefinitionInput{} } output = &UpdateReportDefinitionOutput{} req = c.newRequest(op, input, output) return } // UpdateReportDefinition API operation for AWS Application Cost Profiler. // // Updates existing report in AWS Application Cost Profiler. // // 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 AWS Application Cost Profiler's // API operation UpdateReportDefinition for usage and error information. // // Returned Error Types: // // - InternalServerException // An internal server error occurred. Retry your request. // // - ThrottlingException // The calls to AWS Application Cost Profiler API are throttled. The request // was denied. // // - ValidationException // The input fails to satisfy the constraints for the API. // // - AccessDeniedException // You do not have permission to perform this action. // // See also, https://docs.aws.amazon.com/goto/WebAPI/AWSApplicationCostProfiler-2020-09-10/UpdateReportDefinition func (c *ApplicationCostProfiler) UpdateReportDefinition(input *UpdateReportDefinitionInput) (*UpdateReportDefinitionOutput, error) { req, out := c.UpdateReportDefinitionRequest(input) return out, req.Send() } // UpdateReportDefinitionWithContext is the same as UpdateReportDefinition with the addition of // the ability to pass a context and additional request options. // // See UpdateReportDefinition 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 *ApplicationCostProfiler) UpdateReportDefinitionWithContext(ctx aws.Context, input *UpdateReportDefinitionInput, opts ...request.Option) (*UpdateReportDefinitionOutput, error) { req, out := c.UpdateReportDefinitionRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } // You do not have permission to perform this action. type AccessDeniedException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` Message_ *string `locationName:"message" 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 AccessDeniedException) 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 AccessDeniedException) GoString() string { return s.String() } func newErrorAccessDeniedException(v protocol.ResponseMetadata) error { return &AccessDeniedException{ RespMetadata: v, } } // Code returns the exception type name. func (s *AccessDeniedException) Code() string { return "AccessDeniedException" } // Message returns the exception's message. func (s *AccessDeniedException) Message() string { if s.Message_ != nil { return *s.Message_ } return "" } // OrigErr always returns nil, satisfies awserr.Error interface. func (s *AccessDeniedException) OrigErr() error { return nil } func (s *AccessDeniedException) 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 *AccessDeniedException) StatusCode() int { return s.RespMetadata.StatusCode } // RequestID returns the service's response RequestID for request. func (s *AccessDeniedException) RequestID() string { return s.RespMetadata.RequestID } type DeleteReportDefinitionInput struct { _ struct{} `type:"structure" nopayload:"true"` // Required. ID of the report to delete. // // ReportId is a required field ReportId *string `location:"uri" locationName:"reportId" 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 DeleteReportDefinitionInput) 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 DeleteReportDefinitionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteReportDefinitionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteReportDefinitionInput"} if s.ReportId == nil { invalidParams.Add(request.NewErrParamRequired("ReportId")) } if s.ReportId != nil && len(*s.ReportId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ReportId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetReportId sets the ReportId field's value. func (s *DeleteReportDefinitionInput) SetReportId(v string) *DeleteReportDefinitionInput { s.ReportId = &v return s } type DeleteReportDefinitionOutput struct { _ struct{} `type:"structure"` // ID of the report that was deleted. ReportId *string `locationName:"reportId" 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 DeleteReportDefinitionOutput) 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 DeleteReportDefinitionOutput) GoString() string { return s.String() } // SetReportId sets the ReportId field's value. func (s *DeleteReportDefinitionOutput) SetReportId(v string) *DeleteReportDefinitionOutput { s.ReportId = &v return s } type GetReportDefinitionInput struct { _ struct{} `type:"structure" nopayload:"true"` // ID of the report to retrieve. // // ReportId is a required field ReportId *string `location:"uri" locationName:"reportId" 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 GetReportDefinitionInput) 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 GetReportDefinitionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetReportDefinitionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetReportDefinitionInput"} if s.ReportId == nil { invalidParams.Add(request.NewErrParamRequired("ReportId")) } if s.ReportId != nil && len(*s.ReportId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ReportId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetReportId sets the ReportId field's value. func (s *GetReportDefinitionInput) SetReportId(v string) *GetReportDefinitionInput { s.ReportId = &v return s } type GetReportDefinitionOutput struct { _ struct{} `type:"structure"` // Timestamp (milliseconds) when this report definition was created. // // CreatedAt is a required field CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"` // Amazon Simple Storage Service (Amazon S3) location where the report is uploaded. // // DestinationS3Location is a required field DestinationS3Location *S3Location `locationName:"destinationS3Location" type:"structure" required:"true"` // Format of the generated report. // // Format is a required field Format *string `locationName:"format" type:"string" required:"true" enum:"Format"` // Timestamp (milliseconds) when this report definition was last updated. // // LastUpdated is a required field LastUpdated *time.Time `locationName:"lastUpdated" type:"timestamp" required:"true"` // Description of the report. // // ReportDescription is a required field ReportDescription *string `locationName:"reportDescription" min:"1" type:"string" required:"true"` // Cadence used to generate the report. // // ReportFrequency is a required field ReportFrequency *string `locationName:"reportFrequency" type:"string" required:"true" enum:"ReportFrequency"` // ID of the report retrieved. // // ReportId is a required field ReportId *string `locationName:"reportId" 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 GetReportDefinitionOutput) 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 GetReportDefinitionOutput) GoString() string { return s.String() } // SetCreatedAt sets the CreatedAt field's value. func (s *GetReportDefinitionOutput) SetCreatedAt(v time.Time) *GetReportDefinitionOutput { s.CreatedAt = &v return s } // SetDestinationS3Location sets the DestinationS3Location field's value. func (s *GetReportDefinitionOutput) SetDestinationS3Location(v *S3Location) *GetReportDefinitionOutput { s.DestinationS3Location = v return s } // SetFormat sets the Format field's value. func (s *GetReportDefinitionOutput) SetFormat(v string) *GetReportDefinitionOutput { s.Format = &v return s } // SetLastUpdated sets the LastUpdated field's value. func (s *GetReportDefinitionOutput) SetLastUpdated(v time.Time) *GetReportDefinitionOutput { s.LastUpdated = &v return s } // SetReportDescription sets the ReportDescription field's value. func (s *GetReportDefinitionOutput) SetReportDescription(v string) *GetReportDefinitionOutput { s.ReportDescription = &v return s } // SetReportFrequency sets the ReportFrequency field's value. func (s *GetReportDefinitionOutput) SetReportFrequency(v string) *GetReportDefinitionOutput { s.ReportFrequency = &v return s } // SetReportId sets the ReportId field's value. func (s *GetReportDefinitionOutput) SetReportId(v string) *GetReportDefinitionOutput { s.ReportId = &v return s } type ImportApplicationUsageInput struct { _ struct{} `type:"structure"` // Amazon S3 location to import application usage data from. // // SourceS3Location is a required field SourceS3Location *SourceS3Location `locationName:"sourceS3Location" 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 ImportApplicationUsageInput) 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 ImportApplicationUsageInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ImportApplicationUsageInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ImportApplicationUsageInput"} if s.SourceS3Location == nil { invalidParams.Add(request.NewErrParamRequired("SourceS3Location")) } if s.SourceS3Location != nil { if err := s.SourceS3Location.Validate(); err != nil { invalidParams.AddNested("SourceS3Location", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetSourceS3Location sets the SourceS3Location field's value. func (s *ImportApplicationUsageInput) SetSourceS3Location(v *SourceS3Location) *ImportApplicationUsageInput { s.SourceS3Location = v return s } type ImportApplicationUsageOutput struct { _ struct{} `type:"structure"` // ID of the import request. // // ImportId is a required field ImportId *string `locationName:"importId" 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 ImportApplicationUsageOutput) 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 ImportApplicationUsageOutput) GoString() string { return s.String() } // SetImportId sets the ImportId field's value. func (s *ImportApplicationUsageOutput) SetImportId(v string) *ImportApplicationUsageOutput { s.ImportId = &v return s } // An internal server error occurred. Retry your request. type InternalServerException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` Message_ *string `locationName:"message" 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 } type ListReportDefinitionsInput struct { _ struct{} `type:"structure" nopayload:"true"` // The maximum number of results to return. MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` // The token value from a previous call to access the next page of 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 ListReportDefinitionsInput) 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 ListReportDefinitionsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListReportDefinitionsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListReportDefinitionsInput"} 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 } // SetMaxResults sets the MaxResults field's value. func (s *ListReportDefinitionsInput) SetMaxResults(v int64) *ListReportDefinitionsInput { s.MaxResults = &v return s } // SetNextToken sets the NextToken field's value. func (s *ListReportDefinitionsInput) SetNextToken(v string) *ListReportDefinitionsInput { s.NextToken = &v return s } type ListReportDefinitionsOutput struct { _ struct{} `type:"structure"` // The value of the next token, if it exists. Null if there are no more results. NextToken *string `locationName:"nextToken" min:"1" type:"string"` // The retrieved reports. ReportDefinitions []*ReportDefinition `locationName:"reportDefinitions" 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 ListReportDefinitionsOutput) 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 ListReportDefinitionsOutput) GoString() string { return s.String() } // SetNextToken sets the NextToken field's value. func (s *ListReportDefinitionsOutput) SetNextToken(v string) *ListReportDefinitionsOutput { s.NextToken = &v return s } // SetReportDefinitions sets the ReportDefinitions field's value. func (s *ListReportDefinitionsOutput) SetReportDefinitions(v []*ReportDefinition) *ListReportDefinitionsOutput { s.ReportDefinitions = v return s } type PutReportDefinitionInput struct { _ struct{} `type:"structure"` // Required. Amazon Simple Storage Service (Amazon S3) location where Application // Cost Profiler uploads the report. // // DestinationS3Location is a required field DestinationS3Location *S3Location `locationName:"destinationS3Location" type:"structure" required:"true"` // Required. The format to use for the generated report. // // Format is a required field Format *string `locationName:"format" type:"string" required:"true" enum:"Format"` // Required. Description of the report. // // ReportDescription is a required field ReportDescription *string `locationName:"reportDescription" min:"1" type:"string" required:"true"` // Required. The cadence to generate the report. // // ReportFrequency is a required field ReportFrequency *string `locationName:"reportFrequency" type:"string" required:"true" enum:"ReportFrequency"` // Required. ID of the report. You can choose any valid string matching the // pattern for the ID. // // ReportId is a required field ReportId *string `locationName:"reportId" 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 PutReportDefinitionInput) 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 PutReportDefinitionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutReportDefinitionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutReportDefinitionInput"} if s.DestinationS3Location == nil { invalidParams.Add(request.NewErrParamRequired("DestinationS3Location")) } if s.Format == nil { invalidParams.Add(request.NewErrParamRequired("Format")) } if s.ReportDescription == nil { invalidParams.Add(request.NewErrParamRequired("ReportDescription")) } if s.ReportDescription != nil && len(*s.ReportDescription) < 1 { invalidParams.Add(request.NewErrParamMinLen("ReportDescription", 1)) } if s.ReportFrequency == nil { invalidParams.Add(request.NewErrParamRequired("ReportFrequency")) } if s.ReportId == nil { invalidParams.Add(request.NewErrParamRequired("ReportId")) } if s.ReportId != nil && len(*s.ReportId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ReportId", 1)) } if s.DestinationS3Location != nil { if err := s.DestinationS3Location.Validate(); err != nil { invalidParams.AddNested("DestinationS3Location", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetDestinationS3Location sets the DestinationS3Location field's value. func (s *PutReportDefinitionInput) SetDestinationS3Location(v *S3Location) *PutReportDefinitionInput { s.DestinationS3Location = v return s } // SetFormat sets the Format field's value. func (s *PutReportDefinitionInput) SetFormat(v string) *PutReportDefinitionInput { s.Format = &v return s } // SetReportDescription sets the ReportDescription field's value. func (s *PutReportDefinitionInput) SetReportDescription(v string) *PutReportDefinitionInput { s.ReportDescription = &v return s } // SetReportFrequency sets the ReportFrequency field's value. func (s *PutReportDefinitionInput) SetReportFrequency(v string) *PutReportDefinitionInput { s.ReportFrequency = &v return s } // SetReportId sets the ReportId field's value. func (s *PutReportDefinitionInput) SetReportId(v string) *PutReportDefinitionInput { s.ReportId = &v return s } type PutReportDefinitionOutput struct { _ struct{} `type:"structure"` // ID of the report. ReportId *string `locationName:"reportId" 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 PutReportDefinitionOutput) 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 PutReportDefinitionOutput) GoString() string { return s.String() } // SetReportId sets the ReportId field's value. func (s *PutReportDefinitionOutput) SetReportId(v string) *PutReportDefinitionOutput { s.ReportId = &v return s } // The configuration of a report in AWS Application Cost Profiler. type ReportDefinition struct { _ struct{} `type:"structure"` // Timestamp (milliseconds) when this report definition was created. CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` // The location in Amazon Simple Storage Service (Amazon S3) the reports should // be saved to. DestinationS3Location *S3Location `locationName:"destinationS3Location" type:"structure"` // The format used for the generated reports. Format *string `locationName:"format" type:"string" enum:"Format"` // Timestamp (milliseconds) when this report definition was last updated. LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp"` // Description of the report ReportDescription *string `locationName:"reportDescription" min:"1" type:"string"` // The cadence at which the report is generated. ReportFrequency *string `locationName:"reportFrequency" type:"string" enum:"ReportFrequency"` // The ID of the report. ReportId *string `locationName:"reportId" 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 ReportDefinition) 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 ReportDefinition) GoString() string { return s.String() } // SetCreatedAt sets the CreatedAt field's value. func (s *ReportDefinition) SetCreatedAt(v time.Time) *ReportDefinition { s.CreatedAt = &v return s } // SetDestinationS3Location sets the DestinationS3Location field's value. func (s *ReportDefinition) SetDestinationS3Location(v *S3Location) *ReportDefinition { s.DestinationS3Location = v return s } // SetFormat sets the Format field's value. func (s *ReportDefinition) SetFormat(v string) *ReportDefinition { s.Format = &v return s } // SetLastUpdatedAt sets the LastUpdatedAt field's value. func (s *ReportDefinition) SetLastUpdatedAt(v time.Time) *ReportDefinition { s.LastUpdatedAt = &v return s } // SetReportDescription sets the ReportDescription field's value. func (s *ReportDefinition) SetReportDescription(v string) *ReportDefinition { s.ReportDescription = &v return s } // SetReportFrequency sets the ReportFrequency field's value. func (s *ReportDefinition) SetReportFrequency(v string) *ReportDefinition { s.ReportFrequency = &v return s } // SetReportId sets the ReportId field's value. func (s *ReportDefinition) SetReportId(v string) *ReportDefinition { s.ReportId = &v return s } // Represents the Amazon Simple Storage Service (Amazon S3) location where AWS // Application Cost Profiler reports are generated and then written to. type S3Location struct { _ struct{} `type:"structure"` // Name of the S3 bucket. // // Bucket is a required field Bucket *string `locationName:"bucket" min:"3" type:"string" required:"true"` // Prefix for the location to write to. // // Prefix is a required field Prefix *string `locationName:"prefix" 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 S3Location) 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 S3Location) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *S3Location) Validate() error { invalidParams := request.ErrInvalidParams{Context: "S3Location"} if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if s.Bucket != nil && len(*s.Bucket) < 3 { invalidParams.Add(request.NewErrParamMinLen("Bucket", 3)) } if s.Prefix == nil { invalidParams.Add(request.NewErrParamRequired("Prefix")) } if s.Prefix != nil && len(*s.Prefix) < 1 { invalidParams.Add(request.NewErrParamMinLen("Prefix", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetBucket sets the Bucket field's value. func (s *S3Location) SetBucket(v string) *S3Location { s.Bucket = &v return s } // SetPrefix sets the Prefix field's value. func (s *S3Location) SetPrefix(v string) *S3Location { s.Prefix = &v return s } // Your request exceeds one or more of the service quotas. type ServiceQuotaExceededException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` Message_ *string `locationName:"message" 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 } // Represents the Amazon Simple Storage Service (Amazon S3) location where usage // data is read from. type SourceS3Location struct { _ struct{} `type:"structure"` // Name of the bucket. // // Bucket is a required field Bucket *string `locationName:"bucket" min:"3" type:"string" required:"true"` // Key of the object. // // Key is a required field Key *string `locationName:"key" min:"1" type:"string" required:"true"` // Region of the bucket. Only required for Regions that are disabled by default. // For more infomration about Regions that are disabled by default, see Enabling // a Region (https://docs.aws.amazon.com/general/latest/gr/rande-manage.html#rande-manage-enable) // in the AWS General Reference guide. Region *string `locationName:"region" type:"string" enum:"S3BucketRegion"` } // 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 SourceS3Location) 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 SourceS3Location) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SourceS3Location) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SourceS3Location"} if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if s.Bucket != nil && len(*s.Bucket) < 3 { invalidParams.Add(request.NewErrParamMinLen("Bucket", 3)) } if s.Key == nil { invalidParams.Add(request.NewErrParamRequired("Key")) } if s.Key != nil && len(*s.Key) < 1 { invalidParams.Add(request.NewErrParamMinLen("Key", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetBucket sets the Bucket field's value. func (s *SourceS3Location) SetBucket(v string) *SourceS3Location { s.Bucket = &v return s } // SetKey sets the Key field's value. func (s *SourceS3Location) SetKey(v string) *SourceS3Location { s.Key = &v return s } // SetRegion sets the Region field's value. func (s *SourceS3Location) SetRegion(v string) *SourceS3Location { s.Region = &v return s } // The calls to AWS Application Cost Profiler API are throttled. The request // was denied. type ThrottlingException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` Message_ *string `locationName:"message" 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 ThrottlingException) 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 ThrottlingException) GoString() string { return s.String() } func newErrorThrottlingException(v protocol.ResponseMetadata) error { return &ThrottlingException{ RespMetadata: v, } } // Code returns the exception type name. func (s *ThrottlingException) Code() string { return "ThrottlingException" } // Message returns the exception's message. func (s *ThrottlingException) Message() string { if s.Message_ != nil { return *s.Message_ } return "" } // OrigErr always returns nil, satisfies awserr.Error interface. func (s *ThrottlingException) OrigErr() error { return nil } func (s *ThrottlingException) 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 *ThrottlingException) StatusCode() int { return s.RespMetadata.StatusCode } // RequestID returns the service's response RequestID for request. func (s *ThrottlingException) RequestID() string { return s.RespMetadata.RequestID } type UpdateReportDefinitionInput struct { _ struct{} `type:"structure"` // Required. Amazon Simple Storage Service (Amazon S3) location where Application // Cost Profiler uploads the report. // // DestinationS3Location is a required field DestinationS3Location *S3Location `locationName:"destinationS3Location" type:"structure" required:"true"` // Required. The format to use for the generated report. // // Format is a required field Format *string `locationName:"format" type:"string" required:"true" enum:"Format"` // Required. Description of the report. // // ReportDescription is a required field ReportDescription *string `locationName:"reportDescription" min:"1" type:"string" required:"true"` // Required. The cadence to generate the report. // // ReportFrequency is a required field ReportFrequency *string `locationName:"reportFrequency" type:"string" required:"true" enum:"ReportFrequency"` // Required. ID of the report to update. // // ReportId is a required field ReportId *string `location:"uri" locationName:"reportId" 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 UpdateReportDefinitionInput) 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 UpdateReportDefinitionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateReportDefinitionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateReportDefinitionInput"} if s.DestinationS3Location == nil { invalidParams.Add(request.NewErrParamRequired("DestinationS3Location")) } if s.Format == nil { invalidParams.Add(request.NewErrParamRequired("Format")) } if s.ReportDescription == nil { invalidParams.Add(request.NewErrParamRequired("ReportDescription")) } if s.ReportDescription != nil && len(*s.ReportDescription) < 1 { invalidParams.Add(request.NewErrParamMinLen("ReportDescription", 1)) } if s.ReportFrequency == nil { invalidParams.Add(request.NewErrParamRequired("ReportFrequency")) } if s.ReportId == nil { invalidParams.Add(request.NewErrParamRequired("ReportId")) } if s.ReportId != nil && len(*s.ReportId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ReportId", 1)) } if s.DestinationS3Location != nil { if err := s.DestinationS3Location.Validate(); err != nil { invalidParams.AddNested("DestinationS3Location", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetDestinationS3Location sets the DestinationS3Location field's value. func (s *UpdateReportDefinitionInput) SetDestinationS3Location(v *S3Location) *UpdateReportDefinitionInput { s.DestinationS3Location = v return s } // SetFormat sets the Format field's value. func (s *UpdateReportDefinitionInput) SetFormat(v string) *UpdateReportDefinitionInput { s.Format = &v return s } // SetReportDescription sets the ReportDescription field's value. func (s *UpdateReportDefinitionInput) SetReportDescription(v string) *UpdateReportDefinitionInput { s.ReportDescription = &v return s } // SetReportFrequency sets the ReportFrequency field's value. func (s *UpdateReportDefinitionInput) SetReportFrequency(v string) *UpdateReportDefinitionInput { s.ReportFrequency = &v return s } // SetReportId sets the ReportId field's value. func (s *UpdateReportDefinitionInput) SetReportId(v string) *UpdateReportDefinitionInput { s.ReportId = &v return s } type UpdateReportDefinitionOutput struct { _ struct{} `type:"structure"` // ID of the report. ReportId *string `locationName:"reportId" 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 UpdateReportDefinitionOutput) 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 UpdateReportDefinitionOutput) GoString() string { return s.String() } // SetReportId sets the ReportId field's value. func (s *UpdateReportDefinitionOutput) SetReportId(v string) *UpdateReportDefinitionOutput { s.ReportId = &v return s } // The input fails to satisfy the constraints for the API. type ValidationException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` Message_ *string `locationName:"message" 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 } const ( // FormatCsv is a Format enum value FormatCsv = "CSV" // FormatParquet is a Format enum value FormatParquet = "PARQUET" ) // Format_Values returns all elements of the Format enum func Format_Values() []string { return []string{ FormatCsv, FormatParquet, } } const ( // ReportFrequencyMonthly is a ReportFrequency enum value ReportFrequencyMonthly = "MONTHLY" // ReportFrequencyDaily is a ReportFrequency enum value ReportFrequencyDaily = "DAILY" // ReportFrequencyAll is a ReportFrequency enum value ReportFrequencyAll = "ALL" ) // ReportFrequency_Values returns all elements of the ReportFrequency enum func ReportFrequency_Values() []string { return []string{ ReportFrequencyMonthly, ReportFrequencyDaily, ReportFrequencyAll, } } const ( // S3BucketRegionApEast1 is a S3BucketRegion enum value S3BucketRegionApEast1 = "ap-east-1" // S3BucketRegionMeSouth1 is a S3BucketRegion enum value S3BucketRegionMeSouth1 = "me-south-1" // S3BucketRegionEuSouth1 is a S3BucketRegion enum value S3BucketRegionEuSouth1 = "eu-south-1" // S3BucketRegionAfSouth1 is a S3BucketRegion enum value S3BucketRegionAfSouth1 = "af-south-1" ) // S3BucketRegion_Values returns all elements of the S3BucketRegion enum func S3BucketRegion_Values() []string { return []string{ S3BucketRegionApEast1, S3BucketRegionMeSouth1, S3BucketRegionEuSouth1, S3BucketRegionAfSouth1, } }