// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. package iot1clickprojects import ( "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 opAssociateDeviceWithPlacement = "AssociateDeviceWithPlacement" // AssociateDeviceWithPlacementRequest generates a "aws/request.Request" representing the // client's request for the AssociateDeviceWithPlacement 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 AssociateDeviceWithPlacement for more information on using the AssociateDeviceWithPlacement // 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 AssociateDeviceWithPlacementRequest method. // req, resp := client.AssociateDeviceWithPlacementRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/iot1click-projects-2018-05-14/AssociateDeviceWithPlacement func (c *IoT1ClickProjects) AssociateDeviceWithPlacementRequest(input *AssociateDeviceWithPlacementInput) (req *request.Request, output *AssociateDeviceWithPlacementOutput) { op := &request.Operation{ Name: opAssociateDeviceWithPlacement, HTTPMethod: "PUT", HTTPPath: "/projects/{projectName}/placements/{placementName}/devices/{deviceTemplateName}", } if input == nil { input = &AssociateDeviceWithPlacementInput{} } output = &AssociateDeviceWithPlacementOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } // AssociateDeviceWithPlacement API operation for AWS IoT 1-Click Projects Service. // // Associates a physical device with a placement. // // 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 IoT 1-Click Projects Service's // API operation AssociateDeviceWithPlacement for usage and error information. // // Returned Error Codes: // * ErrCodeInternalFailureException "InternalFailureException" // // * ErrCodeInvalidRequestException "InvalidRequestException" // // * ErrCodeResourceConflictException "ResourceConflictException" // // * ErrCodeResourceNotFoundException "ResourceNotFoundException" // // See also, https://docs.aws.amazon.com/goto/WebAPI/iot1click-projects-2018-05-14/AssociateDeviceWithPlacement func (c *IoT1ClickProjects) AssociateDeviceWithPlacement(input *AssociateDeviceWithPlacementInput) (*AssociateDeviceWithPlacementOutput, error) { req, out := c.AssociateDeviceWithPlacementRequest(input) return out, req.Send() } // AssociateDeviceWithPlacementWithContext is the same as AssociateDeviceWithPlacement with the addition of // the ability to pass a context and additional request options. // // See AssociateDeviceWithPlacement 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 *IoT1ClickProjects) AssociateDeviceWithPlacementWithContext(ctx aws.Context, input *AssociateDeviceWithPlacementInput, opts ...request.Option) (*AssociateDeviceWithPlacementOutput, error) { req, out := c.AssociateDeviceWithPlacementRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opCreatePlacement = "CreatePlacement" // CreatePlacementRequest generates a "aws/request.Request" representing the // client's request for the CreatePlacement 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 CreatePlacement for more information on using the CreatePlacement // 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 CreatePlacementRequest method. // req, resp := client.CreatePlacementRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/iot1click-projects-2018-05-14/CreatePlacement func (c *IoT1ClickProjects) CreatePlacementRequest(input *CreatePlacementInput) (req *request.Request, output *CreatePlacementOutput) { op := &request.Operation{ Name: opCreatePlacement, HTTPMethod: "POST", HTTPPath: "/projects/{projectName}/placements", } if input == nil { input = &CreatePlacementInput{} } output = &CreatePlacementOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } // CreatePlacement API operation for AWS IoT 1-Click Projects Service. // // Creates an empty placement. // // 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 IoT 1-Click Projects Service's // API operation CreatePlacement for usage and error information. // // Returned Error Codes: // * ErrCodeInternalFailureException "InternalFailureException" // // * ErrCodeInvalidRequestException "InvalidRequestException" // // * ErrCodeResourceConflictException "ResourceConflictException" // // * ErrCodeResourceNotFoundException "ResourceNotFoundException" // // See also, https://docs.aws.amazon.com/goto/WebAPI/iot1click-projects-2018-05-14/CreatePlacement func (c *IoT1ClickProjects) CreatePlacement(input *CreatePlacementInput) (*CreatePlacementOutput, error) { req, out := c.CreatePlacementRequest(input) return out, req.Send() } // CreatePlacementWithContext is the same as CreatePlacement with the addition of // the ability to pass a context and additional request options. // // See CreatePlacement 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 *IoT1ClickProjects) CreatePlacementWithContext(ctx aws.Context, input *CreatePlacementInput, opts ...request.Option) (*CreatePlacementOutput, error) { req, out := c.CreatePlacementRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opCreateProject = "CreateProject" // CreateProjectRequest generates a "aws/request.Request" representing the // client's request for the CreateProject 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 CreateProject for more information on using the CreateProject // 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 CreateProjectRequest method. // req, resp := client.CreateProjectRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/iot1click-projects-2018-05-14/CreateProject func (c *IoT1ClickProjects) CreateProjectRequest(input *CreateProjectInput) (req *request.Request, output *CreateProjectOutput) { op := &request.Operation{ Name: opCreateProject, HTTPMethod: "POST", HTTPPath: "/projects", } if input == nil { input = &CreateProjectInput{} } output = &CreateProjectOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } // CreateProject API operation for AWS IoT 1-Click Projects Service. // // Creates an empty project with a placement template. A project contains zero // or more placements that adhere to the placement template defined in the project. // // 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 IoT 1-Click Projects Service's // API operation CreateProject for usage and error information. // // Returned Error Codes: // * ErrCodeInternalFailureException "InternalFailureException" // // * ErrCodeInvalidRequestException "InvalidRequestException" // // * ErrCodeResourceConflictException "ResourceConflictException" // // See also, https://docs.aws.amazon.com/goto/WebAPI/iot1click-projects-2018-05-14/CreateProject func (c *IoT1ClickProjects) CreateProject(input *CreateProjectInput) (*CreateProjectOutput, error) { req, out := c.CreateProjectRequest(input) return out, req.Send() } // CreateProjectWithContext is the same as CreateProject with the addition of // the ability to pass a context and additional request options. // // See CreateProject 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 *IoT1ClickProjects) CreateProjectWithContext(ctx aws.Context, input *CreateProjectInput, opts ...request.Option) (*CreateProjectOutput, error) { req, out := c.CreateProjectRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opDeletePlacement = "DeletePlacement" // DeletePlacementRequest generates a "aws/request.Request" representing the // client's request for the DeletePlacement 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 DeletePlacement for more information on using the DeletePlacement // 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 DeletePlacementRequest method. // req, resp := client.DeletePlacementRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/iot1click-projects-2018-05-14/DeletePlacement func (c *IoT1ClickProjects) DeletePlacementRequest(input *DeletePlacementInput) (req *request.Request, output *DeletePlacementOutput) { op := &request.Operation{ Name: opDeletePlacement, HTTPMethod: "DELETE", HTTPPath: "/projects/{projectName}/placements/{placementName}", } if input == nil { input = &DeletePlacementInput{} } output = &DeletePlacementOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } // DeletePlacement API operation for AWS IoT 1-Click Projects Service. // // Deletes a placement. To delete a placement, it must not have any devices // associated with it. // // When you delete a placement, all associated data becomes irretrievable. // // 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 IoT 1-Click Projects Service's // API operation DeletePlacement for usage and error information. // // Returned Error Codes: // * ErrCodeInternalFailureException "InternalFailureException" // // * ErrCodeInvalidRequestException "InvalidRequestException" // // * ErrCodeResourceNotFoundException "ResourceNotFoundException" // // * ErrCodeTooManyRequestsException "TooManyRequestsException" // // See also, https://docs.aws.amazon.com/goto/WebAPI/iot1click-projects-2018-05-14/DeletePlacement func (c *IoT1ClickProjects) DeletePlacement(input *DeletePlacementInput) (*DeletePlacementOutput, error) { req, out := c.DeletePlacementRequest(input) return out, req.Send() } // DeletePlacementWithContext is the same as DeletePlacement with the addition of // the ability to pass a context and additional request options. // // See DeletePlacement 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 *IoT1ClickProjects) DeletePlacementWithContext(ctx aws.Context, input *DeletePlacementInput, opts ...request.Option) (*DeletePlacementOutput, error) { req, out := c.DeletePlacementRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opDeleteProject = "DeleteProject" // DeleteProjectRequest generates a "aws/request.Request" representing the // client's request for the DeleteProject 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 DeleteProject for more information on using the DeleteProject // 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 DeleteProjectRequest method. // req, resp := client.DeleteProjectRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/iot1click-projects-2018-05-14/DeleteProject func (c *IoT1ClickProjects) DeleteProjectRequest(input *DeleteProjectInput) (req *request.Request, output *DeleteProjectOutput) { op := &request.Operation{ Name: opDeleteProject, HTTPMethod: "DELETE", HTTPPath: "/projects/{projectName}", } if input == nil { input = &DeleteProjectInput{} } output = &DeleteProjectOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } // DeleteProject API operation for AWS IoT 1-Click Projects Service. // // Deletes a project. To delete a project, it must not have any placements associated // with it. // // When you delete a project, all associated data becomes irretrievable. // // 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 IoT 1-Click Projects Service's // API operation DeleteProject for usage and error information. // // Returned Error Codes: // * ErrCodeInternalFailureException "InternalFailureException" // // * ErrCodeInvalidRequestException "InvalidRequestException" // // * ErrCodeResourceNotFoundException "ResourceNotFoundException" // // * ErrCodeTooManyRequestsException "TooManyRequestsException" // // See also, https://docs.aws.amazon.com/goto/WebAPI/iot1click-projects-2018-05-14/DeleteProject func (c *IoT1ClickProjects) DeleteProject(input *DeleteProjectInput) (*DeleteProjectOutput, error) { req, out := c.DeleteProjectRequest(input) return out, req.Send() } // DeleteProjectWithContext is the same as DeleteProject with the addition of // the ability to pass a context and additional request options. // // See DeleteProject 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 *IoT1ClickProjects) DeleteProjectWithContext(ctx aws.Context, input *DeleteProjectInput, opts ...request.Option) (*DeleteProjectOutput, error) { req, out := c.DeleteProjectRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opDescribePlacement = "DescribePlacement" // DescribePlacementRequest generates a "aws/request.Request" representing the // client's request for the DescribePlacement 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 DescribePlacement for more information on using the DescribePlacement // 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 DescribePlacementRequest method. // req, resp := client.DescribePlacementRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/iot1click-projects-2018-05-14/DescribePlacement func (c *IoT1ClickProjects) DescribePlacementRequest(input *DescribePlacementInput) (req *request.Request, output *DescribePlacementOutput) { op := &request.Operation{ Name: opDescribePlacement, HTTPMethod: "GET", HTTPPath: "/projects/{projectName}/placements/{placementName}", } if input == nil { input = &DescribePlacementInput{} } output = &DescribePlacementOutput{} req = c.newRequest(op, input, output) return } // DescribePlacement API operation for AWS IoT 1-Click Projects Service. // // Describes a placement in a project. // // 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 IoT 1-Click Projects Service's // API operation DescribePlacement for usage and error information. // // Returned Error Codes: // * ErrCodeInternalFailureException "InternalFailureException" // // * ErrCodeInvalidRequestException "InvalidRequestException" // // * ErrCodeResourceNotFoundException "ResourceNotFoundException" // // See also, https://docs.aws.amazon.com/goto/WebAPI/iot1click-projects-2018-05-14/DescribePlacement func (c *IoT1ClickProjects) DescribePlacement(input *DescribePlacementInput) (*DescribePlacementOutput, error) { req, out := c.DescribePlacementRequest(input) return out, req.Send() } // DescribePlacementWithContext is the same as DescribePlacement with the addition of // the ability to pass a context and additional request options. // // See DescribePlacement 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 *IoT1ClickProjects) DescribePlacementWithContext(ctx aws.Context, input *DescribePlacementInput, opts ...request.Option) (*DescribePlacementOutput, error) { req, out := c.DescribePlacementRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opDescribeProject = "DescribeProject" // DescribeProjectRequest generates a "aws/request.Request" representing the // client's request for the DescribeProject 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 DescribeProject for more information on using the DescribeProject // 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 DescribeProjectRequest method. // req, resp := client.DescribeProjectRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/iot1click-projects-2018-05-14/DescribeProject func (c *IoT1ClickProjects) DescribeProjectRequest(input *DescribeProjectInput) (req *request.Request, output *DescribeProjectOutput) { op := &request.Operation{ Name: opDescribeProject, HTTPMethod: "GET", HTTPPath: "/projects/{projectName}", } if input == nil { input = &DescribeProjectInput{} } output = &DescribeProjectOutput{} req = c.newRequest(op, input, output) return } // DescribeProject API operation for AWS IoT 1-Click Projects Service. // // Returns an object describing a project. // // 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 IoT 1-Click Projects Service's // API operation DescribeProject for usage and error information. // // Returned Error Codes: // * ErrCodeInternalFailureException "InternalFailureException" // // * ErrCodeInvalidRequestException "InvalidRequestException" // // * ErrCodeResourceNotFoundException "ResourceNotFoundException" // // See also, https://docs.aws.amazon.com/goto/WebAPI/iot1click-projects-2018-05-14/DescribeProject func (c *IoT1ClickProjects) DescribeProject(input *DescribeProjectInput) (*DescribeProjectOutput, error) { req, out := c.DescribeProjectRequest(input) return out, req.Send() } // DescribeProjectWithContext is the same as DescribeProject with the addition of // the ability to pass a context and additional request options. // // See DescribeProject 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 *IoT1ClickProjects) DescribeProjectWithContext(ctx aws.Context, input *DescribeProjectInput, opts ...request.Option) (*DescribeProjectOutput, error) { req, out := c.DescribeProjectRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opDisassociateDeviceFromPlacement = "DisassociateDeviceFromPlacement" // DisassociateDeviceFromPlacementRequest generates a "aws/request.Request" representing the // client's request for the DisassociateDeviceFromPlacement 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 DisassociateDeviceFromPlacement for more information on using the DisassociateDeviceFromPlacement // 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 DisassociateDeviceFromPlacementRequest method. // req, resp := client.DisassociateDeviceFromPlacementRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/iot1click-projects-2018-05-14/DisassociateDeviceFromPlacement func (c *IoT1ClickProjects) DisassociateDeviceFromPlacementRequest(input *DisassociateDeviceFromPlacementInput) (req *request.Request, output *DisassociateDeviceFromPlacementOutput) { op := &request.Operation{ Name: opDisassociateDeviceFromPlacement, HTTPMethod: "DELETE", HTTPPath: "/projects/{projectName}/placements/{placementName}/devices/{deviceTemplateName}", } if input == nil { input = &DisassociateDeviceFromPlacementInput{} } output = &DisassociateDeviceFromPlacementOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } // DisassociateDeviceFromPlacement API operation for AWS IoT 1-Click Projects Service. // // Removes a physical device from a placement. // // 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 IoT 1-Click Projects Service's // API operation DisassociateDeviceFromPlacement for usage and error information. // // Returned Error Codes: // * ErrCodeInternalFailureException "InternalFailureException" // // * ErrCodeInvalidRequestException "InvalidRequestException" // // * ErrCodeResourceNotFoundException "ResourceNotFoundException" // // * ErrCodeTooManyRequestsException "TooManyRequestsException" // // See also, https://docs.aws.amazon.com/goto/WebAPI/iot1click-projects-2018-05-14/DisassociateDeviceFromPlacement func (c *IoT1ClickProjects) DisassociateDeviceFromPlacement(input *DisassociateDeviceFromPlacementInput) (*DisassociateDeviceFromPlacementOutput, error) { req, out := c.DisassociateDeviceFromPlacementRequest(input) return out, req.Send() } // DisassociateDeviceFromPlacementWithContext is the same as DisassociateDeviceFromPlacement with the addition of // the ability to pass a context and additional request options. // // See DisassociateDeviceFromPlacement 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 *IoT1ClickProjects) DisassociateDeviceFromPlacementWithContext(ctx aws.Context, input *DisassociateDeviceFromPlacementInput, opts ...request.Option) (*DisassociateDeviceFromPlacementOutput, error) { req, out := c.DisassociateDeviceFromPlacementRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opGetDevicesInPlacement = "GetDevicesInPlacement" // GetDevicesInPlacementRequest generates a "aws/request.Request" representing the // client's request for the GetDevicesInPlacement 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 GetDevicesInPlacement for more information on using the GetDevicesInPlacement // 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 GetDevicesInPlacementRequest method. // req, resp := client.GetDevicesInPlacementRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/iot1click-projects-2018-05-14/GetDevicesInPlacement func (c *IoT1ClickProjects) GetDevicesInPlacementRequest(input *GetDevicesInPlacementInput) (req *request.Request, output *GetDevicesInPlacementOutput) { op := &request.Operation{ Name: opGetDevicesInPlacement, HTTPMethod: "GET", HTTPPath: "/projects/{projectName}/placements/{placementName}/devices", } if input == nil { input = &GetDevicesInPlacementInput{} } output = &GetDevicesInPlacementOutput{} req = c.newRequest(op, input, output) return } // GetDevicesInPlacement API operation for AWS IoT 1-Click Projects Service. // // Returns an object enumerating the devices in a placement. // // 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 IoT 1-Click Projects Service's // API operation GetDevicesInPlacement for usage and error information. // // Returned Error Codes: // * ErrCodeInternalFailureException "InternalFailureException" // // * ErrCodeInvalidRequestException "InvalidRequestException" // // * ErrCodeResourceNotFoundException "ResourceNotFoundException" // // See also, https://docs.aws.amazon.com/goto/WebAPI/iot1click-projects-2018-05-14/GetDevicesInPlacement func (c *IoT1ClickProjects) GetDevicesInPlacement(input *GetDevicesInPlacementInput) (*GetDevicesInPlacementOutput, error) { req, out := c.GetDevicesInPlacementRequest(input) return out, req.Send() } // GetDevicesInPlacementWithContext is the same as GetDevicesInPlacement with the addition of // the ability to pass a context and additional request options. // // See GetDevicesInPlacement 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 *IoT1ClickProjects) GetDevicesInPlacementWithContext(ctx aws.Context, input *GetDevicesInPlacementInput, opts ...request.Option) (*GetDevicesInPlacementOutput, error) { req, out := c.GetDevicesInPlacementRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opListPlacements = "ListPlacements" // ListPlacementsRequest generates a "aws/request.Request" representing the // client's request for the ListPlacements 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 ListPlacements for more information on using the ListPlacements // 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 ListPlacementsRequest method. // req, resp := client.ListPlacementsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/iot1click-projects-2018-05-14/ListPlacements func (c *IoT1ClickProjects) ListPlacementsRequest(input *ListPlacementsInput) (req *request.Request, output *ListPlacementsOutput) { op := &request.Operation{ Name: opListPlacements, HTTPMethod: "GET", HTTPPath: "/projects/{projectName}/placements", } if input == nil { input = &ListPlacementsInput{} } output = &ListPlacementsOutput{} req = c.newRequest(op, input, output) return } // ListPlacements API operation for AWS IoT 1-Click Projects Service. // // Lists the placement(s) of a project. // // 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 IoT 1-Click Projects Service's // API operation ListPlacements for usage and error information. // // Returned Error Codes: // * ErrCodeInternalFailureException "InternalFailureException" // // * ErrCodeInvalidRequestException "InvalidRequestException" // // * ErrCodeResourceNotFoundException "ResourceNotFoundException" // // See also, https://docs.aws.amazon.com/goto/WebAPI/iot1click-projects-2018-05-14/ListPlacements func (c *IoT1ClickProjects) ListPlacements(input *ListPlacementsInput) (*ListPlacementsOutput, error) { req, out := c.ListPlacementsRequest(input) return out, req.Send() } // ListPlacementsWithContext is the same as ListPlacements with the addition of // the ability to pass a context and additional request options. // // See ListPlacements 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 *IoT1ClickProjects) ListPlacementsWithContext(ctx aws.Context, input *ListPlacementsInput, opts ...request.Option) (*ListPlacementsOutput, error) { req, out := c.ListPlacementsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opListProjects = "ListProjects" // ListProjectsRequest generates a "aws/request.Request" representing the // client's request for the ListProjects 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 ListProjects for more information on using the ListProjects // 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 ListProjectsRequest method. // req, resp := client.ListProjectsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/iot1click-projects-2018-05-14/ListProjects func (c *IoT1ClickProjects) ListProjectsRequest(input *ListProjectsInput) (req *request.Request, output *ListProjectsOutput) { op := &request.Operation{ Name: opListProjects, HTTPMethod: "GET", HTTPPath: "/projects", } if input == nil { input = &ListProjectsInput{} } output = &ListProjectsOutput{} req = c.newRequest(op, input, output) return } // ListProjects API operation for AWS IoT 1-Click Projects Service. // // Lists the AWS IoT 1-Click project(s) associated with your AWS account and // region. // // 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 IoT 1-Click Projects Service's // API operation ListProjects for usage and error information. // // Returned Error Codes: // * ErrCodeInternalFailureException "InternalFailureException" // // * ErrCodeInvalidRequestException "InvalidRequestException" // // See also, https://docs.aws.amazon.com/goto/WebAPI/iot1click-projects-2018-05-14/ListProjects func (c *IoT1ClickProjects) ListProjects(input *ListProjectsInput) (*ListProjectsOutput, error) { req, out := c.ListProjectsRequest(input) return out, req.Send() } // ListProjectsWithContext is the same as ListProjects with the addition of // the ability to pass a context and additional request options. // // See ListProjects 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 *IoT1ClickProjects) ListProjectsWithContext(ctx aws.Context, input *ListProjectsInput, opts ...request.Option) (*ListProjectsOutput, error) { req, out := c.ListProjectsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opUpdatePlacement = "UpdatePlacement" // UpdatePlacementRequest generates a "aws/request.Request" representing the // client's request for the UpdatePlacement 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 UpdatePlacement for more information on using the UpdatePlacement // 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 UpdatePlacementRequest method. // req, resp := client.UpdatePlacementRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/iot1click-projects-2018-05-14/UpdatePlacement func (c *IoT1ClickProjects) UpdatePlacementRequest(input *UpdatePlacementInput) (req *request.Request, output *UpdatePlacementOutput) { op := &request.Operation{ Name: opUpdatePlacement, HTTPMethod: "PUT", HTTPPath: "/projects/{projectName}/placements/{placementName}", } if input == nil { input = &UpdatePlacementInput{} } output = &UpdatePlacementOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } // UpdatePlacement API operation for AWS IoT 1-Click Projects Service. // // Updates a placement with the given attributes. To clear an attribute, pass // an empty value (i.e., ""). // // 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 IoT 1-Click Projects Service's // API operation UpdatePlacement for usage and error information. // // Returned Error Codes: // * ErrCodeInternalFailureException "InternalFailureException" // // * ErrCodeInvalidRequestException "InvalidRequestException" // // * ErrCodeResourceNotFoundException "ResourceNotFoundException" // // * ErrCodeTooManyRequestsException "TooManyRequestsException" // // See also, https://docs.aws.amazon.com/goto/WebAPI/iot1click-projects-2018-05-14/UpdatePlacement func (c *IoT1ClickProjects) UpdatePlacement(input *UpdatePlacementInput) (*UpdatePlacementOutput, error) { req, out := c.UpdatePlacementRequest(input) return out, req.Send() } // UpdatePlacementWithContext is the same as UpdatePlacement with the addition of // the ability to pass a context and additional request options. // // See UpdatePlacement 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 *IoT1ClickProjects) UpdatePlacementWithContext(ctx aws.Context, input *UpdatePlacementInput, opts ...request.Option) (*UpdatePlacementOutput, error) { req, out := c.UpdatePlacementRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opUpdateProject = "UpdateProject" // UpdateProjectRequest generates a "aws/request.Request" representing the // client's request for the UpdateProject 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 UpdateProject for more information on using the UpdateProject // 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 UpdateProjectRequest method. // req, resp := client.UpdateProjectRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/iot1click-projects-2018-05-14/UpdateProject func (c *IoT1ClickProjects) UpdateProjectRequest(input *UpdateProjectInput) (req *request.Request, output *UpdateProjectOutput) { op := &request.Operation{ Name: opUpdateProject, HTTPMethod: "PUT", HTTPPath: "/projects/{projectName}", } if input == nil { input = &UpdateProjectInput{} } output = &UpdateProjectOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } // UpdateProject API operation for AWS IoT 1-Click Projects Service. // // Updates a project associated with your AWS account and region. With the exception // of device template names, you can pass just the values that need to be updated // because the update request will change only the values that are provided. // To clear a value, pass the empty string (i.e., ""). // // 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 IoT 1-Click Projects Service's // API operation UpdateProject for usage and error information. // // Returned Error Codes: // * ErrCodeInternalFailureException "InternalFailureException" // // * ErrCodeInvalidRequestException "InvalidRequestException" // // * ErrCodeResourceNotFoundException "ResourceNotFoundException" // // * ErrCodeTooManyRequestsException "TooManyRequestsException" // // See also, https://docs.aws.amazon.com/goto/WebAPI/iot1click-projects-2018-05-14/UpdateProject func (c *IoT1ClickProjects) UpdateProject(input *UpdateProjectInput) (*UpdateProjectOutput, error) { req, out := c.UpdateProjectRequest(input) return out, req.Send() } // UpdateProjectWithContext is the same as UpdateProject with the addition of // the ability to pass a context and additional request options. // // See UpdateProject 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 *IoT1ClickProjects) UpdateProjectWithContext(ctx aws.Context, input *UpdateProjectInput, opts ...request.Option) (*UpdateProjectOutput, error) { req, out := c.UpdateProjectRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } type AssociateDeviceWithPlacementInput struct { _ struct{} `type:"structure"` // The ID of the physical device to be associated with the given placement in // the project. Note that a mandatory 4 character prefix is required for all // deviceId values. // // DeviceId is a required field DeviceId *string `locationName:"deviceId" min:"1" type:"string" required:"true"` // The device template name to associate with the device ID. // // DeviceTemplateName is a required field DeviceTemplateName *string `location:"uri" locationName:"deviceTemplateName" min:"1" type:"string" required:"true"` // The name of the placement in which to associate the device. // // PlacementName is a required field PlacementName *string `location:"uri" locationName:"placementName" min:"1" type:"string" required:"true"` // The name of the project containing the placement in which to associate the // device. // // ProjectName is a required field ProjectName *string `location:"uri" locationName:"projectName" min:"1" type:"string" required:"true"` } // String returns the string representation func (s AssociateDeviceWithPlacementInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AssociateDeviceWithPlacementInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AssociateDeviceWithPlacementInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AssociateDeviceWithPlacementInput"} if s.DeviceId == nil { invalidParams.Add(request.NewErrParamRequired("DeviceId")) } if s.DeviceId != nil && len(*s.DeviceId) < 1 { invalidParams.Add(request.NewErrParamMinLen("DeviceId", 1)) } if s.DeviceTemplateName == nil { invalidParams.Add(request.NewErrParamRequired("DeviceTemplateName")) } if s.DeviceTemplateName != nil && len(*s.DeviceTemplateName) < 1 { invalidParams.Add(request.NewErrParamMinLen("DeviceTemplateName", 1)) } if s.PlacementName == nil { invalidParams.Add(request.NewErrParamRequired("PlacementName")) } if s.PlacementName != nil && len(*s.PlacementName) < 1 { invalidParams.Add(request.NewErrParamMinLen("PlacementName", 1)) } if s.ProjectName == nil { invalidParams.Add(request.NewErrParamRequired("ProjectName")) } if s.ProjectName != nil && len(*s.ProjectName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ProjectName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetDeviceId sets the DeviceId field's value. func (s *AssociateDeviceWithPlacementInput) SetDeviceId(v string) *AssociateDeviceWithPlacementInput { s.DeviceId = &v return s } // SetDeviceTemplateName sets the DeviceTemplateName field's value. func (s *AssociateDeviceWithPlacementInput) SetDeviceTemplateName(v string) *AssociateDeviceWithPlacementInput { s.DeviceTemplateName = &v return s } // SetPlacementName sets the PlacementName field's value. func (s *AssociateDeviceWithPlacementInput) SetPlacementName(v string) *AssociateDeviceWithPlacementInput { s.PlacementName = &v return s } // SetProjectName sets the ProjectName field's value. func (s *AssociateDeviceWithPlacementInput) SetProjectName(v string) *AssociateDeviceWithPlacementInput { s.ProjectName = &v return s } type AssociateDeviceWithPlacementOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s AssociateDeviceWithPlacementOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AssociateDeviceWithPlacementOutput) GoString() string { return s.String() } type CreatePlacementInput struct { _ struct{} `type:"structure"` // Optional user-defined key/value pairs providing contextual data (such as // location or function) for the placement. Attributes map[string]*string `locationName:"attributes" type:"map"` // The name of the placement to be created. // // PlacementName is a required field PlacementName *string `locationName:"placementName" min:"1" type:"string" required:"true"` // The name of the project in which to create the placement. // // ProjectName is a required field ProjectName *string `location:"uri" locationName:"projectName" min:"1" type:"string" required:"true"` } // String returns the string representation func (s CreatePlacementInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreatePlacementInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreatePlacementInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreatePlacementInput"} if s.PlacementName == nil { invalidParams.Add(request.NewErrParamRequired("PlacementName")) } if s.PlacementName != nil && len(*s.PlacementName) < 1 { invalidParams.Add(request.NewErrParamMinLen("PlacementName", 1)) } if s.ProjectName == nil { invalidParams.Add(request.NewErrParamRequired("ProjectName")) } if s.ProjectName != nil && len(*s.ProjectName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ProjectName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAttributes sets the Attributes field's value. func (s *CreatePlacementInput) SetAttributes(v map[string]*string) *CreatePlacementInput { s.Attributes = v return s } // SetPlacementName sets the PlacementName field's value. func (s *CreatePlacementInput) SetPlacementName(v string) *CreatePlacementInput { s.PlacementName = &v return s } // SetProjectName sets the ProjectName field's value. func (s *CreatePlacementInput) SetProjectName(v string) *CreatePlacementInput { s.ProjectName = &v return s } type CreatePlacementOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s CreatePlacementOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreatePlacementOutput) GoString() string { return s.String() } type CreateProjectInput struct { _ struct{} `type:"structure"` // An optional description for the project. Description *string `locationName:"description" type:"string"` // The schema defining the placement to be created. A placement template defines // placement default attributes and device templates. You cannot add or remove // device templates after the project has been created. However, you can update // callbackOverrides for the device templates using the UpdateProject API. PlacementTemplate *PlacementTemplate `locationName:"placementTemplate" type:"structure"` // The name of the project to create. // // ProjectName is a required field ProjectName *string `locationName:"projectName" min:"1" type:"string" required:"true"` } // String returns the string representation func (s CreateProjectInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateProjectInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateProjectInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateProjectInput"} if s.ProjectName == nil { invalidParams.Add(request.NewErrParamRequired("ProjectName")) } if s.ProjectName != nil && len(*s.ProjectName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ProjectName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetDescription sets the Description field's value. func (s *CreateProjectInput) SetDescription(v string) *CreateProjectInput { s.Description = &v return s } // SetPlacementTemplate sets the PlacementTemplate field's value. func (s *CreateProjectInput) SetPlacementTemplate(v *PlacementTemplate) *CreateProjectInput { s.PlacementTemplate = v return s } // SetProjectName sets the ProjectName field's value. func (s *CreateProjectInput) SetProjectName(v string) *CreateProjectInput { s.ProjectName = &v return s } type CreateProjectOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s CreateProjectOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateProjectOutput) GoString() string { return s.String() } type DeletePlacementInput struct { _ struct{} `type:"structure"` // The name of the empty placement to delete. // // PlacementName is a required field PlacementName *string `location:"uri" locationName:"placementName" min:"1" type:"string" required:"true"` // The project containing the empty placement to delete. // // ProjectName is a required field ProjectName *string `location:"uri" locationName:"projectName" min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeletePlacementInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeletePlacementInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeletePlacementInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeletePlacementInput"} if s.PlacementName == nil { invalidParams.Add(request.NewErrParamRequired("PlacementName")) } if s.PlacementName != nil && len(*s.PlacementName) < 1 { invalidParams.Add(request.NewErrParamMinLen("PlacementName", 1)) } if s.ProjectName == nil { invalidParams.Add(request.NewErrParamRequired("ProjectName")) } if s.ProjectName != nil && len(*s.ProjectName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ProjectName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetPlacementName sets the PlacementName field's value. func (s *DeletePlacementInput) SetPlacementName(v string) *DeletePlacementInput { s.PlacementName = &v return s } // SetProjectName sets the ProjectName field's value. func (s *DeletePlacementInput) SetProjectName(v string) *DeletePlacementInput { s.ProjectName = &v return s } type DeletePlacementOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeletePlacementOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeletePlacementOutput) GoString() string { return s.String() } type DeleteProjectInput struct { _ struct{} `type:"structure"` // The name of the empty project to delete. // // ProjectName is a required field ProjectName *string `location:"uri" locationName:"projectName" min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeleteProjectInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteProjectInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteProjectInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteProjectInput"} if s.ProjectName == nil { invalidParams.Add(request.NewErrParamRequired("ProjectName")) } if s.ProjectName != nil && len(*s.ProjectName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ProjectName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetProjectName sets the ProjectName field's value. func (s *DeleteProjectInput) SetProjectName(v string) *DeleteProjectInput { s.ProjectName = &v return s } type DeleteProjectOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteProjectOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteProjectOutput) GoString() string { return s.String() } type DescribePlacementInput struct { _ struct{} `type:"structure"` // The name of the placement within a project. // // PlacementName is a required field PlacementName *string `location:"uri" locationName:"placementName" min:"1" type:"string" required:"true"` // The project containing the placement to be described. // // ProjectName is a required field ProjectName *string `location:"uri" locationName:"projectName" min:"1" type:"string" required:"true"` } // String returns the string representation func (s DescribePlacementInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribePlacementInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribePlacementInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribePlacementInput"} if s.PlacementName == nil { invalidParams.Add(request.NewErrParamRequired("PlacementName")) } if s.PlacementName != nil && len(*s.PlacementName) < 1 { invalidParams.Add(request.NewErrParamMinLen("PlacementName", 1)) } if s.ProjectName == nil { invalidParams.Add(request.NewErrParamRequired("ProjectName")) } if s.ProjectName != nil && len(*s.ProjectName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ProjectName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetPlacementName sets the PlacementName field's value. func (s *DescribePlacementInput) SetPlacementName(v string) *DescribePlacementInput { s.PlacementName = &v return s } // SetProjectName sets the ProjectName field's value. func (s *DescribePlacementInput) SetProjectName(v string) *DescribePlacementInput { s.ProjectName = &v return s } type DescribePlacementOutput struct { _ struct{} `type:"structure"` // An object describing the placement. // // Placement is a required field Placement *PlacementDescription `locationName:"placement" type:"structure" required:"true"` } // String returns the string representation func (s DescribePlacementOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribePlacementOutput) GoString() string { return s.String() } // SetPlacement sets the Placement field's value. func (s *DescribePlacementOutput) SetPlacement(v *PlacementDescription) *DescribePlacementOutput { s.Placement = v return s } type DescribeProjectInput struct { _ struct{} `type:"structure"` // The name of the project to be described. // // ProjectName is a required field ProjectName *string `location:"uri" locationName:"projectName" min:"1" type:"string" required:"true"` } // String returns the string representation func (s DescribeProjectInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeProjectInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeProjectInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeProjectInput"} if s.ProjectName == nil { invalidParams.Add(request.NewErrParamRequired("ProjectName")) } if s.ProjectName != nil && len(*s.ProjectName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ProjectName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetProjectName sets the ProjectName field's value. func (s *DescribeProjectInput) SetProjectName(v string) *DescribeProjectInput { s.ProjectName = &v return s } type DescribeProjectOutput struct { _ struct{} `type:"structure"` // An object describing the project. // // Project is a required field Project *ProjectDescription `locationName:"project" type:"structure" required:"true"` } // String returns the string representation func (s DescribeProjectOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeProjectOutput) GoString() string { return s.String() } // SetProject sets the Project field's value. func (s *DescribeProjectOutput) SetProject(v *ProjectDescription) *DescribeProjectOutput { s.Project = v return s } // An object representing a device for a placement template (see PlacementTemplate). type DeviceTemplate struct { _ struct{} `type:"structure"` // An optional Lambda function to invoke instead of the default Lambda function // provided by the placement template. CallbackOverrides map[string]*string `locationName:"callbackOverrides" type:"map"` // The device type, which currently must be "button". DeviceType *string `locationName:"deviceType" type:"string"` } // String returns the string representation func (s DeviceTemplate) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeviceTemplate) GoString() string { return s.String() } // SetCallbackOverrides sets the CallbackOverrides field's value. func (s *DeviceTemplate) SetCallbackOverrides(v map[string]*string) *DeviceTemplate { s.CallbackOverrides = v return s } // SetDeviceType sets the DeviceType field's value. func (s *DeviceTemplate) SetDeviceType(v string) *DeviceTemplate { s.DeviceType = &v return s } type DisassociateDeviceFromPlacementInput struct { _ struct{} `type:"structure"` // The device ID that should be removed from the placement. // // DeviceTemplateName is a required field DeviceTemplateName *string `location:"uri" locationName:"deviceTemplateName" min:"1" type:"string" required:"true"` // The name of the placement that the device should be removed from. // // PlacementName is a required field PlacementName *string `location:"uri" locationName:"placementName" min:"1" type:"string" required:"true"` // The name of the project that contains the placement. // // ProjectName is a required field ProjectName *string `location:"uri" locationName:"projectName" min:"1" type:"string" required:"true"` } // String returns the string representation func (s DisassociateDeviceFromPlacementInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DisassociateDeviceFromPlacementInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DisassociateDeviceFromPlacementInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DisassociateDeviceFromPlacementInput"} if s.DeviceTemplateName == nil { invalidParams.Add(request.NewErrParamRequired("DeviceTemplateName")) } if s.DeviceTemplateName != nil && len(*s.DeviceTemplateName) < 1 { invalidParams.Add(request.NewErrParamMinLen("DeviceTemplateName", 1)) } if s.PlacementName == nil { invalidParams.Add(request.NewErrParamRequired("PlacementName")) } if s.PlacementName != nil && len(*s.PlacementName) < 1 { invalidParams.Add(request.NewErrParamMinLen("PlacementName", 1)) } if s.ProjectName == nil { invalidParams.Add(request.NewErrParamRequired("ProjectName")) } if s.ProjectName != nil && len(*s.ProjectName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ProjectName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetDeviceTemplateName sets the DeviceTemplateName field's value. func (s *DisassociateDeviceFromPlacementInput) SetDeviceTemplateName(v string) *DisassociateDeviceFromPlacementInput { s.DeviceTemplateName = &v return s } // SetPlacementName sets the PlacementName field's value. func (s *DisassociateDeviceFromPlacementInput) SetPlacementName(v string) *DisassociateDeviceFromPlacementInput { s.PlacementName = &v return s } // SetProjectName sets the ProjectName field's value. func (s *DisassociateDeviceFromPlacementInput) SetProjectName(v string) *DisassociateDeviceFromPlacementInput { s.ProjectName = &v return s } type DisassociateDeviceFromPlacementOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DisassociateDeviceFromPlacementOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DisassociateDeviceFromPlacementOutput) GoString() string { return s.String() } type GetDevicesInPlacementInput struct { _ struct{} `type:"structure"` // The name of the placement to get the devices from. // // PlacementName is a required field PlacementName *string `location:"uri" locationName:"placementName" min:"1" type:"string" required:"true"` // The name of the project containing the placement. // // ProjectName is a required field ProjectName *string `location:"uri" locationName:"projectName" min:"1" type:"string" required:"true"` } // String returns the string representation func (s GetDevicesInPlacementInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetDevicesInPlacementInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetDevicesInPlacementInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetDevicesInPlacementInput"} if s.PlacementName == nil { invalidParams.Add(request.NewErrParamRequired("PlacementName")) } if s.PlacementName != nil && len(*s.PlacementName) < 1 { invalidParams.Add(request.NewErrParamMinLen("PlacementName", 1)) } if s.ProjectName == nil { invalidParams.Add(request.NewErrParamRequired("ProjectName")) } if s.ProjectName != nil && len(*s.ProjectName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ProjectName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetPlacementName sets the PlacementName field's value. func (s *GetDevicesInPlacementInput) SetPlacementName(v string) *GetDevicesInPlacementInput { s.PlacementName = &v return s } // SetProjectName sets the ProjectName field's value. func (s *GetDevicesInPlacementInput) SetProjectName(v string) *GetDevicesInPlacementInput { s.ProjectName = &v return s } type GetDevicesInPlacementOutput struct { _ struct{} `type:"structure"` // An object containing the devices (zero or more) within the placement. // // Devices is a required field Devices map[string]*string `locationName:"devices" type:"map" required:"true"` } // String returns the string representation func (s GetDevicesInPlacementOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetDevicesInPlacementOutput) GoString() string { return s.String() } // SetDevices sets the Devices field's value. func (s *GetDevicesInPlacementOutput) SetDevices(v map[string]*string) *GetDevicesInPlacementOutput { s.Devices = v return s } type ListPlacementsInput struct { _ struct{} `type:"structure"` // The maximum number of results to return per request. If not set, a default // value of 100 is used. MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` // The token to retrieve the next set of results. NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` // The project containing the placements to be listed. // // ProjectName is a required field ProjectName *string `location:"uri" locationName:"projectName" min:"1" type:"string" required:"true"` } // String returns the string representation func (s ListPlacementsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListPlacementsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListPlacementsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListPlacementsInput"} 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.ProjectName == nil { invalidParams.Add(request.NewErrParamRequired("ProjectName")) } if s.ProjectName != nil && len(*s.ProjectName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ProjectName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetMaxResults sets the MaxResults field's value. func (s *ListPlacementsInput) SetMaxResults(v int64) *ListPlacementsInput { s.MaxResults = &v return s } // SetNextToken sets the NextToken field's value. func (s *ListPlacementsInput) SetNextToken(v string) *ListPlacementsInput { s.NextToken = &v return s } // SetProjectName sets the ProjectName field's value. func (s *ListPlacementsInput) SetProjectName(v string) *ListPlacementsInput { s.ProjectName = &v return s } type ListPlacementsOutput struct { _ struct{} `type:"structure"` // The token used to retrieve the next set of results - will be effectively // empty if there are no further results. NextToken *string `locationName:"nextToken" min:"1" type:"string"` // An object listing the requested placements. // // Placements is a required field Placements []*PlacementSummary `locationName:"placements" type:"list" required:"true"` } // String returns the string representation func (s ListPlacementsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListPlacementsOutput) GoString() string { return s.String() } // SetNextToken sets the NextToken field's value. func (s *ListPlacementsOutput) SetNextToken(v string) *ListPlacementsOutput { s.NextToken = &v return s } // SetPlacements sets the Placements field's value. func (s *ListPlacementsOutput) SetPlacements(v []*PlacementSummary) *ListPlacementsOutput { s.Placements = v return s } type ListProjectsInput struct { _ struct{} `type:"structure"` // The maximum number of results to return per request. If not set, a default // value of 100 is used. MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` // The token to retrieve the next set of results. NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` } // String returns the string representation func (s ListProjectsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListProjectsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListProjectsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListProjectsInput"} 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 *ListProjectsInput) SetMaxResults(v int64) *ListProjectsInput { s.MaxResults = &v return s } // SetNextToken sets the NextToken field's value. func (s *ListProjectsInput) SetNextToken(v string) *ListProjectsInput { s.NextToken = &v return s } type ListProjectsOutput struct { _ struct{} `type:"structure"` // The token used to retrieve the next set of results - will be effectively // empty if there are no further results. NextToken *string `locationName:"nextToken" min:"1" type:"string"` // An object containing the list of projects. // // Projects is a required field Projects []*ProjectSummary `locationName:"projects" type:"list" required:"true"` } // String returns the string representation func (s ListProjectsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListProjectsOutput) GoString() string { return s.String() } // SetNextToken sets the NextToken field's value. func (s *ListProjectsOutput) SetNextToken(v string) *ListProjectsOutput { s.NextToken = &v return s } // SetProjects sets the Projects field's value. func (s *ListProjectsOutput) SetProjects(v []*ProjectSummary) *ListProjectsOutput { s.Projects = v return s } // An object describing a project's placement. type PlacementDescription struct { _ struct{} `type:"structure"` // The user-defined attributes associated with the placement. // // Attributes is a required field Attributes map[string]*string `locationName:"attributes" type:"map" required:"true"` // The date when the placement was initially created, in UNIX epoch time format. // // CreatedDate is a required field CreatedDate *time.Time `locationName:"createdDate" type:"timestamp" required:"true"` // The name of the placement. // // PlacementName is a required field PlacementName *string `locationName:"placementName" min:"1" type:"string" required:"true"` // The name of the project containing the placement. // // ProjectName is a required field ProjectName *string `locationName:"projectName" min:"1" type:"string" required:"true"` // The date when the placement was last updated, in UNIX epoch time format. // If the placement was not updated, then createdDate and updatedDate are the // same. // // UpdatedDate is a required field UpdatedDate *time.Time `locationName:"updatedDate" type:"timestamp" required:"true"` } // String returns the string representation func (s PlacementDescription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PlacementDescription) GoString() string { return s.String() } // SetAttributes sets the Attributes field's value. func (s *PlacementDescription) SetAttributes(v map[string]*string) *PlacementDescription { s.Attributes = v return s } // SetCreatedDate sets the CreatedDate field's value. func (s *PlacementDescription) SetCreatedDate(v time.Time) *PlacementDescription { s.CreatedDate = &v return s } // SetPlacementName sets the PlacementName field's value. func (s *PlacementDescription) SetPlacementName(v string) *PlacementDescription { s.PlacementName = &v return s } // SetProjectName sets the ProjectName field's value. func (s *PlacementDescription) SetProjectName(v string) *PlacementDescription { s.ProjectName = &v return s } // SetUpdatedDate sets the UpdatedDate field's value. func (s *PlacementDescription) SetUpdatedDate(v time.Time) *PlacementDescription { s.UpdatedDate = &v return s } // An object providing summary information for a particular placement. type PlacementSummary struct { _ struct{} `type:"structure"` // The date when the placement was originally created, in UNIX epoch time format. // // CreatedDate is a required field CreatedDate *time.Time `locationName:"createdDate" type:"timestamp" required:"true"` // The name of the placement being summarized. // // PlacementName is a required field PlacementName *string `locationName:"placementName" min:"1" type:"string" required:"true"` // The name of the project containing the placement. // // ProjectName is a required field ProjectName *string `locationName:"projectName" min:"1" type:"string" required:"true"` // The date when the placement was last updated, in UNIX epoch time format. // If the placement was not updated, then createdDate and updatedDate are the // same. // // UpdatedDate is a required field UpdatedDate *time.Time `locationName:"updatedDate" type:"timestamp" required:"true"` } // String returns the string representation func (s PlacementSummary) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PlacementSummary) GoString() string { return s.String() } // SetCreatedDate sets the CreatedDate field's value. func (s *PlacementSummary) SetCreatedDate(v time.Time) *PlacementSummary { s.CreatedDate = &v return s } // SetPlacementName sets the PlacementName field's value. func (s *PlacementSummary) SetPlacementName(v string) *PlacementSummary { s.PlacementName = &v return s } // SetProjectName sets the ProjectName field's value. func (s *PlacementSummary) SetProjectName(v string) *PlacementSummary { s.ProjectName = &v return s } // SetUpdatedDate sets the UpdatedDate field's value. func (s *PlacementSummary) SetUpdatedDate(v time.Time) *PlacementSummary { s.UpdatedDate = &v return s } // An object defining the template for a placement. type PlacementTemplate struct { _ struct{} `type:"structure"` // The default attributes (key/value pairs) to be applied to all placements // using this template. DefaultAttributes map[string]*string `locationName:"defaultAttributes" type:"map"` // An object specifying the DeviceTemplate for all placements using this (PlacementTemplate) // template. DeviceTemplates map[string]*DeviceTemplate `locationName:"deviceTemplates" type:"map"` } // String returns the string representation func (s PlacementTemplate) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PlacementTemplate) GoString() string { return s.String() } // SetDefaultAttributes sets the DefaultAttributes field's value. func (s *PlacementTemplate) SetDefaultAttributes(v map[string]*string) *PlacementTemplate { s.DefaultAttributes = v return s } // SetDeviceTemplates sets the DeviceTemplates field's value. func (s *PlacementTemplate) SetDeviceTemplates(v map[string]*DeviceTemplate) *PlacementTemplate { s.DeviceTemplates = v return s } // An object providing detailed information for a particular project associated // with an AWS account and region. type ProjectDescription struct { _ struct{} `type:"structure"` // The date when the project was originally created, in UNIX epoch time format. // // CreatedDate is a required field CreatedDate *time.Time `locationName:"createdDate" type:"timestamp" required:"true"` // The description of the project. Description *string `locationName:"description" type:"string"` // An object describing the project's placement specifications. PlacementTemplate *PlacementTemplate `locationName:"placementTemplate" type:"structure"` // The name of the project for which to obtain information from. // // ProjectName is a required field ProjectName *string `locationName:"projectName" min:"1" type:"string" required:"true"` // The date when the project was last updated, in UNIX epoch time format. If // the project was not updated, then createdDate and updatedDate are the same. // // UpdatedDate is a required field UpdatedDate *time.Time `locationName:"updatedDate" type:"timestamp" required:"true"` } // String returns the string representation func (s ProjectDescription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ProjectDescription) GoString() string { return s.String() } // SetCreatedDate sets the CreatedDate field's value. func (s *ProjectDescription) SetCreatedDate(v time.Time) *ProjectDescription { s.CreatedDate = &v return s } // SetDescription sets the Description field's value. func (s *ProjectDescription) SetDescription(v string) *ProjectDescription { s.Description = &v return s } // SetPlacementTemplate sets the PlacementTemplate field's value. func (s *ProjectDescription) SetPlacementTemplate(v *PlacementTemplate) *ProjectDescription { s.PlacementTemplate = v return s } // SetProjectName sets the ProjectName field's value. func (s *ProjectDescription) SetProjectName(v string) *ProjectDescription { s.ProjectName = &v return s } // SetUpdatedDate sets the UpdatedDate field's value. func (s *ProjectDescription) SetUpdatedDate(v time.Time) *ProjectDescription { s.UpdatedDate = &v return s } // An object providing summary information for a particular project for an associated // AWS account and region. type ProjectSummary struct { _ struct{} `type:"structure"` // The date when the project was originally created, in UNIX epoch time format. // // CreatedDate is a required field CreatedDate *time.Time `locationName:"createdDate" type:"timestamp" required:"true"` // The name of the project being summarized. // // ProjectName is a required field ProjectName *string `locationName:"projectName" min:"1" type:"string" required:"true"` // The date when the project was last updated, in UNIX epoch time format. If // the project was not updated, then createdDate and updatedDate are the same. // // UpdatedDate is a required field UpdatedDate *time.Time `locationName:"updatedDate" type:"timestamp" required:"true"` } // String returns the string representation func (s ProjectSummary) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ProjectSummary) GoString() string { return s.String() } // SetCreatedDate sets the CreatedDate field's value. func (s *ProjectSummary) SetCreatedDate(v time.Time) *ProjectSummary { s.CreatedDate = &v return s } // SetProjectName sets the ProjectName field's value. func (s *ProjectSummary) SetProjectName(v string) *ProjectSummary { s.ProjectName = &v return s } // SetUpdatedDate sets the UpdatedDate field's value. func (s *ProjectSummary) SetUpdatedDate(v time.Time) *ProjectSummary { s.UpdatedDate = &v return s } type UpdatePlacementInput struct { _ struct{} `type:"structure"` // The user-defined object of attributes used to update the placement. The maximum // number of key/value pairs is 50. Attributes map[string]*string `locationName:"attributes" type:"map"` // The name of the placement to update. // // PlacementName is a required field PlacementName *string `location:"uri" locationName:"placementName" min:"1" type:"string" required:"true"` // The name of the project containing the placement to be updated. // // ProjectName is a required field ProjectName *string `location:"uri" locationName:"projectName" min:"1" type:"string" required:"true"` } // String returns the string representation func (s UpdatePlacementInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdatePlacementInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdatePlacementInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdatePlacementInput"} if s.PlacementName == nil { invalidParams.Add(request.NewErrParamRequired("PlacementName")) } if s.PlacementName != nil && len(*s.PlacementName) < 1 { invalidParams.Add(request.NewErrParamMinLen("PlacementName", 1)) } if s.ProjectName == nil { invalidParams.Add(request.NewErrParamRequired("ProjectName")) } if s.ProjectName != nil && len(*s.ProjectName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ProjectName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAttributes sets the Attributes field's value. func (s *UpdatePlacementInput) SetAttributes(v map[string]*string) *UpdatePlacementInput { s.Attributes = v return s } // SetPlacementName sets the PlacementName field's value. func (s *UpdatePlacementInput) SetPlacementName(v string) *UpdatePlacementInput { s.PlacementName = &v return s } // SetProjectName sets the ProjectName field's value. func (s *UpdatePlacementInput) SetProjectName(v string) *UpdatePlacementInput { s.ProjectName = &v return s } type UpdatePlacementOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s UpdatePlacementOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdatePlacementOutput) GoString() string { return s.String() } type UpdateProjectInput struct { _ struct{} `type:"structure"` // An optional user-defined description for the project. Description *string `locationName:"description" type:"string"` // An object defining the project update. Once a project has been created, you // cannot add device template names to the project. However, for a given placementTemplate, // you can update the associated callbackOverrides for the device definition // using this API. PlacementTemplate *PlacementTemplate `locationName:"placementTemplate" type:"structure"` // The name of the project to be updated. // // ProjectName is a required field ProjectName *string `location:"uri" locationName:"projectName" min:"1" type:"string" required:"true"` } // String returns the string representation func (s UpdateProjectInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateProjectInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateProjectInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateProjectInput"} if s.ProjectName == nil { invalidParams.Add(request.NewErrParamRequired("ProjectName")) } if s.ProjectName != nil && len(*s.ProjectName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ProjectName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetDescription sets the Description field's value. func (s *UpdateProjectInput) SetDescription(v string) *UpdateProjectInput { s.Description = &v return s } // SetPlacementTemplate sets the PlacementTemplate field's value. func (s *UpdateProjectInput) SetPlacementTemplate(v *PlacementTemplate) *UpdateProjectInput { s.PlacementTemplate = v return s } // SetProjectName sets the ProjectName field's value. func (s *UpdateProjectInput) SetProjectName(v string) *UpdateProjectInput { s.ProjectName = &v return s } type UpdateProjectOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s UpdateProjectOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateProjectOutput) GoString() string { return s.String() }