| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168 |
- // Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT.
- package apigatewaymanagementapi
- import (
- "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 opPostToConnection = "PostToConnection"
- // PostToConnectionRequest generates a "aws/request.Request" representing the
- // client's request for the PostToConnection 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 PostToConnection for more information on using the PostToConnection
- // 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 PostToConnectionRequest method.
- // req, resp := client.PostToConnectionRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/apigatewaymanagementapi-2018-11-29/PostToConnection
- func (c *ApiGatewayManagementApi) PostToConnectionRequest(input *PostToConnectionInput) (req *request.Request, output *PostToConnectionOutput) {
- op := &request.Operation{
- Name: opPostToConnection,
- HTTPMethod: "POST",
- HTTPPath: "/@connections/{connectionId}",
- }
- if input == nil {
- input = &PostToConnectionInput{}
- }
- output = &PostToConnectionOutput{}
- req = c.newRequest(op, input, output)
- req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
- return
- }
- // PostToConnection API operation for AmazonApiGatewayManagementApi.
- //
- // Sends the provided data to the specified connection.
- //
- // 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 AmazonApiGatewayManagementApi's
- // API operation PostToConnection for usage and error information.
- //
- // Returned Error Codes:
- // * ErrCodeGoneException "GoneException"
- // The connection with the provided id no longer exists.
- //
- // * ErrCodeLimitExceededException "LimitExceededException"
- // The client is sending more than the allowed number of requests per unit of
- // time.
- //
- // * ErrCodePayloadTooLargeException "PayloadTooLargeException"
- // The data has exceeded the maximum size allowed.
- //
- // * ErrCodeForbiddenException "ForbiddenException"
- // The caller is not authorized to invoke this operation.
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/apigatewaymanagementapi-2018-11-29/PostToConnection
- func (c *ApiGatewayManagementApi) PostToConnection(input *PostToConnectionInput) (*PostToConnectionOutput, error) {
- req, out := c.PostToConnectionRequest(input)
- return out, req.Send()
- }
- // PostToConnectionWithContext is the same as PostToConnection with the addition of
- // the ability to pass a context and additional request options.
- //
- // See PostToConnection 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 *ApiGatewayManagementApi) PostToConnectionWithContext(ctx aws.Context, input *PostToConnectionInput, opts ...request.Option) (*PostToConnectionOutput, error) {
- req, out := c.PostToConnectionRequest(input)
- req.SetContext(ctx)
- req.ApplyOptions(opts...)
- return out, req.Send()
- }
- type PostToConnectionInput struct {
- _ struct{} `type:"structure" payload:"Data"`
- // ConnectionId is a required field
- ConnectionId *string `location:"uri" locationName:"connectionId" type:"string" required:"true"`
- // The data to be sent to the client specified by its connection id.
- //
- // Data is a required field
- Data []byte `type:"blob" required:"true"`
- }
- // String returns the string representation
- func (s PostToConnectionInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s PostToConnectionInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *PostToConnectionInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "PostToConnectionInput"}
- if s.ConnectionId == nil {
- invalidParams.Add(request.NewErrParamRequired("ConnectionId"))
- }
- if s.ConnectionId != nil && len(*s.ConnectionId) < 1 {
- invalidParams.Add(request.NewErrParamMinLen("ConnectionId", 1))
- }
- if s.Data == nil {
- invalidParams.Add(request.NewErrParamRequired("Data"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetConnectionId sets the ConnectionId field's value.
- func (s *PostToConnectionInput) SetConnectionId(v string) *PostToConnectionInput {
- s.ConnectionId = &v
- return s
- }
- // SetData sets the Data field's value.
- func (s *PostToConnectionInput) SetData(v []byte) *PostToConnectionInput {
- s.Data = v
- return s
- }
- type PostToConnectionOutput struct {
- _ struct{} `type:"structure"`
- }
- // String returns the string representation
- func (s PostToConnectionOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s PostToConnectionOutput) GoString() string {
- return s.String()
- }
|