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