1// Code generated by models/protocol_tests/generate.go. DO NOT EDIT. 2 3package jsonrpc_test 4 5import ( 6 "bytes" 7 "encoding/json" 8 "encoding/xml" 9 "fmt" 10 "io" 11 "io/ioutil" 12 "net/http" 13 "net/url" 14 "reflect" 15 "testing" 16 "time" 17 18 "github.com/aws/aws-sdk-go/aws" 19 "github.com/aws/aws-sdk-go/aws/client" 20 "github.com/aws/aws-sdk-go/aws/client/metadata" 21 "github.com/aws/aws-sdk-go/aws/request" 22 "github.com/aws/aws-sdk-go/aws/signer/v4" 23 "github.com/aws/aws-sdk-go/awstesting" 24 "github.com/aws/aws-sdk-go/awstesting/unit" 25 "github.com/aws/aws-sdk-go/private/protocol" 26 "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" 27 "github.com/aws/aws-sdk-go/private/protocol/xml/xmlutil" 28 "github.com/aws/aws-sdk-go/private/util" 29) 30 31var _ bytes.Buffer // always import bytes 32var _ http.Request 33var _ json.Marshaler 34var _ time.Time 35var _ xmlutil.XMLNode 36var _ xml.Attr 37var _ = ioutil.Discard 38var _ = util.Trim("") 39var _ = url.Values{} 40var _ = io.EOF 41var _ = aws.String 42var _ = fmt.Println 43var _ = reflect.Value{} 44 45func init() { 46 protocol.RandReader = &awstesting.ZeroReader{} 47} 48 49// OutputService1ProtocolTest provides the API operation methods for making requests to 50// . See this package's package overview docs 51// for details on the service. 52// 53// OutputService1ProtocolTest methods are safe to use concurrently. It is not safe to 54// modify mutate any of the struct's properties though. 55type OutputService1ProtocolTest struct { 56 *client.Client 57} 58 59// New creates a new instance of the OutputService1ProtocolTest client with a session. 60// If additional configuration is needed for the client instance use the optional 61// aws.Config parameter to add your extra config. 62// 63// Example: 64// mySession := session.Must(session.NewSession()) 65// 66// // Create a OutputService1ProtocolTest client from just a session. 67// svc := outputservice1protocoltest.New(mySession) 68// 69// // Create a OutputService1ProtocolTest client with additional configuration 70// svc := outputservice1protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) 71func NewOutputService1ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *OutputService1ProtocolTest { 72 c := p.ClientConfig("outputservice1protocoltest", cfgs...) 73 return newOutputService1ProtocolTestClient(*c.Config, c.Handlers, c.PartitionID, c.Endpoint, c.SigningRegion, c.SigningName) 74} 75 76// newClient creates, initializes and returns a new service client instance. 77func newOutputService1ProtocolTestClient(cfg aws.Config, handlers request.Handlers, partitionID, endpoint, signingRegion, signingName string) *OutputService1ProtocolTest { 78 svc := &OutputService1ProtocolTest{ 79 Client: client.New( 80 cfg, 81 metadata.ClientInfo{ 82 ServiceName: "OutputService1ProtocolTest", 83 ServiceID: "OutputService1ProtocolTest", 84 SigningName: signingName, 85 SigningRegion: signingRegion, 86 PartitionID: partitionID, 87 Endpoint: endpoint, 88 APIVersion: "", 89 }, 90 handlers, 91 ), 92 } 93 94 // Handlers 95 svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) 96 svc.Handlers.Build.PushBackNamed(jsonrpc.BuildHandler) 97 svc.Handlers.Unmarshal.PushBackNamed(jsonrpc.UnmarshalHandler) 98 svc.Handlers.UnmarshalMeta.PushBackNamed(jsonrpc.UnmarshalMetaHandler) 99 svc.Handlers.UnmarshalError.PushBackNamed(jsonrpc.UnmarshalErrorHandler) 100 101 return svc 102} 103 104// newRequest creates a new request for a OutputService1ProtocolTest operation and runs any 105// custom request initialization. 106func (c *OutputService1ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { 107 req := c.NewRequest(op, params, data) 108 109 return req 110} 111 112const opOutputService1TestCaseOperation1 = "OperationName" 113 114// OutputService1TestCaseOperation1Request generates a "aws/request.Request" representing the 115// client's request for the OutputService1TestCaseOperation1 operation. The "output" return 116// value will be populated with the request's response once the request completes 117// successfully. 118// 119// Use "Send" method on the returned Request to send the API call to the service. 120// the "output" return value is not valid until after Send returns without error. 121// 122// See OutputService1TestCaseOperation1 for more information on using the OutputService1TestCaseOperation1 123// API call, and error handling. 124// 125// This method is useful when you want to inject custom logic or configuration 126// into the SDK's request lifecycle. Such as custom headers, or retry logic. 127// 128// 129// // Example sending a request using the OutputService1TestCaseOperation1Request method. 130// req, resp := client.OutputService1TestCaseOperation1Request(params) 131// 132// err := req.Send() 133// if err == nil { // resp is now filled 134// fmt.Println(resp) 135// } 136func (c *OutputService1ProtocolTest) OutputService1TestCaseOperation1Request(input *OutputService1TestShapeOutputService1TestCaseOperation1Input) (req *request.Request, output *OutputService1TestShapeOutputService1TestCaseOperation1Output) { 137 op := &request.Operation{ 138 Name: opOutputService1TestCaseOperation1, 139 HTTPPath: "/", 140 } 141 142 if input == nil { 143 input = &OutputService1TestShapeOutputService1TestCaseOperation1Input{} 144 } 145 146 output = &OutputService1TestShapeOutputService1TestCaseOperation1Output{} 147 req = c.newRequest(op, input, output) 148 return 149} 150 151// OutputService1TestCaseOperation1 API operation for . 152// 153// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 154// with awserr.Error's Code and Message methods to get detailed information about 155// the error. 156// 157// See the AWS API reference guide for 's 158// API operation OutputService1TestCaseOperation1 for usage and error information. 159func (c *OutputService1ProtocolTest) OutputService1TestCaseOperation1(input *OutputService1TestShapeOutputService1TestCaseOperation1Input) (*OutputService1TestShapeOutputService1TestCaseOperation1Output, error) { 160 req, out := c.OutputService1TestCaseOperation1Request(input) 161 return out, req.Send() 162} 163 164// OutputService1TestCaseOperation1WithContext is the same as OutputService1TestCaseOperation1 with the addition of 165// the ability to pass a context and additional request options. 166// 167// See OutputService1TestCaseOperation1 for details on how to use this API operation. 168// 169// The context must be non-nil and will be used for request cancellation. If 170// the context is nil a panic will occur. In the future the SDK may create 171// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 172// for more information on using Contexts. 173func (c *OutputService1ProtocolTest) OutputService1TestCaseOperation1WithContext(ctx aws.Context, input *OutputService1TestShapeOutputService1TestCaseOperation1Input, opts ...request.Option) (*OutputService1TestShapeOutputService1TestCaseOperation1Output, error) { 174 req, out := c.OutputService1TestCaseOperation1Request(input) 175 req.SetContext(ctx) 176 req.ApplyOptions(opts...) 177 return out, req.Send() 178} 179 180type OutputService1TestShapeOutputService1TestCaseOperation1Input struct { 181 _ struct{} `type:"structure"` 182} 183 184type OutputService1TestShapeOutputService1TestCaseOperation1Output struct { 185 _ struct{} `type:"structure"` 186 187 Char *string `type:"character"` 188 189 Double *float64 `type:"double"` 190 191 FalseBool *bool `type:"boolean"` 192 193 Float *float64 `type:"float"` 194 195 Long *int64 `type:"long"` 196 197 Num *int64 `type:"integer"` 198 199 Str *string `type:"string"` 200 201 TrueBool *bool `type:"boolean"` 202} 203 204// SetChar sets the Char field's value. 205func (s *OutputService1TestShapeOutputService1TestCaseOperation1Output) SetChar(v string) *OutputService1TestShapeOutputService1TestCaseOperation1Output { 206 s.Char = &v 207 return s 208} 209 210// SetDouble sets the Double field's value. 211func (s *OutputService1TestShapeOutputService1TestCaseOperation1Output) SetDouble(v float64) *OutputService1TestShapeOutputService1TestCaseOperation1Output { 212 s.Double = &v 213 return s 214} 215 216// SetFalseBool sets the FalseBool field's value. 217func (s *OutputService1TestShapeOutputService1TestCaseOperation1Output) SetFalseBool(v bool) *OutputService1TestShapeOutputService1TestCaseOperation1Output { 218 s.FalseBool = &v 219 return s 220} 221 222// SetFloat sets the Float field's value. 223func (s *OutputService1TestShapeOutputService1TestCaseOperation1Output) SetFloat(v float64) *OutputService1TestShapeOutputService1TestCaseOperation1Output { 224 s.Float = &v 225 return s 226} 227 228// SetLong sets the Long field's value. 229func (s *OutputService1TestShapeOutputService1TestCaseOperation1Output) SetLong(v int64) *OutputService1TestShapeOutputService1TestCaseOperation1Output { 230 s.Long = &v 231 return s 232} 233 234// SetNum sets the Num field's value. 235func (s *OutputService1TestShapeOutputService1TestCaseOperation1Output) SetNum(v int64) *OutputService1TestShapeOutputService1TestCaseOperation1Output { 236 s.Num = &v 237 return s 238} 239 240// SetStr sets the Str field's value. 241func (s *OutputService1TestShapeOutputService1TestCaseOperation1Output) SetStr(v string) *OutputService1TestShapeOutputService1TestCaseOperation1Output { 242 s.Str = &v 243 return s 244} 245 246// SetTrueBool sets the TrueBool field's value. 247func (s *OutputService1TestShapeOutputService1TestCaseOperation1Output) SetTrueBool(v bool) *OutputService1TestShapeOutputService1TestCaseOperation1Output { 248 s.TrueBool = &v 249 return s 250} 251 252// OutputService2ProtocolTest provides the API operation methods for making requests to 253// . See this package's package overview docs 254// for details on the service. 255// 256// OutputService2ProtocolTest methods are safe to use concurrently. It is not safe to 257// modify mutate any of the struct's properties though. 258type OutputService2ProtocolTest struct { 259 *client.Client 260} 261 262// New creates a new instance of the OutputService2ProtocolTest client with a session. 263// If additional configuration is needed for the client instance use the optional 264// aws.Config parameter to add your extra config. 265// 266// Example: 267// mySession := session.Must(session.NewSession()) 268// 269// // Create a OutputService2ProtocolTest client from just a session. 270// svc := outputservice2protocoltest.New(mySession) 271// 272// // Create a OutputService2ProtocolTest client with additional configuration 273// svc := outputservice2protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) 274func NewOutputService2ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *OutputService2ProtocolTest { 275 c := p.ClientConfig("outputservice2protocoltest", cfgs...) 276 return newOutputService2ProtocolTestClient(*c.Config, c.Handlers, c.PartitionID, c.Endpoint, c.SigningRegion, c.SigningName) 277} 278 279// newClient creates, initializes and returns a new service client instance. 280func newOutputService2ProtocolTestClient(cfg aws.Config, handlers request.Handlers, partitionID, endpoint, signingRegion, signingName string) *OutputService2ProtocolTest { 281 svc := &OutputService2ProtocolTest{ 282 Client: client.New( 283 cfg, 284 metadata.ClientInfo{ 285 ServiceName: "OutputService2ProtocolTest", 286 ServiceID: "OutputService2ProtocolTest", 287 SigningName: signingName, 288 SigningRegion: signingRegion, 289 PartitionID: partitionID, 290 Endpoint: endpoint, 291 APIVersion: "", 292 }, 293 handlers, 294 ), 295 } 296 297 // Handlers 298 svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) 299 svc.Handlers.Build.PushBackNamed(jsonrpc.BuildHandler) 300 svc.Handlers.Unmarshal.PushBackNamed(jsonrpc.UnmarshalHandler) 301 svc.Handlers.UnmarshalMeta.PushBackNamed(jsonrpc.UnmarshalMetaHandler) 302 svc.Handlers.UnmarshalError.PushBackNamed(jsonrpc.UnmarshalErrorHandler) 303 304 return svc 305} 306 307// newRequest creates a new request for a OutputService2ProtocolTest operation and runs any 308// custom request initialization. 309func (c *OutputService2ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { 310 req := c.NewRequest(op, params, data) 311 312 return req 313} 314 315const opOutputService2TestCaseOperation1 = "OperationName" 316 317// OutputService2TestCaseOperation1Request generates a "aws/request.Request" representing the 318// client's request for the OutputService2TestCaseOperation1 operation. The "output" return 319// value will be populated with the request's response once the request completes 320// successfully. 321// 322// Use "Send" method on the returned Request to send the API call to the service. 323// the "output" return value is not valid until after Send returns without error. 324// 325// See OutputService2TestCaseOperation1 for more information on using the OutputService2TestCaseOperation1 326// API call, and error handling. 327// 328// This method is useful when you want to inject custom logic or configuration 329// into the SDK's request lifecycle. Such as custom headers, or retry logic. 330// 331// 332// // Example sending a request using the OutputService2TestCaseOperation1Request method. 333// req, resp := client.OutputService2TestCaseOperation1Request(params) 334// 335// err := req.Send() 336// if err == nil { // resp is now filled 337// fmt.Println(resp) 338// } 339func (c *OutputService2ProtocolTest) OutputService2TestCaseOperation1Request(input *OutputService2TestShapeOutputService2TestCaseOperation1Input) (req *request.Request, output *OutputService2TestShapeOutputService2TestCaseOperation1Output) { 340 op := &request.Operation{ 341 Name: opOutputService2TestCaseOperation1, 342 HTTPPath: "/", 343 } 344 345 if input == nil { 346 input = &OutputService2TestShapeOutputService2TestCaseOperation1Input{} 347 } 348 349 output = &OutputService2TestShapeOutputService2TestCaseOperation1Output{} 350 req = c.newRequest(op, input, output) 351 return 352} 353 354// OutputService2TestCaseOperation1 API operation for . 355// 356// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 357// with awserr.Error's Code and Message methods to get detailed information about 358// the error. 359// 360// See the AWS API reference guide for 's 361// API operation OutputService2TestCaseOperation1 for usage and error information. 362func (c *OutputService2ProtocolTest) OutputService2TestCaseOperation1(input *OutputService2TestShapeOutputService2TestCaseOperation1Input) (*OutputService2TestShapeOutputService2TestCaseOperation1Output, error) { 363 req, out := c.OutputService2TestCaseOperation1Request(input) 364 return out, req.Send() 365} 366 367// OutputService2TestCaseOperation1WithContext is the same as OutputService2TestCaseOperation1 with the addition of 368// the ability to pass a context and additional request options. 369// 370// See OutputService2TestCaseOperation1 for details on how to use this API operation. 371// 372// The context must be non-nil and will be used for request cancellation. If 373// the context is nil a panic will occur. In the future the SDK may create 374// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 375// for more information on using Contexts. 376func (c *OutputService2ProtocolTest) OutputService2TestCaseOperation1WithContext(ctx aws.Context, input *OutputService2TestShapeOutputService2TestCaseOperation1Input, opts ...request.Option) (*OutputService2TestShapeOutputService2TestCaseOperation1Output, error) { 377 req, out := c.OutputService2TestCaseOperation1Request(input) 378 req.SetContext(ctx) 379 req.ApplyOptions(opts...) 380 return out, req.Send() 381} 382 383type OutputService2TestShapeBlobContainer struct { 384 _ struct{} `type:"structure"` 385 386 // Foo is automatically base64 encoded/decoded by the SDK. 387 Foo []byte `locationName:"foo" type:"blob"` 388} 389 390// SetFoo sets the Foo field's value. 391func (s *OutputService2TestShapeBlobContainer) SetFoo(v []byte) *OutputService2TestShapeBlobContainer { 392 s.Foo = v 393 return s 394} 395 396type OutputService2TestShapeOutputService2TestCaseOperation1Input struct { 397 _ struct{} `type:"structure"` 398} 399 400type OutputService2TestShapeOutputService2TestCaseOperation1Output struct { 401 _ struct{} `type:"structure"` 402 403 // BlobMember is automatically base64 encoded/decoded by the SDK. 404 BlobMember []byte `type:"blob"` 405 406 StructMember *OutputService2TestShapeBlobContainer `type:"structure"` 407} 408 409// SetBlobMember sets the BlobMember field's value. 410func (s *OutputService2TestShapeOutputService2TestCaseOperation1Output) SetBlobMember(v []byte) *OutputService2TestShapeOutputService2TestCaseOperation1Output { 411 s.BlobMember = v 412 return s 413} 414 415// SetStructMember sets the StructMember field's value. 416func (s *OutputService2TestShapeOutputService2TestCaseOperation1Output) SetStructMember(v *OutputService2TestShapeBlobContainer) *OutputService2TestShapeOutputService2TestCaseOperation1Output { 417 s.StructMember = v 418 return s 419} 420 421// OutputService3ProtocolTest provides the API operation methods for making requests to 422// . See this package's package overview docs 423// for details on the service. 424// 425// OutputService3ProtocolTest methods are safe to use concurrently. It is not safe to 426// modify mutate any of the struct's properties though. 427type OutputService3ProtocolTest struct { 428 *client.Client 429} 430 431// New creates a new instance of the OutputService3ProtocolTest client with a session. 432// If additional configuration is needed for the client instance use the optional 433// aws.Config parameter to add your extra config. 434// 435// Example: 436// mySession := session.Must(session.NewSession()) 437// 438// // Create a OutputService3ProtocolTest client from just a session. 439// svc := outputservice3protocoltest.New(mySession) 440// 441// // Create a OutputService3ProtocolTest client with additional configuration 442// svc := outputservice3protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) 443func NewOutputService3ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *OutputService3ProtocolTest { 444 c := p.ClientConfig("outputservice3protocoltest", cfgs...) 445 return newOutputService3ProtocolTestClient(*c.Config, c.Handlers, c.PartitionID, c.Endpoint, c.SigningRegion, c.SigningName) 446} 447 448// newClient creates, initializes and returns a new service client instance. 449func newOutputService3ProtocolTestClient(cfg aws.Config, handlers request.Handlers, partitionID, endpoint, signingRegion, signingName string) *OutputService3ProtocolTest { 450 svc := &OutputService3ProtocolTest{ 451 Client: client.New( 452 cfg, 453 metadata.ClientInfo{ 454 ServiceName: "OutputService3ProtocolTest", 455 ServiceID: "OutputService3ProtocolTest", 456 SigningName: signingName, 457 SigningRegion: signingRegion, 458 PartitionID: partitionID, 459 Endpoint: endpoint, 460 APIVersion: "", 461 }, 462 handlers, 463 ), 464 } 465 466 // Handlers 467 svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) 468 svc.Handlers.Build.PushBackNamed(jsonrpc.BuildHandler) 469 svc.Handlers.Unmarshal.PushBackNamed(jsonrpc.UnmarshalHandler) 470 svc.Handlers.UnmarshalMeta.PushBackNamed(jsonrpc.UnmarshalMetaHandler) 471 svc.Handlers.UnmarshalError.PushBackNamed(jsonrpc.UnmarshalErrorHandler) 472 473 return svc 474} 475 476// newRequest creates a new request for a OutputService3ProtocolTest operation and runs any 477// custom request initialization. 478func (c *OutputService3ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { 479 req := c.NewRequest(op, params, data) 480 481 return req 482} 483 484const opOutputService3TestCaseOperation1 = "OperationName" 485 486// OutputService3TestCaseOperation1Request generates a "aws/request.Request" representing the 487// client's request for the OutputService3TestCaseOperation1 operation. The "output" return 488// value will be populated with the request's response once the request completes 489// successfully. 490// 491// Use "Send" method on the returned Request to send the API call to the service. 492// the "output" return value is not valid until after Send returns without error. 493// 494// See OutputService3TestCaseOperation1 for more information on using the OutputService3TestCaseOperation1 495// API call, and error handling. 496// 497// This method is useful when you want to inject custom logic or configuration 498// into the SDK's request lifecycle. Such as custom headers, or retry logic. 499// 500// 501// // Example sending a request using the OutputService3TestCaseOperation1Request method. 502// req, resp := client.OutputService3TestCaseOperation1Request(params) 503// 504// err := req.Send() 505// if err == nil { // resp is now filled 506// fmt.Println(resp) 507// } 508func (c *OutputService3ProtocolTest) OutputService3TestCaseOperation1Request(input *OutputService3TestShapeOutputService3TestCaseOperation1Input) (req *request.Request, output *OutputService3TestShapeOutputService3TestCaseOperation1Output) { 509 op := &request.Operation{ 510 Name: opOutputService3TestCaseOperation1, 511 HTTPPath: "/", 512 } 513 514 if input == nil { 515 input = &OutputService3TestShapeOutputService3TestCaseOperation1Input{} 516 } 517 518 output = &OutputService3TestShapeOutputService3TestCaseOperation1Output{} 519 req = c.newRequest(op, input, output) 520 return 521} 522 523// OutputService3TestCaseOperation1 API operation for . 524// 525// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 526// with awserr.Error's Code and Message methods to get detailed information about 527// the error. 528// 529// See the AWS API reference guide for 's 530// API operation OutputService3TestCaseOperation1 for usage and error information. 531func (c *OutputService3ProtocolTest) OutputService3TestCaseOperation1(input *OutputService3TestShapeOutputService3TestCaseOperation1Input) (*OutputService3TestShapeOutputService3TestCaseOperation1Output, error) { 532 req, out := c.OutputService3TestCaseOperation1Request(input) 533 return out, req.Send() 534} 535 536// OutputService3TestCaseOperation1WithContext is the same as OutputService3TestCaseOperation1 with the addition of 537// the ability to pass a context and additional request options. 538// 539// See OutputService3TestCaseOperation1 for details on how to use this API operation. 540// 541// The context must be non-nil and will be used for request cancellation. If 542// the context is nil a panic will occur. In the future the SDK may create 543// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 544// for more information on using Contexts. 545func (c *OutputService3ProtocolTest) OutputService3TestCaseOperation1WithContext(ctx aws.Context, input *OutputService3TestShapeOutputService3TestCaseOperation1Input, opts ...request.Option) (*OutputService3TestShapeOutputService3TestCaseOperation1Output, error) { 546 req, out := c.OutputService3TestCaseOperation1Request(input) 547 req.SetContext(ctx) 548 req.ApplyOptions(opts...) 549 return out, req.Send() 550} 551 552type OutputService3TestShapeOutputService3TestCaseOperation1Input struct { 553 _ struct{} `type:"structure"` 554} 555 556type OutputService3TestShapeOutputService3TestCaseOperation1Output struct { 557 _ struct{} `type:"structure"` 558 559 StructMember *OutputService3TestShapeTimeContainer `type:"structure"` 560 561 TimeArg *time.Time `type:"timestamp"` 562 563 TimeCustom *time.Time `type:"timestamp" timestampFormat:"rfc822"` 564 565 TimeFormat *time.Time `type:"timestamp" timestampFormat:"iso8601"` 566} 567 568// SetStructMember sets the StructMember field's value. 569func (s *OutputService3TestShapeOutputService3TestCaseOperation1Output) SetStructMember(v *OutputService3TestShapeTimeContainer) *OutputService3TestShapeOutputService3TestCaseOperation1Output { 570 s.StructMember = v 571 return s 572} 573 574// SetTimeArg sets the TimeArg field's value. 575func (s *OutputService3TestShapeOutputService3TestCaseOperation1Output) SetTimeArg(v time.Time) *OutputService3TestShapeOutputService3TestCaseOperation1Output { 576 s.TimeArg = &v 577 return s 578} 579 580// SetTimeCustom sets the TimeCustom field's value. 581func (s *OutputService3TestShapeOutputService3TestCaseOperation1Output) SetTimeCustom(v time.Time) *OutputService3TestShapeOutputService3TestCaseOperation1Output { 582 s.TimeCustom = &v 583 return s 584} 585 586// SetTimeFormat sets the TimeFormat field's value. 587func (s *OutputService3TestShapeOutputService3TestCaseOperation1Output) SetTimeFormat(v time.Time) *OutputService3TestShapeOutputService3TestCaseOperation1Output { 588 s.TimeFormat = &v 589 return s 590} 591 592type OutputService3TestShapeTimeContainer struct { 593 _ struct{} `type:"structure"` 594 595 Bar *time.Time `locationName:"bar" type:"timestamp" timestampFormat:"iso8601"` 596 597 Foo *time.Time `locationName:"foo" type:"timestamp"` 598} 599 600// SetBar sets the Bar field's value. 601func (s *OutputService3TestShapeTimeContainer) SetBar(v time.Time) *OutputService3TestShapeTimeContainer { 602 s.Bar = &v 603 return s 604} 605 606// SetFoo sets the Foo field's value. 607func (s *OutputService3TestShapeTimeContainer) SetFoo(v time.Time) *OutputService3TestShapeTimeContainer { 608 s.Foo = &v 609 return s 610} 611 612// OutputService4ProtocolTest provides the API operation methods for making requests to 613// . See this package's package overview docs 614// for details on the service. 615// 616// OutputService4ProtocolTest methods are safe to use concurrently. It is not safe to 617// modify mutate any of the struct's properties though. 618type OutputService4ProtocolTest struct { 619 *client.Client 620} 621 622// New creates a new instance of the OutputService4ProtocolTest client with a session. 623// If additional configuration is needed for the client instance use the optional 624// aws.Config parameter to add your extra config. 625// 626// Example: 627// mySession := session.Must(session.NewSession()) 628// 629// // Create a OutputService4ProtocolTest client from just a session. 630// svc := outputservice4protocoltest.New(mySession) 631// 632// // Create a OutputService4ProtocolTest client with additional configuration 633// svc := outputservice4protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) 634func NewOutputService4ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *OutputService4ProtocolTest { 635 c := p.ClientConfig("outputservice4protocoltest", cfgs...) 636 return newOutputService4ProtocolTestClient(*c.Config, c.Handlers, c.PartitionID, c.Endpoint, c.SigningRegion, c.SigningName) 637} 638 639// newClient creates, initializes and returns a new service client instance. 640func newOutputService4ProtocolTestClient(cfg aws.Config, handlers request.Handlers, partitionID, endpoint, signingRegion, signingName string) *OutputService4ProtocolTest { 641 svc := &OutputService4ProtocolTest{ 642 Client: client.New( 643 cfg, 644 metadata.ClientInfo{ 645 ServiceName: "OutputService4ProtocolTest", 646 ServiceID: "OutputService4ProtocolTest", 647 SigningName: signingName, 648 SigningRegion: signingRegion, 649 PartitionID: partitionID, 650 Endpoint: endpoint, 651 APIVersion: "", 652 }, 653 handlers, 654 ), 655 } 656 657 // Handlers 658 svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) 659 svc.Handlers.Build.PushBackNamed(jsonrpc.BuildHandler) 660 svc.Handlers.Unmarshal.PushBackNamed(jsonrpc.UnmarshalHandler) 661 svc.Handlers.UnmarshalMeta.PushBackNamed(jsonrpc.UnmarshalMetaHandler) 662 svc.Handlers.UnmarshalError.PushBackNamed(jsonrpc.UnmarshalErrorHandler) 663 664 return svc 665} 666 667// newRequest creates a new request for a OutputService4ProtocolTest operation and runs any 668// custom request initialization. 669func (c *OutputService4ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { 670 req := c.NewRequest(op, params, data) 671 672 return req 673} 674 675const opOutputService4TestCaseOperation1 = "OperationName" 676 677// OutputService4TestCaseOperation1Request generates a "aws/request.Request" representing the 678// client's request for the OutputService4TestCaseOperation1 operation. The "output" return 679// value will be populated with the request's response once the request completes 680// successfully. 681// 682// Use "Send" method on the returned Request to send the API call to the service. 683// the "output" return value is not valid until after Send returns without error. 684// 685// See OutputService4TestCaseOperation1 for more information on using the OutputService4TestCaseOperation1 686// API call, and error handling. 687// 688// This method is useful when you want to inject custom logic or configuration 689// into the SDK's request lifecycle. Such as custom headers, or retry logic. 690// 691// 692// // Example sending a request using the OutputService4TestCaseOperation1Request method. 693// req, resp := client.OutputService4TestCaseOperation1Request(params) 694// 695// err := req.Send() 696// if err == nil { // resp is now filled 697// fmt.Println(resp) 698// } 699func (c *OutputService4ProtocolTest) OutputService4TestCaseOperation1Request(input *OutputService4TestShapeOutputService4TestCaseOperation1Input) (req *request.Request, output *OutputService4TestShapeOutputService4TestCaseOperation1Output) { 700 op := &request.Operation{ 701 Name: opOutputService4TestCaseOperation1, 702 HTTPPath: "/", 703 } 704 705 if input == nil { 706 input = &OutputService4TestShapeOutputService4TestCaseOperation1Input{} 707 } 708 709 output = &OutputService4TestShapeOutputService4TestCaseOperation1Output{} 710 req = c.newRequest(op, input, output) 711 return 712} 713 714// OutputService4TestCaseOperation1 API operation for . 715// 716// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 717// with awserr.Error's Code and Message methods to get detailed information about 718// the error. 719// 720// See the AWS API reference guide for 's 721// API operation OutputService4TestCaseOperation1 for usage and error information. 722func (c *OutputService4ProtocolTest) OutputService4TestCaseOperation1(input *OutputService4TestShapeOutputService4TestCaseOperation1Input) (*OutputService4TestShapeOutputService4TestCaseOperation1Output, error) { 723 req, out := c.OutputService4TestCaseOperation1Request(input) 724 return out, req.Send() 725} 726 727// OutputService4TestCaseOperation1WithContext is the same as OutputService4TestCaseOperation1 with the addition of 728// the ability to pass a context and additional request options. 729// 730// See OutputService4TestCaseOperation1 for details on how to use this API operation. 731// 732// The context must be non-nil and will be used for request cancellation. If 733// the context is nil a panic will occur. In the future the SDK may create 734// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 735// for more information on using Contexts. 736func (c *OutputService4ProtocolTest) OutputService4TestCaseOperation1WithContext(ctx aws.Context, input *OutputService4TestShapeOutputService4TestCaseOperation1Input, opts ...request.Option) (*OutputService4TestShapeOutputService4TestCaseOperation1Output, error) { 737 req, out := c.OutputService4TestCaseOperation1Request(input) 738 req.SetContext(ctx) 739 req.ApplyOptions(opts...) 740 return out, req.Send() 741} 742 743const opOutputService4TestCaseOperation2 = "OperationName" 744 745// OutputService4TestCaseOperation2Request generates a "aws/request.Request" representing the 746// client's request for the OutputService4TestCaseOperation2 operation. The "output" return 747// value will be populated with the request's response once the request completes 748// successfully. 749// 750// Use "Send" method on the returned Request to send the API call to the service. 751// the "output" return value is not valid until after Send returns without error. 752// 753// See OutputService4TestCaseOperation2 for more information on using the OutputService4TestCaseOperation2 754// API call, and error handling. 755// 756// This method is useful when you want to inject custom logic or configuration 757// into the SDK's request lifecycle. Such as custom headers, or retry logic. 758// 759// 760// // Example sending a request using the OutputService4TestCaseOperation2Request method. 761// req, resp := client.OutputService4TestCaseOperation2Request(params) 762// 763// err := req.Send() 764// if err == nil { // resp is now filled 765// fmt.Println(resp) 766// } 767func (c *OutputService4ProtocolTest) OutputService4TestCaseOperation2Request(input *OutputService4TestShapeOutputService4TestCaseOperation2Input) (req *request.Request, output *OutputService4TestShapeOutputService4TestCaseOperation2Output) { 768 op := &request.Operation{ 769 Name: opOutputService4TestCaseOperation2, 770 HTTPPath: "/", 771 } 772 773 if input == nil { 774 input = &OutputService4TestShapeOutputService4TestCaseOperation2Input{} 775 } 776 777 output = &OutputService4TestShapeOutputService4TestCaseOperation2Output{} 778 req = c.newRequest(op, input, output) 779 return 780} 781 782// OutputService4TestCaseOperation2 API operation for . 783// 784// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 785// with awserr.Error's Code and Message methods to get detailed information about 786// the error. 787// 788// See the AWS API reference guide for 's 789// API operation OutputService4TestCaseOperation2 for usage and error information. 790func (c *OutputService4ProtocolTest) OutputService4TestCaseOperation2(input *OutputService4TestShapeOutputService4TestCaseOperation2Input) (*OutputService4TestShapeOutputService4TestCaseOperation2Output, error) { 791 req, out := c.OutputService4TestCaseOperation2Request(input) 792 return out, req.Send() 793} 794 795// OutputService4TestCaseOperation2WithContext is the same as OutputService4TestCaseOperation2 with the addition of 796// the ability to pass a context and additional request options. 797// 798// See OutputService4TestCaseOperation2 for details on how to use this API operation. 799// 800// The context must be non-nil and will be used for request cancellation. If 801// the context is nil a panic will occur. In the future the SDK may create 802// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 803// for more information on using Contexts. 804func (c *OutputService4ProtocolTest) OutputService4TestCaseOperation2WithContext(ctx aws.Context, input *OutputService4TestShapeOutputService4TestCaseOperation2Input, opts ...request.Option) (*OutputService4TestShapeOutputService4TestCaseOperation2Output, error) { 805 req, out := c.OutputService4TestCaseOperation2Request(input) 806 req.SetContext(ctx) 807 req.ApplyOptions(opts...) 808 return out, req.Send() 809} 810 811type OutputService4TestShapeOutputService4TestCaseOperation1Input struct { 812 _ struct{} `type:"structure"` 813} 814 815type OutputService4TestShapeOutputService4TestCaseOperation1Output struct { 816 _ struct{} `type:"structure"` 817 818 ListMember []*string `type:"list"` 819 820 ListMemberMap []map[string]*string `type:"list"` 821 822 ListMemberStruct []*OutputService4TestShapeStructType `type:"list"` 823} 824 825// SetListMember sets the ListMember field's value. 826func (s *OutputService4TestShapeOutputService4TestCaseOperation1Output) SetListMember(v []*string) *OutputService4TestShapeOutputService4TestCaseOperation1Output { 827 s.ListMember = v 828 return s 829} 830 831// SetListMemberMap sets the ListMemberMap field's value. 832func (s *OutputService4TestShapeOutputService4TestCaseOperation1Output) SetListMemberMap(v []map[string]*string) *OutputService4TestShapeOutputService4TestCaseOperation1Output { 833 s.ListMemberMap = v 834 return s 835} 836 837// SetListMemberStruct sets the ListMemberStruct field's value. 838func (s *OutputService4TestShapeOutputService4TestCaseOperation1Output) SetListMemberStruct(v []*OutputService4TestShapeStructType) *OutputService4TestShapeOutputService4TestCaseOperation1Output { 839 s.ListMemberStruct = v 840 return s 841} 842 843type OutputService4TestShapeOutputService4TestCaseOperation2Input struct { 844 _ struct{} `type:"structure"` 845} 846 847type OutputService4TestShapeOutputService4TestCaseOperation2Output struct { 848 _ struct{} `type:"structure"` 849 850 ListMember []*string `type:"list"` 851 852 ListMemberMap []map[string]*string `type:"list"` 853 854 ListMemberStruct []*OutputService4TestShapeStructType `type:"list"` 855} 856 857// SetListMember sets the ListMember field's value. 858func (s *OutputService4TestShapeOutputService4TestCaseOperation2Output) SetListMember(v []*string) *OutputService4TestShapeOutputService4TestCaseOperation2Output { 859 s.ListMember = v 860 return s 861} 862 863// SetListMemberMap sets the ListMemberMap field's value. 864func (s *OutputService4TestShapeOutputService4TestCaseOperation2Output) SetListMemberMap(v []map[string]*string) *OutputService4TestShapeOutputService4TestCaseOperation2Output { 865 s.ListMemberMap = v 866 return s 867} 868 869// SetListMemberStruct sets the ListMemberStruct field's value. 870func (s *OutputService4TestShapeOutputService4TestCaseOperation2Output) SetListMemberStruct(v []*OutputService4TestShapeStructType) *OutputService4TestShapeOutputService4TestCaseOperation2Output { 871 s.ListMemberStruct = v 872 return s 873} 874 875type OutputService4TestShapeStructType struct { 876 _ struct{} `type:"structure"` 877} 878 879// OutputService5ProtocolTest provides the API operation methods for making requests to 880// . See this package's package overview docs 881// for details on the service. 882// 883// OutputService5ProtocolTest methods are safe to use concurrently. It is not safe to 884// modify mutate any of the struct's properties though. 885type OutputService5ProtocolTest struct { 886 *client.Client 887} 888 889// New creates a new instance of the OutputService5ProtocolTest client with a session. 890// If additional configuration is needed for the client instance use the optional 891// aws.Config parameter to add your extra config. 892// 893// Example: 894// mySession := session.Must(session.NewSession()) 895// 896// // Create a OutputService5ProtocolTest client from just a session. 897// svc := outputservice5protocoltest.New(mySession) 898// 899// // Create a OutputService5ProtocolTest client with additional configuration 900// svc := outputservice5protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) 901func NewOutputService5ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *OutputService5ProtocolTest { 902 c := p.ClientConfig("outputservice5protocoltest", cfgs...) 903 return newOutputService5ProtocolTestClient(*c.Config, c.Handlers, c.PartitionID, c.Endpoint, c.SigningRegion, c.SigningName) 904} 905 906// newClient creates, initializes and returns a new service client instance. 907func newOutputService5ProtocolTestClient(cfg aws.Config, handlers request.Handlers, partitionID, endpoint, signingRegion, signingName string) *OutputService5ProtocolTest { 908 svc := &OutputService5ProtocolTest{ 909 Client: client.New( 910 cfg, 911 metadata.ClientInfo{ 912 ServiceName: "OutputService5ProtocolTest", 913 ServiceID: "OutputService5ProtocolTest", 914 SigningName: signingName, 915 SigningRegion: signingRegion, 916 PartitionID: partitionID, 917 Endpoint: endpoint, 918 APIVersion: "", 919 }, 920 handlers, 921 ), 922 } 923 924 // Handlers 925 svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) 926 svc.Handlers.Build.PushBackNamed(jsonrpc.BuildHandler) 927 svc.Handlers.Unmarshal.PushBackNamed(jsonrpc.UnmarshalHandler) 928 svc.Handlers.UnmarshalMeta.PushBackNamed(jsonrpc.UnmarshalMetaHandler) 929 svc.Handlers.UnmarshalError.PushBackNamed(jsonrpc.UnmarshalErrorHandler) 930 931 return svc 932} 933 934// newRequest creates a new request for a OutputService5ProtocolTest operation and runs any 935// custom request initialization. 936func (c *OutputService5ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { 937 req := c.NewRequest(op, params, data) 938 939 return req 940} 941 942const opOutputService5TestCaseOperation1 = "OperationName" 943 944// OutputService5TestCaseOperation1Request generates a "aws/request.Request" representing the 945// client's request for the OutputService5TestCaseOperation1 operation. The "output" return 946// value will be populated with the request's response once the request completes 947// successfully. 948// 949// Use "Send" method on the returned Request to send the API call to the service. 950// the "output" return value is not valid until after Send returns without error. 951// 952// See OutputService5TestCaseOperation1 for more information on using the OutputService5TestCaseOperation1 953// API call, and error handling. 954// 955// This method is useful when you want to inject custom logic or configuration 956// into the SDK's request lifecycle. Such as custom headers, or retry logic. 957// 958// 959// // Example sending a request using the OutputService5TestCaseOperation1Request method. 960// req, resp := client.OutputService5TestCaseOperation1Request(params) 961// 962// err := req.Send() 963// if err == nil { // resp is now filled 964// fmt.Println(resp) 965// } 966func (c *OutputService5ProtocolTest) OutputService5TestCaseOperation1Request(input *OutputService5TestShapeOutputService5TestCaseOperation1Input) (req *request.Request, output *OutputService5TestShapeOutputService5TestCaseOperation1Output) { 967 op := &request.Operation{ 968 Name: opOutputService5TestCaseOperation1, 969 HTTPPath: "/", 970 } 971 972 if input == nil { 973 input = &OutputService5TestShapeOutputService5TestCaseOperation1Input{} 974 } 975 976 output = &OutputService5TestShapeOutputService5TestCaseOperation1Output{} 977 req = c.newRequest(op, input, output) 978 return 979} 980 981// OutputService5TestCaseOperation1 API operation for . 982// 983// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 984// with awserr.Error's Code and Message methods to get detailed information about 985// the error. 986// 987// See the AWS API reference guide for 's 988// API operation OutputService5TestCaseOperation1 for usage and error information. 989func (c *OutputService5ProtocolTest) OutputService5TestCaseOperation1(input *OutputService5TestShapeOutputService5TestCaseOperation1Input) (*OutputService5TestShapeOutputService5TestCaseOperation1Output, error) { 990 req, out := c.OutputService5TestCaseOperation1Request(input) 991 return out, req.Send() 992} 993 994// OutputService5TestCaseOperation1WithContext is the same as OutputService5TestCaseOperation1 with the addition of 995// the ability to pass a context and additional request options. 996// 997// See OutputService5TestCaseOperation1 for details on how to use this API operation. 998// 999// The context must be non-nil and will be used for request cancellation. If 1000// the context is nil a panic will occur. In the future the SDK may create 1001// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1002// for more information on using Contexts. 1003func (c *OutputService5ProtocolTest) OutputService5TestCaseOperation1WithContext(ctx aws.Context, input *OutputService5TestShapeOutputService5TestCaseOperation1Input, opts ...request.Option) (*OutputService5TestShapeOutputService5TestCaseOperation1Output, error) { 1004 req, out := c.OutputService5TestCaseOperation1Request(input) 1005 req.SetContext(ctx) 1006 req.ApplyOptions(opts...) 1007 return out, req.Send() 1008} 1009 1010type OutputService5TestShapeOutputService5TestCaseOperation1Input struct { 1011 _ struct{} `type:"structure"` 1012} 1013 1014type OutputService5TestShapeOutputService5TestCaseOperation1Output struct { 1015 _ struct{} `type:"structure"` 1016 1017 MapMember map[string][]*int64 `type:"map"` 1018} 1019 1020// SetMapMember sets the MapMember field's value. 1021func (s *OutputService5TestShapeOutputService5TestCaseOperation1Output) SetMapMember(v map[string][]*int64) *OutputService5TestShapeOutputService5TestCaseOperation1Output { 1022 s.MapMember = v 1023 return s 1024} 1025 1026// OutputService6ProtocolTest provides the API operation methods for making requests to 1027// . See this package's package overview docs 1028// for details on the service. 1029// 1030// OutputService6ProtocolTest methods are safe to use concurrently. It is not safe to 1031// modify mutate any of the struct's properties though. 1032type OutputService6ProtocolTest struct { 1033 *client.Client 1034} 1035 1036// New creates a new instance of the OutputService6ProtocolTest client with a session. 1037// If additional configuration is needed for the client instance use the optional 1038// aws.Config parameter to add your extra config. 1039// 1040// Example: 1041// mySession := session.Must(session.NewSession()) 1042// 1043// // Create a OutputService6ProtocolTest client from just a session. 1044// svc := outputservice6protocoltest.New(mySession) 1045// 1046// // Create a OutputService6ProtocolTest client with additional configuration 1047// svc := outputservice6protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) 1048func NewOutputService6ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *OutputService6ProtocolTest { 1049 c := p.ClientConfig("outputservice6protocoltest", cfgs...) 1050 return newOutputService6ProtocolTestClient(*c.Config, c.Handlers, c.PartitionID, c.Endpoint, c.SigningRegion, c.SigningName) 1051} 1052 1053// newClient creates, initializes and returns a new service client instance. 1054func newOutputService6ProtocolTestClient(cfg aws.Config, handlers request.Handlers, partitionID, endpoint, signingRegion, signingName string) *OutputService6ProtocolTest { 1055 svc := &OutputService6ProtocolTest{ 1056 Client: client.New( 1057 cfg, 1058 metadata.ClientInfo{ 1059 ServiceName: "OutputService6ProtocolTest", 1060 ServiceID: "OutputService6ProtocolTest", 1061 SigningName: signingName, 1062 SigningRegion: signingRegion, 1063 PartitionID: partitionID, 1064 Endpoint: endpoint, 1065 APIVersion: "", 1066 }, 1067 handlers, 1068 ), 1069 } 1070 1071 // Handlers 1072 svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) 1073 svc.Handlers.Build.PushBackNamed(jsonrpc.BuildHandler) 1074 svc.Handlers.Unmarshal.PushBackNamed(jsonrpc.UnmarshalHandler) 1075 svc.Handlers.UnmarshalMeta.PushBackNamed(jsonrpc.UnmarshalMetaHandler) 1076 svc.Handlers.UnmarshalError.PushBackNamed(jsonrpc.UnmarshalErrorHandler) 1077 1078 return svc 1079} 1080 1081// newRequest creates a new request for a OutputService6ProtocolTest operation and runs any 1082// custom request initialization. 1083func (c *OutputService6ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { 1084 req := c.NewRequest(op, params, data) 1085 1086 return req 1087} 1088 1089const opOutputService6TestCaseOperation1 = "OperationName" 1090 1091// OutputService6TestCaseOperation1Request generates a "aws/request.Request" representing the 1092// client's request for the OutputService6TestCaseOperation1 operation. The "output" return 1093// value will be populated with the request's response once the request completes 1094// successfully. 1095// 1096// Use "Send" method on the returned Request to send the API call to the service. 1097// the "output" return value is not valid until after Send returns without error. 1098// 1099// See OutputService6TestCaseOperation1 for more information on using the OutputService6TestCaseOperation1 1100// API call, and error handling. 1101// 1102// This method is useful when you want to inject custom logic or configuration 1103// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1104// 1105// 1106// // Example sending a request using the OutputService6TestCaseOperation1Request method. 1107// req, resp := client.OutputService6TestCaseOperation1Request(params) 1108// 1109// err := req.Send() 1110// if err == nil { // resp is now filled 1111// fmt.Println(resp) 1112// } 1113func (c *OutputService6ProtocolTest) OutputService6TestCaseOperation1Request(input *OutputService6TestShapeOutputService6TestCaseOperation1Input) (req *request.Request, output *OutputService6TestShapeOutputService6TestCaseOperation1Output) { 1114 op := &request.Operation{ 1115 Name: opOutputService6TestCaseOperation1, 1116 HTTPPath: "/", 1117 } 1118 1119 if input == nil { 1120 input = &OutputService6TestShapeOutputService6TestCaseOperation1Input{} 1121 } 1122 1123 output = &OutputService6TestShapeOutputService6TestCaseOperation1Output{} 1124 req = c.newRequest(op, input, output) 1125 return 1126} 1127 1128// OutputService6TestCaseOperation1 API operation for . 1129// 1130// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1131// with awserr.Error's Code and Message methods to get detailed information about 1132// the error. 1133// 1134// See the AWS API reference guide for 's 1135// API operation OutputService6TestCaseOperation1 for usage and error information. 1136func (c *OutputService6ProtocolTest) OutputService6TestCaseOperation1(input *OutputService6TestShapeOutputService6TestCaseOperation1Input) (*OutputService6TestShapeOutputService6TestCaseOperation1Output, error) { 1137 req, out := c.OutputService6TestCaseOperation1Request(input) 1138 return out, req.Send() 1139} 1140 1141// OutputService6TestCaseOperation1WithContext is the same as OutputService6TestCaseOperation1 with the addition of 1142// the ability to pass a context and additional request options. 1143// 1144// See OutputService6TestCaseOperation1 for details on how to use this API operation. 1145// 1146// The context must be non-nil and will be used for request cancellation. If 1147// the context is nil a panic will occur. In the future the SDK may create 1148// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1149// for more information on using Contexts. 1150func (c *OutputService6ProtocolTest) OutputService6TestCaseOperation1WithContext(ctx aws.Context, input *OutputService6TestShapeOutputService6TestCaseOperation1Input, opts ...request.Option) (*OutputService6TestShapeOutputService6TestCaseOperation1Output, error) { 1151 req, out := c.OutputService6TestCaseOperation1Request(input) 1152 req.SetContext(ctx) 1153 req.ApplyOptions(opts...) 1154 return out, req.Send() 1155} 1156 1157type OutputService6TestShapeOutputService6TestCaseOperation1Input struct { 1158 _ struct{} `type:"structure"` 1159} 1160 1161type OutputService6TestShapeOutputService6TestCaseOperation1Output struct { 1162 _ struct{} `type:"structure"` 1163 1164 StrType *string `type:"string"` 1165} 1166 1167// SetStrType sets the StrType field's value. 1168func (s *OutputService6TestShapeOutputService6TestCaseOperation1Output) SetStrType(v string) *OutputService6TestShapeOutputService6TestCaseOperation1Output { 1169 s.StrType = &v 1170 return s 1171} 1172 1173// OutputService7ProtocolTest provides the API operation methods for making requests to 1174// . See this package's package overview docs 1175// for details on the service. 1176// 1177// OutputService7ProtocolTest methods are safe to use concurrently. It is not safe to 1178// modify mutate any of the struct's properties though. 1179type OutputService7ProtocolTest struct { 1180 *client.Client 1181} 1182 1183// New creates a new instance of the OutputService7ProtocolTest client with a session. 1184// If additional configuration is needed for the client instance use the optional 1185// aws.Config parameter to add your extra config. 1186// 1187// Example: 1188// mySession := session.Must(session.NewSession()) 1189// 1190// // Create a OutputService7ProtocolTest client from just a session. 1191// svc := outputservice7protocoltest.New(mySession) 1192// 1193// // Create a OutputService7ProtocolTest client with additional configuration 1194// svc := outputservice7protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) 1195func NewOutputService7ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *OutputService7ProtocolTest { 1196 c := p.ClientConfig("outputservice7protocoltest", cfgs...) 1197 return newOutputService7ProtocolTestClient(*c.Config, c.Handlers, c.PartitionID, c.Endpoint, c.SigningRegion, c.SigningName) 1198} 1199 1200// newClient creates, initializes and returns a new service client instance. 1201func newOutputService7ProtocolTestClient(cfg aws.Config, handlers request.Handlers, partitionID, endpoint, signingRegion, signingName string) *OutputService7ProtocolTest { 1202 svc := &OutputService7ProtocolTest{ 1203 Client: client.New( 1204 cfg, 1205 metadata.ClientInfo{ 1206 ServiceName: "OutputService7ProtocolTest", 1207 ServiceID: "OutputService7ProtocolTest", 1208 SigningName: signingName, 1209 SigningRegion: signingRegion, 1210 PartitionID: partitionID, 1211 Endpoint: endpoint, 1212 APIVersion: "", 1213 }, 1214 handlers, 1215 ), 1216 } 1217 1218 // Handlers 1219 svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) 1220 svc.Handlers.Build.PushBackNamed(jsonrpc.BuildHandler) 1221 svc.Handlers.Unmarshal.PushBackNamed(jsonrpc.UnmarshalHandler) 1222 svc.Handlers.UnmarshalMeta.PushBackNamed(jsonrpc.UnmarshalMetaHandler) 1223 svc.Handlers.UnmarshalError.PushBackNamed(jsonrpc.UnmarshalErrorHandler) 1224 1225 return svc 1226} 1227 1228// newRequest creates a new request for a OutputService7ProtocolTest operation and runs any 1229// custom request initialization. 1230func (c *OutputService7ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { 1231 req := c.NewRequest(op, params, data) 1232 1233 return req 1234} 1235 1236const opOutputService7TestCaseOperation1 = "OperationName" 1237 1238// OutputService7TestCaseOperation1Request generates a "aws/request.Request" representing the 1239// client's request for the OutputService7TestCaseOperation1 operation. The "output" return 1240// value will be populated with the request's response once the request completes 1241// successfully. 1242// 1243// Use "Send" method on the returned Request to send the API call to the service. 1244// the "output" return value is not valid until after Send returns without error. 1245// 1246// See OutputService7TestCaseOperation1 for more information on using the OutputService7TestCaseOperation1 1247// API call, and error handling. 1248// 1249// This method is useful when you want to inject custom logic or configuration 1250// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1251// 1252// 1253// // Example sending a request using the OutputService7TestCaseOperation1Request method. 1254// req, resp := client.OutputService7TestCaseOperation1Request(params) 1255// 1256// err := req.Send() 1257// if err == nil { // resp is now filled 1258// fmt.Println(resp) 1259// } 1260func (c *OutputService7ProtocolTest) OutputService7TestCaseOperation1Request(input *OutputService7TestShapeOutputService7TestCaseOperation1Input) (req *request.Request, output *OutputService7TestShapeOutputService7TestCaseOperation1Output) { 1261 op := &request.Operation{ 1262 Name: opOutputService7TestCaseOperation1, 1263 HTTPPath: "/", 1264 } 1265 1266 if input == nil { 1267 input = &OutputService7TestShapeOutputService7TestCaseOperation1Input{} 1268 } 1269 1270 output = &OutputService7TestShapeOutputService7TestCaseOperation1Output{} 1271 req = c.newRequest(op, input, output) 1272 return 1273} 1274 1275// OutputService7TestCaseOperation1 API operation for . 1276// 1277// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1278// with awserr.Error's Code and Message methods to get detailed information about 1279// the error. 1280// 1281// See the AWS API reference guide for 's 1282// API operation OutputService7TestCaseOperation1 for usage and error information. 1283func (c *OutputService7ProtocolTest) OutputService7TestCaseOperation1(input *OutputService7TestShapeOutputService7TestCaseOperation1Input) (*OutputService7TestShapeOutputService7TestCaseOperation1Output, error) { 1284 req, out := c.OutputService7TestCaseOperation1Request(input) 1285 return out, req.Send() 1286} 1287 1288// OutputService7TestCaseOperation1WithContext is the same as OutputService7TestCaseOperation1 with the addition of 1289// the ability to pass a context and additional request options. 1290// 1291// See OutputService7TestCaseOperation1 for details on how to use this API operation. 1292// 1293// The context must be non-nil and will be used for request cancellation. If 1294// the context is nil a panic will occur. In the future the SDK may create 1295// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1296// for more information on using Contexts. 1297func (c *OutputService7ProtocolTest) OutputService7TestCaseOperation1WithContext(ctx aws.Context, input *OutputService7TestShapeOutputService7TestCaseOperation1Input, opts ...request.Option) (*OutputService7TestShapeOutputService7TestCaseOperation1Output, error) { 1298 req, out := c.OutputService7TestCaseOperation1Request(input) 1299 req.SetContext(ctx) 1300 req.ApplyOptions(opts...) 1301 return out, req.Send() 1302} 1303 1304type OutputService7TestShapeOutputService7TestCaseOperation1Input struct { 1305 _ struct{} `type:"structure"` 1306} 1307 1308type OutputService7TestShapeOutputService7TestCaseOperation1Output struct { 1309 _ struct{} `type:"structure"` 1310 1311 FooEnum *string `type:"string" enum:"OutputService7TestShapeJSONEnumType"` 1312 1313 ListEnums []*string `type:"list"` 1314} 1315 1316// SetFooEnum sets the FooEnum field's value. 1317func (s *OutputService7TestShapeOutputService7TestCaseOperation1Output) SetFooEnum(v string) *OutputService7TestShapeOutputService7TestCaseOperation1Output { 1318 s.FooEnum = &v 1319 return s 1320} 1321 1322// SetListEnums sets the ListEnums field's value. 1323func (s *OutputService7TestShapeOutputService7TestCaseOperation1Output) SetListEnums(v []*string) *OutputService7TestShapeOutputService7TestCaseOperation1Output { 1324 s.ListEnums = v 1325 return s 1326} 1327 1328const ( 1329 // JSONEnumTypeFoo is a OutputService7TestShapeJSONEnumType enum value 1330 JSONEnumTypeFoo = "foo" 1331 1332 // JSONEnumTypeBar is a OutputService7TestShapeJSONEnumType enum value 1333 JSONEnumTypeBar = "bar" 1334) 1335 1336// OutputService8ProtocolTest provides the API operation methods for making requests to 1337// . See this package's package overview docs 1338// for details on the service. 1339// 1340// OutputService8ProtocolTest methods are safe to use concurrently. It is not safe to 1341// modify mutate any of the struct's properties though. 1342type OutputService8ProtocolTest struct { 1343 *client.Client 1344} 1345 1346// New creates a new instance of the OutputService8ProtocolTest client with a session. 1347// If additional configuration is needed for the client instance use the optional 1348// aws.Config parameter to add your extra config. 1349// 1350// Example: 1351// mySession := session.Must(session.NewSession()) 1352// 1353// // Create a OutputService8ProtocolTest client from just a session. 1354// svc := outputservice8protocoltest.New(mySession) 1355// 1356// // Create a OutputService8ProtocolTest client with additional configuration 1357// svc := outputservice8protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) 1358func NewOutputService8ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *OutputService8ProtocolTest { 1359 c := p.ClientConfig("outputservice8protocoltest", cfgs...) 1360 return newOutputService8ProtocolTestClient(*c.Config, c.Handlers, c.PartitionID, c.Endpoint, c.SigningRegion, c.SigningName) 1361} 1362 1363// newClient creates, initializes and returns a new service client instance. 1364func newOutputService8ProtocolTestClient(cfg aws.Config, handlers request.Handlers, partitionID, endpoint, signingRegion, signingName string) *OutputService8ProtocolTest { 1365 svc := &OutputService8ProtocolTest{ 1366 Client: client.New( 1367 cfg, 1368 metadata.ClientInfo{ 1369 ServiceName: "OutputService8ProtocolTest", 1370 ServiceID: "OutputService8ProtocolTest", 1371 SigningName: signingName, 1372 SigningRegion: signingRegion, 1373 PartitionID: partitionID, 1374 Endpoint: endpoint, 1375 APIVersion: "", 1376 }, 1377 handlers, 1378 ), 1379 } 1380 1381 // Handlers 1382 svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) 1383 svc.Handlers.Build.PushBackNamed(jsonrpc.BuildHandler) 1384 svc.Handlers.Unmarshal.PushBackNamed(jsonrpc.UnmarshalHandler) 1385 svc.Handlers.UnmarshalMeta.PushBackNamed(jsonrpc.UnmarshalMetaHandler) 1386 svc.Handlers.UnmarshalError.PushBackNamed(jsonrpc.UnmarshalErrorHandler) 1387 1388 return svc 1389} 1390 1391// newRequest creates a new request for a OutputService8ProtocolTest operation and runs any 1392// custom request initialization. 1393func (c *OutputService8ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { 1394 req := c.NewRequest(op, params, data) 1395 1396 return req 1397} 1398 1399const opOutputService8TestCaseOperation1 = "OperationName" 1400 1401// OutputService8TestCaseOperation1Request generates a "aws/request.Request" representing the 1402// client's request for the OutputService8TestCaseOperation1 operation. The "output" return 1403// value will be populated with the request's response once the request completes 1404// successfully. 1405// 1406// Use "Send" method on the returned Request to send the API call to the service. 1407// the "output" return value is not valid until after Send returns without error. 1408// 1409// See OutputService8TestCaseOperation1 for more information on using the OutputService8TestCaseOperation1 1410// API call, and error handling. 1411// 1412// This method is useful when you want to inject custom logic or configuration 1413// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1414// 1415// 1416// // Example sending a request using the OutputService8TestCaseOperation1Request method. 1417// req, resp := client.OutputService8TestCaseOperation1Request(params) 1418// 1419// err := req.Send() 1420// if err == nil { // resp is now filled 1421// fmt.Println(resp) 1422// } 1423func (c *OutputService8ProtocolTest) OutputService8TestCaseOperation1Request(input *OutputService8TestShapeOutputService8TestCaseOperation1Input) (req *request.Request, output *OutputService8TestShapeOutputService8TestCaseOperation1Output) { 1424 op := &request.Operation{ 1425 Name: opOutputService8TestCaseOperation1, 1426 HTTPPath: "/", 1427 } 1428 1429 if input == nil { 1430 input = &OutputService8TestShapeOutputService8TestCaseOperation1Input{} 1431 } 1432 1433 output = &OutputService8TestShapeOutputService8TestCaseOperation1Output{} 1434 req = c.newRequest(op, input, output) 1435 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 1436 return 1437} 1438 1439// OutputService8TestCaseOperation1 API operation for . 1440// 1441// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1442// with awserr.Error's Code and Message methods to get detailed information about 1443// the error. 1444// 1445// See the AWS API reference guide for 's 1446// API operation OutputService8TestCaseOperation1 for usage and error information. 1447func (c *OutputService8ProtocolTest) OutputService8TestCaseOperation1(input *OutputService8TestShapeOutputService8TestCaseOperation1Input) (*OutputService8TestShapeOutputService8TestCaseOperation1Output, error) { 1448 req, out := c.OutputService8TestCaseOperation1Request(input) 1449 return out, req.Send() 1450} 1451 1452// OutputService8TestCaseOperation1WithContext is the same as OutputService8TestCaseOperation1 with the addition of 1453// the ability to pass a context and additional request options. 1454// 1455// See OutputService8TestCaseOperation1 for details on how to use this API operation. 1456// 1457// The context must be non-nil and will be used for request cancellation. If 1458// the context is nil a panic will occur. In the future the SDK may create 1459// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1460// for more information on using Contexts. 1461func (c *OutputService8ProtocolTest) OutputService8TestCaseOperation1WithContext(ctx aws.Context, input *OutputService8TestShapeOutputService8TestCaseOperation1Input, opts ...request.Option) (*OutputService8TestShapeOutputService8TestCaseOperation1Output, error) { 1462 req, out := c.OutputService8TestCaseOperation1Request(input) 1463 req.SetContext(ctx) 1464 req.ApplyOptions(opts...) 1465 return out, req.Send() 1466} 1467 1468const opOutputService8TestCaseOperation2 = "OperationName" 1469 1470// OutputService8TestCaseOperation2Request generates a "aws/request.Request" representing the 1471// client's request for the OutputService8TestCaseOperation2 operation. The "output" return 1472// value will be populated with the request's response once the request completes 1473// successfully. 1474// 1475// Use "Send" method on the returned Request to send the API call to the service. 1476// the "output" return value is not valid until after Send returns without error. 1477// 1478// See OutputService8TestCaseOperation2 for more information on using the OutputService8TestCaseOperation2 1479// API call, and error handling. 1480// 1481// This method is useful when you want to inject custom logic or configuration 1482// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1483// 1484// 1485// // Example sending a request using the OutputService8TestCaseOperation2Request method. 1486// req, resp := client.OutputService8TestCaseOperation2Request(params) 1487// 1488// err := req.Send() 1489// if err == nil { // resp is now filled 1490// fmt.Println(resp) 1491// } 1492func (c *OutputService8ProtocolTest) OutputService8TestCaseOperation2Request(input *OutputService8TestShapeOutputService8TestCaseOperation2Input) (req *request.Request, output *OutputService8TestShapeOutputService8TestCaseOperation2Output) { 1493 op := &request.Operation{ 1494 Name: opOutputService8TestCaseOperation2, 1495 HTTPPath: "/", 1496 } 1497 1498 if input == nil { 1499 input = &OutputService8TestShapeOutputService8TestCaseOperation2Input{} 1500 } 1501 1502 output = &OutputService8TestShapeOutputService8TestCaseOperation2Output{} 1503 req = c.newRequest(op, input, output) 1504 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 1505 return 1506} 1507 1508// OutputService8TestCaseOperation2 API operation for . 1509// 1510// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1511// with awserr.Error's Code and Message methods to get detailed information about 1512// the error. 1513// 1514// See the AWS API reference guide for 's 1515// API operation OutputService8TestCaseOperation2 for usage and error information. 1516func (c *OutputService8ProtocolTest) OutputService8TestCaseOperation2(input *OutputService8TestShapeOutputService8TestCaseOperation2Input) (*OutputService8TestShapeOutputService8TestCaseOperation2Output, error) { 1517 req, out := c.OutputService8TestCaseOperation2Request(input) 1518 return out, req.Send() 1519} 1520 1521// OutputService8TestCaseOperation2WithContext is the same as OutputService8TestCaseOperation2 with the addition of 1522// the ability to pass a context and additional request options. 1523// 1524// See OutputService8TestCaseOperation2 for details on how to use this API operation. 1525// 1526// The context must be non-nil and will be used for request cancellation. If 1527// the context is nil a panic will occur. In the future the SDK may create 1528// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1529// for more information on using Contexts. 1530func (c *OutputService8ProtocolTest) OutputService8TestCaseOperation2WithContext(ctx aws.Context, input *OutputService8TestShapeOutputService8TestCaseOperation2Input, opts ...request.Option) (*OutputService8TestShapeOutputService8TestCaseOperation2Output, error) { 1531 req, out := c.OutputService8TestCaseOperation2Request(input) 1532 req.SetContext(ctx) 1533 req.ApplyOptions(opts...) 1534 return out, req.Send() 1535} 1536 1537const opOutputService8TestCaseOperation3 = "OperationName" 1538 1539// OutputService8TestCaseOperation3Request generates a "aws/request.Request" representing the 1540// client's request for the OutputService8TestCaseOperation3 operation. The "output" return 1541// value will be populated with the request's response once the request completes 1542// successfully. 1543// 1544// Use "Send" method on the returned Request to send the API call to the service. 1545// the "output" return value is not valid until after Send returns without error. 1546// 1547// See OutputService8TestCaseOperation3 for more information on using the OutputService8TestCaseOperation3 1548// API call, and error handling. 1549// 1550// This method is useful when you want to inject custom logic or configuration 1551// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1552// 1553// 1554// // Example sending a request using the OutputService8TestCaseOperation3Request method. 1555// req, resp := client.OutputService8TestCaseOperation3Request(params) 1556// 1557// err := req.Send() 1558// if err == nil { // resp is now filled 1559// fmt.Println(resp) 1560// } 1561func (c *OutputService8ProtocolTest) OutputService8TestCaseOperation3Request(input *OutputService8TestShapeOutputService8TestCaseOperation3Input) (req *request.Request, output *OutputService8TestShapeOutputService8TestCaseOperation3Output) { 1562 op := &request.Operation{ 1563 Name: opOutputService8TestCaseOperation3, 1564 HTTPPath: "/", 1565 } 1566 1567 if input == nil { 1568 input = &OutputService8TestShapeOutputService8TestCaseOperation3Input{} 1569 } 1570 1571 output = &OutputService8TestShapeOutputService8TestCaseOperation3Output{} 1572 req = c.newRequest(op, input, output) 1573 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 1574 return 1575} 1576 1577// OutputService8TestCaseOperation3 API operation for . 1578// 1579// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1580// with awserr.Error's Code and Message methods to get detailed information about 1581// the error. 1582// 1583// See the AWS API reference guide for 's 1584// API operation OutputService8TestCaseOperation3 for usage and error information. 1585func (c *OutputService8ProtocolTest) OutputService8TestCaseOperation3(input *OutputService8TestShapeOutputService8TestCaseOperation3Input) (*OutputService8TestShapeOutputService8TestCaseOperation3Output, error) { 1586 req, out := c.OutputService8TestCaseOperation3Request(input) 1587 return out, req.Send() 1588} 1589 1590// OutputService8TestCaseOperation3WithContext is the same as OutputService8TestCaseOperation3 with the addition of 1591// the ability to pass a context and additional request options. 1592// 1593// See OutputService8TestCaseOperation3 for details on how to use this API operation. 1594// 1595// The context must be non-nil and will be used for request cancellation. If 1596// the context is nil a panic will occur. In the future the SDK may create 1597// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1598// for more information on using Contexts. 1599func (c *OutputService8ProtocolTest) OutputService8TestCaseOperation3WithContext(ctx aws.Context, input *OutputService8TestShapeOutputService8TestCaseOperation3Input, opts ...request.Option) (*OutputService8TestShapeOutputService8TestCaseOperation3Output, error) { 1600 req, out := c.OutputService8TestCaseOperation3Request(input) 1601 req.SetContext(ctx) 1602 req.ApplyOptions(opts...) 1603 return out, req.Send() 1604} 1605 1606type OutputService8TestShapeOutputService8TestCaseOperation1Input struct { 1607 _ struct{} `type:"structure"` 1608} 1609 1610type OutputService8TestShapeOutputService8TestCaseOperation1Output struct { 1611 _ struct{} `type:"structure"` 1612} 1613 1614type OutputService8TestShapeOutputService8TestCaseOperation2Input struct { 1615 _ struct{} `type:"structure"` 1616} 1617 1618type OutputService8TestShapeOutputService8TestCaseOperation2Output struct { 1619 _ struct{} `type:"structure"` 1620} 1621 1622type OutputService8TestShapeOutputService8TestCaseOperation3Input struct { 1623 _ struct{} `type:"structure"` 1624} 1625 1626type OutputService8TestShapeOutputService8TestCaseOperation3Output struct { 1627 _ struct{} `type:"structure"` 1628} 1629 1630// 1631// Tests begin here 1632// 1633 1634func TestOutputService1ProtocolTestScalarMembersCase1(t *testing.T) { 1635 svc := NewOutputService1ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) 1636 1637 buf := bytes.NewReader([]byte("{\"Str\": \"myname\", \"Num\": 123, \"FalseBool\": false, \"TrueBool\": true, \"Float\": 1.2, \"Double\": 1.3, \"Long\": 200, \"Char\": \"a\"}")) 1638 req, out := svc.OutputService1TestCaseOperation1Request(nil) 1639 req.HTTPResponse = &http.Response{StatusCode: 200, Body: ioutil.NopCloser(buf), Header: http.Header{}} 1640 1641 // set headers 1642 1643 // unmarshal response 1644 req.Handlers.UnmarshalMeta.Run(req) 1645 req.Handlers.Unmarshal.Run(req) 1646 if req.Error != nil { 1647 t.Errorf("expect not error, got %v", req.Error) 1648 } 1649 1650 // assert response 1651 if out == nil { 1652 t.Errorf("expect not to be nil") 1653 } 1654 if e, a := "a", *out.Char; e != a { 1655 t.Errorf("expect %v, got %v", e, a) 1656 } 1657 if e, a := 1.3, *out.Double; e != a { 1658 t.Errorf("expect %v, got %v", e, a) 1659 } 1660 if e, a := false, *out.FalseBool; e != a { 1661 t.Errorf("expect %v, got %v", e, a) 1662 } 1663 if e, a := 1.2, *out.Float; e != a { 1664 t.Errorf("expect %v, got %v", e, a) 1665 } 1666 if e, a := int64(200), *out.Long; e != a { 1667 t.Errorf("expect %v, got %v", e, a) 1668 } 1669 if e, a := int64(123), *out.Num; e != a { 1670 t.Errorf("expect %v, got %v", e, a) 1671 } 1672 if e, a := "myname", *out.Str; e != a { 1673 t.Errorf("expect %v, got %v", e, a) 1674 } 1675 if e, a := true, *out.TrueBool; e != a { 1676 t.Errorf("expect %v, got %v", e, a) 1677 } 1678 1679} 1680 1681func TestOutputService2ProtocolTestBlobMembersCase1(t *testing.T) { 1682 svc := NewOutputService2ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) 1683 1684 buf := bytes.NewReader([]byte("{\"BlobMember\": \"aGkh\", \"StructMember\": {\"foo\": \"dGhlcmUh\"}}")) 1685 req, out := svc.OutputService2TestCaseOperation1Request(nil) 1686 req.HTTPResponse = &http.Response{StatusCode: 200, Body: ioutil.NopCloser(buf), Header: http.Header{}} 1687 1688 // set headers 1689 1690 // unmarshal response 1691 req.Handlers.UnmarshalMeta.Run(req) 1692 req.Handlers.Unmarshal.Run(req) 1693 if req.Error != nil { 1694 t.Errorf("expect not error, got %v", req.Error) 1695 } 1696 1697 // assert response 1698 if out == nil { 1699 t.Errorf("expect not to be nil") 1700 } 1701 if e, a := "hi!", string(out.BlobMember); e != a { 1702 t.Errorf("expect %v, got %v", e, a) 1703 } 1704 if e, a := "there!", string(out.StructMember.Foo); e != a { 1705 t.Errorf("expect %v, got %v", e, a) 1706 } 1707 1708} 1709 1710func TestOutputService3ProtocolTestTimestampMembersCase1(t *testing.T) { 1711 svc := NewOutputService3ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) 1712 1713 buf := bytes.NewReader([]byte("{\"TimeArg\": 1398796238, \"TimeCustom\": \"Tue, 29 Apr 2014 18:30:38 GMT\", \"TimeFormat\": \"2014-04-29T18:30:38Z\", \"StructMember\": {\"foo\": 1398796238, \"bar\": \"2014-04-29T18:30:38Z\"}}")) 1714 req, out := svc.OutputService3TestCaseOperation1Request(nil) 1715 req.HTTPResponse = &http.Response{StatusCode: 200, Body: ioutil.NopCloser(buf), Header: http.Header{}} 1716 1717 // set headers 1718 1719 // unmarshal response 1720 req.Handlers.UnmarshalMeta.Run(req) 1721 req.Handlers.Unmarshal.Run(req) 1722 if req.Error != nil { 1723 t.Errorf("expect not error, got %v", req.Error) 1724 } 1725 1726 // assert response 1727 if out == nil { 1728 t.Errorf("expect not to be nil") 1729 } 1730 if e, a := time.Unix(1.398796238e+09, 0).UTC().String(), out.StructMember.Bar.UTC().String(); e != a { 1731 t.Errorf("expect %v, got %v", e, a) 1732 } 1733 if e, a := time.Unix(1.398796238e+09, 0).UTC().String(), out.StructMember.Foo.UTC().String(); e != a { 1734 t.Errorf("expect %v, got %v", e, a) 1735 } 1736 if e, a := time.Unix(1.398796238e+09, 0).UTC().String(), out.TimeArg.UTC().String(); e != a { 1737 t.Errorf("expect %v, got %v", e, a) 1738 } 1739 if e, a := time.Unix(1.398796238e+09, 0).UTC().String(), out.TimeCustom.UTC().String(); e != a { 1740 t.Errorf("expect %v, got %v", e, a) 1741 } 1742 if e, a := time.Unix(1.398796238e+09, 0).UTC().String(), out.TimeFormat.UTC().String(); e != a { 1743 t.Errorf("expect %v, got %v", e, a) 1744 } 1745 1746} 1747 1748func TestOutputService4ProtocolTestListsCase1(t *testing.T) { 1749 svc := NewOutputService4ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) 1750 1751 buf := bytes.NewReader([]byte("{\"ListMember\": [\"a\", \"b\"]}")) 1752 req, out := svc.OutputService4TestCaseOperation1Request(nil) 1753 req.HTTPResponse = &http.Response{StatusCode: 200, Body: ioutil.NopCloser(buf), Header: http.Header{}} 1754 1755 // set headers 1756 1757 // unmarshal response 1758 req.Handlers.UnmarshalMeta.Run(req) 1759 req.Handlers.Unmarshal.Run(req) 1760 if req.Error != nil { 1761 t.Errorf("expect not error, got %v", req.Error) 1762 } 1763 1764 // assert response 1765 if out == nil { 1766 t.Errorf("expect not to be nil") 1767 } 1768 if e, a := "a", *out.ListMember[0]; e != a { 1769 t.Errorf("expect %v, got %v", e, a) 1770 } 1771 if e, a := "b", *out.ListMember[1]; e != a { 1772 t.Errorf("expect %v, got %v", e, a) 1773 } 1774 1775} 1776 1777func TestOutputService4ProtocolTestListsCase2(t *testing.T) { 1778 svc := NewOutputService4ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) 1779 1780 buf := bytes.NewReader([]byte("{\"ListMember\": [\"a\", null], \"ListMemberMap\": [{}, null, null, {}], \"ListMemberStruct\": [{}, null, null, {}]}")) 1781 req, out := svc.OutputService4TestCaseOperation2Request(nil) 1782 req.HTTPResponse = &http.Response{StatusCode: 200, Body: ioutil.NopCloser(buf), Header: http.Header{}} 1783 1784 // set headers 1785 1786 // unmarshal response 1787 req.Handlers.UnmarshalMeta.Run(req) 1788 req.Handlers.Unmarshal.Run(req) 1789 if req.Error != nil { 1790 t.Errorf("expect not error, got %v", req.Error) 1791 } 1792 1793 // assert response 1794 if out == nil { 1795 t.Errorf("expect not to be nil") 1796 } 1797 if e, a := "a", *out.ListMember[0]; e != a { 1798 t.Errorf("expect %v, got %v", e, a) 1799 } 1800 if e := out.ListMember[1]; e != nil { 1801 t.Errorf("expect nil, got %v", e) 1802 } 1803 if e := out.ListMemberMap[1]; e != nil { 1804 t.Errorf("expect nil, got %v", e) 1805 } 1806 if e := out.ListMemberMap[2]; e != nil { 1807 t.Errorf("expect nil, got %v", e) 1808 } 1809 if e := out.ListMemberStruct[1]; e != nil { 1810 t.Errorf("expect nil, got %v", e) 1811 } 1812 if e := out.ListMemberStruct[2]; e != nil { 1813 t.Errorf("expect nil, got %v", e) 1814 } 1815 1816} 1817 1818func TestOutputService5ProtocolTestMapsCase1(t *testing.T) { 1819 svc := NewOutputService5ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) 1820 1821 buf := bytes.NewReader([]byte("{\"MapMember\": {\"a\": [1, 2], \"b\": [3, 4]}}")) 1822 req, out := svc.OutputService5TestCaseOperation1Request(nil) 1823 req.HTTPResponse = &http.Response{StatusCode: 200, Body: ioutil.NopCloser(buf), Header: http.Header{}} 1824 1825 // set headers 1826 1827 // unmarshal response 1828 req.Handlers.UnmarshalMeta.Run(req) 1829 req.Handlers.Unmarshal.Run(req) 1830 if req.Error != nil { 1831 t.Errorf("expect not error, got %v", req.Error) 1832 } 1833 1834 // assert response 1835 if out == nil { 1836 t.Errorf("expect not to be nil") 1837 } 1838 if e, a := int64(1), *out.MapMember["a"][0]; e != a { 1839 t.Errorf("expect %v, got %v", e, a) 1840 } 1841 if e, a := int64(2), *out.MapMember["a"][1]; e != a { 1842 t.Errorf("expect %v, got %v", e, a) 1843 } 1844 if e, a := int64(3), *out.MapMember["b"][0]; e != a { 1845 t.Errorf("expect %v, got %v", e, a) 1846 } 1847 if e, a := int64(4), *out.MapMember["b"][1]; e != a { 1848 t.Errorf("expect %v, got %v", e, a) 1849 } 1850 1851} 1852 1853func TestOutputService6ProtocolTestIgnoresExtraDataCase1(t *testing.T) { 1854 svc := NewOutputService6ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) 1855 1856 buf := bytes.NewReader([]byte("{\"foo\": \"bar\"}")) 1857 req, out := svc.OutputService6TestCaseOperation1Request(nil) 1858 req.HTTPResponse = &http.Response{StatusCode: 200, Body: ioutil.NopCloser(buf), Header: http.Header{}} 1859 1860 // set headers 1861 1862 // unmarshal response 1863 req.Handlers.UnmarshalMeta.Run(req) 1864 req.Handlers.Unmarshal.Run(req) 1865 if req.Error != nil { 1866 t.Errorf("expect not error, got %v", req.Error) 1867 } 1868 1869 // assert response 1870 if out == nil { 1871 t.Errorf("expect not to be nil") 1872 } 1873 1874} 1875 1876func TestOutputService7ProtocolTestEnumOutputCase1(t *testing.T) { 1877 svc := NewOutputService7ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) 1878 1879 buf := bytes.NewReader([]byte("{\"FooEnum\": \"foo\", \"ListEnums\": [\"foo\", \"bar\"]}")) 1880 req, out := svc.OutputService7TestCaseOperation1Request(nil) 1881 req.HTTPResponse = &http.Response{StatusCode: 200, Body: ioutil.NopCloser(buf), Header: http.Header{}} 1882 1883 // set headers 1884 1885 // unmarshal response 1886 req.Handlers.UnmarshalMeta.Run(req) 1887 req.Handlers.Unmarshal.Run(req) 1888 if req.Error != nil { 1889 t.Errorf("expect not error, got %v", req.Error) 1890 } 1891 1892 // assert response 1893 if out == nil { 1894 t.Errorf("expect not to be nil") 1895 } 1896 if e, a := "foo", *out.FooEnum; e != a { 1897 t.Errorf("expect %v, got %v", e, a) 1898 } 1899 if e, a := "foo", *out.ListEnums[0]; e != a { 1900 t.Errorf("expect %v, got %v", e, a) 1901 } 1902 if e, a := "bar", *out.ListEnums[1]; e != a { 1903 t.Errorf("expect %v, got %v", e, a) 1904 } 1905 1906} 1907 1908func TestOutputService8ProtocolTestunmodeledNonjsonResponsePayloadCase1(t *testing.T) { 1909 svc := NewOutputService8ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) 1910 1911 buf := bytes.NewReader([]byte("success")) 1912 req, out := svc.OutputService8TestCaseOperation1Request(nil) 1913 req.HTTPResponse = &http.Response{StatusCode: 200, Body: ioutil.NopCloser(buf), Header: http.Header{}} 1914 1915 // set headers 1916 1917 // unmarshal response 1918 req.Handlers.UnmarshalMeta.Run(req) 1919 req.Handlers.Unmarshal.Run(req) 1920 if req.Error != nil { 1921 t.Errorf("expect not error, got %v", req.Error) 1922 } 1923 1924 // assert response 1925 if out == nil { 1926 t.Errorf("expect not to be nil") 1927 } 1928 1929} 1930 1931func TestOutputService8ProtocolTestunmodeledNonjsonResponsePayloadCase2(t *testing.T) { 1932 svc := NewOutputService8ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) 1933 1934 buf := bytes.NewReader([]byte("\"success\"")) 1935 req, out := svc.OutputService8TestCaseOperation2Request(nil) 1936 req.HTTPResponse = &http.Response{StatusCode: 200, Body: ioutil.NopCloser(buf), Header: http.Header{}} 1937 1938 // set headers 1939 1940 // unmarshal response 1941 req.Handlers.UnmarshalMeta.Run(req) 1942 req.Handlers.Unmarshal.Run(req) 1943 if req.Error != nil { 1944 t.Errorf("expect not error, got %v", req.Error) 1945 } 1946 1947 // assert response 1948 if out == nil { 1949 t.Errorf("expect not to be nil") 1950 } 1951 1952} 1953 1954func TestOutputService8ProtocolTestunmodeledNonjsonResponsePayloadCase3(t *testing.T) { 1955 svc := NewOutputService8ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) 1956 1957 buf := bytes.NewReader([]byte("{}")) 1958 req, out := svc.OutputService8TestCaseOperation3Request(nil) 1959 req.HTTPResponse = &http.Response{StatusCode: 200, Body: ioutil.NopCloser(buf), Header: http.Header{}} 1960 1961 // set headers 1962 1963 // unmarshal response 1964 req.Handlers.UnmarshalMeta.Run(req) 1965 req.Handlers.Unmarshal.Run(req) 1966 if req.Error != nil { 1967 t.Errorf("expect not error, got %v", req.Error) 1968 } 1969 1970 // assert response 1971 if out == nil { 1972 t.Errorf("expect not to be nil") 1973 } 1974 1975} 1976