...

Source file src/github.com/aws/aws-sdk-go-v2/service/sso/serializers.go

Documentation: github.com/aws/aws-sdk-go-v2/service/sso

     1  // Code generated by smithy-go-codegen DO NOT EDIT.
     2  
     3  package sso
     4  
     5  import (
     6  	"context"
     7  	"fmt"
     8  	smithy "github.com/aws/smithy-go"
     9  	"github.com/aws/smithy-go/encoding/httpbinding"
    10  	"github.com/aws/smithy-go/middleware"
    11  	smithyhttp "github.com/aws/smithy-go/transport/http"
    12  )
    13  
    14  type awsRestjson1_serializeOpGetRoleCredentials struct {
    15  }
    16  
    17  func (*awsRestjson1_serializeOpGetRoleCredentials) ID() string {
    18  	return "OperationSerializer"
    19  }
    20  
    21  func (m *awsRestjson1_serializeOpGetRoleCredentials) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
    22  	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
    23  ) {
    24  	request, ok := in.Request.(*smithyhttp.Request)
    25  	if !ok {
    26  		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
    27  	}
    28  
    29  	input, ok := in.Parameters.(*GetRoleCredentialsInput)
    30  	_ = input
    31  	if !ok {
    32  		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
    33  	}
    34  
    35  	opPath, opQuery := httpbinding.SplitURI("/federation/credentials")
    36  	request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath)
    37  	request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery)
    38  	request.Method = "GET"
    39  	var restEncoder *httpbinding.Encoder
    40  	if request.URL.RawPath == "" {
    41  		restEncoder, err = httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
    42  	} else {
    43  		request.URL.RawPath = smithyhttp.JoinPath(request.URL.RawPath, opPath)
    44  		restEncoder, err = httpbinding.NewEncoderWithRawPath(request.URL.Path, request.URL.RawPath, request.URL.RawQuery, request.Header)
    45  	}
    46  
    47  	if err != nil {
    48  		return out, metadata, &smithy.SerializationError{Err: err}
    49  	}
    50  
    51  	if err := awsRestjson1_serializeOpHttpBindingsGetRoleCredentialsInput(input, restEncoder); err != nil {
    52  		return out, metadata, &smithy.SerializationError{Err: err}
    53  	}
    54  
    55  	if request.Request, err = restEncoder.Encode(request.Request); err != nil {
    56  		return out, metadata, &smithy.SerializationError{Err: err}
    57  	}
    58  	in.Request = request
    59  
    60  	return next.HandleSerialize(ctx, in)
    61  }
    62  func awsRestjson1_serializeOpHttpBindingsGetRoleCredentialsInput(v *GetRoleCredentialsInput, encoder *httpbinding.Encoder) error {
    63  	if v == nil {
    64  		return fmt.Errorf("unsupported serialization of nil %T", v)
    65  	}
    66  
    67  	if v.AccessToken != nil && len(*v.AccessToken) > 0 {
    68  		locationName := "X-Amz-Sso_bearer_token"
    69  		encoder.SetHeader(locationName).String(*v.AccessToken)
    70  	}
    71  
    72  	if v.AccountId != nil {
    73  		encoder.SetQuery("account_id").String(*v.AccountId)
    74  	}
    75  
    76  	if v.RoleName != nil {
    77  		encoder.SetQuery("role_name").String(*v.RoleName)
    78  	}
    79  
    80  	return nil
    81  }
    82  
    83  type awsRestjson1_serializeOpListAccountRoles struct {
    84  }
    85  
    86  func (*awsRestjson1_serializeOpListAccountRoles) ID() string {
    87  	return "OperationSerializer"
    88  }
    89  
    90  func (m *awsRestjson1_serializeOpListAccountRoles) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
    91  	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
    92  ) {
    93  	request, ok := in.Request.(*smithyhttp.Request)
    94  	if !ok {
    95  		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
    96  	}
    97  
    98  	input, ok := in.Parameters.(*ListAccountRolesInput)
    99  	_ = input
   100  	if !ok {
   101  		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
   102  	}
   103  
   104  	opPath, opQuery := httpbinding.SplitURI("/assignment/roles")
   105  	request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath)
   106  	request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery)
   107  	request.Method = "GET"
   108  	var restEncoder *httpbinding.Encoder
   109  	if request.URL.RawPath == "" {
   110  		restEncoder, err = httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
   111  	} else {
   112  		request.URL.RawPath = smithyhttp.JoinPath(request.URL.RawPath, opPath)
   113  		restEncoder, err = httpbinding.NewEncoderWithRawPath(request.URL.Path, request.URL.RawPath, request.URL.RawQuery, request.Header)
   114  	}
   115  
   116  	if err != nil {
   117  		return out, metadata, &smithy.SerializationError{Err: err}
   118  	}
   119  
   120  	if err := awsRestjson1_serializeOpHttpBindingsListAccountRolesInput(input, restEncoder); err != nil {
   121  		return out, metadata, &smithy.SerializationError{Err: err}
   122  	}
   123  
   124  	if request.Request, err = restEncoder.Encode(request.Request); err != nil {
   125  		return out, metadata, &smithy.SerializationError{Err: err}
   126  	}
   127  	in.Request = request
   128  
   129  	return next.HandleSerialize(ctx, in)
   130  }
   131  func awsRestjson1_serializeOpHttpBindingsListAccountRolesInput(v *ListAccountRolesInput, encoder *httpbinding.Encoder) error {
   132  	if v == nil {
   133  		return fmt.Errorf("unsupported serialization of nil %T", v)
   134  	}
   135  
   136  	if v.AccessToken != nil && len(*v.AccessToken) > 0 {
   137  		locationName := "X-Amz-Sso_bearer_token"
   138  		encoder.SetHeader(locationName).String(*v.AccessToken)
   139  	}
   140  
   141  	if v.AccountId != nil {
   142  		encoder.SetQuery("account_id").String(*v.AccountId)
   143  	}
   144  
   145  	if v.MaxResults != nil {
   146  		encoder.SetQuery("max_result").Integer(*v.MaxResults)
   147  	}
   148  
   149  	if v.NextToken != nil {
   150  		encoder.SetQuery("next_token").String(*v.NextToken)
   151  	}
   152  
   153  	return nil
   154  }
   155  
   156  type awsRestjson1_serializeOpListAccounts struct {
   157  }
   158  
   159  func (*awsRestjson1_serializeOpListAccounts) ID() string {
   160  	return "OperationSerializer"
   161  }
   162  
   163  func (m *awsRestjson1_serializeOpListAccounts) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
   164  	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
   165  ) {
   166  	request, ok := in.Request.(*smithyhttp.Request)
   167  	if !ok {
   168  		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
   169  	}
   170  
   171  	input, ok := in.Parameters.(*ListAccountsInput)
   172  	_ = input
   173  	if !ok {
   174  		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
   175  	}
   176  
   177  	opPath, opQuery := httpbinding.SplitURI("/assignment/accounts")
   178  	request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath)
   179  	request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery)
   180  	request.Method = "GET"
   181  	var restEncoder *httpbinding.Encoder
   182  	if request.URL.RawPath == "" {
   183  		restEncoder, err = httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
   184  	} else {
   185  		request.URL.RawPath = smithyhttp.JoinPath(request.URL.RawPath, opPath)
   186  		restEncoder, err = httpbinding.NewEncoderWithRawPath(request.URL.Path, request.URL.RawPath, request.URL.RawQuery, request.Header)
   187  	}
   188  
   189  	if err != nil {
   190  		return out, metadata, &smithy.SerializationError{Err: err}
   191  	}
   192  
   193  	if err := awsRestjson1_serializeOpHttpBindingsListAccountsInput(input, restEncoder); err != nil {
   194  		return out, metadata, &smithy.SerializationError{Err: err}
   195  	}
   196  
   197  	if request.Request, err = restEncoder.Encode(request.Request); err != nil {
   198  		return out, metadata, &smithy.SerializationError{Err: err}
   199  	}
   200  	in.Request = request
   201  
   202  	return next.HandleSerialize(ctx, in)
   203  }
   204  func awsRestjson1_serializeOpHttpBindingsListAccountsInput(v *ListAccountsInput, encoder *httpbinding.Encoder) error {
   205  	if v == nil {
   206  		return fmt.Errorf("unsupported serialization of nil %T", v)
   207  	}
   208  
   209  	if v.AccessToken != nil && len(*v.AccessToken) > 0 {
   210  		locationName := "X-Amz-Sso_bearer_token"
   211  		encoder.SetHeader(locationName).String(*v.AccessToken)
   212  	}
   213  
   214  	if v.MaxResults != nil {
   215  		encoder.SetQuery("max_result").Integer(*v.MaxResults)
   216  	}
   217  
   218  	if v.NextToken != nil {
   219  		encoder.SetQuery("next_token").String(*v.NextToken)
   220  	}
   221  
   222  	return nil
   223  }
   224  
   225  type awsRestjson1_serializeOpLogout struct {
   226  }
   227  
   228  func (*awsRestjson1_serializeOpLogout) ID() string {
   229  	return "OperationSerializer"
   230  }
   231  
   232  func (m *awsRestjson1_serializeOpLogout) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
   233  	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
   234  ) {
   235  	request, ok := in.Request.(*smithyhttp.Request)
   236  	if !ok {
   237  		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
   238  	}
   239  
   240  	input, ok := in.Parameters.(*LogoutInput)
   241  	_ = input
   242  	if !ok {
   243  		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
   244  	}
   245  
   246  	opPath, opQuery := httpbinding.SplitURI("/logout")
   247  	request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath)
   248  	request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery)
   249  	request.Method = "POST"
   250  	var restEncoder *httpbinding.Encoder
   251  	if request.URL.RawPath == "" {
   252  		restEncoder, err = httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
   253  	} else {
   254  		request.URL.RawPath = smithyhttp.JoinPath(request.URL.RawPath, opPath)
   255  		restEncoder, err = httpbinding.NewEncoderWithRawPath(request.URL.Path, request.URL.RawPath, request.URL.RawQuery, request.Header)
   256  	}
   257  
   258  	if err != nil {
   259  		return out, metadata, &smithy.SerializationError{Err: err}
   260  	}
   261  
   262  	if err := awsRestjson1_serializeOpHttpBindingsLogoutInput(input, restEncoder); err != nil {
   263  		return out, metadata, &smithy.SerializationError{Err: err}
   264  	}
   265  
   266  	if request.Request, err = restEncoder.Encode(request.Request); err != nil {
   267  		return out, metadata, &smithy.SerializationError{Err: err}
   268  	}
   269  	in.Request = request
   270  
   271  	return next.HandleSerialize(ctx, in)
   272  }
   273  func awsRestjson1_serializeOpHttpBindingsLogoutInput(v *LogoutInput, encoder *httpbinding.Encoder) error {
   274  	if v == nil {
   275  		return fmt.Errorf("unsupported serialization of nil %T", v)
   276  	}
   277  
   278  	if v.AccessToken != nil && len(*v.AccessToken) > 0 {
   279  		locationName := "X-Amz-Sso_bearer_token"
   280  		encoder.SetHeader(locationName).String(*v.AccessToken)
   281  	}
   282  
   283  	return nil
   284  }
   285  

View as plain text