1// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. 2 3package appmesh 4 5import ( 6 "fmt" 7 "time" 8 9 "github.com/aws/aws-sdk-go/aws" 10 "github.com/aws/aws-sdk-go/aws/awsutil" 11 "github.com/aws/aws-sdk-go/aws/request" 12 "github.com/aws/aws-sdk-go/private/protocol" 13 "github.com/aws/aws-sdk-go/private/protocol/restjson" 14) 15 16const opCreateMesh = "CreateMesh" 17 18// CreateMeshRequest generates a "aws/request.Request" representing the 19// client's request for the CreateMesh operation. The "output" return 20// value will be populated with the request's response once the request completes 21// successfully. 22// 23// Use "Send" method on the returned Request to send the API call to the service. 24// the "output" return value is not valid until after Send returns without error. 25// 26// See CreateMesh for more information on using the CreateMesh 27// API call, and error handling. 28// 29// This method is useful when you want to inject custom logic or configuration 30// into the SDK's request lifecycle. Such as custom headers, or retry logic. 31// 32// 33// // Example sending a request using the CreateMeshRequest method. 34// req, resp := client.CreateMeshRequest(params) 35// 36// err := req.Send() 37// if err == nil { // resp is now filled 38// fmt.Println(resp) 39// } 40// 41// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/CreateMesh 42func (c *AppMesh) CreateMeshRequest(input *CreateMeshInput) (req *request.Request, output *CreateMeshOutput) { 43 op := &request.Operation{ 44 Name: opCreateMesh, 45 HTTPMethod: "PUT", 46 HTTPPath: "/v20190125/meshes", 47 } 48 49 if input == nil { 50 input = &CreateMeshInput{} 51 } 52 53 output = &CreateMeshOutput{} 54 req = c.newRequest(op, input, output) 55 return 56} 57 58// CreateMesh API operation for AWS App Mesh. 59// 60// Creates a service mesh. 61// 62// A service mesh is a logical boundary for network traffic between services 63// that are represented by resources within the mesh. After you create your 64// service mesh, you can create virtual services, virtual nodes, virtual routers, 65// and routes to distribute traffic between the applications in your mesh. 66// 67// For more information about service meshes, see Service meshes (https://docs.aws.amazon.com/app-mesh/latest/userguide/meshes.html). 68// 69// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 70// with awserr.Error's Code and Message methods to get detailed information about 71// the error. 72// 73// See the AWS API reference guide for AWS App Mesh's 74// API operation CreateMesh for usage and error information. 75// 76// Returned Error Types: 77// * BadRequestException 78// The request syntax was malformed. Check your request syntax and try again. 79// 80// * ConflictException 81// The request contains a client token that was used for a previous update resource 82// call with different specifications. Try the request again with a new client 83// token. 84// 85// * ForbiddenException 86// You don't have permissions to perform this action. 87// 88// * InternalServerErrorException 89// The request processing has failed because of an unknown error, exception, 90// or failure. 91// 92// * LimitExceededException 93// You have exceeded a service limit for your account. For more information, 94// see Service Limits (https://docs.aws.amazon.com/app-mesh/latest/userguide/service-quotas.html) 95// in the AWS App Mesh User Guide. 96// 97// * NotFoundException 98// The specified resource doesn't exist. Check your request syntax and try again. 99// 100// * ServiceUnavailableException 101// The request has failed due to a temporary failure of the service. 102// 103// * TooManyRequestsException 104// The maximum request rate permitted by the App Mesh APIs has been exceeded 105// for your account. For best results, use an increasing or variable sleep interval 106// between requests. 107// 108// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/CreateMesh 109func (c *AppMesh) CreateMesh(input *CreateMeshInput) (*CreateMeshOutput, error) { 110 req, out := c.CreateMeshRequest(input) 111 return out, req.Send() 112} 113 114// CreateMeshWithContext is the same as CreateMesh with the addition of 115// the ability to pass a context and additional request options. 116// 117// See CreateMesh for details on how to use this API operation. 118// 119// The context must be non-nil and will be used for request cancellation. If 120// the context is nil a panic will occur. In the future the SDK may create 121// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 122// for more information on using Contexts. 123func (c *AppMesh) CreateMeshWithContext(ctx aws.Context, input *CreateMeshInput, opts ...request.Option) (*CreateMeshOutput, error) { 124 req, out := c.CreateMeshRequest(input) 125 req.SetContext(ctx) 126 req.ApplyOptions(opts...) 127 return out, req.Send() 128} 129 130const opCreateRoute = "CreateRoute" 131 132// CreateRouteRequest generates a "aws/request.Request" representing the 133// client's request for the CreateRoute operation. The "output" return 134// value will be populated with the request's response once the request completes 135// successfully. 136// 137// Use "Send" method on the returned Request to send the API call to the service. 138// the "output" return value is not valid until after Send returns without error. 139// 140// See CreateRoute for more information on using the CreateRoute 141// API call, and error handling. 142// 143// This method is useful when you want to inject custom logic or configuration 144// into the SDK's request lifecycle. Such as custom headers, or retry logic. 145// 146// 147// // Example sending a request using the CreateRouteRequest method. 148// req, resp := client.CreateRouteRequest(params) 149// 150// err := req.Send() 151// if err == nil { // resp is now filled 152// fmt.Println(resp) 153// } 154// 155// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/CreateRoute 156func (c *AppMesh) CreateRouteRequest(input *CreateRouteInput) (req *request.Request, output *CreateRouteOutput) { 157 op := &request.Operation{ 158 Name: opCreateRoute, 159 HTTPMethod: "PUT", 160 HTTPPath: "/v20190125/meshes/{meshName}/virtualRouter/{virtualRouterName}/routes", 161 } 162 163 if input == nil { 164 input = &CreateRouteInput{} 165 } 166 167 output = &CreateRouteOutput{} 168 req = c.newRequest(op, input, output) 169 return 170} 171 172// CreateRoute API operation for AWS App Mesh. 173// 174// Creates a route that is associated with a virtual router. 175// 176// You can route several different protocols and define a retry policy for a 177// route. Traffic can be routed to one or more virtual nodes. 178// 179// For more information about routes, see Routes (https://docs.aws.amazon.com/app-mesh/latest/userguide/routes.html). 180// 181// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 182// with awserr.Error's Code and Message methods to get detailed information about 183// the error. 184// 185// See the AWS API reference guide for AWS App Mesh's 186// API operation CreateRoute for usage and error information. 187// 188// Returned Error Types: 189// * BadRequestException 190// The request syntax was malformed. Check your request syntax and try again. 191// 192// * ConflictException 193// The request contains a client token that was used for a previous update resource 194// call with different specifications. Try the request again with a new client 195// token. 196// 197// * ForbiddenException 198// You don't have permissions to perform this action. 199// 200// * InternalServerErrorException 201// The request processing has failed because of an unknown error, exception, 202// or failure. 203// 204// * LimitExceededException 205// You have exceeded a service limit for your account. For more information, 206// see Service Limits (https://docs.aws.amazon.com/app-mesh/latest/userguide/service-quotas.html) 207// in the AWS App Mesh User Guide. 208// 209// * NotFoundException 210// The specified resource doesn't exist. Check your request syntax and try again. 211// 212// * ServiceUnavailableException 213// The request has failed due to a temporary failure of the service. 214// 215// * TooManyRequestsException 216// The maximum request rate permitted by the App Mesh APIs has been exceeded 217// for your account. For best results, use an increasing or variable sleep interval 218// between requests. 219// 220// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/CreateRoute 221func (c *AppMesh) CreateRoute(input *CreateRouteInput) (*CreateRouteOutput, error) { 222 req, out := c.CreateRouteRequest(input) 223 return out, req.Send() 224} 225 226// CreateRouteWithContext is the same as CreateRoute with the addition of 227// the ability to pass a context and additional request options. 228// 229// See CreateRoute for details on how to use this API operation. 230// 231// The context must be non-nil and will be used for request cancellation. If 232// the context is nil a panic will occur. In the future the SDK may create 233// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 234// for more information on using Contexts. 235func (c *AppMesh) CreateRouteWithContext(ctx aws.Context, input *CreateRouteInput, opts ...request.Option) (*CreateRouteOutput, error) { 236 req, out := c.CreateRouteRequest(input) 237 req.SetContext(ctx) 238 req.ApplyOptions(opts...) 239 return out, req.Send() 240} 241 242const opCreateVirtualNode = "CreateVirtualNode" 243 244// CreateVirtualNodeRequest generates a "aws/request.Request" representing the 245// client's request for the CreateVirtualNode operation. The "output" return 246// value will be populated with the request's response once the request completes 247// successfully. 248// 249// Use "Send" method on the returned Request to send the API call to the service. 250// the "output" return value is not valid until after Send returns without error. 251// 252// See CreateVirtualNode for more information on using the CreateVirtualNode 253// API call, and error handling. 254// 255// This method is useful when you want to inject custom logic or configuration 256// into the SDK's request lifecycle. Such as custom headers, or retry logic. 257// 258// 259// // Example sending a request using the CreateVirtualNodeRequest method. 260// req, resp := client.CreateVirtualNodeRequest(params) 261// 262// err := req.Send() 263// if err == nil { // resp is now filled 264// fmt.Println(resp) 265// } 266// 267// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/CreateVirtualNode 268func (c *AppMesh) CreateVirtualNodeRequest(input *CreateVirtualNodeInput) (req *request.Request, output *CreateVirtualNodeOutput) { 269 op := &request.Operation{ 270 Name: opCreateVirtualNode, 271 HTTPMethod: "PUT", 272 HTTPPath: "/v20190125/meshes/{meshName}/virtualNodes", 273 } 274 275 if input == nil { 276 input = &CreateVirtualNodeInput{} 277 } 278 279 output = &CreateVirtualNodeOutput{} 280 req = c.newRequest(op, input, output) 281 return 282} 283 284// CreateVirtualNode API operation for AWS App Mesh. 285// 286// Creates a virtual node within a service mesh. 287// 288// A virtual node acts as a logical pointer to a particular task group, such 289// as an Amazon ECS service or a Kubernetes deployment. When you create a virtual 290// node, you can specify the service discovery information for your task group, 291// and whether the proxy running in a task group will communicate with other 292// proxies using Transport Layer Security (TLS). 293// 294// You define a listener for any inbound traffic that your virtual node expects. 295// Any virtual service that your virtual node expects to communicate to is specified 296// as a backend. 297// 298// The response metadata for your new virtual node contains the arn that is 299// associated with the virtual node. Set this value (either the full ARN or 300// the truncated resource name: for example, mesh/default/virtualNode/simpleapp) 301// as the APPMESH_VIRTUAL_NODE_NAME environment variable for your task group's 302// Envoy proxy container in your task definition or pod spec. This is then mapped 303// to the node.id and node.cluster Envoy parameters. 304// 305// If you require your Envoy stats or tracing to use a different name, you can 306// override the node.cluster value that is set by APPMESH_VIRTUAL_NODE_NAME 307// with the APPMESH_VIRTUAL_NODE_CLUSTER environment variable. 308// 309// For more information about virtual nodes, see Virtual nodes (https://docs.aws.amazon.com/app-mesh/latest/userguide/virtual_nodes.html). 310// 311// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 312// with awserr.Error's Code and Message methods to get detailed information about 313// the error. 314// 315// See the AWS API reference guide for AWS App Mesh's 316// API operation CreateVirtualNode for usage and error information. 317// 318// Returned Error Types: 319// * BadRequestException 320// The request syntax was malformed. Check your request syntax and try again. 321// 322// * ConflictException 323// The request contains a client token that was used for a previous update resource 324// call with different specifications. Try the request again with a new client 325// token. 326// 327// * ForbiddenException 328// You don't have permissions to perform this action. 329// 330// * InternalServerErrorException 331// The request processing has failed because of an unknown error, exception, 332// or failure. 333// 334// * LimitExceededException 335// You have exceeded a service limit for your account. For more information, 336// see Service Limits (https://docs.aws.amazon.com/app-mesh/latest/userguide/service-quotas.html) 337// in the AWS App Mesh User Guide. 338// 339// * NotFoundException 340// The specified resource doesn't exist. Check your request syntax and try again. 341// 342// * ServiceUnavailableException 343// The request has failed due to a temporary failure of the service. 344// 345// * TooManyRequestsException 346// The maximum request rate permitted by the App Mesh APIs has been exceeded 347// for your account. For best results, use an increasing or variable sleep interval 348// between requests. 349// 350// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/CreateVirtualNode 351func (c *AppMesh) CreateVirtualNode(input *CreateVirtualNodeInput) (*CreateVirtualNodeOutput, error) { 352 req, out := c.CreateVirtualNodeRequest(input) 353 return out, req.Send() 354} 355 356// CreateVirtualNodeWithContext is the same as CreateVirtualNode with the addition of 357// the ability to pass a context and additional request options. 358// 359// See CreateVirtualNode for details on how to use this API operation. 360// 361// The context must be non-nil and will be used for request cancellation. If 362// the context is nil a panic will occur. In the future the SDK may create 363// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 364// for more information on using Contexts. 365func (c *AppMesh) CreateVirtualNodeWithContext(ctx aws.Context, input *CreateVirtualNodeInput, opts ...request.Option) (*CreateVirtualNodeOutput, error) { 366 req, out := c.CreateVirtualNodeRequest(input) 367 req.SetContext(ctx) 368 req.ApplyOptions(opts...) 369 return out, req.Send() 370} 371 372const opCreateVirtualRouter = "CreateVirtualRouter" 373 374// CreateVirtualRouterRequest generates a "aws/request.Request" representing the 375// client's request for the CreateVirtualRouter operation. The "output" return 376// value will be populated with the request's response once the request completes 377// successfully. 378// 379// Use "Send" method on the returned Request to send the API call to the service. 380// the "output" return value is not valid until after Send returns without error. 381// 382// See CreateVirtualRouter for more information on using the CreateVirtualRouter 383// API call, and error handling. 384// 385// This method is useful when you want to inject custom logic or configuration 386// into the SDK's request lifecycle. Such as custom headers, or retry logic. 387// 388// 389// // Example sending a request using the CreateVirtualRouterRequest method. 390// req, resp := client.CreateVirtualRouterRequest(params) 391// 392// err := req.Send() 393// if err == nil { // resp is now filled 394// fmt.Println(resp) 395// } 396// 397// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/CreateVirtualRouter 398func (c *AppMesh) CreateVirtualRouterRequest(input *CreateVirtualRouterInput) (req *request.Request, output *CreateVirtualRouterOutput) { 399 op := &request.Operation{ 400 Name: opCreateVirtualRouter, 401 HTTPMethod: "PUT", 402 HTTPPath: "/v20190125/meshes/{meshName}/virtualRouters", 403 } 404 405 if input == nil { 406 input = &CreateVirtualRouterInput{} 407 } 408 409 output = &CreateVirtualRouterOutput{} 410 req = c.newRequest(op, input, output) 411 return 412} 413 414// CreateVirtualRouter API operation for AWS App Mesh. 415// 416// Creates a virtual router within a service mesh. 417// 418// Specify a listener for any inbound traffic that your virtual router receives. 419// Create a virtual router for each protocol and port that you need to route. 420// Virtual routers handle traffic for one or more virtual services within your 421// mesh. After you create your virtual router, create and associate routes for 422// your virtual router that direct incoming requests to different virtual nodes. 423// 424// For more information about virtual routers, see Virtual routers (https://docs.aws.amazon.com/app-mesh/latest/userguide/virtual_routers.html). 425// 426// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 427// with awserr.Error's Code and Message methods to get detailed information about 428// the error. 429// 430// See the AWS API reference guide for AWS App Mesh's 431// API operation CreateVirtualRouter for usage and error information. 432// 433// Returned Error Types: 434// * BadRequestException 435// The request syntax was malformed. Check your request syntax and try again. 436// 437// * ConflictException 438// The request contains a client token that was used for a previous update resource 439// call with different specifications. Try the request again with a new client 440// token. 441// 442// * ForbiddenException 443// You don't have permissions to perform this action. 444// 445// * InternalServerErrorException 446// The request processing has failed because of an unknown error, exception, 447// or failure. 448// 449// * LimitExceededException 450// You have exceeded a service limit for your account. For more information, 451// see Service Limits (https://docs.aws.amazon.com/app-mesh/latest/userguide/service-quotas.html) 452// in the AWS App Mesh User Guide. 453// 454// * NotFoundException 455// The specified resource doesn't exist. Check your request syntax and try again. 456// 457// * ServiceUnavailableException 458// The request has failed due to a temporary failure of the service. 459// 460// * TooManyRequestsException 461// The maximum request rate permitted by the App Mesh APIs has been exceeded 462// for your account. For best results, use an increasing or variable sleep interval 463// between requests. 464// 465// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/CreateVirtualRouter 466func (c *AppMesh) CreateVirtualRouter(input *CreateVirtualRouterInput) (*CreateVirtualRouterOutput, error) { 467 req, out := c.CreateVirtualRouterRequest(input) 468 return out, req.Send() 469} 470 471// CreateVirtualRouterWithContext is the same as CreateVirtualRouter with the addition of 472// the ability to pass a context and additional request options. 473// 474// See CreateVirtualRouter for details on how to use this API operation. 475// 476// The context must be non-nil and will be used for request cancellation. If 477// the context is nil a panic will occur. In the future the SDK may create 478// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 479// for more information on using Contexts. 480func (c *AppMesh) CreateVirtualRouterWithContext(ctx aws.Context, input *CreateVirtualRouterInput, opts ...request.Option) (*CreateVirtualRouterOutput, error) { 481 req, out := c.CreateVirtualRouterRequest(input) 482 req.SetContext(ctx) 483 req.ApplyOptions(opts...) 484 return out, req.Send() 485} 486 487const opCreateVirtualService = "CreateVirtualService" 488 489// CreateVirtualServiceRequest generates a "aws/request.Request" representing the 490// client's request for the CreateVirtualService operation. The "output" return 491// value will be populated with the request's response once the request completes 492// successfully. 493// 494// Use "Send" method on the returned Request to send the API call to the service. 495// the "output" return value is not valid until after Send returns without error. 496// 497// See CreateVirtualService for more information on using the CreateVirtualService 498// API call, and error handling. 499// 500// This method is useful when you want to inject custom logic or configuration 501// into the SDK's request lifecycle. Such as custom headers, or retry logic. 502// 503// 504// // Example sending a request using the CreateVirtualServiceRequest method. 505// req, resp := client.CreateVirtualServiceRequest(params) 506// 507// err := req.Send() 508// if err == nil { // resp is now filled 509// fmt.Println(resp) 510// } 511// 512// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/CreateVirtualService 513func (c *AppMesh) CreateVirtualServiceRequest(input *CreateVirtualServiceInput) (req *request.Request, output *CreateVirtualServiceOutput) { 514 op := &request.Operation{ 515 Name: opCreateVirtualService, 516 HTTPMethod: "PUT", 517 HTTPPath: "/v20190125/meshes/{meshName}/virtualServices", 518 } 519 520 if input == nil { 521 input = &CreateVirtualServiceInput{} 522 } 523 524 output = &CreateVirtualServiceOutput{} 525 req = c.newRequest(op, input, output) 526 return 527} 528 529// CreateVirtualService API operation for AWS App Mesh. 530// 531// Creates a virtual service within a service mesh. 532// 533// A virtual service is an abstraction of a real service that is provided by 534// a virtual node directly or indirectly by means of a virtual router. Dependent 535// services call your virtual service by its virtualServiceName, and those requests 536// are routed to the virtual node or virtual router that is specified as the 537// provider for the virtual service. 538// 539// For more information about virtual services, see Virtual services (https://docs.aws.amazon.com/app-mesh/latest/userguide/virtual_services.html). 540// 541// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 542// with awserr.Error's Code and Message methods to get detailed information about 543// the error. 544// 545// See the AWS API reference guide for AWS App Mesh's 546// API operation CreateVirtualService for usage and error information. 547// 548// Returned Error Types: 549// * BadRequestException 550// The request syntax was malformed. Check your request syntax and try again. 551// 552// * ConflictException 553// The request contains a client token that was used for a previous update resource 554// call with different specifications. Try the request again with a new client 555// token. 556// 557// * ForbiddenException 558// You don't have permissions to perform this action. 559// 560// * InternalServerErrorException 561// The request processing has failed because of an unknown error, exception, 562// or failure. 563// 564// * LimitExceededException 565// You have exceeded a service limit for your account. For more information, 566// see Service Limits (https://docs.aws.amazon.com/app-mesh/latest/userguide/service-quotas.html) 567// in the AWS App Mesh User Guide. 568// 569// * NotFoundException 570// The specified resource doesn't exist. Check your request syntax and try again. 571// 572// * ServiceUnavailableException 573// The request has failed due to a temporary failure of the service. 574// 575// * TooManyRequestsException 576// The maximum request rate permitted by the App Mesh APIs has been exceeded 577// for your account. For best results, use an increasing or variable sleep interval 578// between requests. 579// 580// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/CreateVirtualService 581func (c *AppMesh) CreateVirtualService(input *CreateVirtualServiceInput) (*CreateVirtualServiceOutput, error) { 582 req, out := c.CreateVirtualServiceRequest(input) 583 return out, req.Send() 584} 585 586// CreateVirtualServiceWithContext is the same as CreateVirtualService with the addition of 587// the ability to pass a context and additional request options. 588// 589// See CreateVirtualService for details on how to use this API operation. 590// 591// The context must be non-nil and will be used for request cancellation. If 592// the context is nil a panic will occur. In the future the SDK may create 593// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 594// for more information on using Contexts. 595func (c *AppMesh) CreateVirtualServiceWithContext(ctx aws.Context, input *CreateVirtualServiceInput, opts ...request.Option) (*CreateVirtualServiceOutput, error) { 596 req, out := c.CreateVirtualServiceRequest(input) 597 req.SetContext(ctx) 598 req.ApplyOptions(opts...) 599 return out, req.Send() 600} 601 602const opDeleteMesh = "DeleteMesh" 603 604// DeleteMeshRequest generates a "aws/request.Request" representing the 605// client's request for the DeleteMesh operation. The "output" return 606// value will be populated with the request's response once the request completes 607// successfully. 608// 609// Use "Send" method on the returned Request to send the API call to the service. 610// the "output" return value is not valid until after Send returns without error. 611// 612// See DeleteMesh for more information on using the DeleteMesh 613// API call, and error handling. 614// 615// This method is useful when you want to inject custom logic or configuration 616// into the SDK's request lifecycle. Such as custom headers, or retry logic. 617// 618// 619// // Example sending a request using the DeleteMeshRequest method. 620// req, resp := client.DeleteMeshRequest(params) 621// 622// err := req.Send() 623// if err == nil { // resp is now filled 624// fmt.Println(resp) 625// } 626// 627// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DeleteMesh 628func (c *AppMesh) DeleteMeshRequest(input *DeleteMeshInput) (req *request.Request, output *DeleteMeshOutput) { 629 op := &request.Operation{ 630 Name: opDeleteMesh, 631 HTTPMethod: "DELETE", 632 HTTPPath: "/v20190125/meshes/{meshName}", 633 } 634 635 if input == nil { 636 input = &DeleteMeshInput{} 637 } 638 639 output = &DeleteMeshOutput{} 640 req = c.newRequest(op, input, output) 641 return 642} 643 644// DeleteMesh API operation for AWS App Mesh. 645// 646// Deletes an existing service mesh. 647// 648// You must delete all resources (virtual services, routes, virtual routers, 649// and virtual nodes) in the service mesh before you can delete the mesh itself. 650// 651// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 652// with awserr.Error's Code and Message methods to get detailed information about 653// the error. 654// 655// See the AWS API reference guide for AWS App Mesh's 656// API operation DeleteMesh for usage and error information. 657// 658// Returned Error Types: 659// * BadRequestException 660// The request syntax was malformed. Check your request syntax and try again. 661// 662// * ForbiddenException 663// You don't have permissions to perform this action. 664// 665// * InternalServerErrorException 666// The request processing has failed because of an unknown error, exception, 667// or failure. 668// 669// * NotFoundException 670// The specified resource doesn't exist. Check your request syntax and try again. 671// 672// * ResourceInUseException 673// You can't delete the specified resource because it's in use or required by 674// another resource. 675// 676// * ServiceUnavailableException 677// The request has failed due to a temporary failure of the service. 678// 679// * TooManyRequestsException 680// The maximum request rate permitted by the App Mesh APIs has been exceeded 681// for your account. For best results, use an increasing or variable sleep interval 682// between requests. 683// 684// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DeleteMesh 685func (c *AppMesh) DeleteMesh(input *DeleteMeshInput) (*DeleteMeshOutput, error) { 686 req, out := c.DeleteMeshRequest(input) 687 return out, req.Send() 688} 689 690// DeleteMeshWithContext is the same as DeleteMesh with the addition of 691// the ability to pass a context and additional request options. 692// 693// See DeleteMesh for details on how to use this API operation. 694// 695// The context must be non-nil and will be used for request cancellation. If 696// the context is nil a panic will occur. In the future the SDK may create 697// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 698// for more information on using Contexts. 699func (c *AppMesh) DeleteMeshWithContext(ctx aws.Context, input *DeleteMeshInput, opts ...request.Option) (*DeleteMeshOutput, error) { 700 req, out := c.DeleteMeshRequest(input) 701 req.SetContext(ctx) 702 req.ApplyOptions(opts...) 703 return out, req.Send() 704} 705 706const opDeleteRoute = "DeleteRoute" 707 708// DeleteRouteRequest generates a "aws/request.Request" representing the 709// client's request for the DeleteRoute operation. The "output" return 710// value will be populated with the request's response once the request completes 711// successfully. 712// 713// Use "Send" method on the returned Request to send the API call to the service. 714// the "output" return value is not valid until after Send returns without error. 715// 716// See DeleteRoute for more information on using the DeleteRoute 717// API call, and error handling. 718// 719// This method is useful when you want to inject custom logic or configuration 720// into the SDK's request lifecycle. Such as custom headers, or retry logic. 721// 722// 723// // Example sending a request using the DeleteRouteRequest method. 724// req, resp := client.DeleteRouteRequest(params) 725// 726// err := req.Send() 727// if err == nil { // resp is now filled 728// fmt.Println(resp) 729// } 730// 731// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DeleteRoute 732func (c *AppMesh) DeleteRouteRequest(input *DeleteRouteInput) (req *request.Request, output *DeleteRouteOutput) { 733 op := &request.Operation{ 734 Name: opDeleteRoute, 735 HTTPMethod: "DELETE", 736 HTTPPath: "/v20190125/meshes/{meshName}/virtualRouter/{virtualRouterName}/routes/{routeName}", 737 } 738 739 if input == nil { 740 input = &DeleteRouteInput{} 741 } 742 743 output = &DeleteRouteOutput{} 744 req = c.newRequest(op, input, output) 745 return 746} 747 748// DeleteRoute API operation for AWS App Mesh. 749// 750// Deletes an existing route. 751// 752// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 753// with awserr.Error's Code and Message methods to get detailed information about 754// the error. 755// 756// See the AWS API reference guide for AWS App Mesh's 757// API operation DeleteRoute for usage and error information. 758// 759// Returned Error Types: 760// * BadRequestException 761// The request syntax was malformed. Check your request syntax and try again. 762// 763// * ForbiddenException 764// You don't have permissions to perform this action. 765// 766// * InternalServerErrorException 767// The request processing has failed because of an unknown error, exception, 768// or failure. 769// 770// * NotFoundException 771// The specified resource doesn't exist. Check your request syntax and try again. 772// 773// * ResourceInUseException 774// You can't delete the specified resource because it's in use or required by 775// another resource. 776// 777// * ServiceUnavailableException 778// The request has failed due to a temporary failure of the service. 779// 780// * TooManyRequestsException 781// The maximum request rate permitted by the App Mesh APIs has been exceeded 782// for your account. For best results, use an increasing or variable sleep interval 783// between requests. 784// 785// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DeleteRoute 786func (c *AppMesh) DeleteRoute(input *DeleteRouteInput) (*DeleteRouteOutput, error) { 787 req, out := c.DeleteRouteRequest(input) 788 return out, req.Send() 789} 790 791// DeleteRouteWithContext is the same as DeleteRoute with the addition of 792// the ability to pass a context and additional request options. 793// 794// See DeleteRoute for details on how to use this API operation. 795// 796// The context must be non-nil and will be used for request cancellation. If 797// the context is nil a panic will occur. In the future the SDK may create 798// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 799// for more information on using Contexts. 800func (c *AppMesh) DeleteRouteWithContext(ctx aws.Context, input *DeleteRouteInput, opts ...request.Option) (*DeleteRouteOutput, error) { 801 req, out := c.DeleteRouteRequest(input) 802 req.SetContext(ctx) 803 req.ApplyOptions(opts...) 804 return out, req.Send() 805} 806 807const opDeleteVirtualNode = "DeleteVirtualNode" 808 809// DeleteVirtualNodeRequest generates a "aws/request.Request" representing the 810// client's request for the DeleteVirtualNode operation. The "output" return 811// value will be populated with the request's response once the request completes 812// successfully. 813// 814// Use "Send" method on the returned Request to send the API call to the service. 815// the "output" return value is not valid until after Send returns without error. 816// 817// See DeleteVirtualNode for more information on using the DeleteVirtualNode 818// API call, and error handling. 819// 820// This method is useful when you want to inject custom logic or configuration 821// into the SDK's request lifecycle. Such as custom headers, or retry logic. 822// 823// 824// // Example sending a request using the DeleteVirtualNodeRequest method. 825// req, resp := client.DeleteVirtualNodeRequest(params) 826// 827// err := req.Send() 828// if err == nil { // resp is now filled 829// fmt.Println(resp) 830// } 831// 832// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DeleteVirtualNode 833func (c *AppMesh) DeleteVirtualNodeRequest(input *DeleteVirtualNodeInput) (req *request.Request, output *DeleteVirtualNodeOutput) { 834 op := &request.Operation{ 835 Name: opDeleteVirtualNode, 836 HTTPMethod: "DELETE", 837 HTTPPath: "/v20190125/meshes/{meshName}/virtualNodes/{virtualNodeName}", 838 } 839 840 if input == nil { 841 input = &DeleteVirtualNodeInput{} 842 } 843 844 output = &DeleteVirtualNodeOutput{} 845 req = c.newRequest(op, input, output) 846 return 847} 848 849// DeleteVirtualNode API operation for AWS App Mesh. 850// 851// Deletes an existing virtual node. 852// 853// You must delete any virtual services that list a virtual node as a service 854// provider before you can delete the virtual node itself. 855// 856// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 857// with awserr.Error's Code and Message methods to get detailed information about 858// the error. 859// 860// See the AWS API reference guide for AWS App Mesh's 861// API operation DeleteVirtualNode for usage and error information. 862// 863// Returned Error Types: 864// * BadRequestException 865// The request syntax was malformed. Check your request syntax and try again. 866// 867// * ForbiddenException 868// You don't have permissions to perform this action. 869// 870// * InternalServerErrorException 871// The request processing has failed because of an unknown error, exception, 872// or failure. 873// 874// * NotFoundException 875// The specified resource doesn't exist. Check your request syntax and try again. 876// 877// * ResourceInUseException 878// You can't delete the specified resource because it's in use or required by 879// another resource. 880// 881// * ServiceUnavailableException 882// The request has failed due to a temporary failure of the service. 883// 884// * TooManyRequestsException 885// The maximum request rate permitted by the App Mesh APIs has been exceeded 886// for your account. For best results, use an increasing or variable sleep interval 887// between requests. 888// 889// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DeleteVirtualNode 890func (c *AppMesh) DeleteVirtualNode(input *DeleteVirtualNodeInput) (*DeleteVirtualNodeOutput, error) { 891 req, out := c.DeleteVirtualNodeRequest(input) 892 return out, req.Send() 893} 894 895// DeleteVirtualNodeWithContext is the same as DeleteVirtualNode with the addition of 896// the ability to pass a context and additional request options. 897// 898// See DeleteVirtualNode for details on how to use this API operation. 899// 900// The context must be non-nil and will be used for request cancellation. If 901// the context is nil a panic will occur. In the future the SDK may create 902// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 903// for more information on using Contexts. 904func (c *AppMesh) DeleteVirtualNodeWithContext(ctx aws.Context, input *DeleteVirtualNodeInput, opts ...request.Option) (*DeleteVirtualNodeOutput, error) { 905 req, out := c.DeleteVirtualNodeRequest(input) 906 req.SetContext(ctx) 907 req.ApplyOptions(opts...) 908 return out, req.Send() 909} 910 911const opDeleteVirtualRouter = "DeleteVirtualRouter" 912 913// DeleteVirtualRouterRequest generates a "aws/request.Request" representing the 914// client's request for the DeleteVirtualRouter operation. The "output" return 915// value will be populated with the request's response once the request completes 916// successfully. 917// 918// Use "Send" method on the returned Request to send the API call to the service. 919// the "output" return value is not valid until after Send returns without error. 920// 921// See DeleteVirtualRouter for more information on using the DeleteVirtualRouter 922// API call, and error handling. 923// 924// This method is useful when you want to inject custom logic or configuration 925// into the SDK's request lifecycle. Such as custom headers, or retry logic. 926// 927// 928// // Example sending a request using the DeleteVirtualRouterRequest method. 929// req, resp := client.DeleteVirtualRouterRequest(params) 930// 931// err := req.Send() 932// if err == nil { // resp is now filled 933// fmt.Println(resp) 934// } 935// 936// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DeleteVirtualRouter 937func (c *AppMesh) DeleteVirtualRouterRequest(input *DeleteVirtualRouterInput) (req *request.Request, output *DeleteVirtualRouterOutput) { 938 op := &request.Operation{ 939 Name: opDeleteVirtualRouter, 940 HTTPMethod: "DELETE", 941 HTTPPath: "/v20190125/meshes/{meshName}/virtualRouters/{virtualRouterName}", 942 } 943 944 if input == nil { 945 input = &DeleteVirtualRouterInput{} 946 } 947 948 output = &DeleteVirtualRouterOutput{} 949 req = c.newRequest(op, input, output) 950 return 951} 952 953// DeleteVirtualRouter API operation for AWS App Mesh. 954// 955// Deletes an existing virtual router. 956// 957// You must delete any routes associated with the virtual router before you 958// can delete the router itself. 959// 960// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 961// with awserr.Error's Code and Message methods to get detailed information about 962// the error. 963// 964// See the AWS API reference guide for AWS App Mesh's 965// API operation DeleteVirtualRouter for usage and error information. 966// 967// Returned Error Types: 968// * BadRequestException 969// The request syntax was malformed. Check your request syntax and try again. 970// 971// * ForbiddenException 972// You don't have permissions to perform this action. 973// 974// * InternalServerErrorException 975// The request processing has failed because of an unknown error, exception, 976// or failure. 977// 978// * NotFoundException 979// The specified resource doesn't exist. Check your request syntax and try again. 980// 981// * ResourceInUseException 982// You can't delete the specified resource because it's in use or required by 983// another resource. 984// 985// * ServiceUnavailableException 986// The request has failed due to a temporary failure of the service. 987// 988// * TooManyRequestsException 989// The maximum request rate permitted by the App Mesh APIs has been exceeded 990// for your account. For best results, use an increasing or variable sleep interval 991// between requests. 992// 993// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DeleteVirtualRouter 994func (c *AppMesh) DeleteVirtualRouter(input *DeleteVirtualRouterInput) (*DeleteVirtualRouterOutput, error) { 995 req, out := c.DeleteVirtualRouterRequest(input) 996 return out, req.Send() 997} 998 999// DeleteVirtualRouterWithContext is the same as DeleteVirtualRouter with the addition of 1000// the ability to pass a context and additional request options. 1001// 1002// See DeleteVirtualRouter for details on how to use this API operation. 1003// 1004// The context must be non-nil and will be used for request cancellation. If 1005// the context is nil a panic will occur. In the future the SDK may create 1006// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1007// for more information on using Contexts. 1008func (c *AppMesh) DeleteVirtualRouterWithContext(ctx aws.Context, input *DeleteVirtualRouterInput, opts ...request.Option) (*DeleteVirtualRouterOutput, error) { 1009 req, out := c.DeleteVirtualRouterRequest(input) 1010 req.SetContext(ctx) 1011 req.ApplyOptions(opts...) 1012 return out, req.Send() 1013} 1014 1015const opDeleteVirtualService = "DeleteVirtualService" 1016 1017// DeleteVirtualServiceRequest generates a "aws/request.Request" representing the 1018// client's request for the DeleteVirtualService operation. The "output" return 1019// value will be populated with the request's response once the request completes 1020// successfully. 1021// 1022// Use "Send" method on the returned Request to send the API call to the service. 1023// the "output" return value is not valid until after Send returns without error. 1024// 1025// See DeleteVirtualService for more information on using the DeleteVirtualService 1026// API call, and error handling. 1027// 1028// This method is useful when you want to inject custom logic or configuration 1029// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1030// 1031// 1032// // Example sending a request using the DeleteVirtualServiceRequest method. 1033// req, resp := client.DeleteVirtualServiceRequest(params) 1034// 1035// err := req.Send() 1036// if err == nil { // resp is now filled 1037// fmt.Println(resp) 1038// } 1039// 1040// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DeleteVirtualService 1041func (c *AppMesh) DeleteVirtualServiceRequest(input *DeleteVirtualServiceInput) (req *request.Request, output *DeleteVirtualServiceOutput) { 1042 op := &request.Operation{ 1043 Name: opDeleteVirtualService, 1044 HTTPMethod: "DELETE", 1045 HTTPPath: "/v20190125/meshes/{meshName}/virtualServices/{virtualServiceName}", 1046 } 1047 1048 if input == nil { 1049 input = &DeleteVirtualServiceInput{} 1050 } 1051 1052 output = &DeleteVirtualServiceOutput{} 1053 req = c.newRequest(op, input, output) 1054 return 1055} 1056 1057// DeleteVirtualService API operation for AWS App Mesh. 1058// 1059// Deletes an existing virtual service. 1060// 1061// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1062// with awserr.Error's Code and Message methods to get detailed information about 1063// the error. 1064// 1065// See the AWS API reference guide for AWS App Mesh's 1066// API operation DeleteVirtualService for usage and error information. 1067// 1068// Returned Error Types: 1069// * BadRequestException 1070// The request syntax was malformed. Check your request syntax and try again. 1071// 1072// * ForbiddenException 1073// You don't have permissions to perform this action. 1074// 1075// * InternalServerErrorException 1076// The request processing has failed because of an unknown error, exception, 1077// or failure. 1078// 1079// * NotFoundException 1080// The specified resource doesn't exist. Check your request syntax and try again. 1081// 1082// * ResourceInUseException 1083// You can't delete the specified resource because it's in use or required by 1084// another resource. 1085// 1086// * ServiceUnavailableException 1087// The request has failed due to a temporary failure of the service. 1088// 1089// * TooManyRequestsException 1090// The maximum request rate permitted by the App Mesh APIs has been exceeded 1091// for your account. For best results, use an increasing or variable sleep interval 1092// between requests. 1093// 1094// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DeleteVirtualService 1095func (c *AppMesh) DeleteVirtualService(input *DeleteVirtualServiceInput) (*DeleteVirtualServiceOutput, error) { 1096 req, out := c.DeleteVirtualServiceRequest(input) 1097 return out, req.Send() 1098} 1099 1100// DeleteVirtualServiceWithContext is the same as DeleteVirtualService with the addition of 1101// the ability to pass a context and additional request options. 1102// 1103// See DeleteVirtualService for details on how to use this API operation. 1104// 1105// The context must be non-nil and will be used for request cancellation. If 1106// the context is nil a panic will occur. In the future the SDK may create 1107// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1108// for more information on using Contexts. 1109func (c *AppMesh) DeleteVirtualServiceWithContext(ctx aws.Context, input *DeleteVirtualServiceInput, opts ...request.Option) (*DeleteVirtualServiceOutput, error) { 1110 req, out := c.DeleteVirtualServiceRequest(input) 1111 req.SetContext(ctx) 1112 req.ApplyOptions(opts...) 1113 return out, req.Send() 1114} 1115 1116const opDescribeMesh = "DescribeMesh" 1117 1118// DescribeMeshRequest generates a "aws/request.Request" representing the 1119// client's request for the DescribeMesh operation. The "output" return 1120// value will be populated with the request's response once the request completes 1121// successfully. 1122// 1123// Use "Send" method on the returned Request to send the API call to the service. 1124// the "output" return value is not valid until after Send returns without error. 1125// 1126// See DescribeMesh for more information on using the DescribeMesh 1127// API call, and error handling. 1128// 1129// This method is useful when you want to inject custom logic or configuration 1130// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1131// 1132// 1133// // Example sending a request using the DescribeMeshRequest method. 1134// req, resp := client.DescribeMeshRequest(params) 1135// 1136// err := req.Send() 1137// if err == nil { // resp is now filled 1138// fmt.Println(resp) 1139// } 1140// 1141// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DescribeMesh 1142func (c *AppMesh) DescribeMeshRequest(input *DescribeMeshInput) (req *request.Request, output *DescribeMeshOutput) { 1143 op := &request.Operation{ 1144 Name: opDescribeMesh, 1145 HTTPMethod: "GET", 1146 HTTPPath: "/v20190125/meshes/{meshName}", 1147 } 1148 1149 if input == nil { 1150 input = &DescribeMeshInput{} 1151 } 1152 1153 output = &DescribeMeshOutput{} 1154 req = c.newRequest(op, input, output) 1155 return 1156} 1157 1158// DescribeMesh API operation for AWS App Mesh. 1159// 1160// Describes an existing service mesh. 1161// 1162// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1163// with awserr.Error's Code and Message methods to get detailed information about 1164// the error. 1165// 1166// See the AWS API reference guide for AWS App Mesh's 1167// API operation DescribeMesh for usage and error information. 1168// 1169// Returned Error Types: 1170// * BadRequestException 1171// The request syntax was malformed. Check your request syntax and try again. 1172// 1173// * ForbiddenException 1174// You don't have permissions to perform this action. 1175// 1176// * InternalServerErrorException 1177// The request processing has failed because of an unknown error, exception, 1178// or failure. 1179// 1180// * NotFoundException 1181// The specified resource doesn't exist. Check your request syntax and try again. 1182// 1183// * ServiceUnavailableException 1184// The request has failed due to a temporary failure of the service. 1185// 1186// * TooManyRequestsException 1187// The maximum request rate permitted by the App Mesh APIs has been exceeded 1188// for your account. For best results, use an increasing or variable sleep interval 1189// between requests. 1190// 1191// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DescribeMesh 1192func (c *AppMesh) DescribeMesh(input *DescribeMeshInput) (*DescribeMeshOutput, error) { 1193 req, out := c.DescribeMeshRequest(input) 1194 return out, req.Send() 1195} 1196 1197// DescribeMeshWithContext is the same as DescribeMesh with the addition of 1198// the ability to pass a context and additional request options. 1199// 1200// See DescribeMesh for details on how to use this API operation. 1201// 1202// The context must be non-nil and will be used for request cancellation. If 1203// the context is nil a panic will occur. In the future the SDK may create 1204// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1205// for more information on using Contexts. 1206func (c *AppMesh) DescribeMeshWithContext(ctx aws.Context, input *DescribeMeshInput, opts ...request.Option) (*DescribeMeshOutput, error) { 1207 req, out := c.DescribeMeshRequest(input) 1208 req.SetContext(ctx) 1209 req.ApplyOptions(opts...) 1210 return out, req.Send() 1211} 1212 1213const opDescribeRoute = "DescribeRoute" 1214 1215// DescribeRouteRequest generates a "aws/request.Request" representing the 1216// client's request for the DescribeRoute operation. The "output" return 1217// value will be populated with the request's response once the request completes 1218// successfully. 1219// 1220// Use "Send" method on the returned Request to send the API call to the service. 1221// the "output" return value is not valid until after Send returns without error. 1222// 1223// See DescribeRoute for more information on using the DescribeRoute 1224// API call, and error handling. 1225// 1226// This method is useful when you want to inject custom logic or configuration 1227// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1228// 1229// 1230// // Example sending a request using the DescribeRouteRequest method. 1231// req, resp := client.DescribeRouteRequest(params) 1232// 1233// err := req.Send() 1234// if err == nil { // resp is now filled 1235// fmt.Println(resp) 1236// } 1237// 1238// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DescribeRoute 1239func (c *AppMesh) DescribeRouteRequest(input *DescribeRouteInput) (req *request.Request, output *DescribeRouteOutput) { 1240 op := &request.Operation{ 1241 Name: opDescribeRoute, 1242 HTTPMethod: "GET", 1243 HTTPPath: "/v20190125/meshes/{meshName}/virtualRouter/{virtualRouterName}/routes/{routeName}", 1244 } 1245 1246 if input == nil { 1247 input = &DescribeRouteInput{} 1248 } 1249 1250 output = &DescribeRouteOutput{} 1251 req = c.newRequest(op, input, output) 1252 return 1253} 1254 1255// DescribeRoute API operation for AWS App Mesh. 1256// 1257// Describes an existing route. 1258// 1259// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1260// with awserr.Error's Code and Message methods to get detailed information about 1261// the error. 1262// 1263// See the AWS API reference guide for AWS App Mesh's 1264// API operation DescribeRoute for usage and error information. 1265// 1266// Returned Error Types: 1267// * BadRequestException 1268// The request syntax was malformed. Check your request syntax and try again. 1269// 1270// * ForbiddenException 1271// You don't have permissions to perform this action. 1272// 1273// * InternalServerErrorException 1274// The request processing has failed because of an unknown error, exception, 1275// or failure. 1276// 1277// * NotFoundException 1278// The specified resource doesn't exist. Check your request syntax and try again. 1279// 1280// * ServiceUnavailableException 1281// The request has failed due to a temporary failure of the service. 1282// 1283// * TooManyRequestsException 1284// The maximum request rate permitted by the App Mesh APIs has been exceeded 1285// for your account. For best results, use an increasing or variable sleep interval 1286// between requests. 1287// 1288// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DescribeRoute 1289func (c *AppMesh) DescribeRoute(input *DescribeRouteInput) (*DescribeRouteOutput, error) { 1290 req, out := c.DescribeRouteRequest(input) 1291 return out, req.Send() 1292} 1293 1294// DescribeRouteWithContext is the same as DescribeRoute with the addition of 1295// the ability to pass a context and additional request options. 1296// 1297// See DescribeRoute for details on how to use this API operation. 1298// 1299// The context must be non-nil and will be used for request cancellation. If 1300// the context is nil a panic will occur. In the future the SDK may create 1301// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1302// for more information on using Contexts. 1303func (c *AppMesh) DescribeRouteWithContext(ctx aws.Context, input *DescribeRouteInput, opts ...request.Option) (*DescribeRouteOutput, error) { 1304 req, out := c.DescribeRouteRequest(input) 1305 req.SetContext(ctx) 1306 req.ApplyOptions(opts...) 1307 return out, req.Send() 1308} 1309 1310const opDescribeVirtualNode = "DescribeVirtualNode" 1311 1312// DescribeVirtualNodeRequest generates a "aws/request.Request" representing the 1313// client's request for the DescribeVirtualNode operation. The "output" return 1314// value will be populated with the request's response once the request completes 1315// successfully. 1316// 1317// Use "Send" method on the returned Request to send the API call to the service. 1318// the "output" return value is not valid until after Send returns without error. 1319// 1320// See DescribeVirtualNode for more information on using the DescribeVirtualNode 1321// API call, and error handling. 1322// 1323// This method is useful when you want to inject custom logic or configuration 1324// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1325// 1326// 1327// // Example sending a request using the DescribeVirtualNodeRequest method. 1328// req, resp := client.DescribeVirtualNodeRequest(params) 1329// 1330// err := req.Send() 1331// if err == nil { // resp is now filled 1332// fmt.Println(resp) 1333// } 1334// 1335// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DescribeVirtualNode 1336func (c *AppMesh) DescribeVirtualNodeRequest(input *DescribeVirtualNodeInput) (req *request.Request, output *DescribeVirtualNodeOutput) { 1337 op := &request.Operation{ 1338 Name: opDescribeVirtualNode, 1339 HTTPMethod: "GET", 1340 HTTPPath: "/v20190125/meshes/{meshName}/virtualNodes/{virtualNodeName}", 1341 } 1342 1343 if input == nil { 1344 input = &DescribeVirtualNodeInput{} 1345 } 1346 1347 output = &DescribeVirtualNodeOutput{} 1348 req = c.newRequest(op, input, output) 1349 return 1350} 1351 1352// DescribeVirtualNode API operation for AWS App Mesh. 1353// 1354// Describes an existing virtual node. 1355// 1356// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1357// with awserr.Error's Code and Message methods to get detailed information about 1358// the error. 1359// 1360// See the AWS API reference guide for AWS App Mesh's 1361// API operation DescribeVirtualNode for usage and error information. 1362// 1363// Returned Error Types: 1364// * BadRequestException 1365// The request syntax was malformed. Check your request syntax and try again. 1366// 1367// * ForbiddenException 1368// You don't have permissions to perform this action. 1369// 1370// * InternalServerErrorException 1371// The request processing has failed because of an unknown error, exception, 1372// or failure. 1373// 1374// * NotFoundException 1375// The specified resource doesn't exist. Check your request syntax and try again. 1376// 1377// * ServiceUnavailableException 1378// The request has failed due to a temporary failure of the service. 1379// 1380// * TooManyRequestsException 1381// The maximum request rate permitted by the App Mesh APIs has been exceeded 1382// for your account. For best results, use an increasing or variable sleep interval 1383// between requests. 1384// 1385// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DescribeVirtualNode 1386func (c *AppMesh) DescribeVirtualNode(input *DescribeVirtualNodeInput) (*DescribeVirtualNodeOutput, error) { 1387 req, out := c.DescribeVirtualNodeRequest(input) 1388 return out, req.Send() 1389} 1390 1391// DescribeVirtualNodeWithContext is the same as DescribeVirtualNode with the addition of 1392// the ability to pass a context and additional request options. 1393// 1394// See DescribeVirtualNode for details on how to use this API operation. 1395// 1396// The context must be non-nil and will be used for request cancellation. If 1397// the context is nil a panic will occur. In the future the SDK may create 1398// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1399// for more information on using Contexts. 1400func (c *AppMesh) DescribeVirtualNodeWithContext(ctx aws.Context, input *DescribeVirtualNodeInput, opts ...request.Option) (*DescribeVirtualNodeOutput, error) { 1401 req, out := c.DescribeVirtualNodeRequest(input) 1402 req.SetContext(ctx) 1403 req.ApplyOptions(opts...) 1404 return out, req.Send() 1405} 1406 1407const opDescribeVirtualRouter = "DescribeVirtualRouter" 1408 1409// DescribeVirtualRouterRequest generates a "aws/request.Request" representing the 1410// client's request for the DescribeVirtualRouter operation. The "output" return 1411// value will be populated with the request's response once the request completes 1412// successfully. 1413// 1414// Use "Send" method on the returned Request to send the API call to the service. 1415// the "output" return value is not valid until after Send returns without error. 1416// 1417// See DescribeVirtualRouter for more information on using the DescribeVirtualRouter 1418// API call, and error handling. 1419// 1420// This method is useful when you want to inject custom logic or configuration 1421// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1422// 1423// 1424// // Example sending a request using the DescribeVirtualRouterRequest method. 1425// req, resp := client.DescribeVirtualRouterRequest(params) 1426// 1427// err := req.Send() 1428// if err == nil { // resp is now filled 1429// fmt.Println(resp) 1430// } 1431// 1432// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DescribeVirtualRouter 1433func (c *AppMesh) DescribeVirtualRouterRequest(input *DescribeVirtualRouterInput) (req *request.Request, output *DescribeVirtualRouterOutput) { 1434 op := &request.Operation{ 1435 Name: opDescribeVirtualRouter, 1436 HTTPMethod: "GET", 1437 HTTPPath: "/v20190125/meshes/{meshName}/virtualRouters/{virtualRouterName}", 1438 } 1439 1440 if input == nil { 1441 input = &DescribeVirtualRouterInput{} 1442 } 1443 1444 output = &DescribeVirtualRouterOutput{} 1445 req = c.newRequest(op, input, output) 1446 return 1447} 1448 1449// DescribeVirtualRouter API operation for AWS App Mesh. 1450// 1451// Describes an existing virtual router. 1452// 1453// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1454// with awserr.Error's Code and Message methods to get detailed information about 1455// the error. 1456// 1457// See the AWS API reference guide for AWS App Mesh's 1458// API operation DescribeVirtualRouter for usage and error information. 1459// 1460// Returned Error Types: 1461// * BadRequestException 1462// The request syntax was malformed. Check your request syntax and try again. 1463// 1464// * ForbiddenException 1465// You don't have permissions to perform this action. 1466// 1467// * InternalServerErrorException 1468// The request processing has failed because of an unknown error, exception, 1469// or failure. 1470// 1471// * NotFoundException 1472// The specified resource doesn't exist. Check your request syntax and try again. 1473// 1474// * ServiceUnavailableException 1475// The request has failed due to a temporary failure of the service. 1476// 1477// * TooManyRequestsException 1478// The maximum request rate permitted by the App Mesh APIs has been exceeded 1479// for your account. For best results, use an increasing or variable sleep interval 1480// between requests. 1481// 1482// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DescribeVirtualRouter 1483func (c *AppMesh) DescribeVirtualRouter(input *DescribeVirtualRouterInput) (*DescribeVirtualRouterOutput, error) { 1484 req, out := c.DescribeVirtualRouterRequest(input) 1485 return out, req.Send() 1486} 1487 1488// DescribeVirtualRouterWithContext is the same as DescribeVirtualRouter with the addition of 1489// the ability to pass a context and additional request options. 1490// 1491// See DescribeVirtualRouter for details on how to use this API operation. 1492// 1493// The context must be non-nil and will be used for request cancellation. If 1494// the context is nil a panic will occur. In the future the SDK may create 1495// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1496// for more information on using Contexts. 1497func (c *AppMesh) DescribeVirtualRouterWithContext(ctx aws.Context, input *DescribeVirtualRouterInput, opts ...request.Option) (*DescribeVirtualRouterOutput, error) { 1498 req, out := c.DescribeVirtualRouterRequest(input) 1499 req.SetContext(ctx) 1500 req.ApplyOptions(opts...) 1501 return out, req.Send() 1502} 1503 1504const opDescribeVirtualService = "DescribeVirtualService" 1505 1506// DescribeVirtualServiceRequest generates a "aws/request.Request" representing the 1507// client's request for the DescribeVirtualService operation. The "output" return 1508// value will be populated with the request's response once the request completes 1509// successfully. 1510// 1511// Use "Send" method on the returned Request to send the API call to the service. 1512// the "output" return value is not valid until after Send returns without error. 1513// 1514// See DescribeVirtualService for more information on using the DescribeVirtualService 1515// API call, and error handling. 1516// 1517// This method is useful when you want to inject custom logic or configuration 1518// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1519// 1520// 1521// // Example sending a request using the DescribeVirtualServiceRequest method. 1522// req, resp := client.DescribeVirtualServiceRequest(params) 1523// 1524// err := req.Send() 1525// if err == nil { // resp is now filled 1526// fmt.Println(resp) 1527// } 1528// 1529// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DescribeVirtualService 1530func (c *AppMesh) DescribeVirtualServiceRequest(input *DescribeVirtualServiceInput) (req *request.Request, output *DescribeVirtualServiceOutput) { 1531 op := &request.Operation{ 1532 Name: opDescribeVirtualService, 1533 HTTPMethod: "GET", 1534 HTTPPath: "/v20190125/meshes/{meshName}/virtualServices/{virtualServiceName}", 1535 } 1536 1537 if input == nil { 1538 input = &DescribeVirtualServiceInput{} 1539 } 1540 1541 output = &DescribeVirtualServiceOutput{} 1542 req = c.newRequest(op, input, output) 1543 return 1544} 1545 1546// DescribeVirtualService API operation for AWS App Mesh. 1547// 1548// Describes an existing virtual service. 1549// 1550// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1551// with awserr.Error's Code and Message methods to get detailed information about 1552// the error. 1553// 1554// See the AWS API reference guide for AWS App Mesh's 1555// API operation DescribeVirtualService for usage and error information. 1556// 1557// Returned Error Types: 1558// * BadRequestException 1559// The request syntax was malformed. Check your request syntax and try again. 1560// 1561// * ForbiddenException 1562// You don't have permissions to perform this action. 1563// 1564// * InternalServerErrorException 1565// The request processing has failed because of an unknown error, exception, 1566// or failure. 1567// 1568// * NotFoundException 1569// The specified resource doesn't exist. Check your request syntax and try again. 1570// 1571// * ServiceUnavailableException 1572// The request has failed due to a temporary failure of the service. 1573// 1574// * TooManyRequestsException 1575// The maximum request rate permitted by the App Mesh APIs has been exceeded 1576// for your account. For best results, use an increasing or variable sleep interval 1577// between requests. 1578// 1579// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DescribeVirtualService 1580func (c *AppMesh) DescribeVirtualService(input *DescribeVirtualServiceInput) (*DescribeVirtualServiceOutput, error) { 1581 req, out := c.DescribeVirtualServiceRequest(input) 1582 return out, req.Send() 1583} 1584 1585// DescribeVirtualServiceWithContext is the same as DescribeVirtualService with the addition of 1586// the ability to pass a context and additional request options. 1587// 1588// See DescribeVirtualService for details on how to use this API operation. 1589// 1590// The context must be non-nil and will be used for request cancellation. If 1591// the context is nil a panic will occur. In the future the SDK may create 1592// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1593// for more information on using Contexts. 1594func (c *AppMesh) DescribeVirtualServiceWithContext(ctx aws.Context, input *DescribeVirtualServiceInput, opts ...request.Option) (*DescribeVirtualServiceOutput, error) { 1595 req, out := c.DescribeVirtualServiceRequest(input) 1596 req.SetContext(ctx) 1597 req.ApplyOptions(opts...) 1598 return out, req.Send() 1599} 1600 1601const opListMeshes = "ListMeshes" 1602 1603// ListMeshesRequest generates a "aws/request.Request" representing the 1604// client's request for the ListMeshes operation. The "output" return 1605// value will be populated with the request's response once the request completes 1606// successfully. 1607// 1608// Use "Send" method on the returned Request to send the API call to the service. 1609// the "output" return value is not valid until after Send returns without error. 1610// 1611// See ListMeshes for more information on using the ListMeshes 1612// API call, and error handling. 1613// 1614// This method is useful when you want to inject custom logic or configuration 1615// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1616// 1617// 1618// // Example sending a request using the ListMeshesRequest method. 1619// req, resp := client.ListMeshesRequest(params) 1620// 1621// err := req.Send() 1622// if err == nil { // resp is now filled 1623// fmt.Println(resp) 1624// } 1625// 1626// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListMeshes 1627func (c *AppMesh) ListMeshesRequest(input *ListMeshesInput) (req *request.Request, output *ListMeshesOutput) { 1628 op := &request.Operation{ 1629 Name: opListMeshes, 1630 HTTPMethod: "GET", 1631 HTTPPath: "/v20190125/meshes", 1632 Paginator: &request.Paginator{ 1633 InputTokens: []string{"nextToken"}, 1634 OutputTokens: []string{"nextToken"}, 1635 LimitToken: "limit", 1636 TruncationToken: "", 1637 }, 1638 } 1639 1640 if input == nil { 1641 input = &ListMeshesInput{} 1642 } 1643 1644 output = &ListMeshesOutput{} 1645 req = c.newRequest(op, input, output) 1646 return 1647} 1648 1649// ListMeshes API operation for AWS App Mesh. 1650// 1651// Returns a list of existing service meshes. 1652// 1653// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1654// with awserr.Error's Code and Message methods to get detailed information about 1655// the error. 1656// 1657// See the AWS API reference guide for AWS App Mesh's 1658// API operation ListMeshes for usage and error information. 1659// 1660// Returned Error Types: 1661// * BadRequestException 1662// The request syntax was malformed. Check your request syntax and try again. 1663// 1664// * ForbiddenException 1665// You don't have permissions to perform this action. 1666// 1667// * InternalServerErrorException 1668// The request processing has failed because of an unknown error, exception, 1669// or failure. 1670// 1671// * NotFoundException 1672// The specified resource doesn't exist. Check your request syntax and try again. 1673// 1674// * ServiceUnavailableException 1675// The request has failed due to a temporary failure of the service. 1676// 1677// * TooManyRequestsException 1678// The maximum request rate permitted by the App Mesh APIs has been exceeded 1679// for your account. For best results, use an increasing or variable sleep interval 1680// between requests. 1681// 1682// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListMeshes 1683func (c *AppMesh) ListMeshes(input *ListMeshesInput) (*ListMeshesOutput, error) { 1684 req, out := c.ListMeshesRequest(input) 1685 return out, req.Send() 1686} 1687 1688// ListMeshesWithContext is the same as ListMeshes with the addition of 1689// the ability to pass a context and additional request options. 1690// 1691// See ListMeshes for details on how to use this API operation. 1692// 1693// The context must be non-nil and will be used for request cancellation. If 1694// the context is nil a panic will occur. In the future the SDK may create 1695// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1696// for more information on using Contexts. 1697func (c *AppMesh) ListMeshesWithContext(ctx aws.Context, input *ListMeshesInput, opts ...request.Option) (*ListMeshesOutput, error) { 1698 req, out := c.ListMeshesRequest(input) 1699 req.SetContext(ctx) 1700 req.ApplyOptions(opts...) 1701 return out, req.Send() 1702} 1703 1704// ListMeshesPages iterates over the pages of a ListMeshes operation, 1705// calling the "fn" function with the response data for each page. To stop 1706// iterating, return false from the fn function. 1707// 1708// See ListMeshes method for more information on how to use this operation. 1709// 1710// Note: This operation can generate multiple requests to a service. 1711// 1712// // Example iterating over at most 3 pages of a ListMeshes operation. 1713// pageNum := 0 1714// err := client.ListMeshesPages(params, 1715// func(page *appmesh.ListMeshesOutput, lastPage bool) bool { 1716// pageNum++ 1717// fmt.Println(page) 1718// return pageNum <= 3 1719// }) 1720// 1721func (c *AppMesh) ListMeshesPages(input *ListMeshesInput, fn func(*ListMeshesOutput, bool) bool) error { 1722 return c.ListMeshesPagesWithContext(aws.BackgroundContext(), input, fn) 1723} 1724 1725// ListMeshesPagesWithContext same as ListMeshesPages except 1726// it takes a Context and allows setting request options on the pages. 1727// 1728// The context must be non-nil and will be used for request cancellation. If 1729// the context is nil a panic will occur. In the future the SDK may create 1730// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1731// for more information on using Contexts. 1732func (c *AppMesh) ListMeshesPagesWithContext(ctx aws.Context, input *ListMeshesInput, fn func(*ListMeshesOutput, bool) bool, opts ...request.Option) error { 1733 p := request.Pagination{ 1734 NewRequest: func() (*request.Request, error) { 1735 var inCpy *ListMeshesInput 1736 if input != nil { 1737 tmp := *input 1738 inCpy = &tmp 1739 } 1740 req, _ := c.ListMeshesRequest(inCpy) 1741 req.SetContext(ctx) 1742 req.ApplyOptions(opts...) 1743 return req, nil 1744 }, 1745 } 1746 1747 for p.Next() { 1748 if !fn(p.Page().(*ListMeshesOutput), !p.HasNextPage()) { 1749 break 1750 } 1751 } 1752 1753 return p.Err() 1754} 1755 1756const opListRoutes = "ListRoutes" 1757 1758// ListRoutesRequest generates a "aws/request.Request" representing the 1759// client's request for the ListRoutes operation. The "output" return 1760// value will be populated with the request's response once the request completes 1761// successfully. 1762// 1763// Use "Send" method on the returned Request to send the API call to the service. 1764// the "output" return value is not valid until after Send returns without error. 1765// 1766// See ListRoutes for more information on using the ListRoutes 1767// API call, and error handling. 1768// 1769// This method is useful when you want to inject custom logic or configuration 1770// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1771// 1772// 1773// // Example sending a request using the ListRoutesRequest method. 1774// req, resp := client.ListRoutesRequest(params) 1775// 1776// err := req.Send() 1777// if err == nil { // resp is now filled 1778// fmt.Println(resp) 1779// } 1780// 1781// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListRoutes 1782func (c *AppMesh) ListRoutesRequest(input *ListRoutesInput) (req *request.Request, output *ListRoutesOutput) { 1783 op := &request.Operation{ 1784 Name: opListRoutes, 1785 HTTPMethod: "GET", 1786 HTTPPath: "/v20190125/meshes/{meshName}/virtualRouter/{virtualRouterName}/routes", 1787 Paginator: &request.Paginator{ 1788 InputTokens: []string{"nextToken"}, 1789 OutputTokens: []string{"nextToken"}, 1790 LimitToken: "limit", 1791 TruncationToken: "", 1792 }, 1793 } 1794 1795 if input == nil { 1796 input = &ListRoutesInput{} 1797 } 1798 1799 output = &ListRoutesOutput{} 1800 req = c.newRequest(op, input, output) 1801 return 1802} 1803 1804// ListRoutes API operation for AWS App Mesh. 1805// 1806// Returns a list of existing routes in a service mesh. 1807// 1808// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1809// with awserr.Error's Code and Message methods to get detailed information about 1810// the error. 1811// 1812// See the AWS API reference guide for AWS App Mesh's 1813// API operation ListRoutes for usage and error information. 1814// 1815// Returned Error Types: 1816// * BadRequestException 1817// The request syntax was malformed. Check your request syntax and try again. 1818// 1819// * ForbiddenException 1820// You don't have permissions to perform this action. 1821// 1822// * InternalServerErrorException 1823// The request processing has failed because of an unknown error, exception, 1824// or failure. 1825// 1826// * NotFoundException 1827// The specified resource doesn't exist. Check your request syntax and try again. 1828// 1829// * ServiceUnavailableException 1830// The request has failed due to a temporary failure of the service. 1831// 1832// * TooManyRequestsException 1833// The maximum request rate permitted by the App Mesh APIs has been exceeded 1834// for your account. For best results, use an increasing or variable sleep interval 1835// between requests. 1836// 1837// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListRoutes 1838func (c *AppMesh) ListRoutes(input *ListRoutesInput) (*ListRoutesOutput, error) { 1839 req, out := c.ListRoutesRequest(input) 1840 return out, req.Send() 1841} 1842 1843// ListRoutesWithContext is the same as ListRoutes with the addition of 1844// the ability to pass a context and additional request options. 1845// 1846// See ListRoutes for details on how to use this API operation. 1847// 1848// The context must be non-nil and will be used for request cancellation. If 1849// the context is nil a panic will occur. In the future the SDK may create 1850// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1851// for more information on using Contexts. 1852func (c *AppMesh) ListRoutesWithContext(ctx aws.Context, input *ListRoutesInput, opts ...request.Option) (*ListRoutesOutput, error) { 1853 req, out := c.ListRoutesRequest(input) 1854 req.SetContext(ctx) 1855 req.ApplyOptions(opts...) 1856 return out, req.Send() 1857} 1858 1859// ListRoutesPages iterates over the pages of a ListRoutes operation, 1860// calling the "fn" function with the response data for each page. To stop 1861// iterating, return false from the fn function. 1862// 1863// See ListRoutes method for more information on how to use this operation. 1864// 1865// Note: This operation can generate multiple requests to a service. 1866// 1867// // Example iterating over at most 3 pages of a ListRoutes operation. 1868// pageNum := 0 1869// err := client.ListRoutesPages(params, 1870// func(page *appmesh.ListRoutesOutput, lastPage bool) bool { 1871// pageNum++ 1872// fmt.Println(page) 1873// return pageNum <= 3 1874// }) 1875// 1876func (c *AppMesh) ListRoutesPages(input *ListRoutesInput, fn func(*ListRoutesOutput, bool) bool) error { 1877 return c.ListRoutesPagesWithContext(aws.BackgroundContext(), input, fn) 1878} 1879 1880// ListRoutesPagesWithContext same as ListRoutesPages except 1881// it takes a Context and allows setting request options on the pages. 1882// 1883// The context must be non-nil and will be used for request cancellation. If 1884// the context is nil a panic will occur. In the future the SDK may create 1885// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1886// for more information on using Contexts. 1887func (c *AppMesh) ListRoutesPagesWithContext(ctx aws.Context, input *ListRoutesInput, fn func(*ListRoutesOutput, bool) bool, opts ...request.Option) error { 1888 p := request.Pagination{ 1889 NewRequest: func() (*request.Request, error) { 1890 var inCpy *ListRoutesInput 1891 if input != nil { 1892 tmp := *input 1893 inCpy = &tmp 1894 } 1895 req, _ := c.ListRoutesRequest(inCpy) 1896 req.SetContext(ctx) 1897 req.ApplyOptions(opts...) 1898 return req, nil 1899 }, 1900 } 1901 1902 for p.Next() { 1903 if !fn(p.Page().(*ListRoutesOutput), !p.HasNextPage()) { 1904 break 1905 } 1906 } 1907 1908 return p.Err() 1909} 1910 1911const opListTagsForResource = "ListTagsForResource" 1912 1913// ListTagsForResourceRequest generates a "aws/request.Request" representing the 1914// client's request for the ListTagsForResource operation. The "output" return 1915// value will be populated with the request's response once the request completes 1916// successfully. 1917// 1918// Use "Send" method on the returned Request to send the API call to the service. 1919// the "output" return value is not valid until after Send returns without error. 1920// 1921// See ListTagsForResource for more information on using the ListTagsForResource 1922// API call, and error handling. 1923// 1924// This method is useful when you want to inject custom logic or configuration 1925// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1926// 1927// 1928// // Example sending a request using the ListTagsForResourceRequest method. 1929// req, resp := client.ListTagsForResourceRequest(params) 1930// 1931// err := req.Send() 1932// if err == nil { // resp is now filled 1933// fmt.Println(resp) 1934// } 1935// 1936// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListTagsForResource 1937func (c *AppMesh) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) { 1938 op := &request.Operation{ 1939 Name: opListTagsForResource, 1940 HTTPMethod: "GET", 1941 HTTPPath: "/v20190125/tags", 1942 Paginator: &request.Paginator{ 1943 InputTokens: []string{"nextToken"}, 1944 OutputTokens: []string{"nextToken"}, 1945 LimitToken: "limit", 1946 TruncationToken: "", 1947 }, 1948 } 1949 1950 if input == nil { 1951 input = &ListTagsForResourceInput{} 1952 } 1953 1954 output = &ListTagsForResourceOutput{} 1955 req = c.newRequest(op, input, output) 1956 return 1957} 1958 1959// ListTagsForResource API operation for AWS App Mesh. 1960// 1961// List the tags for an App Mesh resource. 1962// 1963// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1964// with awserr.Error's Code and Message methods to get detailed information about 1965// the error. 1966// 1967// See the AWS API reference guide for AWS App Mesh's 1968// API operation ListTagsForResource for usage and error information. 1969// 1970// Returned Error Types: 1971// * BadRequestException 1972// The request syntax was malformed. Check your request syntax and try again. 1973// 1974// * ForbiddenException 1975// You don't have permissions to perform this action. 1976// 1977// * InternalServerErrorException 1978// The request processing has failed because of an unknown error, exception, 1979// or failure. 1980// 1981// * NotFoundException 1982// The specified resource doesn't exist. Check your request syntax and try again. 1983// 1984// * ServiceUnavailableException 1985// The request has failed due to a temporary failure of the service. 1986// 1987// * TooManyRequestsException 1988// The maximum request rate permitted by the App Mesh APIs has been exceeded 1989// for your account. For best results, use an increasing or variable sleep interval 1990// between requests. 1991// 1992// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListTagsForResource 1993func (c *AppMesh) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) { 1994 req, out := c.ListTagsForResourceRequest(input) 1995 return out, req.Send() 1996} 1997 1998// ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of 1999// the ability to pass a context and additional request options. 2000// 2001// See ListTagsForResource for details on how to use this API operation. 2002// 2003// The context must be non-nil and will be used for request cancellation. If 2004// the context is nil a panic will occur. In the future the SDK may create 2005// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2006// for more information on using Contexts. 2007func (c *AppMesh) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) { 2008 req, out := c.ListTagsForResourceRequest(input) 2009 req.SetContext(ctx) 2010 req.ApplyOptions(opts...) 2011 return out, req.Send() 2012} 2013 2014// ListTagsForResourcePages iterates over the pages of a ListTagsForResource operation, 2015// calling the "fn" function with the response data for each page. To stop 2016// iterating, return false from the fn function. 2017// 2018// See ListTagsForResource method for more information on how to use this operation. 2019// 2020// Note: This operation can generate multiple requests to a service. 2021// 2022// // Example iterating over at most 3 pages of a ListTagsForResource operation. 2023// pageNum := 0 2024// err := client.ListTagsForResourcePages(params, 2025// func(page *appmesh.ListTagsForResourceOutput, lastPage bool) bool { 2026// pageNum++ 2027// fmt.Println(page) 2028// return pageNum <= 3 2029// }) 2030// 2031func (c *AppMesh) ListTagsForResourcePages(input *ListTagsForResourceInput, fn func(*ListTagsForResourceOutput, bool) bool) error { 2032 return c.ListTagsForResourcePagesWithContext(aws.BackgroundContext(), input, fn) 2033} 2034 2035// ListTagsForResourcePagesWithContext same as ListTagsForResourcePages except 2036// it takes a Context and allows setting request options on the pages. 2037// 2038// The context must be non-nil and will be used for request cancellation. If 2039// the context is nil a panic will occur. In the future the SDK may create 2040// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2041// for more information on using Contexts. 2042func (c *AppMesh) ListTagsForResourcePagesWithContext(ctx aws.Context, input *ListTagsForResourceInput, fn func(*ListTagsForResourceOutput, bool) bool, opts ...request.Option) error { 2043 p := request.Pagination{ 2044 NewRequest: func() (*request.Request, error) { 2045 var inCpy *ListTagsForResourceInput 2046 if input != nil { 2047 tmp := *input 2048 inCpy = &tmp 2049 } 2050 req, _ := c.ListTagsForResourceRequest(inCpy) 2051 req.SetContext(ctx) 2052 req.ApplyOptions(opts...) 2053 return req, nil 2054 }, 2055 } 2056 2057 for p.Next() { 2058 if !fn(p.Page().(*ListTagsForResourceOutput), !p.HasNextPage()) { 2059 break 2060 } 2061 } 2062 2063 return p.Err() 2064} 2065 2066const opListVirtualNodes = "ListVirtualNodes" 2067 2068// ListVirtualNodesRequest generates a "aws/request.Request" representing the 2069// client's request for the ListVirtualNodes operation. The "output" return 2070// value will be populated with the request's response once the request completes 2071// successfully. 2072// 2073// Use "Send" method on the returned Request to send the API call to the service. 2074// the "output" return value is not valid until after Send returns without error. 2075// 2076// See ListVirtualNodes for more information on using the ListVirtualNodes 2077// API call, and error handling. 2078// 2079// This method is useful when you want to inject custom logic or configuration 2080// into the SDK's request lifecycle. Such as custom headers, or retry logic. 2081// 2082// 2083// // Example sending a request using the ListVirtualNodesRequest method. 2084// req, resp := client.ListVirtualNodesRequest(params) 2085// 2086// err := req.Send() 2087// if err == nil { // resp is now filled 2088// fmt.Println(resp) 2089// } 2090// 2091// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListVirtualNodes 2092func (c *AppMesh) ListVirtualNodesRequest(input *ListVirtualNodesInput) (req *request.Request, output *ListVirtualNodesOutput) { 2093 op := &request.Operation{ 2094 Name: opListVirtualNodes, 2095 HTTPMethod: "GET", 2096 HTTPPath: "/v20190125/meshes/{meshName}/virtualNodes", 2097 Paginator: &request.Paginator{ 2098 InputTokens: []string{"nextToken"}, 2099 OutputTokens: []string{"nextToken"}, 2100 LimitToken: "limit", 2101 TruncationToken: "", 2102 }, 2103 } 2104 2105 if input == nil { 2106 input = &ListVirtualNodesInput{} 2107 } 2108 2109 output = &ListVirtualNodesOutput{} 2110 req = c.newRequest(op, input, output) 2111 return 2112} 2113 2114// ListVirtualNodes API operation for AWS App Mesh. 2115// 2116// Returns a list of existing virtual nodes. 2117// 2118// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2119// with awserr.Error's Code and Message methods to get detailed information about 2120// the error. 2121// 2122// See the AWS API reference guide for AWS App Mesh's 2123// API operation ListVirtualNodes for usage and error information. 2124// 2125// Returned Error Types: 2126// * BadRequestException 2127// The request syntax was malformed. Check your request syntax and try again. 2128// 2129// * ForbiddenException 2130// You don't have permissions to perform this action. 2131// 2132// * InternalServerErrorException 2133// The request processing has failed because of an unknown error, exception, 2134// or failure. 2135// 2136// * NotFoundException 2137// The specified resource doesn't exist. Check your request syntax and try again. 2138// 2139// * ServiceUnavailableException 2140// The request has failed due to a temporary failure of the service. 2141// 2142// * TooManyRequestsException 2143// The maximum request rate permitted by the App Mesh APIs has been exceeded 2144// for your account. For best results, use an increasing or variable sleep interval 2145// between requests. 2146// 2147// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListVirtualNodes 2148func (c *AppMesh) ListVirtualNodes(input *ListVirtualNodesInput) (*ListVirtualNodesOutput, error) { 2149 req, out := c.ListVirtualNodesRequest(input) 2150 return out, req.Send() 2151} 2152 2153// ListVirtualNodesWithContext is the same as ListVirtualNodes with the addition of 2154// the ability to pass a context and additional request options. 2155// 2156// See ListVirtualNodes for details on how to use this API operation. 2157// 2158// The context must be non-nil and will be used for request cancellation. If 2159// the context is nil a panic will occur. In the future the SDK may create 2160// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2161// for more information on using Contexts. 2162func (c *AppMesh) ListVirtualNodesWithContext(ctx aws.Context, input *ListVirtualNodesInput, opts ...request.Option) (*ListVirtualNodesOutput, error) { 2163 req, out := c.ListVirtualNodesRequest(input) 2164 req.SetContext(ctx) 2165 req.ApplyOptions(opts...) 2166 return out, req.Send() 2167} 2168 2169// ListVirtualNodesPages iterates over the pages of a ListVirtualNodes operation, 2170// calling the "fn" function with the response data for each page. To stop 2171// iterating, return false from the fn function. 2172// 2173// See ListVirtualNodes method for more information on how to use this operation. 2174// 2175// Note: This operation can generate multiple requests to a service. 2176// 2177// // Example iterating over at most 3 pages of a ListVirtualNodes operation. 2178// pageNum := 0 2179// err := client.ListVirtualNodesPages(params, 2180// func(page *appmesh.ListVirtualNodesOutput, lastPage bool) bool { 2181// pageNum++ 2182// fmt.Println(page) 2183// return pageNum <= 3 2184// }) 2185// 2186func (c *AppMesh) ListVirtualNodesPages(input *ListVirtualNodesInput, fn func(*ListVirtualNodesOutput, bool) bool) error { 2187 return c.ListVirtualNodesPagesWithContext(aws.BackgroundContext(), input, fn) 2188} 2189 2190// ListVirtualNodesPagesWithContext same as ListVirtualNodesPages except 2191// it takes a Context and allows setting request options on the pages. 2192// 2193// The context must be non-nil and will be used for request cancellation. If 2194// the context is nil a panic will occur. In the future the SDK may create 2195// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2196// for more information on using Contexts. 2197func (c *AppMesh) ListVirtualNodesPagesWithContext(ctx aws.Context, input *ListVirtualNodesInput, fn func(*ListVirtualNodesOutput, bool) bool, opts ...request.Option) error { 2198 p := request.Pagination{ 2199 NewRequest: func() (*request.Request, error) { 2200 var inCpy *ListVirtualNodesInput 2201 if input != nil { 2202 tmp := *input 2203 inCpy = &tmp 2204 } 2205 req, _ := c.ListVirtualNodesRequest(inCpy) 2206 req.SetContext(ctx) 2207 req.ApplyOptions(opts...) 2208 return req, nil 2209 }, 2210 } 2211 2212 for p.Next() { 2213 if !fn(p.Page().(*ListVirtualNodesOutput), !p.HasNextPage()) { 2214 break 2215 } 2216 } 2217 2218 return p.Err() 2219} 2220 2221const opListVirtualRouters = "ListVirtualRouters" 2222 2223// ListVirtualRoutersRequest generates a "aws/request.Request" representing the 2224// client's request for the ListVirtualRouters operation. The "output" return 2225// value will be populated with the request's response once the request completes 2226// successfully. 2227// 2228// Use "Send" method on the returned Request to send the API call to the service. 2229// the "output" return value is not valid until after Send returns without error. 2230// 2231// See ListVirtualRouters for more information on using the ListVirtualRouters 2232// API call, and error handling. 2233// 2234// This method is useful when you want to inject custom logic or configuration 2235// into the SDK's request lifecycle. Such as custom headers, or retry logic. 2236// 2237// 2238// // Example sending a request using the ListVirtualRoutersRequest method. 2239// req, resp := client.ListVirtualRoutersRequest(params) 2240// 2241// err := req.Send() 2242// if err == nil { // resp is now filled 2243// fmt.Println(resp) 2244// } 2245// 2246// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListVirtualRouters 2247func (c *AppMesh) ListVirtualRoutersRequest(input *ListVirtualRoutersInput) (req *request.Request, output *ListVirtualRoutersOutput) { 2248 op := &request.Operation{ 2249 Name: opListVirtualRouters, 2250 HTTPMethod: "GET", 2251 HTTPPath: "/v20190125/meshes/{meshName}/virtualRouters", 2252 Paginator: &request.Paginator{ 2253 InputTokens: []string{"nextToken"}, 2254 OutputTokens: []string{"nextToken"}, 2255 LimitToken: "limit", 2256 TruncationToken: "", 2257 }, 2258 } 2259 2260 if input == nil { 2261 input = &ListVirtualRoutersInput{} 2262 } 2263 2264 output = &ListVirtualRoutersOutput{} 2265 req = c.newRequest(op, input, output) 2266 return 2267} 2268 2269// ListVirtualRouters API operation for AWS App Mesh. 2270// 2271// Returns a list of existing virtual routers in a service mesh. 2272// 2273// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2274// with awserr.Error's Code and Message methods to get detailed information about 2275// the error. 2276// 2277// See the AWS API reference guide for AWS App Mesh's 2278// API operation ListVirtualRouters for usage and error information. 2279// 2280// Returned Error Types: 2281// * BadRequestException 2282// The request syntax was malformed. Check your request syntax and try again. 2283// 2284// * ForbiddenException 2285// You don't have permissions to perform this action. 2286// 2287// * InternalServerErrorException 2288// The request processing has failed because of an unknown error, exception, 2289// or failure. 2290// 2291// * NotFoundException 2292// The specified resource doesn't exist. Check your request syntax and try again. 2293// 2294// * ServiceUnavailableException 2295// The request has failed due to a temporary failure of the service. 2296// 2297// * TooManyRequestsException 2298// The maximum request rate permitted by the App Mesh APIs has been exceeded 2299// for your account. For best results, use an increasing or variable sleep interval 2300// between requests. 2301// 2302// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListVirtualRouters 2303func (c *AppMesh) ListVirtualRouters(input *ListVirtualRoutersInput) (*ListVirtualRoutersOutput, error) { 2304 req, out := c.ListVirtualRoutersRequest(input) 2305 return out, req.Send() 2306} 2307 2308// ListVirtualRoutersWithContext is the same as ListVirtualRouters with the addition of 2309// the ability to pass a context and additional request options. 2310// 2311// See ListVirtualRouters for details on how to use this API operation. 2312// 2313// The context must be non-nil and will be used for request cancellation. If 2314// the context is nil a panic will occur. In the future the SDK may create 2315// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2316// for more information on using Contexts. 2317func (c *AppMesh) ListVirtualRoutersWithContext(ctx aws.Context, input *ListVirtualRoutersInput, opts ...request.Option) (*ListVirtualRoutersOutput, error) { 2318 req, out := c.ListVirtualRoutersRequest(input) 2319 req.SetContext(ctx) 2320 req.ApplyOptions(opts...) 2321 return out, req.Send() 2322} 2323 2324// ListVirtualRoutersPages iterates over the pages of a ListVirtualRouters operation, 2325// calling the "fn" function with the response data for each page. To stop 2326// iterating, return false from the fn function. 2327// 2328// See ListVirtualRouters method for more information on how to use this operation. 2329// 2330// Note: This operation can generate multiple requests to a service. 2331// 2332// // Example iterating over at most 3 pages of a ListVirtualRouters operation. 2333// pageNum := 0 2334// err := client.ListVirtualRoutersPages(params, 2335// func(page *appmesh.ListVirtualRoutersOutput, lastPage bool) bool { 2336// pageNum++ 2337// fmt.Println(page) 2338// return pageNum <= 3 2339// }) 2340// 2341func (c *AppMesh) ListVirtualRoutersPages(input *ListVirtualRoutersInput, fn func(*ListVirtualRoutersOutput, bool) bool) error { 2342 return c.ListVirtualRoutersPagesWithContext(aws.BackgroundContext(), input, fn) 2343} 2344 2345// ListVirtualRoutersPagesWithContext same as ListVirtualRoutersPages except 2346// it takes a Context and allows setting request options on the pages. 2347// 2348// The context must be non-nil and will be used for request cancellation. If 2349// the context is nil a panic will occur. In the future the SDK may create 2350// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2351// for more information on using Contexts. 2352func (c *AppMesh) ListVirtualRoutersPagesWithContext(ctx aws.Context, input *ListVirtualRoutersInput, fn func(*ListVirtualRoutersOutput, bool) bool, opts ...request.Option) error { 2353 p := request.Pagination{ 2354 NewRequest: func() (*request.Request, error) { 2355 var inCpy *ListVirtualRoutersInput 2356 if input != nil { 2357 tmp := *input 2358 inCpy = &tmp 2359 } 2360 req, _ := c.ListVirtualRoutersRequest(inCpy) 2361 req.SetContext(ctx) 2362 req.ApplyOptions(opts...) 2363 return req, nil 2364 }, 2365 } 2366 2367 for p.Next() { 2368 if !fn(p.Page().(*ListVirtualRoutersOutput), !p.HasNextPage()) { 2369 break 2370 } 2371 } 2372 2373 return p.Err() 2374} 2375 2376const opListVirtualServices = "ListVirtualServices" 2377 2378// ListVirtualServicesRequest generates a "aws/request.Request" representing the 2379// client's request for the ListVirtualServices operation. The "output" return 2380// value will be populated with the request's response once the request completes 2381// successfully. 2382// 2383// Use "Send" method on the returned Request to send the API call to the service. 2384// the "output" return value is not valid until after Send returns without error. 2385// 2386// See ListVirtualServices for more information on using the ListVirtualServices 2387// API call, and error handling. 2388// 2389// This method is useful when you want to inject custom logic or configuration 2390// into the SDK's request lifecycle. Such as custom headers, or retry logic. 2391// 2392// 2393// // Example sending a request using the ListVirtualServicesRequest method. 2394// req, resp := client.ListVirtualServicesRequest(params) 2395// 2396// err := req.Send() 2397// if err == nil { // resp is now filled 2398// fmt.Println(resp) 2399// } 2400// 2401// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListVirtualServices 2402func (c *AppMesh) ListVirtualServicesRequest(input *ListVirtualServicesInput) (req *request.Request, output *ListVirtualServicesOutput) { 2403 op := &request.Operation{ 2404 Name: opListVirtualServices, 2405 HTTPMethod: "GET", 2406 HTTPPath: "/v20190125/meshes/{meshName}/virtualServices", 2407 Paginator: &request.Paginator{ 2408 InputTokens: []string{"nextToken"}, 2409 OutputTokens: []string{"nextToken"}, 2410 LimitToken: "limit", 2411 TruncationToken: "", 2412 }, 2413 } 2414 2415 if input == nil { 2416 input = &ListVirtualServicesInput{} 2417 } 2418 2419 output = &ListVirtualServicesOutput{} 2420 req = c.newRequest(op, input, output) 2421 return 2422} 2423 2424// ListVirtualServices API operation for AWS App Mesh. 2425// 2426// Returns a list of existing virtual services in a service mesh. 2427// 2428// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2429// with awserr.Error's Code and Message methods to get detailed information about 2430// the error. 2431// 2432// See the AWS API reference guide for AWS App Mesh's 2433// API operation ListVirtualServices for usage and error information. 2434// 2435// Returned Error Types: 2436// * BadRequestException 2437// The request syntax was malformed. Check your request syntax and try again. 2438// 2439// * ForbiddenException 2440// You don't have permissions to perform this action. 2441// 2442// * InternalServerErrorException 2443// The request processing has failed because of an unknown error, exception, 2444// or failure. 2445// 2446// * NotFoundException 2447// The specified resource doesn't exist. Check your request syntax and try again. 2448// 2449// * ServiceUnavailableException 2450// The request has failed due to a temporary failure of the service. 2451// 2452// * TooManyRequestsException 2453// The maximum request rate permitted by the App Mesh APIs has been exceeded 2454// for your account. For best results, use an increasing or variable sleep interval 2455// between requests. 2456// 2457// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListVirtualServices 2458func (c *AppMesh) ListVirtualServices(input *ListVirtualServicesInput) (*ListVirtualServicesOutput, error) { 2459 req, out := c.ListVirtualServicesRequest(input) 2460 return out, req.Send() 2461} 2462 2463// ListVirtualServicesWithContext is the same as ListVirtualServices with the addition of 2464// the ability to pass a context and additional request options. 2465// 2466// See ListVirtualServices for details on how to use this API operation. 2467// 2468// The context must be non-nil and will be used for request cancellation. If 2469// the context is nil a panic will occur. In the future the SDK may create 2470// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2471// for more information on using Contexts. 2472func (c *AppMesh) ListVirtualServicesWithContext(ctx aws.Context, input *ListVirtualServicesInput, opts ...request.Option) (*ListVirtualServicesOutput, error) { 2473 req, out := c.ListVirtualServicesRequest(input) 2474 req.SetContext(ctx) 2475 req.ApplyOptions(opts...) 2476 return out, req.Send() 2477} 2478 2479// ListVirtualServicesPages iterates over the pages of a ListVirtualServices operation, 2480// calling the "fn" function with the response data for each page. To stop 2481// iterating, return false from the fn function. 2482// 2483// See ListVirtualServices method for more information on how to use this operation. 2484// 2485// Note: This operation can generate multiple requests to a service. 2486// 2487// // Example iterating over at most 3 pages of a ListVirtualServices operation. 2488// pageNum := 0 2489// err := client.ListVirtualServicesPages(params, 2490// func(page *appmesh.ListVirtualServicesOutput, lastPage bool) bool { 2491// pageNum++ 2492// fmt.Println(page) 2493// return pageNum <= 3 2494// }) 2495// 2496func (c *AppMesh) ListVirtualServicesPages(input *ListVirtualServicesInput, fn func(*ListVirtualServicesOutput, bool) bool) error { 2497 return c.ListVirtualServicesPagesWithContext(aws.BackgroundContext(), input, fn) 2498} 2499 2500// ListVirtualServicesPagesWithContext same as ListVirtualServicesPages except 2501// it takes a Context and allows setting request options on the pages. 2502// 2503// The context must be non-nil and will be used for request cancellation. If 2504// the context is nil a panic will occur. In the future the SDK may create 2505// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2506// for more information on using Contexts. 2507func (c *AppMesh) ListVirtualServicesPagesWithContext(ctx aws.Context, input *ListVirtualServicesInput, fn func(*ListVirtualServicesOutput, bool) bool, opts ...request.Option) error { 2508 p := request.Pagination{ 2509 NewRequest: func() (*request.Request, error) { 2510 var inCpy *ListVirtualServicesInput 2511 if input != nil { 2512 tmp := *input 2513 inCpy = &tmp 2514 } 2515 req, _ := c.ListVirtualServicesRequest(inCpy) 2516 req.SetContext(ctx) 2517 req.ApplyOptions(opts...) 2518 return req, nil 2519 }, 2520 } 2521 2522 for p.Next() { 2523 if !fn(p.Page().(*ListVirtualServicesOutput), !p.HasNextPage()) { 2524 break 2525 } 2526 } 2527 2528 return p.Err() 2529} 2530 2531const opTagResource = "TagResource" 2532 2533// TagResourceRequest generates a "aws/request.Request" representing the 2534// client's request for the TagResource operation. The "output" return 2535// value will be populated with the request's response once the request completes 2536// successfully. 2537// 2538// Use "Send" method on the returned Request to send the API call to the service. 2539// the "output" return value is not valid until after Send returns without error. 2540// 2541// See TagResource for more information on using the TagResource 2542// API call, and error handling. 2543// 2544// This method is useful when you want to inject custom logic or configuration 2545// into the SDK's request lifecycle. Such as custom headers, or retry logic. 2546// 2547// 2548// // Example sending a request using the TagResourceRequest method. 2549// req, resp := client.TagResourceRequest(params) 2550// 2551// err := req.Send() 2552// if err == nil { // resp is now filled 2553// fmt.Println(resp) 2554// } 2555// 2556// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/TagResource 2557func (c *AppMesh) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) { 2558 op := &request.Operation{ 2559 Name: opTagResource, 2560 HTTPMethod: "PUT", 2561 HTTPPath: "/v20190125/tag", 2562 } 2563 2564 if input == nil { 2565 input = &TagResourceInput{} 2566 } 2567 2568 output = &TagResourceOutput{} 2569 req = c.newRequest(op, input, output) 2570 req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 2571 return 2572} 2573 2574// TagResource API operation for AWS App Mesh. 2575// 2576// Associates the specified tags to a resource with the specified resourceArn. 2577// If existing tags on a resource aren't specified in the request parameters, 2578// they aren't changed. When a resource is deleted, the tags associated with 2579// that resource are also deleted. 2580// 2581// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2582// with awserr.Error's Code and Message methods to get detailed information about 2583// the error. 2584// 2585// See the AWS API reference guide for AWS App Mesh's 2586// API operation TagResource for usage and error information. 2587// 2588// Returned Error Types: 2589// * BadRequestException 2590// The request syntax was malformed. Check your request syntax and try again. 2591// 2592// * ForbiddenException 2593// You don't have permissions to perform this action. 2594// 2595// * InternalServerErrorException 2596// The request processing has failed because of an unknown error, exception, 2597// or failure. 2598// 2599// * NotFoundException 2600// The specified resource doesn't exist. Check your request syntax and try again. 2601// 2602// * ServiceUnavailableException 2603// The request has failed due to a temporary failure of the service. 2604// 2605// * TooManyRequestsException 2606// The maximum request rate permitted by the App Mesh APIs has been exceeded 2607// for your account. For best results, use an increasing or variable sleep interval 2608// between requests. 2609// 2610// * TooManyTagsException 2611// The request exceeds the maximum allowed number of tags allowed per resource. 2612// The current limit is 50 user tags per resource. You must reduce the number 2613// of tags in the request. None of the tags in this request were applied. 2614// 2615// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/TagResource 2616func (c *AppMesh) TagResource(input *TagResourceInput) (*TagResourceOutput, error) { 2617 req, out := c.TagResourceRequest(input) 2618 return out, req.Send() 2619} 2620 2621// TagResourceWithContext is the same as TagResource with the addition of 2622// the ability to pass a context and additional request options. 2623// 2624// See TagResource for details on how to use this API operation. 2625// 2626// The context must be non-nil and will be used for request cancellation. If 2627// the context is nil a panic will occur. In the future the SDK may create 2628// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2629// for more information on using Contexts. 2630func (c *AppMesh) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) { 2631 req, out := c.TagResourceRequest(input) 2632 req.SetContext(ctx) 2633 req.ApplyOptions(opts...) 2634 return out, req.Send() 2635} 2636 2637const opUntagResource = "UntagResource" 2638 2639// UntagResourceRequest generates a "aws/request.Request" representing the 2640// client's request for the UntagResource operation. The "output" return 2641// value will be populated with the request's response once the request completes 2642// successfully. 2643// 2644// Use "Send" method on the returned Request to send the API call to the service. 2645// the "output" return value is not valid until after Send returns without error. 2646// 2647// See UntagResource for more information on using the UntagResource 2648// API call, and error handling. 2649// 2650// This method is useful when you want to inject custom logic or configuration 2651// into the SDK's request lifecycle. Such as custom headers, or retry logic. 2652// 2653// 2654// // Example sending a request using the UntagResourceRequest method. 2655// req, resp := client.UntagResourceRequest(params) 2656// 2657// err := req.Send() 2658// if err == nil { // resp is now filled 2659// fmt.Println(resp) 2660// } 2661// 2662// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UntagResource 2663func (c *AppMesh) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) { 2664 op := &request.Operation{ 2665 Name: opUntagResource, 2666 HTTPMethod: "PUT", 2667 HTTPPath: "/v20190125/untag", 2668 } 2669 2670 if input == nil { 2671 input = &UntagResourceInput{} 2672 } 2673 2674 output = &UntagResourceOutput{} 2675 req = c.newRequest(op, input, output) 2676 req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 2677 return 2678} 2679 2680// UntagResource API operation for AWS App Mesh. 2681// 2682// Deletes specified tags from a resource. 2683// 2684// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2685// with awserr.Error's Code and Message methods to get detailed information about 2686// the error. 2687// 2688// See the AWS API reference guide for AWS App Mesh's 2689// API operation UntagResource for usage and error information. 2690// 2691// Returned Error Types: 2692// * BadRequestException 2693// The request syntax was malformed. Check your request syntax and try again. 2694// 2695// * ForbiddenException 2696// You don't have permissions to perform this action. 2697// 2698// * InternalServerErrorException 2699// The request processing has failed because of an unknown error, exception, 2700// or failure. 2701// 2702// * NotFoundException 2703// The specified resource doesn't exist. Check your request syntax and try again. 2704// 2705// * ServiceUnavailableException 2706// The request has failed due to a temporary failure of the service. 2707// 2708// * TooManyRequestsException 2709// The maximum request rate permitted by the App Mesh APIs has been exceeded 2710// for your account. For best results, use an increasing or variable sleep interval 2711// between requests. 2712// 2713// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UntagResource 2714func (c *AppMesh) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) { 2715 req, out := c.UntagResourceRequest(input) 2716 return out, req.Send() 2717} 2718 2719// UntagResourceWithContext is the same as UntagResource with the addition of 2720// the ability to pass a context and additional request options. 2721// 2722// See UntagResource for details on how to use this API operation. 2723// 2724// The context must be non-nil and will be used for request cancellation. If 2725// the context is nil a panic will occur. In the future the SDK may create 2726// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2727// for more information on using Contexts. 2728func (c *AppMesh) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) { 2729 req, out := c.UntagResourceRequest(input) 2730 req.SetContext(ctx) 2731 req.ApplyOptions(opts...) 2732 return out, req.Send() 2733} 2734 2735const opUpdateMesh = "UpdateMesh" 2736 2737// UpdateMeshRequest generates a "aws/request.Request" representing the 2738// client's request for the UpdateMesh operation. The "output" return 2739// value will be populated with the request's response once the request completes 2740// successfully. 2741// 2742// Use "Send" method on the returned Request to send the API call to the service. 2743// the "output" return value is not valid until after Send returns without error. 2744// 2745// See UpdateMesh for more information on using the UpdateMesh 2746// API call, and error handling. 2747// 2748// This method is useful when you want to inject custom logic or configuration 2749// into the SDK's request lifecycle. Such as custom headers, or retry logic. 2750// 2751// 2752// // Example sending a request using the UpdateMeshRequest method. 2753// req, resp := client.UpdateMeshRequest(params) 2754// 2755// err := req.Send() 2756// if err == nil { // resp is now filled 2757// fmt.Println(resp) 2758// } 2759// 2760// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UpdateMesh 2761func (c *AppMesh) UpdateMeshRequest(input *UpdateMeshInput) (req *request.Request, output *UpdateMeshOutput) { 2762 op := &request.Operation{ 2763 Name: opUpdateMesh, 2764 HTTPMethod: "PUT", 2765 HTTPPath: "/v20190125/meshes/{meshName}", 2766 } 2767 2768 if input == nil { 2769 input = &UpdateMeshInput{} 2770 } 2771 2772 output = &UpdateMeshOutput{} 2773 req = c.newRequest(op, input, output) 2774 return 2775} 2776 2777// UpdateMesh API operation for AWS App Mesh. 2778// 2779// Updates an existing service mesh. 2780// 2781// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2782// with awserr.Error's Code and Message methods to get detailed information about 2783// the error. 2784// 2785// See the AWS API reference guide for AWS App Mesh's 2786// API operation UpdateMesh for usage and error information. 2787// 2788// Returned Error Types: 2789// * BadRequestException 2790// The request syntax was malformed. Check your request syntax and try again. 2791// 2792// * ConflictException 2793// The request contains a client token that was used for a previous update resource 2794// call with different specifications. Try the request again with a new client 2795// token. 2796// 2797// * ForbiddenException 2798// You don't have permissions to perform this action. 2799// 2800// * InternalServerErrorException 2801// The request processing has failed because of an unknown error, exception, 2802// or failure. 2803// 2804// * NotFoundException 2805// The specified resource doesn't exist. Check your request syntax and try again. 2806// 2807// * ServiceUnavailableException 2808// The request has failed due to a temporary failure of the service. 2809// 2810// * TooManyRequestsException 2811// The maximum request rate permitted by the App Mesh APIs has been exceeded 2812// for your account. For best results, use an increasing or variable sleep interval 2813// between requests. 2814// 2815// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UpdateMesh 2816func (c *AppMesh) UpdateMesh(input *UpdateMeshInput) (*UpdateMeshOutput, error) { 2817 req, out := c.UpdateMeshRequest(input) 2818 return out, req.Send() 2819} 2820 2821// UpdateMeshWithContext is the same as UpdateMesh with the addition of 2822// the ability to pass a context and additional request options. 2823// 2824// See UpdateMesh for details on how to use this API operation. 2825// 2826// The context must be non-nil and will be used for request cancellation. If 2827// the context is nil a panic will occur. In the future the SDK may create 2828// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2829// for more information on using Contexts. 2830func (c *AppMesh) UpdateMeshWithContext(ctx aws.Context, input *UpdateMeshInput, opts ...request.Option) (*UpdateMeshOutput, error) { 2831 req, out := c.UpdateMeshRequest(input) 2832 req.SetContext(ctx) 2833 req.ApplyOptions(opts...) 2834 return out, req.Send() 2835} 2836 2837const opUpdateRoute = "UpdateRoute" 2838 2839// UpdateRouteRequest generates a "aws/request.Request" representing the 2840// client's request for the UpdateRoute operation. The "output" return 2841// value will be populated with the request's response once the request completes 2842// successfully. 2843// 2844// Use "Send" method on the returned Request to send the API call to the service. 2845// the "output" return value is not valid until after Send returns without error. 2846// 2847// See UpdateRoute for more information on using the UpdateRoute 2848// API call, and error handling. 2849// 2850// This method is useful when you want to inject custom logic or configuration 2851// into the SDK's request lifecycle. Such as custom headers, or retry logic. 2852// 2853// 2854// // Example sending a request using the UpdateRouteRequest method. 2855// req, resp := client.UpdateRouteRequest(params) 2856// 2857// err := req.Send() 2858// if err == nil { // resp is now filled 2859// fmt.Println(resp) 2860// } 2861// 2862// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UpdateRoute 2863func (c *AppMesh) UpdateRouteRequest(input *UpdateRouteInput) (req *request.Request, output *UpdateRouteOutput) { 2864 op := &request.Operation{ 2865 Name: opUpdateRoute, 2866 HTTPMethod: "PUT", 2867 HTTPPath: "/v20190125/meshes/{meshName}/virtualRouter/{virtualRouterName}/routes/{routeName}", 2868 } 2869 2870 if input == nil { 2871 input = &UpdateRouteInput{} 2872 } 2873 2874 output = &UpdateRouteOutput{} 2875 req = c.newRequest(op, input, output) 2876 return 2877} 2878 2879// UpdateRoute API operation for AWS App Mesh. 2880// 2881// Updates an existing route for a specified service mesh and virtual router. 2882// 2883// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2884// with awserr.Error's Code and Message methods to get detailed information about 2885// the error. 2886// 2887// See the AWS API reference guide for AWS App Mesh's 2888// API operation UpdateRoute for usage and error information. 2889// 2890// Returned Error Types: 2891// * BadRequestException 2892// The request syntax was malformed. Check your request syntax and try again. 2893// 2894// * ConflictException 2895// The request contains a client token that was used for a previous update resource 2896// call with different specifications. Try the request again with a new client 2897// token. 2898// 2899// * ForbiddenException 2900// You don't have permissions to perform this action. 2901// 2902// * InternalServerErrorException 2903// The request processing has failed because of an unknown error, exception, 2904// or failure. 2905// 2906// * LimitExceededException 2907// You have exceeded a service limit for your account. For more information, 2908// see Service Limits (https://docs.aws.amazon.com/app-mesh/latest/userguide/service-quotas.html) 2909// in the AWS App Mesh User Guide. 2910// 2911// * NotFoundException 2912// The specified resource doesn't exist. Check your request syntax and try again. 2913// 2914// * ServiceUnavailableException 2915// The request has failed due to a temporary failure of the service. 2916// 2917// * TooManyRequestsException 2918// The maximum request rate permitted by the App Mesh APIs has been exceeded 2919// for your account. For best results, use an increasing or variable sleep interval 2920// between requests. 2921// 2922// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UpdateRoute 2923func (c *AppMesh) UpdateRoute(input *UpdateRouteInput) (*UpdateRouteOutput, error) { 2924 req, out := c.UpdateRouteRequest(input) 2925 return out, req.Send() 2926} 2927 2928// UpdateRouteWithContext is the same as UpdateRoute with the addition of 2929// the ability to pass a context and additional request options. 2930// 2931// See UpdateRoute for details on how to use this API operation. 2932// 2933// The context must be non-nil and will be used for request cancellation. If 2934// the context is nil a panic will occur. In the future the SDK may create 2935// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2936// for more information on using Contexts. 2937func (c *AppMesh) UpdateRouteWithContext(ctx aws.Context, input *UpdateRouteInput, opts ...request.Option) (*UpdateRouteOutput, error) { 2938 req, out := c.UpdateRouteRequest(input) 2939 req.SetContext(ctx) 2940 req.ApplyOptions(opts...) 2941 return out, req.Send() 2942} 2943 2944const opUpdateVirtualNode = "UpdateVirtualNode" 2945 2946// UpdateVirtualNodeRequest generates a "aws/request.Request" representing the 2947// client's request for the UpdateVirtualNode operation. The "output" return 2948// value will be populated with the request's response once the request completes 2949// successfully. 2950// 2951// Use "Send" method on the returned Request to send the API call to the service. 2952// the "output" return value is not valid until after Send returns without error. 2953// 2954// See UpdateVirtualNode for more information on using the UpdateVirtualNode 2955// API call, and error handling. 2956// 2957// This method is useful when you want to inject custom logic or configuration 2958// into the SDK's request lifecycle. Such as custom headers, or retry logic. 2959// 2960// 2961// // Example sending a request using the UpdateVirtualNodeRequest method. 2962// req, resp := client.UpdateVirtualNodeRequest(params) 2963// 2964// err := req.Send() 2965// if err == nil { // resp is now filled 2966// fmt.Println(resp) 2967// } 2968// 2969// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UpdateVirtualNode 2970func (c *AppMesh) UpdateVirtualNodeRequest(input *UpdateVirtualNodeInput) (req *request.Request, output *UpdateVirtualNodeOutput) { 2971 op := &request.Operation{ 2972 Name: opUpdateVirtualNode, 2973 HTTPMethod: "PUT", 2974 HTTPPath: "/v20190125/meshes/{meshName}/virtualNodes/{virtualNodeName}", 2975 } 2976 2977 if input == nil { 2978 input = &UpdateVirtualNodeInput{} 2979 } 2980 2981 output = &UpdateVirtualNodeOutput{} 2982 req = c.newRequest(op, input, output) 2983 return 2984} 2985 2986// UpdateVirtualNode API operation for AWS App Mesh. 2987// 2988// Updates an existing virtual node in a specified service mesh. 2989// 2990// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2991// with awserr.Error's Code and Message methods to get detailed information about 2992// the error. 2993// 2994// See the AWS API reference guide for AWS App Mesh's 2995// API operation UpdateVirtualNode for usage and error information. 2996// 2997// Returned Error Types: 2998// * BadRequestException 2999// The request syntax was malformed. Check your request syntax and try again. 3000// 3001// * ConflictException 3002// The request contains a client token that was used for a previous update resource 3003// call with different specifications. Try the request again with a new client 3004// token. 3005// 3006// * ForbiddenException 3007// You don't have permissions to perform this action. 3008// 3009// * InternalServerErrorException 3010// The request processing has failed because of an unknown error, exception, 3011// or failure. 3012// 3013// * LimitExceededException 3014// You have exceeded a service limit for your account. For more information, 3015// see Service Limits (https://docs.aws.amazon.com/app-mesh/latest/userguide/service-quotas.html) 3016// in the AWS App Mesh User Guide. 3017// 3018// * NotFoundException 3019// The specified resource doesn't exist. Check your request syntax and try again. 3020// 3021// * ServiceUnavailableException 3022// The request has failed due to a temporary failure of the service. 3023// 3024// * TooManyRequestsException 3025// The maximum request rate permitted by the App Mesh APIs has been exceeded 3026// for your account. For best results, use an increasing or variable sleep interval 3027// between requests. 3028// 3029// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UpdateVirtualNode 3030func (c *AppMesh) UpdateVirtualNode(input *UpdateVirtualNodeInput) (*UpdateVirtualNodeOutput, error) { 3031 req, out := c.UpdateVirtualNodeRequest(input) 3032 return out, req.Send() 3033} 3034 3035// UpdateVirtualNodeWithContext is the same as UpdateVirtualNode with the addition of 3036// the ability to pass a context and additional request options. 3037// 3038// See UpdateVirtualNode for details on how to use this API operation. 3039// 3040// The context must be non-nil and will be used for request cancellation. If 3041// the context is nil a panic will occur. In the future the SDK may create 3042// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3043// for more information on using Contexts. 3044func (c *AppMesh) UpdateVirtualNodeWithContext(ctx aws.Context, input *UpdateVirtualNodeInput, opts ...request.Option) (*UpdateVirtualNodeOutput, error) { 3045 req, out := c.UpdateVirtualNodeRequest(input) 3046 req.SetContext(ctx) 3047 req.ApplyOptions(opts...) 3048 return out, req.Send() 3049} 3050 3051const opUpdateVirtualRouter = "UpdateVirtualRouter" 3052 3053// UpdateVirtualRouterRequest generates a "aws/request.Request" representing the 3054// client's request for the UpdateVirtualRouter operation. The "output" return 3055// value will be populated with the request's response once the request completes 3056// successfully. 3057// 3058// Use "Send" method on the returned Request to send the API call to the service. 3059// the "output" return value is not valid until after Send returns without error. 3060// 3061// See UpdateVirtualRouter for more information on using the UpdateVirtualRouter 3062// API call, and error handling. 3063// 3064// This method is useful when you want to inject custom logic or configuration 3065// into the SDK's request lifecycle. Such as custom headers, or retry logic. 3066// 3067// 3068// // Example sending a request using the UpdateVirtualRouterRequest method. 3069// req, resp := client.UpdateVirtualRouterRequest(params) 3070// 3071// err := req.Send() 3072// if err == nil { // resp is now filled 3073// fmt.Println(resp) 3074// } 3075// 3076// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UpdateVirtualRouter 3077func (c *AppMesh) UpdateVirtualRouterRequest(input *UpdateVirtualRouterInput) (req *request.Request, output *UpdateVirtualRouterOutput) { 3078 op := &request.Operation{ 3079 Name: opUpdateVirtualRouter, 3080 HTTPMethod: "PUT", 3081 HTTPPath: "/v20190125/meshes/{meshName}/virtualRouters/{virtualRouterName}", 3082 } 3083 3084 if input == nil { 3085 input = &UpdateVirtualRouterInput{} 3086 } 3087 3088 output = &UpdateVirtualRouterOutput{} 3089 req = c.newRequest(op, input, output) 3090 return 3091} 3092 3093// UpdateVirtualRouter API operation for AWS App Mesh. 3094// 3095// Updates an existing virtual router in a specified service mesh. 3096// 3097// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3098// with awserr.Error's Code and Message methods to get detailed information about 3099// the error. 3100// 3101// See the AWS API reference guide for AWS App Mesh's 3102// API operation UpdateVirtualRouter for usage and error information. 3103// 3104// Returned Error Types: 3105// * BadRequestException 3106// The request syntax was malformed. Check your request syntax and try again. 3107// 3108// * ConflictException 3109// The request contains a client token that was used for a previous update resource 3110// call with different specifications. Try the request again with a new client 3111// token. 3112// 3113// * ForbiddenException 3114// You don't have permissions to perform this action. 3115// 3116// * InternalServerErrorException 3117// The request processing has failed because of an unknown error, exception, 3118// or failure. 3119// 3120// * LimitExceededException 3121// You have exceeded a service limit for your account. For more information, 3122// see Service Limits (https://docs.aws.amazon.com/app-mesh/latest/userguide/service-quotas.html) 3123// in the AWS App Mesh User Guide. 3124// 3125// * NotFoundException 3126// The specified resource doesn't exist. Check your request syntax and try again. 3127// 3128// * ServiceUnavailableException 3129// The request has failed due to a temporary failure of the service. 3130// 3131// * TooManyRequestsException 3132// The maximum request rate permitted by the App Mesh APIs has been exceeded 3133// for your account. For best results, use an increasing or variable sleep interval 3134// between requests. 3135// 3136// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UpdateVirtualRouter 3137func (c *AppMesh) UpdateVirtualRouter(input *UpdateVirtualRouterInput) (*UpdateVirtualRouterOutput, error) { 3138 req, out := c.UpdateVirtualRouterRequest(input) 3139 return out, req.Send() 3140} 3141 3142// UpdateVirtualRouterWithContext is the same as UpdateVirtualRouter with the addition of 3143// the ability to pass a context and additional request options. 3144// 3145// See UpdateVirtualRouter for details on how to use this API operation. 3146// 3147// The context must be non-nil and will be used for request cancellation. If 3148// the context is nil a panic will occur. In the future the SDK may create 3149// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3150// for more information on using Contexts. 3151func (c *AppMesh) UpdateVirtualRouterWithContext(ctx aws.Context, input *UpdateVirtualRouterInput, opts ...request.Option) (*UpdateVirtualRouterOutput, error) { 3152 req, out := c.UpdateVirtualRouterRequest(input) 3153 req.SetContext(ctx) 3154 req.ApplyOptions(opts...) 3155 return out, req.Send() 3156} 3157 3158const opUpdateVirtualService = "UpdateVirtualService" 3159 3160// UpdateVirtualServiceRequest generates a "aws/request.Request" representing the 3161// client's request for the UpdateVirtualService operation. The "output" return 3162// value will be populated with the request's response once the request completes 3163// successfully. 3164// 3165// Use "Send" method on the returned Request to send the API call to the service. 3166// the "output" return value is not valid until after Send returns without error. 3167// 3168// See UpdateVirtualService for more information on using the UpdateVirtualService 3169// API call, and error handling. 3170// 3171// This method is useful when you want to inject custom logic or configuration 3172// into the SDK's request lifecycle. Such as custom headers, or retry logic. 3173// 3174// 3175// // Example sending a request using the UpdateVirtualServiceRequest method. 3176// req, resp := client.UpdateVirtualServiceRequest(params) 3177// 3178// err := req.Send() 3179// if err == nil { // resp is now filled 3180// fmt.Println(resp) 3181// } 3182// 3183// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UpdateVirtualService 3184func (c *AppMesh) UpdateVirtualServiceRequest(input *UpdateVirtualServiceInput) (req *request.Request, output *UpdateVirtualServiceOutput) { 3185 op := &request.Operation{ 3186 Name: opUpdateVirtualService, 3187 HTTPMethod: "PUT", 3188 HTTPPath: "/v20190125/meshes/{meshName}/virtualServices/{virtualServiceName}", 3189 } 3190 3191 if input == nil { 3192 input = &UpdateVirtualServiceInput{} 3193 } 3194 3195 output = &UpdateVirtualServiceOutput{} 3196 req = c.newRequest(op, input, output) 3197 return 3198} 3199 3200// UpdateVirtualService API operation for AWS App Mesh. 3201// 3202// Updates an existing virtual service in a specified service mesh. 3203// 3204// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3205// with awserr.Error's Code and Message methods to get detailed information about 3206// the error. 3207// 3208// See the AWS API reference guide for AWS App Mesh's 3209// API operation UpdateVirtualService for usage and error information. 3210// 3211// Returned Error Types: 3212// * BadRequestException 3213// The request syntax was malformed. Check your request syntax and try again. 3214// 3215// * ConflictException 3216// The request contains a client token that was used for a previous update resource 3217// call with different specifications. Try the request again with a new client 3218// token. 3219// 3220// * ForbiddenException 3221// You don't have permissions to perform this action. 3222// 3223// * InternalServerErrorException 3224// The request processing has failed because of an unknown error, exception, 3225// or failure. 3226// 3227// * LimitExceededException 3228// You have exceeded a service limit for your account. For more information, 3229// see Service Limits (https://docs.aws.amazon.com/app-mesh/latest/userguide/service-quotas.html) 3230// in the AWS App Mesh User Guide. 3231// 3232// * NotFoundException 3233// The specified resource doesn't exist. Check your request syntax and try again. 3234// 3235// * ServiceUnavailableException 3236// The request has failed due to a temporary failure of the service. 3237// 3238// * TooManyRequestsException 3239// The maximum request rate permitted by the App Mesh APIs has been exceeded 3240// for your account. For best results, use an increasing or variable sleep interval 3241// between requests. 3242// 3243// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UpdateVirtualService 3244func (c *AppMesh) UpdateVirtualService(input *UpdateVirtualServiceInput) (*UpdateVirtualServiceOutput, error) { 3245 req, out := c.UpdateVirtualServiceRequest(input) 3246 return out, req.Send() 3247} 3248 3249// UpdateVirtualServiceWithContext is the same as UpdateVirtualService with the addition of 3250// the ability to pass a context and additional request options. 3251// 3252// See UpdateVirtualService for details on how to use this API operation. 3253// 3254// The context must be non-nil and will be used for request cancellation. If 3255// the context is nil a panic will occur. In the future the SDK may create 3256// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3257// for more information on using Contexts. 3258func (c *AppMesh) UpdateVirtualServiceWithContext(ctx aws.Context, input *UpdateVirtualServiceInput, opts ...request.Option) (*UpdateVirtualServiceOutput, error) { 3259 req, out := c.UpdateVirtualServiceRequest(input) 3260 req.SetContext(ctx) 3261 req.ApplyOptions(opts...) 3262 return out, req.Send() 3263} 3264 3265// An object that represents the access logging information for a virtual node. 3266type AccessLog struct { 3267 _ struct{} `type:"structure"` 3268 3269 // An object that represents an access log file. 3270 File *FileAccessLog `locationName:"file" type:"structure"` 3271} 3272 3273// String returns the string representation 3274func (s AccessLog) String() string { 3275 return awsutil.Prettify(s) 3276} 3277 3278// GoString returns the string representation 3279func (s AccessLog) GoString() string { 3280 return s.String() 3281} 3282 3283// Validate inspects the fields of the type to determine if they are valid. 3284func (s *AccessLog) Validate() error { 3285 invalidParams := request.ErrInvalidParams{Context: "AccessLog"} 3286 if s.File != nil { 3287 if err := s.File.Validate(); err != nil { 3288 invalidParams.AddNested("File", err.(request.ErrInvalidParams)) 3289 } 3290 } 3291 3292 if invalidParams.Len() > 0 { 3293 return invalidParams 3294 } 3295 return nil 3296} 3297 3298// SetFile sets the File field's value. 3299func (s *AccessLog) SetFile(v *FileAccessLog) *AccessLog { 3300 s.File = v 3301 return s 3302} 3303 3304// An object that represents the AWS Cloud Map attribute information for your 3305// virtual node. 3306type AwsCloudMapInstanceAttribute struct { 3307 _ struct{} `type:"structure"` 3308 3309 // Key is a required field 3310 Key *string `locationName:"key" min:"1" type:"string" required:"true"` 3311 3312 // Value is a required field 3313 Value *string `locationName:"value" min:"1" type:"string" required:"true"` 3314} 3315 3316// String returns the string representation 3317func (s AwsCloudMapInstanceAttribute) String() string { 3318 return awsutil.Prettify(s) 3319} 3320 3321// GoString returns the string representation 3322func (s AwsCloudMapInstanceAttribute) GoString() string { 3323 return s.String() 3324} 3325 3326// Validate inspects the fields of the type to determine if they are valid. 3327func (s *AwsCloudMapInstanceAttribute) Validate() error { 3328 invalidParams := request.ErrInvalidParams{Context: "AwsCloudMapInstanceAttribute"} 3329 if s.Key == nil { 3330 invalidParams.Add(request.NewErrParamRequired("Key")) 3331 } 3332 if s.Key != nil && len(*s.Key) < 1 { 3333 invalidParams.Add(request.NewErrParamMinLen("Key", 1)) 3334 } 3335 if s.Value == nil { 3336 invalidParams.Add(request.NewErrParamRequired("Value")) 3337 } 3338 if s.Value != nil && len(*s.Value) < 1 { 3339 invalidParams.Add(request.NewErrParamMinLen("Value", 1)) 3340 } 3341 3342 if invalidParams.Len() > 0 { 3343 return invalidParams 3344 } 3345 return nil 3346} 3347 3348// SetKey sets the Key field's value. 3349func (s *AwsCloudMapInstanceAttribute) SetKey(v string) *AwsCloudMapInstanceAttribute { 3350 s.Key = &v 3351 return s 3352} 3353 3354// SetValue sets the Value field's value. 3355func (s *AwsCloudMapInstanceAttribute) SetValue(v string) *AwsCloudMapInstanceAttribute { 3356 s.Value = &v 3357 return s 3358} 3359 3360// An object that represents the AWS Cloud Map service discovery information 3361// for your virtual node. 3362type AwsCloudMapServiceDiscovery struct { 3363 _ struct{} `type:"structure"` 3364 3365 Attributes []*AwsCloudMapInstanceAttribute `locationName:"attributes" type:"list"` 3366 3367 // NamespaceName is a required field 3368 NamespaceName *string `locationName:"namespaceName" min:"1" type:"string" required:"true"` 3369 3370 // ServiceName is a required field 3371 ServiceName *string `locationName:"serviceName" min:"1" type:"string" required:"true"` 3372} 3373 3374// String returns the string representation 3375func (s AwsCloudMapServiceDiscovery) String() string { 3376 return awsutil.Prettify(s) 3377} 3378 3379// GoString returns the string representation 3380func (s AwsCloudMapServiceDiscovery) GoString() string { 3381 return s.String() 3382} 3383 3384// Validate inspects the fields of the type to determine if they are valid. 3385func (s *AwsCloudMapServiceDiscovery) Validate() error { 3386 invalidParams := request.ErrInvalidParams{Context: "AwsCloudMapServiceDiscovery"} 3387 if s.NamespaceName == nil { 3388 invalidParams.Add(request.NewErrParamRequired("NamespaceName")) 3389 } 3390 if s.NamespaceName != nil && len(*s.NamespaceName) < 1 { 3391 invalidParams.Add(request.NewErrParamMinLen("NamespaceName", 1)) 3392 } 3393 if s.ServiceName == nil { 3394 invalidParams.Add(request.NewErrParamRequired("ServiceName")) 3395 } 3396 if s.ServiceName != nil && len(*s.ServiceName) < 1 { 3397 invalidParams.Add(request.NewErrParamMinLen("ServiceName", 1)) 3398 } 3399 if s.Attributes != nil { 3400 for i, v := range s.Attributes { 3401 if v == nil { 3402 continue 3403 } 3404 if err := v.Validate(); err != nil { 3405 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Attributes", i), err.(request.ErrInvalidParams)) 3406 } 3407 } 3408 } 3409 3410 if invalidParams.Len() > 0 { 3411 return invalidParams 3412 } 3413 return nil 3414} 3415 3416// SetAttributes sets the Attributes field's value. 3417func (s *AwsCloudMapServiceDiscovery) SetAttributes(v []*AwsCloudMapInstanceAttribute) *AwsCloudMapServiceDiscovery { 3418 s.Attributes = v 3419 return s 3420} 3421 3422// SetNamespaceName sets the NamespaceName field's value. 3423func (s *AwsCloudMapServiceDiscovery) SetNamespaceName(v string) *AwsCloudMapServiceDiscovery { 3424 s.NamespaceName = &v 3425 return s 3426} 3427 3428// SetServiceName sets the ServiceName field's value. 3429func (s *AwsCloudMapServiceDiscovery) SetServiceName(v string) *AwsCloudMapServiceDiscovery { 3430 s.ServiceName = &v 3431 return s 3432} 3433 3434// An object that represents the backends that a virtual node is expected to 3435// send outbound traffic to. 3436type Backend struct { 3437 _ struct{} `type:"structure"` 3438 3439 // An object that represents a virtual service backend for a virtual node. 3440 VirtualService *VirtualServiceBackend `locationName:"virtualService" type:"structure"` 3441} 3442 3443// String returns the string representation 3444func (s Backend) String() string { 3445 return awsutil.Prettify(s) 3446} 3447 3448// GoString returns the string representation 3449func (s Backend) GoString() string { 3450 return s.String() 3451} 3452 3453// Validate inspects the fields of the type to determine if they are valid. 3454func (s *Backend) Validate() error { 3455 invalidParams := request.ErrInvalidParams{Context: "Backend"} 3456 if s.VirtualService != nil { 3457 if err := s.VirtualService.Validate(); err != nil { 3458 invalidParams.AddNested("VirtualService", err.(request.ErrInvalidParams)) 3459 } 3460 } 3461 3462 if invalidParams.Len() > 0 { 3463 return invalidParams 3464 } 3465 return nil 3466} 3467 3468// SetVirtualService sets the VirtualService field's value. 3469func (s *Backend) SetVirtualService(v *VirtualServiceBackend) *Backend { 3470 s.VirtualService = v 3471 return s 3472} 3473 3474// An object that represents the default properties for a backend. 3475type BackendDefaults struct { 3476 _ struct{} `type:"structure"` 3477 3478 // An object that represents a client policy. 3479 ClientPolicy *ClientPolicy `locationName:"clientPolicy" type:"structure"` 3480} 3481 3482// String returns the string representation 3483func (s BackendDefaults) String() string { 3484 return awsutil.Prettify(s) 3485} 3486 3487// GoString returns the string representation 3488func (s BackendDefaults) GoString() string { 3489 return s.String() 3490} 3491 3492// Validate inspects the fields of the type to determine if they are valid. 3493func (s *BackendDefaults) Validate() error { 3494 invalidParams := request.ErrInvalidParams{Context: "BackendDefaults"} 3495 if s.ClientPolicy != nil { 3496 if err := s.ClientPolicy.Validate(); err != nil { 3497 invalidParams.AddNested("ClientPolicy", err.(request.ErrInvalidParams)) 3498 } 3499 } 3500 3501 if invalidParams.Len() > 0 { 3502 return invalidParams 3503 } 3504 return nil 3505} 3506 3507// SetClientPolicy sets the ClientPolicy field's value. 3508func (s *BackendDefaults) SetClientPolicy(v *ClientPolicy) *BackendDefaults { 3509 s.ClientPolicy = v 3510 return s 3511} 3512 3513// The request syntax was malformed. Check your request syntax and try again. 3514type BadRequestException struct { 3515 _ struct{} `type:"structure"` 3516 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 3517 3518 Message_ *string `locationName:"message" type:"string"` 3519} 3520 3521// String returns the string representation 3522func (s BadRequestException) String() string { 3523 return awsutil.Prettify(s) 3524} 3525 3526// GoString returns the string representation 3527func (s BadRequestException) GoString() string { 3528 return s.String() 3529} 3530 3531func newErrorBadRequestException(v protocol.ResponseMetadata) error { 3532 return &BadRequestException{ 3533 RespMetadata: v, 3534 } 3535} 3536 3537// Code returns the exception type name. 3538func (s *BadRequestException) Code() string { 3539 return "BadRequestException" 3540} 3541 3542// Message returns the exception's message. 3543func (s *BadRequestException) Message() string { 3544 if s.Message_ != nil { 3545 return *s.Message_ 3546 } 3547 return "" 3548} 3549 3550// OrigErr always returns nil, satisfies awserr.Error interface. 3551func (s *BadRequestException) OrigErr() error { 3552 return nil 3553} 3554 3555func (s *BadRequestException) Error() string { 3556 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 3557} 3558 3559// Status code returns the HTTP status code for the request's response error. 3560func (s *BadRequestException) StatusCode() int { 3561 return s.RespMetadata.StatusCode 3562} 3563 3564// RequestID returns the service's response RequestID for request. 3565func (s *BadRequestException) RequestID() string { 3566 return s.RespMetadata.RequestID 3567} 3568 3569// An object that represents a client policy. 3570type ClientPolicy struct { 3571 _ struct{} `type:"structure"` 3572 3573 // An object that represents a Transport Layer Security (TLS) client policy. 3574 Tls *ClientPolicyTls `locationName:"tls" type:"structure"` 3575} 3576 3577// String returns the string representation 3578func (s ClientPolicy) String() string { 3579 return awsutil.Prettify(s) 3580} 3581 3582// GoString returns the string representation 3583func (s ClientPolicy) GoString() string { 3584 return s.String() 3585} 3586 3587// Validate inspects the fields of the type to determine if they are valid. 3588func (s *ClientPolicy) Validate() error { 3589 invalidParams := request.ErrInvalidParams{Context: "ClientPolicy"} 3590 if s.Tls != nil { 3591 if err := s.Tls.Validate(); err != nil { 3592 invalidParams.AddNested("Tls", err.(request.ErrInvalidParams)) 3593 } 3594 } 3595 3596 if invalidParams.Len() > 0 { 3597 return invalidParams 3598 } 3599 return nil 3600} 3601 3602// SetTls sets the Tls field's value. 3603func (s *ClientPolicy) SetTls(v *ClientPolicyTls) *ClientPolicy { 3604 s.Tls = v 3605 return s 3606} 3607 3608// An object that represents a Transport Layer Security (TLS) client policy. 3609type ClientPolicyTls struct { 3610 _ struct{} `type:"structure"` 3611 3612 Enforce *bool `locationName:"enforce" type:"boolean"` 3613 3614 Ports []*int64 `locationName:"ports" type:"list"` 3615 3616 // An object that represents a Transport Layer Security (TLS) validation context. 3617 // 3618 // Validation is a required field 3619 Validation *TlsValidationContext `locationName:"validation" type:"structure" required:"true"` 3620} 3621 3622// String returns the string representation 3623func (s ClientPolicyTls) String() string { 3624 return awsutil.Prettify(s) 3625} 3626 3627// GoString returns the string representation 3628func (s ClientPolicyTls) GoString() string { 3629 return s.String() 3630} 3631 3632// Validate inspects the fields of the type to determine if they are valid. 3633func (s *ClientPolicyTls) Validate() error { 3634 invalidParams := request.ErrInvalidParams{Context: "ClientPolicyTls"} 3635 if s.Validation == nil { 3636 invalidParams.Add(request.NewErrParamRequired("Validation")) 3637 } 3638 if s.Validation != nil { 3639 if err := s.Validation.Validate(); err != nil { 3640 invalidParams.AddNested("Validation", err.(request.ErrInvalidParams)) 3641 } 3642 } 3643 3644 if invalidParams.Len() > 0 { 3645 return invalidParams 3646 } 3647 return nil 3648} 3649 3650// SetEnforce sets the Enforce field's value. 3651func (s *ClientPolicyTls) SetEnforce(v bool) *ClientPolicyTls { 3652 s.Enforce = &v 3653 return s 3654} 3655 3656// SetPorts sets the Ports field's value. 3657func (s *ClientPolicyTls) SetPorts(v []*int64) *ClientPolicyTls { 3658 s.Ports = v 3659 return s 3660} 3661 3662// SetValidation sets the Validation field's value. 3663func (s *ClientPolicyTls) SetValidation(v *TlsValidationContext) *ClientPolicyTls { 3664 s.Validation = v 3665 return s 3666} 3667 3668// The request contains a client token that was used for a previous update resource 3669// call with different specifications. Try the request again with a new client 3670// token. 3671type ConflictException struct { 3672 _ struct{} `type:"structure"` 3673 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 3674 3675 Message_ *string `locationName:"message" type:"string"` 3676} 3677 3678// String returns the string representation 3679func (s ConflictException) String() string { 3680 return awsutil.Prettify(s) 3681} 3682 3683// GoString returns the string representation 3684func (s ConflictException) GoString() string { 3685 return s.String() 3686} 3687 3688func newErrorConflictException(v protocol.ResponseMetadata) error { 3689 return &ConflictException{ 3690 RespMetadata: v, 3691 } 3692} 3693 3694// Code returns the exception type name. 3695func (s *ConflictException) Code() string { 3696 return "ConflictException" 3697} 3698 3699// Message returns the exception's message. 3700func (s *ConflictException) Message() string { 3701 if s.Message_ != nil { 3702 return *s.Message_ 3703 } 3704 return "" 3705} 3706 3707// OrigErr always returns nil, satisfies awserr.Error interface. 3708func (s *ConflictException) OrigErr() error { 3709 return nil 3710} 3711 3712func (s *ConflictException) Error() string { 3713 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 3714} 3715 3716// Status code returns the HTTP status code for the request's response error. 3717func (s *ConflictException) StatusCode() int { 3718 return s.RespMetadata.StatusCode 3719} 3720 3721// RequestID returns the service's response RequestID for request. 3722func (s *ConflictException) RequestID() string { 3723 return s.RespMetadata.RequestID 3724} 3725 3726type CreateMeshInput struct { 3727 _ struct{} `type:"structure"` 3728 3729 ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"` 3730 3731 // MeshName is a required field 3732 MeshName *string `locationName:"meshName" min:"1" type:"string" required:"true"` 3733 3734 // An object that represents the specification of a service mesh. 3735 Spec *MeshSpec `locationName:"spec" type:"structure"` 3736 3737 Tags []*TagRef `locationName:"tags" type:"list"` 3738} 3739 3740// String returns the string representation 3741func (s CreateMeshInput) String() string { 3742 return awsutil.Prettify(s) 3743} 3744 3745// GoString returns the string representation 3746func (s CreateMeshInput) GoString() string { 3747 return s.String() 3748} 3749 3750// Validate inspects the fields of the type to determine if they are valid. 3751func (s *CreateMeshInput) Validate() error { 3752 invalidParams := request.ErrInvalidParams{Context: "CreateMeshInput"} 3753 if s.MeshName == nil { 3754 invalidParams.Add(request.NewErrParamRequired("MeshName")) 3755 } 3756 if s.MeshName != nil && len(*s.MeshName) < 1 { 3757 invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) 3758 } 3759 if s.Spec != nil { 3760 if err := s.Spec.Validate(); err != nil { 3761 invalidParams.AddNested("Spec", err.(request.ErrInvalidParams)) 3762 } 3763 } 3764 if s.Tags != nil { 3765 for i, v := range s.Tags { 3766 if v == nil { 3767 continue 3768 } 3769 if err := v.Validate(); err != nil { 3770 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) 3771 } 3772 } 3773 } 3774 3775 if invalidParams.Len() > 0 { 3776 return invalidParams 3777 } 3778 return nil 3779} 3780 3781// SetClientToken sets the ClientToken field's value. 3782func (s *CreateMeshInput) SetClientToken(v string) *CreateMeshInput { 3783 s.ClientToken = &v 3784 return s 3785} 3786 3787// SetMeshName sets the MeshName field's value. 3788func (s *CreateMeshInput) SetMeshName(v string) *CreateMeshInput { 3789 s.MeshName = &v 3790 return s 3791} 3792 3793// SetSpec sets the Spec field's value. 3794func (s *CreateMeshInput) SetSpec(v *MeshSpec) *CreateMeshInput { 3795 s.Spec = v 3796 return s 3797} 3798 3799// SetTags sets the Tags field's value. 3800func (s *CreateMeshInput) SetTags(v []*TagRef) *CreateMeshInput { 3801 s.Tags = v 3802 return s 3803} 3804 3805type CreateMeshOutput struct { 3806 _ struct{} `type:"structure" payload:"Mesh"` 3807 3808 // An object that represents a service mesh returned by a describe operation. 3809 // 3810 // Mesh is a required field 3811 Mesh *MeshData `locationName:"mesh" type:"structure" required:"true"` 3812} 3813 3814// String returns the string representation 3815func (s CreateMeshOutput) String() string { 3816 return awsutil.Prettify(s) 3817} 3818 3819// GoString returns the string representation 3820func (s CreateMeshOutput) GoString() string { 3821 return s.String() 3822} 3823 3824// SetMesh sets the Mesh field's value. 3825func (s *CreateMeshOutput) SetMesh(v *MeshData) *CreateMeshOutput { 3826 s.Mesh = v 3827 return s 3828} 3829 3830type CreateRouteInput struct { 3831 _ struct{} `type:"structure"` 3832 3833 ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"` 3834 3835 // MeshName is a required field 3836 MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` 3837 3838 MeshOwner *string `location:"querystring" locationName:"meshOwner" min:"12" type:"string"` 3839 3840 // RouteName is a required field 3841 RouteName *string `locationName:"routeName" min:"1" type:"string" required:"true"` 3842 3843 // An object that represents a route specification. Specify one route type. 3844 // 3845 // Spec is a required field 3846 Spec *RouteSpec `locationName:"spec" type:"structure" required:"true"` 3847 3848 Tags []*TagRef `locationName:"tags" type:"list"` 3849 3850 // VirtualRouterName is a required field 3851 VirtualRouterName *string `location:"uri" locationName:"virtualRouterName" min:"1" type:"string" required:"true"` 3852} 3853 3854// String returns the string representation 3855func (s CreateRouteInput) String() string { 3856 return awsutil.Prettify(s) 3857} 3858 3859// GoString returns the string representation 3860func (s CreateRouteInput) GoString() string { 3861 return s.String() 3862} 3863 3864// Validate inspects the fields of the type to determine if they are valid. 3865func (s *CreateRouteInput) Validate() error { 3866 invalidParams := request.ErrInvalidParams{Context: "CreateRouteInput"} 3867 if s.MeshName == nil { 3868 invalidParams.Add(request.NewErrParamRequired("MeshName")) 3869 } 3870 if s.MeshName != nil && len(*s.MeshName) < 1 { 3871 invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) 3872 } 3873 if s.MeshOwner != nil && len(*s.MeshOwner) < 12 { 3874 invalidParams.Add(request.NewErrParamMinLen("MeshOwner", 12)) 3875 } 3876 if s.RouteName == nil { 3877 invalidParams.Add(request.NewErrParamRequired("RouteName")) 3878 } 3879 if s.RouteName != nil && len(*s.RouteName) < 1 { 3880 invalidParams.Add(request.NewErrParamMinLen("RouteName", 1)) 3881 } 3882 if s.Spec == nil { 3883 invalidParams.Add(request.NewErrParamRequired("Spec")) 3884 } 3885 if s.VirtualRouterName == nil { 3886 invalidParams.Add(request.NewErrParamRequired("VirtualRouterName")) 3887 } 3888 if s.VirtualRouterName != nil && len(*s.VirtualRouterName) < 1 { 3889 invalidParams.Add(request.NewErrParamMinLen("VirtualRouterName", 1)) 3890 } 3891 if s.Spec != nil { 3892 if err := s.Spec.Validate(); err != nil { 3893 invalidParams.AddNested("Spec", err.(request.ErrInvalidParams)) 3894 } 3895 } 3896 if s.Tags != nil { 3897 for i, v := range s.Tags { 3898 if v == nil { 3899 continue 3900 } 3901 if err := v.Validate(); err != nil { 3902 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) 3903 } 3904 } 3905 } 3906 3907 if invalidParams.Len() > 0 { 3908 return invalidParams 3909 } 3910 return nil 3911} 3912 3913// SetClientToken sets the ClientToken field's value. 3914func (s *CreateRouteInput) SetClientToken(v string) *CreateRouteInput { 3915 s.ClientToken = &v 3916 return s 3917} 3918 3919// SetMeshName sets the MeshName field's value. 3920func (s *CreateRouteInput) SetMeshName(v string) *CreateRouteInput { 3921 s.MeshName = &v 3922 return s 3923} 3924 3925// SetMeshOwner sets the MeshOwner field's value. 3926func (s *CreateRouteInput) SetMeshOwner(v string) *CreateRouteInput { 3927 s.MeshOwner = &v 3928 return s 3929} 3930 3931// SetRouteName sets the RouteName field's value. 3932func (s *CreateRouteInput) SetRouteName(v string) *CreateRouteInput { 3933 s.RouteName = &v 3934 return s 3935} 3936 3937// SetSpec sets the Spec field's value. 3938func (s *CreateRouteInput) SetSpec(v *RouteSpec) *CreateRouteInput { 3939 s.Spec = v 3940 return s 3941} 3942 3943// SetTags sets the Tags field's value. 3944func (s *CreateRouteInput) SetTags(v []*TagRef) *CreateRouteInput { 3945 s.Tags = v 3946 return s 3947} 3948 3949// SetVirtualRouterName sets the VirtualRouterName field's value. 3950func (s *CreateRouteInput) SetVirtualRouterName(v string) *CreateRouteInput { 3951 s.VirtualRouterName = &v 3952 return s 3953} 3954 3955type CreateRouteOutput struct { 3956 _ struct{} `type:"structure" payload:"Route"` 3957 3958 // An object that represents a route returned by a describe operation. 3959 // 3960 // Route is a required field 3961 Route *RouteData `locationName:"route" type:"structure" required:"true"` 3962} 3963 3964// String returns the string representation 3965func (s CreateRouteOutput) String() string { 3966 return awsutil.Prettify(s) 3967} 3968 3969// GoString returns the string representation 3970func (s CreateRouteOutput) GoString() string { 3971 return s.String() 3972} 3973 3974// SetRoute sets the Route field's value. 3975func (s *CreateRouteOutput) SetRoute(v *RouteData) *CreateRouteOutput { 3976 s.Route = v 3977 return s 3978} 3979 3980type CreateVirtualNodeInput struct { 3981 _ struct{} `type:"structure"` 3982 3983 ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"` 3984 3985 // MeshName is a required field 3986 MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` 3987 3988 MeshOwner *string `location:"querystring" locationName:"meshOwner" min:"12" type:"string"` 3989 3990 // An object that represents the specification of a virtual node. 3991 // 3992 // Spec is a required field 3993 Spec *VirtualNodeSpec `locationName:"spec" type:"structure" required:"true"` 3994 3995 Tags []*TagRef `locationName:"tags" type:"list"` 3996 3997 // VirtualNodeName is a required field 3998 VirtualNodeName *string `locationName:"virtualNodeName" min:"1" type:"string" required:"true"` 3999} 4000 4001// String returns the string representation 4002func (s CreateVirtualNodeInput) String() string { 4003 return awsutil.Prettify(s) 4004} 4005 4006// GoString returns the string representation 4007func (s CreateVirtualNodeInput) GoString() string { 4008 return s.String() 4009} 4010 4011// Validate inspects the fields of the type to determine if they are valid. 4012func (s *CreateVirtualNodeInput) Validate() error { 4013 invalidParams := request.ErrInvalidParams{Context: "CreateVirtualNodeInput"} 4014 if s.MeshName == nil { 4015 invalidParams.Add(request.NewErrParamRequired("MeshName")) 4016 } 4017 if s.MeshName != nil && len(*s.MeshName) < 1 { 4018 invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) 4019 } 4020 if s.MeshOwner != nil && len(*s.MeshOwner) < 12 { 4021 invalidParams.Add(request.NewErrParamMinLen("MeshOwner", 12)) 4022 } 4023 if s.Spec == nil { 4024 invalidParams.Add(request.NewErrParamRequired("Spec")) 4025 } 4026 if s.VirtualNodeName == nil { 4027 invalidParams.Add(request.NewErrParamRequired("VirtualNodeName")) 4028 } 4029 if s.VirtualNodeName != nil && len(*s.VirtualNodeName) < 1 { 4030 invalidParams.Add(request.NewErrParamMinLen("VirtualNodeName", 1)) 4031 } 4032 if s.Spec != nil { 4033 if err := s.Spec.Validate(); err != nil { 4034 invalidParams.AddNested("Spec", err.(request.ErrInvalidParams)) 4035 } 4036 } 4037 if s.Tags != nil { 4038 for i, v := range s.Tags { 4039 if v == nil { 4040 continue 4041 } 4042 if err := v.Validate(); err != nil { 4043 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) 4044 } 4045 } 4046 } 4047 4048 if invalidParams.Len() > 0 { 4049 return invalidParams 4050 } 4051 return nil 4052} 4053 4054// SetClientToken sets the ClientToken field's value. 4055func (s *CreateVirtualNodeInput) SetClientToken(v string) *CreateVirtualNodeInput { 4056 s.ClientToken = &v 4057 return s 4058} 4059 4060// SetMeshName sets the MeshName field's value. 4061func (s *CreateVirtualNodeInput) SetMeshName(v string) *CreateVirtualNodeInput { 4062 s.MeshName = &v 4063 return s 4064} 4065 4066// SetMeshOwner sets the MeshOwner field's value. 4067func (s *CreateVirtualNodeInput) SetMeshOwner(v string) *CreateVirtualNodeInput { 4068 s.MeshOwner = &v 4069 return s 4070} 4071 4072// SetSpec sets the Spec field's value. 4073func (s *CreateVirtualNodeInput) SetSpec(v *VirtualNodeSpec) *CreateVirtualNodeInput { 4074 s.Spec = v 4075 return s 4076} 4077 4078// SetTags sets the Tags field's value. 4079func (s *CreateVirtualNodeInput) SetTags(v []*TagRef) *CreateVirtualNodeInput { 4080 s.Tags = v 4081 return s 4082} 4083 4084// SetVirtualNodeName sets the VirtualNodeName field's value. 4085func (s *CreateVirtualNodeInput) SetVirtualNodeName(v string) *CreateVirtualNodeInput { 4086 s.VirtualNodeName = &v 4087 return s 4088} 4089 4090type CreateVirtualNodeOutput struct { 4091 _ struct{} `type:"structure" payload:"VirtualNode"` 4092 4093 // An object that represents a virtual node returned by a describe operation. 4094 // 4095 // VirtualNode is a required field 4096 VirtualNode *VirtualNodeData `locationName:"virtualNode" type:"structure" required:"true"` 4097} 4098 4099// String returns the string representation 4100func (s CreateVirtualNodeOutput) String() string { 4101 return awsutil.Prettify(s) 4102} 4103 4104// GoString returns the string representation 4105func (s CreateVirtualNodeOutput) GoString() string { 4106 return s.String() 4107} 4108 4109// SetVirtualNode sets the VirtualNode field's value. 4110func (s *CreateVirtualNodeOutput) SetVirtualNode(v *VirtualNodeData) *CreateVirtualNodeOutput { 4111 s.VirtualNode = v 4112 return s 4113} 4114 4115type CreateVirtualRouterInput struct { 4116 _ struct{} `type:"structure"` 4117 4118 ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"` 4119 4120 // MeshName is a required field 4121 MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` 4122 4123 MeshOwner *string `location:"querystring" locationName:"meshOwner" min:"12" type:"string"` 4124 4125 // An object that represents the specification of a virtual router. 4126 // 4127 // Spec is a required field 4128 Spec *VirtualRouterSpec `locationName:"spec" type:"structure" required:"true"` 4129 4130 Tags []*TagRef `locationName:"tags" type:"list"` 4131 4132 // VirtualRouterName is a required field 4133 VirtualRouterName *string `locationName:"virtualRouterName" min:"1" type:"string" required:"true"` 4134} 4135 4136// String returns the string representation 4137func (s CreateVirtualRouterInput) String() string { 4138 return awsutil.Prettify(s) 4139} 4140 4141// GoString returns the string representation 4142func (s CreateVirtualRouterInput) GoString() string { 4143 return s.String() 4144} 4145 4146// Validate inspects the fields of the type to determine if they are valid. 4147func (s *CreateVirtualRouterInput) Validate() error { 4148 invalidParams := request.ErrInvalidParams{Context: "CreateVirtualRouterInput"} 4149 if s.MeshName == nil { 4150 invalidParams.Add(request.NewErrParamRequired("MeshName")) 4151 } 4152 if s.MeshName != nil && len(*s.MeshName) < 1 { 4153 invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) 4154 } 4155 if s.MeshOwner != nil && len(*s.MeshOwner) < 12 { 4156 invalidParams.Add(request.NewErrParamMinLen("MeshOwner", 12)) 4157 } 4158 if s.Spec == nil { 4159 invalidParams.Add(request.NewErrParamRequired("Spec")) 4160 } 4161 if s.VirtualRouterName == nil { 4162 invalidParams.Add(request.NewErrParamRequired("VirtualRouterName")) 4163 } 4164 if s.VirtualRouterName != nil && len(*s.VirtualRouterName) < 1 { 4165 invalidParams.Add(request.NewErrParamMinLen("VirtualRouterName", 1)) 4166 } 4167 if s.Spec != nil { 4168 if err := s.Spec.Validate(); err != nil { 4169 invalidParams.AddNested("Spec", err.(request.ErrInvalidParams)) 4170 } 4171 } 4172 if s.Tags != nil { 4173 for i, v := range s.Tags { 4174 if v == nil { 4175 continue 4176 } 4177 if err := v.Validate(); err != nil { 4178 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) 4179 } 4180 } 4181 } 4182 4183 if invalidParams.Len() > 0 { 4184 return invalidParams 4185 } 4186 return nil 4187} 4188 4189// SetClientToken sets the ClientToken field's value. 4190func (s *CreateVirtualRouterInput) SetClientToken(v string) *CreateVirtualRouterInput { 4191 s.ClientToken = &v 4192 return s 4193} 4194 4195// SetMeshName sets the MeshName field's value. 4196func (s *CreateVirtualRouterInput) SetMeshName(v string) *CreateVirtualRouterInput { 4197 s.MeshName = &v 4198 return s 4199} 4200 4201// SetMeshOwner sets the MeshOwner field's value. 4202func (s *CreateVirtualRouterInput) SetMeshOwner(v string) *CreateVirtualRouterInput { 4203 s.MeshOwner = &v 4204 return s 4205} 4206 4207// SetSpec sets the Spec field's value. 4208func (s *CreateVirtualRouterInput) SetSpec(v *VirtualRouterSpec) *CreateVirtualRouterInput { 4209 s.Spec = v 4210 return s 4211} 4212 4213// SetTags sets the Tags field's value. 4214func (s *CreateVirtualRouterInput) SetTags(v []*TagRef) *CreateVirtualRouterInput { 4215 s.Tags = v 4216 return s 4217} 4218 4219// SetVirtualRouterName sets the VirtualRouterName field's value. 4220func (s *CreateVirtualRouterInput) SetVirtualRouterName(v string) *CreateVirtualRouterInput { 4221 s.VirtualRouterName = &v 4222 return s 4223} 4224 4225type CreateVirtualRouterOutput struct { 4226 _ struct{} `type:"structure" payload:"VirtualRouter"` 4227 4228 // An object that represents a virtual router returned by a describe operation. 4229 // 4230 // VirtualRouter is a required field 4231 VirtualRouter *VirtualRouterData `locationName:"virtualRouter" type:"structure" required:"true"` 4232} 4233 4234// String returns the string representation 4235func (s CreateVirtualRouterOutput) String() string { 4236 return awsutil.Prettify(s) 4237} 4238 4239// GoString returns the string representation 4240func (s CreateVirtualRouterOutput) GoString() string { 4241 return s.String() 4242} 4243 4244// SetVirtualRouter sets the VirtualRouter field's value. 4245func (s *CreateVirtualRouterOutput) SetVirtualRouter(v *VirtualRouterData) *CreateVirtualRouterOutput { 4246 s.VirtualRouter = v 4247 return s 4248} 4249 4250type CreateVirtualServiceInput struct { 4251 _ struct{} `type:"structure"` 4252 4253 ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"` 4254 4255 // MeshName is a required field 4256 MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` 4257 4258 MeshOwner *string `location:"querystring" locationName:"meshOwner" min:"12" type:"string"` 4259 4260 // An object that represents the specification of a virtual service. 4261 // 4262 // Spec is a required field 4263 Spec *VirtualServiceSpec `locationName:"spec" type:"structure" required:"true"` 4264 4265 Tags []*TagRef `locationName:"tags" type:"list"` 4266 4267 // VirtualServiceName is a required field 4268 VirtualServiceName *string `locationName:"virtualServiceName" type:"string" required:"true"` 4269} 4270 4271// String returns the string representation 4272func (s CreateVirtualServiceInput) String() string { 4273 return awsutil.Prettify(s) 4274} 4275 4276// GoString returns the string representation 4277func (s CreateVirtualServiceInput) GoString() string { 4278 return s.String() 4279} 4280 4281// Validate inspects the fields of the type to determine if they are valid. 4282func (s *CreateVirtualServiceInput) Validate() error { 4283 invalidParams := request.ErrInvalidParams{Context: "CreateVirtualServiceInput"} 4284 if s.MeshName == nil { 4285 invalidParams.Add(request.NewErrParamRequired("MeshName")) 4286 } 4287 if s.MeshName != nil && len(*s.MeshName) < 1 { 4288 invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) 4289 } 4290 if s.MeshOwner != nil && len(*s.MeshOwner) < 12 { 4291 invalidParams.Add(request.NewErrParamMinLen("MeshOwner", 12)) 4292 } 4293 if s.Spec == nil { 4294 invalidParams.Add(request.NewErrParamRequired("Spec")) 4295 } 4296 if s.VirtualServiceName == nil { 4297 invalidParams.Add(request.NewErrParamRequired("VirtualServiceName")) 4298 } 4299 if s.Spec != nil { 4300 if err := s.Spec.Validate(); err != nil { 4301 invalidParams.AddNested("Spec", err.(request.ErrInvalidParams)) 4302 } 4303 } 4304 if s.Tags != nil { 4305 for i, v := range s.Tags { 4306 if v == nil { 4307 continue 4308 } 4309 if err := v.Validate(); err != nil { 4310 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) 4311 } 4312 } 4313 } 4314 4315 if invalidParams.Len() > 0 { 4316 return invalidParams 4317 } 4318 return nil 4319} 4320 4321// SetClientToken sets the ClientToken field's value. 4322func (s *CreateVirtualServiceInput) SetClientToken(v string) *CreateVirtualServiceInput { 4323 s.ClientToken = &v 4324 return s 4325} 4326 4327// SetMeshName sets the MeshName field's value. 4328func (s *CreateVirtualServiceInput) SetMeshName(v string) *CreateVirtualServiceInput { 4329 s.MeshName = &v 4330 return s 4331} 4332 4333// SetMeshOwner sets the MeshOwner field's value. 4334func (s *CreateVirtualServiceInput) SetMeshOwner(v string) *CreateVirtualServiceInput { 4335 s.MeshOwner = &v 4336 return s 4337} 4338 4339// SetSpec sets the Spec field's value. 4340func (s *CreateVirtualServiceInput) SetSpec(v *VirtualServiceSpec) *CreateVirtualServiceInput { 4341 s.Spec = v 4342 return s 4343} 4344 4345// SetTags sets the Tags field's value. 4346func (s *CreateVirtualServiceInput) SetTags(v []*TagRef) *CreateVirtualServiceInput { 4347 s.Tags = v 4348 return s 4349} 4350 4351// SetVirtualServiceName sets the VirtualServiceName field's value. 4352func (s *CreateVirtualServiceInput) SetVirtualServiceName(v string) *CreateVirtualServiceInput { 4353 s.VirtualServiceName = &v 4354 return s 4355} 4356 4357type CreateVirtualServiceOutput struct { 4358 _ struct{} `type:"structure" payload:"VirtualService"` 4359 4360 // An object that represents a virtual service returned by a describe operation. 4361 // 4362 // VirtualService is a required field 4363 VirtualService *VirtualServiceData `locationName:"virtualService" type:"structure" required:"true"` 4364} 4365 4366// String returns the string representation 4367func (s CreateVirtualServiceOutput) String() string { 4368 return awsutil.Prettify(s) 4369} 4370 4371// GoString returns the string representation 4372func (s CreateVirtualServiceOutput) GoString() string { 4373 return s.String() 4374} 4375 4376// SetVirtualService sets the VirtualService field's value. 4377func (s *CreateVirtualServiceOutput) SetVirtualService(v *VirtualServiceData) *CreateVirtualServiceOutput { 4378 s.VirtualService = v 4379 return s 4380} 4381 4382type DeleteMeshInput struct { 4383 _ struct{} `type:"structure"` 4384 4385 // MeshName is a required field 4386 MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` 4387} 4388 4389// String returns the string representation 4390func (s DeleteMeshInput) String() string { 4391 return awsutil.Prettify(s) 4392} 4393 4394// GoString returns the string representation 4395func (s DeleteMeshInput) GoString() string { 4396 return s.String() 4397} 4398 4399// Validate inspects the fields of the type to determine if they are valid. 4400func (s *DeleteMeshInput) Validate() error { 4401 invalidParams := request.ErrInvalidParams{Context: "DeleteMeshInput"} 4402 if s.MeshName == nil { 4403 invalidParams.Add(request.NewErrParamRequired("MeshName")) 4404 } 4405 if s.MeshName != nil && len(*s.MeshName) < 1 { 4406 invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) 4407 } 4408 4409 if invalidParams.Len() > 0 { 4410 return invalidParams 4411 } 4412 return nil 4413} 4414 4415// SetMeshName sets the MeshName field's value. 4416func (s *DeleteMeshInput) SetMeshName(v string) *DeleteMeshInput { 4417 s.MeshName = &v 4418 return s 4419} 4420 4421type DeleteMeshOutput struct { 4422 _ struct{} `type:"structure" payload:"Mesh"` 4423 4424 // An object that represents a service mesh returned by a describe operation. 4425 // 4426 // Mesh is a required field 4427 Mesh *MeshData `locationName:"mesh" type:"structure" required:"true"` 4428} 4429 4430// String returns the string representation 4431func (s DeleteMeshOutput) String() string { 4432 return awsutil.Prettify(s) 4433} 4434 4435// GoString returns the string representation 4436func (s DeleteMeshOutput) GoString() string { 4437 return s.String() 4438} 4439 4440// SetMesh sets the Mesh field's value. 4441func (s *DeleteMeshOutput) SetMesh(v *MeshData) *DeleteMeshOutput { 4442 s.Mesh = v 4443 return s 4444} 4445 4446type DeleteRouteInput struct { 4447 _ struct{} `type:"structure"` 4448 4449 // MeshName is a required field 4450 MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` 4451 4452 MeshOwner *string `location:"querystring" locationName:"meshOwner" min:"12" type:"string"` 4453 4454 // RouteName is a required field 4455 RouteName *string `location:"uri" locationName:"routeName" min:"1" type:"string" required:"true"` 4456 4457 // VirtualRouterName is a required field 4458 VirtualRouterName *string `location:"uri" locationName:"virtualRouterName" min:"1" type:"string" required:"true"` 4459} 4460 4461// String returns the string representation 4462func (s DeleteRouteInput) String() string { 4463 return awsutil.Prettify(s) 4464} 4465 4466// GoString returns the string representation 4467func (s DeleteRouteInput) GoString() string { 4468 return s.String() 4469} 4470 4471// Validate inspects the fields of the type to determine if they are valid. 4472func (s *DeleteRouteInput) Validate() error { 4473 invalidParams := request.ErrInvalidParams{Context: "DeleteRouteInput"} 4474 if s.MeshName == nil { 4475 invalidParams.Add(request.NewErrParamRequired("MeshName")) 4476 } 4477 if s.MeshName != nil && len(*s.MeshName) < 1 { 4478 invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) 4479 } 4480 if s.MeshOwner != nil && len(*s.MeshOwner) < 12 { 4481 invalidParams.Add(request.NewErrParamMinLen("MeshOwner", 12)) 4482 } 4483 if s.RouteName == nil { 4484 invalidParams.Add(request.NewErrParamRequired("RouteName")) 4485 } 4486 if s.RouteName != nil && len(*s.RouteName) < 1 { 4487 invalidParams.Add(request.NewErrParamMinLen("RouteName", 1)) 4488 } 4489 if s.VirtualRouterName == nil { 4490 invalidParams.Add(request.NewErrParamRequired("VirtualRouterName")) 4491 } 4492 if s.VirtualRouterName != nil && len(*s.VirtualRouterName) < 1 { 4493 invalidParams.Add(request.NewErrParamMinLen("VirtualRouterName", 1)) 4494 } 4495 4496 if invalidParams.Len() > 0 { 4497 return invalidParams 4498 } 4499 return nil 4500} 4501 4502// SetMeshName sets the MeshName field's value. 4503func (s *DeleteRouteInput) SetMeshName(v string) *DeleteRouteInput { 4504 s.MeshName = &v 4505 return s 4506} 4507 4508// SetMeshOwner sets the MeshOwner field's value. 4509func (s *DeleteRouteInput) SetMeshOwner(v string) *DeleteRouteInput { 4510 s.MeshOwner = &v 4511 return s 4512} 4513 4514// SetRouteName sets the RouteName field's value. 4515func (s *DeleteRouteInput) SetRouteName(v string) *DeleteRouteInput { 4516 s.RouteName = &v 4517 return s 4518} 4519 4520// SetVirtualRouterName sets the VirtualRouterName field's value. 4521func (s *DeleteRouteInput) SetVirtualRouterName(v string) *DeleteRouteInput { 4522 s.VirtualRouterName = &v 4523 return s 4524} 4525 4526type DeleteRouteOutput struct { 4527 _ struct{} `type:"structure" payload:"Route"` 4528 4529 // An object that represents a route returned by a describe operation. 4530 // 4531 // Route is a required field 4532 Route *RouteData `locationName:"route" type:"structure" required:"true"` 4533} 4534 4535// String returns the string representation 4536func (s DeleteRouteOutput) String() string { 4537 return awsutil.Prettify(s) 4538} 4539 4540// GoString returns the string representation 4541func (s DeleteRouteOutput) GoString() string { 4542 return s.String() 4543} 4544 4545// SetRoute sets the Route field's value. 4546func (s *DeleteRouteOutput) SetRoute(v *RouteData) *DeleteRouteOutput { 4547 s.Route = v 4548 return s 4549} 4550 4551type DeleteVirtualNodeInput struct { 4552 _ struct{} `type:"structure"` 4553 4554 // MeshName is a required field 4555 MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` 4556 4557 MeshOwner *string `location:"querystring" locationName:"meshOwner" min:"12" type:"string"` 4558 4559 // VirtualNodeName is a required field 4560 VirtualNodeName *string `location:"uri" locationName:"virtualNodeName" min:"1" type:"string" required:"true"` 4561} 4562 4563// String returns the string representation 4564func (s DeleteVirtualNodeInput) String() string { 4565 return awsutil.Prettify(s) 4566} 4567 4568// GoString returns the string representation 4569func (s DeleteVirtualNodeInput) GoString() string { 4570 return s.String() 4571} 4572 4573// Validate inspects the fields of the type to determine if they are valid. 4574func (s *DeleteVirtualNodeInput) Validate() error { 4575 invalidParams := request.ErrInvalidParams{Context: "DeleteVirtualNodeInput"} 4576 if s.MeshName == nil { 4577 invalidParams.Add(request.NewErrParamRequired("MeshName")) 4578 } 4579 if s.MeshName != nil && len(*s.MeshName) < 1 { 4580 invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) 4581 } 4582 if s.MeshOwner != nil && len(*s.MeshOwner) < 12 { 4583 invalidParams.Add(request.NewErrParamMinLen("MeshOwner", 12)) 4584 } 4585 if s.VirtualNodeName == nil { 4586 invalidParams.Add(request.NewErrParamRequired("VirtualNodeName")) 4587 } 4588 if s.VirtualNodeName != nil && len(*s.VirtualNodeName) < 1 { 4589 invalidParams.Add(request.NewErrParamMinLen("VirtualNodeName", 1)) 4590 } 4591 4592 if invalidParams.Len() > 0 { 4593 return invalidParams 4594 } 4595 return nil 4596} 4597 4598// SetMeshName sets the MeshName field's value. 4599func (s *DeleteVirtualNodeInput) SetMeshName(v string) *DeleteVirtualNodeInput { 4600 s.MeshName = &v 4601 return s 4602} 4603 4604// SetMeshOwner sets the MeshOwner field's value. 4605func (s *DeleteVirtualNodeInput) SetMeshOwner(v string) *DeleteVirtualNodeInput { 4606 s.MeshOwner = &v 4607 return s 4608} 4609 4610// SetVirtualNodeName sets the VirtualNodeName field's value. 4611func (s *DeleteVirtualNodeInput) SetVirtualNodeName(v string) *DeleteVirtualNodeInput { 4612 s.VirtualNodeName = &v 4613 return s 4614} 4615 4616type DeleteVirtualNodeOutput struct { 4617 _ struct{} `type:"structure" payload:"VirtualNode"` 4618 4619 // An object that represents a virtual node returned by a describe operation. 4620 // 4621 // VirtualNode is a required field 4622 VirtualNode *VirtualNodeData `locationName:"virtualNode" type:"structure" required:"true"` 4623} 4624 4625// String returns the string representation 4626func (s DeleteVirtualNodeOutput) String() string { 4627 return awsutil.Prettify(s) 4628} 4629 4630// GoString returns the string representation 4631func (s DeleteVirtualNodeOutput) GoString() string { 4632 return s.String() 4633} 4634 4635// SetVirtualNode sets the VirtualNode field's value. 4636func (s *DeleteVirtualNodeOutput) SetVirtualNode(v *VirtualNodeData) *DeleteVirtualNodeOutput { 4637 s.VirtualNode = v 4638 return s 4639} 4640 4641type DeleteVirtualRouterInput struct { 4642 _ struct{} `type:"structure"` 4643 4644 // MeshName is a required field 4645 MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` 4646 4647 MeshOwner *string `location:"querystring" locationName:"meshOwner" min:"12" type:"string"` 4648 4649 // VirtualRouterName is a required field 4650 VirtualRouterName *string `location:"uri" locationName:"virtualRouterName" min:"1" type:"string" required:"true"` 4651} 4652 4653// String returns the string representation 4654func (s DeleteVirtualRouterInput) String() string { 4655 return awsutil.Prettify(s) 4656} 4657 4658// GoString returns the string representation 4659func (s DeleteVirtualRouterInput) GoString() string { 4660 return s.String() 4661} 4662 4663// Validate inspects the fields of the type to determine if they are valid. 4664func (s *DeleteVirtualRouterInput) Validate() error { 4665 invalidParams := request.ErrInvalidParams{Context: "DeleteVirtualRouterInput"} 4666 if s.MeshName == nil { 4667 invalidParams.Add(request.NewErrParamRequired("MeshName")) 4668 } 4669 if s.MeshName != nil && len(*s.MeshName) < 1 { 4670 invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) 4671 } 4672 if s.MeshOwner != nil && len(*s.MeshOwner) < 12 { 4673 invalidParams.Add(request.NewErrParamMinLen("MeshOwner", 12)) 4674 } 4675 if s.VirtualRouterName == nil { 4676 invalidParams.Add(request.NewErrParamRequired("VirtualRouterName")) 4677 } 4678 if s.VirtualRouterName != nil && len(*s.VirtualRouterName) < 1 { 4679 invalidParams.Add(request.NewErrParamMinLen("VirtualRouterName", 1)) 4680 } 4681 4682 if invalidParams.Len() > 0 { 4683 return invalidParams 4684 } 4685 return nil 4686} 4687 4688// SetMeshName sets the MeshName field's value. 4689func (s *DeleteVirtualRouterInput) SetMeshName(v string) *DeleteVirtualRouterInput { 4690 s.MeshName = &v 4691 return s 4692} 4693 4694// SetMeshOwner sets the MeshOwner field's value. 4695func (s *DeleteVirtualRouterInput) SetMeshOwner(v string) *DeleteVirtualRouterInput { 4696 s.MeshOwner = &v 4697 return s 4698} 4699 4700// SetVirtualRouterName sets the VirtualRouterName field's value. 4701func (s *DeleteVirtualRouterInput) SetVirtualRouterName(v string) *DeleteVirtualRouterInput { 4702 s.VirtualRouterName = &v 4703 return s 4704} 4705 4706type DeleteVirtualRouterOutput struct { 4707 _ struct{} `type:"structure" payload:"VirtualRouter"` 4708 4709 // An object that represents a virtual router returned by a describe operation. 4710 // 4711 // VirtualRouter is a required field 4712 VirtualRouter *VirtualRouterData `locationName:"virtualRouter" type:"structure" required:"true"` 4713} 4714 4715// String returns the string representation 4716func (s DeleteVirtualRouterOutput) String() string { 4717 return awsutil.Prettify(s) 4718} 4719 4720// GoString returns the string representation 4721func (s DeleteVirtualRouterOutput) GoString() string { 4722 return s.String() 4723} 4724 4725// SetVirtualRouter sets the VirtualRouter field's value. 4726func (s *DeleteVirtualRouterOutput) SetVirtualRouter(v *VirtualRouterData) *DeleteVirtualRouterOutput { 4727 s.VirtualRouter = v 4728 return s 4729} 4730 4731type DeleteVirtualServiceInput struct { 4732 _ struct{} `type:"structure"` 4733 4734 // MeshName is a required field 4735 MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` 4736 4737 MeshOwner *string `location:"querystring" locationName:"meshOwner" min:"12" type:"string"` 4738 4739 // VirtualServiceName is a required field 4740 VirtualServiceName *string `location:"uri" locationName:"virtualServiceName" type:"string" required:"true"` 4741} 4742 4743// String returns the string representation 4744func (s DeleteVirtualServiceInput) String() string { 4745 return awsutil.Prettify(s) 4746} 4747 4748// GoString returns the string representation 4749func (s DeleteVirtualServiceInput) GoString() string { 4750 return s.String() 4751} 4752 4753// Validate inspects the fields of the type to determine if they are valid. 4754func (s *DeleteVirtualServiceInput) Validate() error { 4755 invalidParams := request.ErrInvalidParams{Context: "DeleteVirtualServiceInput"} 4756 if s.MeshName == nil { 4757 invalidParams.Add(request.NewErrParamRequired("MeshName")) 4758 } 4759 if s.MeshName != nil && len(*s.MeshName) < 1 { 4760 invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) 4761 } 4762 if s.MeshOwner != nil && len(*s.MeshOwner) < 12 { 4763 invalidParams.Add(request.NewErrParamMinLen("MeshOwner", 12)) 4764 } 4765 if s.VirtualServiceName == nil { 4766 invalidParams.Add(request.NewErrParamRequired("VirtualServiceName")) 4767 } 4768 if s.VirtualServiceName != nil && len(*s.VirtualServiceName) < 1 { 4769 invalidParams.Add(request.NewErrParamMinLen("VirtualServiceName", 1)) 4770 } 4771 4772 if invalidParams.Len() > 0 { 4773 return invalidParams 4774 } 4775 return nil 4776} 4777 4778// SetMeshName sets the MeshName field's value. 4779func (s *DeleteVirtualServiceInput) SetMeshName(v string) *DeleteVirtualServiceInput { 4780 s.MeshName = &v 4781 return s 4782} 4783 4784// SetMeshOwner sets the MeshOwner field's value. 4785func (s *DeleteVirtualServiceInput) SetMeshOwner(v string) *DeleteVirtualServiceInput { 4786 s.MeshOwner = &v 4787 return s 4788} 4789 4790// SetVirtualServiceName sets the VirtualServiceName field's value. 4791func (s *DeleteVirtualServiceInput) SetVirtualServiceName(v string) *DeleteVirtualServiceInput { 4792 s.VirtualServiceName = &v 4793 return s 4794} 4795 4796type DeleteVirtualServiceOutput struct { 4797 _ struct{} `type:"structure" payload:"VirtualService"` 4798 4799 // An object that represents a virtual service returned by a describe operation. 4800 // 4801 // VirtualService is a required field 4802 VirtualService *VirtualServiceData `locationName:"virtualService" type:"structure" required:"true"` 4803} 4804 4805// String returns the string representation 4806func (s DeleteVirtualServiceOutput) String() string { 4807 return awsutil.Prettify(s) 4808} 4809 4810// GoString returns the string representation 4811func (s DeleteVirtualServiceOutput) GoString() string { 4812 return s.String() 4813} 4814 4815// SetVirtualService sets the VirtualService field's value. 4816func (s *DeleteVirtualServiceOutput) SetVirtualService(v *VirtualServiceData) *DeleteVirtualServiceOutput { 4817 s.VirtualService = v 4818 return s 4819} 4820 4821type DescribeMeshInput struct { 4822 _ struct{} `type:"structure"` 4823 4824 // MeshName is a required field 4825 MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` 4826 4827 MeshOwner *string `location:"querystring" locationName:"meshOwner" min:"12" type:"string"` 4828} 4829 4830// String returns the string representation 4831func (s DescribeMeshInput) String() string { 4832 return awsutil.Prettify(s) 4833} 4834 4835// GoString returns the string representation 4836func (s DescribeMeshInput) GoString() string { 4837 return s.String() 4838} 4839 4840// Validate inspects the fields of the type to determine if they are valid. 4841func (s *DescribeMeshInput) Validate() error { 4842 invalidParams := request.ErrInvalidParams{Context: "DescribeMeshInput"} 4843 if s.MeshName == nil { 4844 invalidParams.Add(request.NewErrParamRequired("MeshName")) 4845 } 4846 if s.MeshName != nil && len(*s.MeshName) < 1 { 4847 invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) 4848 } 4849 if s.MeshOwner != nil && len(*s.MeshOwner) < 12 { 4850 invalidParams.Add(request.NewErrParamMinLen("MeshOwner", 12)) 4851 } 4852 4853 if invalidParams.Len() > 0 { 4854 return invalidParams 4855 } 4856 return nil 4857} 4858 4859// SetMeshName sets the MeshName field's value. 4860func (s *DescribeMeshInput) SetMeshName(v string) *DescribeMeshInput { 4861 s.MeshName = &v 4862 return s 4863} 4864 4865// SetMeshOwner sets the MeshOwner field's value. 4866func (s *DescribeMeshInput) SetMeshOwner(v string) *DescribeMeshInput { 4867 s.MeshOwner = &v 4868 return s 4869} 4870 4871type DescribeMeshOutput struct { 4872 _ struct{} `type:"structure" payload:"Mesh"` 4873 4874 // An object that represents a service mesh returned by a describe operation. 4875 // 4876 // Mesh is a required field 4877 Mesh *MeshData `locationName:"mesh" type:"structure" required:"true"` 4878} 4879 4880// String returns the string representation 4881func (s DescribeMeshOutput) String() string { 4882 return awsutil.Prettify(s) 4883} 4884 4885// GoString returns the string representation 4886func (s DescribeMeshOutput) GoString() string { 4887 return s.String() 4888} 4889 4890// SetMesh sets the Mesh field's value. 4891func (s *DescribeMeshOutput) SetMesh(v *MeshData) *DescribeMeshOutput { 4892 s.Mesh = v 4893 return s 4894} 4895 4896type DescribeRouteInput struct { 4897 _ struct{} `type:"structure"` 4898 4899 // MeshName is a required field 4900 MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` 4901 4902 MeshOwner *string `location:"querystring" locationName:"meshOwner" min:"12" type:"string"` 4903 4904 // RouteName is a required field 4905 RouteName *string `location:"uri" locationName:"routeName" min:"1" type:"string" required:"true"` 4906 4907 // VirtualRouterName is a required field 4908 VirtualRouterName *string `location:"uri" locationName:"virtualRouterName" min:"1" type:"string" required:"true"` 4909} 4910 4911// String returns the string representation 4912func (s DescribeRouteInput) String() string { 4913 return awsutil.Prettify(s) 4914} 4915 4916// GoString returns the string representation 4917func (s DescribeRouteInput) GoString() string { 4918 return s.String() 4919} 4920 4921// Validate inspects the fields of the type to determine if they are valid. 4922func (s *DescribeRouteInput) Validate() error { 4923 invalidParams := request.ErrInvalidParams{Context: "DescribeRouteInput"} 4924 if s.MeshName == nil { 4925 invalidParams.Add(request.NewErrParamRequired("MeshName")) 4926 } 4927 if s.MeshName != nil && len(*s.MeshName) < 1 { 4928 invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) 4929 } 4930 if s.MeshOwner != nil && len(*s.MeshOwner) < 12 { 4931 invalidParams.Add(request.NewErrParamMinLen("MeshOwner", 12)) 4932 } 4933 if s.RouteName == nil { 4934 invalidParams.Add(request.NewErrParamRequired("RouteName")) 4935 } 4936 if s.RouteName != nil && len(*s.RouteName) < 1 { 4937 invalidParams.Add(request.NewErrParamMinLen("RouteName", 1)) 4938 } 4939 if s.VirtualRouterName == nil { 4940 invalidParams.Add(request.NewErrParamRequired("VirtualRouterName")) 4941 } 4942 if s.VirtualRouterName != nil && len(*s.VirtualRouterName) < 1 { 4943 invalidParams.Add(request.NewErrParamMinLen("VirtualRouterName", 1)) 4944 } 4945 4946 if invalidParams.Len() > 0 { 4947 return invalidParams 4948 } 4949 return nil 4950} 4951 4952// SetMeshName sets the MeshName field's value. 4953func (s *DescribeRouteInput) SetMeshName(v string) *DescribeRouteInput { 4954 s.MeshName = &v 4955 return s 4956} 4957 4958// SetMeshOwner sets the MeshOwner field's value. 4959func (s *DescribeRouteInput) SetMeshOwner(v string) *DescribeRouteInput { 4960 s.MeshOwner = &v 4961 return s 4962} 4963 4964// SetRouteName sets the RouteName field's value. 4965func (s *DescribeRouteInput) SetRouteName(v string) *DescribeRouteInput { 4966 s.RouteName = &v 4967 return s 4968} 4969 4970// SetVirtualRouterName sets the VirtualRouterName field's value. 4971func (s *DescribeRouteInput) SetVirtualRouterName(v string) *DescribeRouteInput { 4972 s.VirtualRouterName = &v 4973 return s 4974} 4975 4976type DescribeRouteOutput struct { 4977 _ struct{} `type:"structure" payload:"Route"` 4978 4979 // An object that represents a route returned by a describe operation. 4980 // 4981 // Route is a required field 4982 Route *RouteData `locationName:"route" type:"structure" required:"true"` 4983} 4984 4985// String returns the string representation 4986func (s DescribeRouteOutput) String() string { 4987 return awsutil.Prettify(s) 4988} 4989 4990// GoString returns the string representation 4991func (s DescribeRouteOutput) GoString() string { 4992 return s.String() 4993} 4994 4995// SetRoute sets the Route field's value. 4996func (s *DescribeRouteOutput) SetRoute(v *RouteData) *DescribeRouteOutput { 4997 s.Route = v 4998 return s 4999} 5000 5001type DescribeVirtualNodeInput struct { 5002 _ struct{} `type:"structure"` 5003 5004 // MeshName is a required field 5005 MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` 5006 5007 MeshOwner *string `location:"querystring" locationName:"meshOwner" min:"12" type:"string"` 5008 5009 // VirtualNodeName is a required field 5010 VirtualNodeName *string `location:"uri" locationName:"virtualNodeName" min:"1" type:"string" required:"true"` 5011} 5012 5013// String returns the string representation 5014func (s DescribeVirtualNodeInput) String() string { 5015 return awsutil.Prettify(s) 5016} 5017 5018// GoString returns the string representation 5019func (s DescribeVirtualNodeInput) GoString() string { 5020 return s.String() 5021} 5022 5023// Validate inspects the fields of the type to determine if they are valid. 5024func (s *DescribeVirtualNodeInput) Validate() error { 5025 invalidParams := request.ErrInvalidParams{Context: "DescribeVirtualNodeInput"} 5026 if s.MeshName == nil { 5027 invalidParams.Add(request.NewErrParamRequired("MeshName")) 5028 } 5029 if s.MeshName != nil && len(*s.MeshName) < 1 { 5030 invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) 5031 } 5032 if s.MeshOwner != nil && len(*s.MeshOwner) < 12 { 5033 invalidParams.Add(request.NewErrParamMinLen("MeshOwner", 12)) 5034 } 5035 if s.VirtualNodeName == nil { 5036 invalidParams.Add(request.NewErrParamRequired("VirtualNodeName")) 5037 } 5038 if s.VirtualNodeName != nil && len(*s.VirtualNodeName) < 1 { 5039 invalidParams.Add(request.NewErrParamMinLen("VirtualNodeName", 1)) 5040 } 5041 5042 if invalidParams.Len() > 0 { 5043 return invalidParams 5044 } 5045 return nil 5046} 5047 5048// SetMeshName sets the MeshName field's value. 5049func (s *DescribeVirtualNodeInput) SetMeshName(v string) *DescribeVirtualNodeInput { 5050 s.MeshName = &v 5051 return s 5052} 5053 5054// SetMeshOwner sets the MeshOwner field's value. 5055func (s *DescribeVirtualNodeInput) SetMeshOwner(v string) *DescribeVirtualNodeInput { 5056 s.MeshOwner = &v 5057 return s 5058} 5059 5060// SetVirtualNodeName sets the VirtualNodeName field's value. 5061func (s *DescribeVirtualNodeInput) SetVirtualNodeName(v string) *DescribeVirtualNodeInput { 5062 s.VirtualNodeName = &v 5063 return s 5064} 5065 5066type DescribeVirtualNodeOutput struct { 5067 _ struct{} `type:"structure" payload:"VirtualNode"` 5068 5069 // An object that represents a virtual node returned by a describe operation. 5070 // 5071 // VirtualNode is a required field 5072 VirtualNode *VirtualNodeData `locationName:"virtualNode" type:"structure" required:"true"` 5073} 5074 5075// String returns the string representation 5076func (s DescribeVirtualNodeOutput) String() string { 5077 return awsutil.Prettify(s) 5078} 5079 5080// GoString returns the string representation 5081func (s DescribeVirtualNodeOutput) GoString() string { 5082 return s.String() 5083} 5084 5085// SetVirtualNode sets the VirtualNode field's value. 5086func (s *DescribeVirtualNodeOutput) SetVirtualNode(v *VirtualNodeData) *DescribeVirtualNodeOutput { 5087 s.VirtualNode = v 5088 return s 5089} 5090 5091type DescribeVirtualRouterInput struct { 5092 _ struct{} `type:"structure"` 5093 5094 // MeshName is a required field 5095 MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` 5096 5097 MeshOwner *string `location:"querystring" locationName:"meshOwner" min:"12" type:"string"` 5098 5099 // VirtualRouterName is a required field 5100 VirtualRouterName *string `location:"uri" locationName:"virtualRouterName" min:"1" type:"string" required:"true"` 5101} 5102 5103// String returns the string representation 5104func (s DescribeVirtualRouterInput) String() string { 5105 return awsutil.Prettify(s) 5106} 5107 5108// GoString returns the string representation 5109func (s DescribeVirtualRouterInput) GoString() string { 5110 return s.String() 5111} 5112 5113// Validate inspects the fields of the type to determine if they are valid. 5114func (s *DescribeVirtualRouterInput) Validate() error { 5115 invalidParams := request.ErrInvalidParams{Context: "DescribeVirtualRouterInput"} 5116 if s.MeshName == nil { 5117 invalidParams.Add(request.NewErrParamRequired("MeshName")) 5118 } 5119 if s.MeshName != nil && len(*s.MeshName) < 1 { 5120 invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) 5121 } 5122 if s.MeshOwner != nil && len(*s.MeshOwner) < 12 { 5123 invalidParams.Add(request.NewErrParamMinLen("MeshOwner", 12)) 5124 } 5125 if s.VirtualRouterName == nil { 5126 invalidParams.Add(request.NewErrParamRequired("VirtualRouterName")) 5127 } 5128 if s.VirtualRouterName != nil && len(*s.VirtualRouterName) < 1 { 5129 invalidParams.Add(request.NewErrParamMinLen("VirtualRouterName", 1)) 5130 } 5131 5132 if invalidParams.Len() > 0 { 5133 return invalidParams 5134 } 5135 return nil 5136} 5137 5138// SetMeshName sets the MeshName field's value. 5139func (s *DescribeVirtualRouterInput) SetMeshName(v string) *DescribeVirtualRouterInput { 5140 s.MeshName = &v 5141 return s 5142} 5143 5144// SetMeshOwner sets the MeshOwner field's value. 5145func (s *DescribeVirtualRouterInput) SetMeshOwner(v string) *DescribeVirtualRouterInput { 5146 s.MeshOwner = &v 5147 return s 5148} 5149 5150// SetVirtualRouterName sets the VirtualRouterName field's value. 5151func (s *DescribeVirtualRouterInput) SetVirtualRouterName(v string) *DescribeVirtualRouterInput { 5152 s.VirtualRouterName = &v 5153 return s 5154} 5155 5156type DescribeVirtualRouterOutput struct { 5157 _ struct{} `type:"structure" payload:"VirtualRouter"` 5158 5159 // An object that represents a virtual router returned by a describe operation. 5160 // 5161 // VirtualRouter is a required field 5162 VirtualRouter *VirtualRouterData `locationName:"virtualRouter" type:"structure" required:"true"` 5163} 5164 5165// String returns the string representation 5166func (s DescribeVirtualRouterOutput) String() string { 5167 return awsutil.Prettify(s) 5168} 5169 5170// GoString returns the string representation 5171func (s DescribeVirtualRouterOutput) GoString() string { 5172 return s.String() 5173} 5174 5175// SetVirtualRouter sets the VirtualRouter field's value. 5176func (s *DescribeVirtualRouterOutput) SetVirtualRouter(v *VirtualRouterData) *DescribeVirtualRouterOutput { 5177 s.VirtualRouter = v 5178 return s 5179} 5180 5181type DescribeVirtualServiceInput struct { 5182 _ struct{} `type:"structure"` 5183 5184 // MeshName is a required field 5185 MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` 5186 5187 MeshOwner *string `location:"querystring" locationName:"meshOwner" min:"12" type:"string"` 5188 5189 // VirtualServiceName is a required field 5190 VirtualServiceName *string `location:"uri" locationName:"virtualServiceName" type:"string" required:"true"` 5191} 5192 5193// String returns the string representation 5194func (s DescribeVirtualServiceInput) String() string { 5195 return awsutil.Prettify(s) 5196} 5197 5198// GoString returns the string representation 5199func (s DescribeVirtualServiceInput) GoString() string { 5200 return s.String() 5201} 5202 5203// Validate inspects the fields of the type to determine if they are valid. 5204func (s *DescribeVirtualServiceInput) Validate() error { 5205 invalidParams := request.ErrInvalidParams{Context: "DescribeVirtualServiceInput"} 5206 if s.MeshName == nil { 5207 invalidParams.Add(request.NewErrParamRequired("MeshName")) 5208 } 5209 if s.MeshName != nil && len(*s.MeshName) < 1 { 5210 invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) 5211 } 5212 if s.MeshOwner != nil && len(*s.MeshOwner) < 12 { 5213 invalidParams.Add(request.NewErrParamMinLen("MeshOwner", 12)) 5214 } 5215 if s.VirtualServiceName == nil { 5216 invalidParams.Add(request.NewErrParamRequired("VirtualServiceName")) 5217 } 5218 if s.VirtualServiceName != nil && len(*s.VirtualServiceName) < 1 { 5219 invalidParams.Add(request.NewErrParamMinLen("VirtualServiceName", 1)) 5220 } 5221 5222 if invalidParams.Len() > 0 { 5223 return invalidParams 5224 } 5225 return nil 5226} 5227 5228// SetMeshName sets the MeshName field's value. 5229func (s *DescribeVirtualServiceInput) SetMeshName(v string) *DescribeVirtualServiceInput { 5230 s.MeshName = &v 5231 return s 5232} 5233 5234// SetMeshOwner sets the MeshOwner field's value. 5235func (s *DescribeVirtualServiceInput) SetMeshOwner(v string) *DescribeVirtualServiceInput { 5236 s.MeshOwner = &v 5237 return s 5238} 5239 5240// SetVirtualServiceName sets the VirtualServiceName field's value. 5241func (s *DescribeVirtualServiceInput) SetVirtualServiceName(v string) *DescribeVirtualServiceInput { 5242 s.VirtualServiceName = &v 5243 return s 5244} 5245 5246type DescribeVirtualServiceOutput struct { 5247 _ struct{} `type:"structure" payload:"VirtualService"` 5248 5249 // An object that represents a virtual service returned by a describe operation. 5250 // 5251 // VirtualService is a required field 5252 VirtualService *VirtualServiceData `locationName:"virtualService" type:"structure" required:"true"` 5253} 5254 5255// String returns the string representation 5256func (s DescribeVirtualServiceOutput) String() string { 5257 return awsutil.Prettify(s) 5258} 5259 5260// GoString returns the string representation 5261func (s DescribeVirtualServiceOutput) GoString() string { 5262 return s.String() 5263} 5264 5265// SetVirtualService sets the VirtualService field's value. 5266func (s *DescribeVirtualServiceOutput) SetVirtualService(v *VirtualServiceData) *DescribeVirtualServiceOutput { 5267 s.VirtualService = v 5268 return s 5269} 5270 5271// An object that represents the DNS service discovery information for your 5272// virtual node. 5273type DnsServiceDiscovery struct { 5274 _ struct{} `type:"structure"` 5275 5276 // Hostname is a required field 5277 Hostname *string `locationName:"hostname" type:"string" required:"true"` 5278} 5279 5280// String returns the string representation 5281func (s DnsServiceDiscovery) String() string { 5282 return awsutil.Prettify(s) 5283} 5284 5285// GoString returns the string representation 5286func (s DnsServiceDiscovery) GoString() string { 5287 return s.String() 5288} 5289 5290// Validate inspects the fields of the type to determine if they are valid. 5291func (s *DnsServiceDiscovery) Validate() error { 5292 invalidParams := request.ErrInvalidParams{Context: "DnsServiceDiscovery"} 5293 if s.Hostname == nil { 5294 invalidParams.Add(request.NewErrParamRequired("Hostname")) 5295 } 5296 5297 if invalidParams.Len() > 0 { 5298 return invalidParams 5299 } 5300 return nil 5301} 5302 5303// SetHostname sets the Hostname field's value. 5304func (s *DnsServiceDiscovery) SetHostname(v string) *DnsServiceDiscovery { 5305 s.Hostname = &v 5306 return s 5307} 5308 5309// An object that represents a duration of time. 5310type Duration struct { 5311 _ struct{} `type:"structure"` 5312 5313 Unit *string `locationName:"unit" type:"string" enum:"DurationUnit"` 5314 5315 Value *int64 `locationName:"value" type:"long"` 5316} 5317 5318// String returns the string representation 5319func (s Duration) String() string { 5320 return awsutil.Prettify(s) 5321} 5322 5323// GoString returns the string representation 5324func (s Duration) GoString() string { 5325 return s.String() 5326} 5327 5328// SetUnit sets the Unit field's value. 5329func (s *Duration) SetUnit(v string) *Duration { 5330 s.Unit = &v 5331 return s 5332} 5333 5334// SetValue sets the Value field's value. 5335func (s *Duration) SetValue(v int64) *Duration { 5336 s.Value = &v 5337 return s 5338} 5339 5340// An object that represents the egress filter rules for a service mesh. 5341type EgressFilter struct { 5342 _ struct{} `type:"structure"` 5343 5344 // Type is a required field 5345 Type *string `locationName:"type" type:"string" required:"true" enum:"EgressFilterType"` 5346} 5347 5348// String returns the string representation 5349func (s EgressFilter) String() string { 5350 return awsutil.Prettify(s) 5351} 5352 5353// GoString returns the string representation 5354func (s EgressFilter) GoString() string { 5355 return s.String() 5356} 5357 5358// Validate inspects the fields of the type to determine if they are valid. 5359func (s *EgressFilter) Validate() error { 5360 invalidParams := request.ErrInvalidParams{Context: "EgressFilter"} 5361 if s.Type == nil { 5362 invalidParams.Add(request.NewErrParamRequired("Type")) 5363 } 5364 5365 if invalidParams.Len() > 0 { 5366 return invalidParams 5367 } 5368 return nil 5369} 5370 5371// SetType sets the Type field's value. 5372func (s *EgressFilter) SetType(v string) *EgressFilter { 5373 s.Type = &v 5374 return s 5375} 5376 5377// An object that represents an access log file. 5378type FileAccessLog struct { 5379 _ struct{} `type:"structure"` 5380 5381 // Path is a required field 5382 Path *string `locationName:"path" min:"1" type:"string" required:"true"` 5383} 5384 5385// String returns the string representation 5386func (s FileAccessLog) String() string { 5387 return awsutil.Prettify(s) 5388} 5389 5390// GoString returns the string representation 5391func (s FileAccessLog) GoString() string { 5392 return s.String() 5393} 5394 5395// Validate inspects the fields of the type to determine if they are valid. 5396func (s *FileAccessLog) Validate() error { 5397 invalidParams := request.ErrInvalidParams{Context: "FileAccessLog"} 5398 if s.Path == nil { 5399 invalidParams.Add(request.NewErrParamRequired("Path")) 5400 } 5401 if s.Path != nil && len(*s.Path) < 1 { 5402 invalidParams.Add(request.NewErrParamMinLen("Path", 1)) 5403 } 5404 5405 if invalidParams.Len() > 0 { 5406 return invalidParams 5407 } 5408 return nil 5409} 5410 5411// SetPath sets the Path field's value. 5412func (s *FileAccessLog) SetPath(v string) *FileAccessLog { 5413 s.Path = &v 5414 return s 5415} 5416 5417// You don't have permissions to perform this action. 5418type ForbiddenException struct { 5419 _ struct{} `type:"structure"` 5420 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 5421 5422 Message_ *string `locationName:"message" type:"string"` 5423} 5424 5425// String returns the string representation 5426func (s ForbiddenException) String() string { 5427 return awsutil.Prettify(s) 5428} 5429 5430// GoString returns the string representation 5431func (s ForbiddenException) GoString() string { 5432 return s.String() 5433} 5434 5435func newErrorForbiddenException(v protocol.ResponseMetadata) error { 5436 return &ForbiddenException{ 5437 RespMetadata: v, 5438 } 5439} 5440 5441// Code returns the exception type name. 5442func (s *ForbiddenException) Code() string { 5443 return "ForbiddenException" 5444} 5445 5446// Message returns the exception's message. 5447func (s *ForbiddenException) Message() string { 5448 if s.Message_ != nil { 5449 return *s.Message_ 5450 } 5451 return "" 5452} 5453 5454// OrigErr always returns nil, satisfies awserr.Error interface. 5455func (s *ForbiddenException) OrigErr() error { 5456 return nil 5457} 5458 5459func (s *ForbiddenException) Error() string { 5460 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 5461} 5462 5463// Status code returns the HTTP status code for the request's response error. 5464func (s *ForbiddenException) StatusCode() int { 5465 return s.RespMetadata.StatusCode 5466} 5467 5468// RequestID returns the service's response RequestID for request. 5469func (s *ForbiddenException) RequestID() string { 5470 return s.RespMetadata.RequestID 5471} 5472 5473// An object that represents a retry policy. Specify at least one value for 5474// at least one of the types of RetryEvents, a value for maxRetries, and a value 5475// for perRetryTimeout. 5476type GrpcRetryPolicy struct { 5477 _ struct{} `type:"structure"` 5478 5479 GrpcRetryEvents []*string `locationName:"grpcRetryEvents" min:"1" type:"list"` 5480 5481 HttpRetryEvents []*string `locationName:"httpRetryEvents" min:"1" type:"list"` 5482 5483 // MaxRetries is a required field 5484 MaxRetries *int64 `locationName:"maxRetries" type:"long" required:"true"` 5485 5486 // An object that represents a duration of time. 5487 // 5488 // PerRetryTimeout is a required field 5489 PerRetryTimeout *Duration `locationName:"perRetryTimeout" type:"structure" required:"true"` 5490 5491 TcpRetryEvents []*string `locationName:"tcpRetryEvents" min:"1" type:"list"` 5492} 5493 5494// String returns the string representation 5495func (s GrpcRetryPolicy) String() string { 5496 return awsutil.Prettify(s) 5497} 5498 5499// GoString returns the string representation 5500func (s GrpcRetryPolicy) GoString() string { 5501 return s.String() 5502} 5503 5504// Validate inspects the fields of the type to determine if they are valid. 5505func (s *GrpcRetryPolicy) Validate() error { 5506 invalidParams := request.ErrInvalidParams{Context: "GrpcRetryPolicy"} 5507 if s.GrpcRetryEvents != nil && len(s.GrpcRetryEvents) < 1 { 5508 invalidParams.Add(request.NewErrParamMinLen("GrpcRetryEvents", 1)) 5509 } 5510 if s.HttpRetryEvents != nil && len(s.HttpRetryEvents) < 1 { 5511 invalidParams.Add(request.NewErrParamMinLen("HttpRetryEvents", 1)) 5512 } 5513 if s.MaxRetries == nil { 5514 invalidParams.Add(request.NewErrParamRequired("MaxRetries")) 5515 } 5516 if s.PerRetryTimeout == nil { 5517 invalidParams.Add(request.NewErrParamRequired("PerRetryTimeout")) 5518 } 5519 if s.TcpRetryEvents != nil && len(s.TcpRetryEvents) < 1 { 5520 invalidParams.Add(request.NewErrParamMinLen("TcpRetryEvents", 1)) 5521 } 5522 5523 if invalidParams.Len() > 0 { 5524 return invalidParams 5525 } 5526 return nil 5527} 5528 5529// SetGrpcRetryEvents sets the GrpcRetryEvents field's value. 5530func (s *GrpcRetryPolicy) SetGrpcRetryEvents(v []*string) *GrpcRetryPolicy { 5531 s.GrpcRetryEvents = v 5532 return s 5533} 5534 5535// SetHttpRetryEvents sets the HttpRetryEvents field's value. 5536func (s *GrpcRetryPolicy) SetHttpRetryEvents(v []*string) *GrpcRetryPolicy { 5537 s.HttpRetryEvents = v 5538 return s 5539} 5540 5541// SetMaxRetries sets the MaxRetries field's value. 5542func (s *GrpcRetryPolicy) SetMaxRetries(v int64) *GrpcRetryPolicy { 5543 s.MaxRetries = &v 5544 return s 5545} 5546 5547// SetPerRetryTimeout sets the PerRetryTimeout field's value. 5548func (s *GrpcRetryPolicy) SetPerRetryTimeout(v *Duration) *GrpcRetryPolicy { 5549 s.PerRetryTimeout = v 5550 return s 5551} 5552 5553// SetTcpRetryEvents sets the TcpRetryEvents field's value. 5554func (s *GrpcRetryPolicy) SetTcpRetryEvents(v []*string) *GrpcRetryPolicy { 5555 s.TcpRetryEvents = v 5556 return s 5557} 5558 5559// An object that represents a gRPC route type. 5560type GrpcRoute struct { 5561 _ struct{} `type:"structure"` 5562 5563 // An object that represents the action to take if a match is determined. 5564 // 5565 // Action is a required field 5566 Action *GrpcRouteAction `locationName:"action" type:"structure" required:"true"` 5567 5568 // An object that represents the criteria for determining a request match. 5569 // 5570 // Match is a required field 5571 Match *GrpcRouteMatch `locationName:"match" type:"structure" required:"true"` 5572 5573 // An object that represents a retry policy. Specify at least one value for 5574 // at least one of the types of RetryEvents, a value for maxRetries, and a value 5575 // for perRetryTimeout. 5576 RetryPolicy *GrpcRetryPolicy `locationName:"retryPolicy" type:"structure"` 5577 5578 Timeout *GrpcTimeout `locationName:"timeout" type:"structure"` 5579} 5580 5581// String returns the string representation 5582func (s GrpcRoute) String() string { 5583 return awsutil.Prettify(s) 5584} 5585 5586// GoString returns the string representation 5587func (s GrpcRoute) GoString() string { 5588 return s.String() 5589} 5590 5591// Validate inspects the fields of the type to determine if they are valid. 5592func (s *GrpcRoute) Validate() error { 5593 invalidParams := request.ErrInvalidParams{Context: "GrpcRoute"} 5594 if s.Action == nil { 5595 invalidParams.Add(request.NewErrParamRequired("Action")) 5596 } 5597 if s.Match == nil { 5598 invalidParams.Add(request.NewErrParamRequired("Match")) 5599 } 5600 if s.Action != nil { 5601 if err := s.Action.Validate(); err != nil { 5602 invalidParams.AddNested("Action", err.(request.ErrInvalidParams)) 5603 } 5604 } 5605 if s.Match != nil { 5606 if err := s.Match.Validate(); err != nil { 5607 invalidParams.AddNested("Match", err.(request.ErrInvalidParams)) 5608 } 5609 } 5610 if s.RetryPolicy != nil { 5611 if err := s.RetryPolicy.Validate(); err != nil { 5612 invalidParams.AddNested("RetryPolicy", err.(request.ErrInvalidParams)) 5613 } 5614 } 5615 5616 if invalidParams.Len() > 0 { 5617 return invalidParams 5618 } 5619 return nil 5620} 5621 5622// SetAction sets the Action field's value. 5623func (s *GrpcRoute) SetAction(v *GrpcRouteAction) *GrpcRoute { 5624 s.Action = v 5625 return s 5626} 5627 5628// SetMatch sets the Match field's value. 5629func (s *GrpcRoute) SetMatch(v *GrpcRouteMatch) *GrpcRoute { 5630 s.Match = v 5631 return s 5632} 5633 5634// SetRetryPolicy sets the RetryPolicy field's value. 5635func (s *GrpcRoute) SetRetryPolicy(v *GrpcRetryPolicy) *GrpcRoute { 5636 s.RetryPolicy = v 5637 return s 5638} 5639 5640// SetTimeout sets the Timeout field's value. 5641func (s *GrpcRoute) SetTimeout(v *GrpcTimeout) *GrpcRoute { 5642 s.Timeout = v 5643 return s 5644} 5645 5646// An object that represents the action to take if a match is determined. 5647type GrpcRouteAction struct { 5648 _ struct{} `type:"structure"` 5649 5650 // WeightedTargets is a required field 5651 WeightedTargets []*WeightedTarget `locationName:"weightedTargets" min:"1" type:"list" required:"true"` 5652} 5653 5654// String returns the string representation 5655func (s GrpcRouteAction) String() string { 5656 return awsutil.Prettify(s) 5657} 5658 5659// GoString returns the string representation 5660func (s GrpcRouteAction) GoString() string { 5661 return s.String() 5662} 5663 5664// Validate inspects the fields of the type to determine if they are valid. 5665func (s *GrpcRouteAction) Validate() error { 5666 invalidParams := request.ErrInvalidParams{Context: "GrpcRouteAction"} 5667 if s.WeightedTargets == nil { 5668 invalidParams.Add(request.NewErrParamRequired("WeightedTargets")) 5669 } 5670 if s.WeightedTargets != nil && len(s.WeightedTargets) < 1 { 5671 invalidParams.Add(request.NewErrParamMinLen("WeightedTargets", 1)) 5672 } 5673 if s.WeightedTargets != nil { 5674 for i, v := range s.WeightedTargets { 5675 if v == nil { 5676 continue 5677 } 5678 if err := v.Validate(); err != nil { 5679 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "WeightedTargets", i), err.(request.ErrInvalidParams)) 5680 } 5681 } 5682 } 5683 5684 if invalidParams.Len() > 0 { 5685 return invalidParams 5686 } 5687 return nil 5688} 5689 5690// SetWeightedTargets sets the WeightedTargets field's value. 5691func (s *GrpcRouteAction) SetWeightedTargets(v []*WeightedTarget) *GrpcRouteAction { 5692 s.WeightedTargets = v 5693 return s 5694} 5695 5696// An object that represents the criteria for determining a request match. 5697type GrpcRouteMatch struct { 5698 _ struct{} `type:"structure"` 5699 5700 Metadata []*GrpcRouteMetadata `locationName:"metadata" min:"1" type:"list"` 5701 5702 MethodName *string `locationName:"methodName" min:"1" type:"string"` 5703 5704 ServiceName *string `locationName:"serviceName" type:"string"` 5705} 5706 5707// String returns the string representation 5708func (s GrpcRouteMatch) String() string { 5709 return awsutil.Prettify(s) 5710} 5711 5712// GoString returns the string representation 5713func (s GrpcRouteMatch) GoString() string { 5714 return s.String() 5715} 5716 5717// Validate inspects the fields of the type to determine if they are valid. 5718func (s *GrpcRouteMatch) Validate() error { 5719 invalidParams := request.ErrInvalidParams{Context: "GrpcRouteMatch"} 5720 if s.Metadata != nil && len(s.Metadata) < 1 { 5721 invalidParams.Add(request.NewErrParamMinLen("Metadata", 1)) 5722 } 5723 if s.MethodName != nil && len(*s.MethodName) < 1 { 5724 invalidParams.Add(request.NewErrParamMinLen("MethodName", 1)) 5725 } 5726 if s.Metadata != nil { 5727 for i, v := range s.Metadata { 5728 if v == nil { 5729 continue 5730 } 5731 if err := v.Validate(); err != nil { 5732 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Metadata", i), err.(request.ErrInvalidParams)) 5733 } 5734 } 5735 } 5736 5737 if invalidParams.Len() > 0 { 5738 return invalidParams 5739 } 5740 return nil 5741} 5742 5743// SetMetadata sets the Metadata field's value. 5744func (s *GrpcRouteMatch) SetMetadata(v []*GrpcRouteMetadata) *GrpcRouteMatch { 5745 s.Metadata = v 5746 return s 5747} 5748 5749// SetMethodName sets the MethodName field's value. 5750func (s *GrpcRouteMatch) SetMethodName(v string) *GrpcRouteMatch { 5751 s.MethodName = &v 5752 return s 5753} 5754 5755// SetServiceName sets the ServiceName field's value. 5756func (s *GrpcRouteMatch) SetServiceName(v string) *GrpcRouteMatch { 5757 s.ServiceName = &v 5758 return s 5759} 5760 5761// An object that represents the match metadata for the route. 5762type GrpcRouteMetadata struct { 5763 _ struct{} `type:"structure"` 5764 5765 Invert *bool `locationName:"invert" type:"boolean"` 5766 5767 // An object that represents the match method. Specify one of the match values. 5768 Match *GrpcRouteMetadataMatchMethod `locationName:"match" type:"structure"` 5769 5770 // Name is a required field 5771 Name *string `locationName:"name" min:"1" type:"string" required:"true"` 5772} 5773 5774// String returns the string representation 5775func (s GrpcRouteMetadata) String() string { 5776 return awsutil.Prettify(s) 5777} 5778 5779// GoString returns the string representation 5780func (s GrpcRouteMetadata) GoString() string { 5781 return s.String() 5782} 5783 5784// Validate inspects the fields of the type to determine if they are valid. 5785func (s *GrpcRouteMetadata) Validate() error { 5786 invalidParams := request.ErrInvalidParams{Context: "GrpcRouteMetadata"} 5787 if s.Name == nil { 5788 invalidParams.Add(request.NewErrParamRequired("Name")) 5789 } 5790 if s.Name != nil && len(*s.Name) < 1 { 5791 invalidParams.Add(request.NewErrParamMinLen("Name", 1)) 5792 } 5793 if s.Match != nil { 5794 if err := s.Match.Validate(); err != nil { 5795 invalidParams.AddNested("Match", err.(request.ErrInvalidParams)) 5796 } 5797 } 5798 5799 if invalidParams.Len() > 0 { 5800 return invalidParams 5801 } 5802 return nil 5803} 5804 5805// SetInvert sets the Invert field's value. 5806func (s *GrpcRouteMetadata) SetInvert(v bool) *GrpcRouteMetadata { 5807 s.Invert = &v 5808 return s 5809} 5810 5811// SetMatch sets the Match field's value. 5812func (s *GrpcRouteMetadata) SetMatch(v *GrpcRouteMetadataMatchMethod) *GrpcRouteMetadata { 5813 s.Match = v 5814 return s 5815} 5816 5817// SetName sets the Name field's value. 5818func (s *GrpcRouteMetadata) SetName(v string) *GrpcRouteMetadata { 5819 s.Name = &v 5820 return s 5821} 5822 5823// An object that represents the match method. Specify one of the match values. 5824type GrpcRouteMetadataMatchMethod struct { 5825 _ struct{} `type:"structure"` 5826 5827 Exact *string `locationName:"exact" min:"1" type:"string"` 5828 5829 Prefix *string `locationName:"prefix" min:"1" type:"string"` 5830 5831 // An object that represents the range of values to match on. The first character 5832 // of the range is included in the range, though the last character is not. 5833 // For example, if the range specified were 1-100, only values 1-99 would be 5834 // matched. 5835 Range *MatchRange `locationName:"range" type:"structure"` 5836 5837 Regex *string `locationName:"regex" min:"1" type:"string"` 5838 5839 Suffix *string `locationName:"suffix" min:"1" type:"string"` 5840} 5841 5842// String returns the string representation 5843func (s GrpcRouteMetadataMatchMethod) String() string { 5844 return awsutil.Prettify(s) 5845} 5846 5847// GoString returns the string representation 5848func (s GrpcRouteMetadataMatchMethod) GoString() string { 5849 return s.String() 5850} 5851 5852// Validate inspects the fields of the type to determine if they are valid. 5853func (s *GrpcRouteMetadataMatchMethod) Validate() error { 5854 invalidParams := request.ErrInvalidParams{Context: "GrpcRouteMetadataMatchMethod"} 5855 if s.Exact != nil && len(*s.Exact) < 1 { 5856 invalidParams.Add(request.NewErrParamMinLen("Exact", 1)) 5857 } 5858 if s.Prefix != nil && len(*s.Prefix) < 1 { 5859 invalidParams.Add(request.NewErrParamMinLen("Prefix", 1)) 5860 } 5861 if s.Regex != nil && len(*s.Regex) < 1 { 5862 invalidParams.Add(request.NewErrParamMinLen("Regex", 1)) 5863 } 5864 if s.Suffix != nil && len(*s.Suffix) < 1 { 5865 invalidParams.Add(request.NewErrParamMinLen("Suffix", 1)) 5866 } 5867 if s.Range != nil { 5868 if err := s.Range.Validate(); err != nil { 5869 invalidParams.AddNested("Range", err.(request.ErrInvalidParams)) 5870 } 5871 } 5872 5873 if invalidParams.Len() > 0 { 5874 return invalidParams 5875 } 5876 return nil 5877} 5878 5879// SetExact sets the Exact field's value. 5880func (s *GrpcRouteMetadataMatchMethod) SetExact(v string) *GrpcRouteMetadataMatchMethod { 5881 s.Exact = &v 5882 return s 5883} 5884 5885// SetPrefix sets the Prefix field's value. 5886func (s *GrpcRouteMetadataMatchMethod) SetPrefix(v string) *GrpcRouteMetadataMatchMethod { 5887 s.Prefix = &v 5888 return s 5889} 5890 5891// SetRange sets the Range field's value. 5892func (s *GrpcRouteMetadataMatchMethod) SetRange(v *MatchRange) *GrpcRouteMetadataMatchMethod { 5893 s.Range = v 5894 return s 5895} 5896 5897// SetRegex sets the Regex field's value. 5898func (s *GrpcRouteMetadataMatchMethod) SetRegex(v string) *GrpcRouteMetadataMatchMethod { 5899 s.Regex = &v 5900 return s 5901} 5902 5903// SetSuffix sets the Suffix field's value. 5904func (s *GrpcRouteMetadataMatchMethod) SetSuffix(v string) *GrpcRouteMetadataMatchMethod { 5905 s.Suffix = &v 5906 return s 5907} 5908 5909type GrpcTimeout struct { 5910 _ struct{} `type:"structure"` 5911 5912 // An object that represents a duration of time. 5913 Idle *Duration `locationName:"idle" type:"structure"` 5914 5915 // An object that represents a duration of time. 5916 PerRequest *Duration `locationName:"perRequest" type:"structure"` 5917} 5918 5919// String returns the string representation 5920func (s GrpcTimeout) String() string { 5921 return awsutil.Prettify(s) 5922} 5923 5924// GoString returns the string representation 5925func (s GrpcTimeout) GoString() string { 5926 return s.String() 5927} 5928 5929// SetIdle sets the Idle field's value. 5930func (s *GrpcTimeout) SetIdle(v *Duration) *GrpcTimeout { 5931 s.Idle = v 5932 return s 5933} 5934 5935// SetPerRequest sets the PerRequest field's value. 5936func (s *GrpcTimeout) SetPerRequest(v *Duration) *GrpcTimeout { 5937 s.PerRequest = v 5938 return s 5939} 5940 5941// An object that represents the method and value to match with the header value 5942// sent in a request. Specify one match method. 5943type HeaderMatchMethod struct { 5944 _ struct{} `type:"structure"` 5945 5946 Exact *string `locationName:"exact" min:"1" type:"string"` 5947 5948 Prefix *string `locationName:"prefix" min:"1" type:"string"` 5949 5950 // An object that represents the range of values to match on. The first character 5951 // of the range is included in the range, though the last character is not. 5952 // For example, if the range specified were 1-100, only values 1-99 would be 5953 // matched. 5954 Range *MatchRange `locationName:"range" type:"structure"` 5955 5956 Regex *string `locationName:"regex" min:"1" type:"string"` 5957 5958 Suffix *string `locationName:"suffix" min:"1" type:"string"` 5959} 5960 5961// String returns the string representation 5962func (s HeaderMatchMethod) String() string { 5963 return awsutil.Prettify(s) 5964} 5965 5966// GoString returns the string representation 5967func (s HeaderMatchMethod) GoString() string { 5968 return s.String() 5969} 5970 5971// Validate inspects the fields of the type to determine if they are valid. 5972func (s *HeaderMatchMethod) Validate() error { 5973 invalidParams := request.ErrInvalidParams{Context: "HeaderMatchMethod"} 5974 if s.Exact != nil && len(*s.Exact) < 1 { 5975 invalidParams.Add(request.NewErrParamMinLen("Exact", 1)) 5976 } 5977 if s.Prefix != nil && len(*s.Prefix) < 1 { 5978 invalidParams.Add(request.NewErrParamMinLen("Prefix", 1)) 5979 } 5980 if s.Regex != nil && len(*s.Regex) < 1 { 5981 invalidParams.Add(request.NewErrParamMinLen("Regex", 1)) 5982 } 5983 if s.Suffix != nil && len(*s.Suffix) < 1 { 5984 invalidParams.Add(request.NewErrParamMinLen("Suffix", 1)) 5985 } 5986 if s.Range != nil { 5987 if err := s.Range.Validate(); err != nil { 5988 invalidParams.AddNested("Range", err.(request.ErrInvalidParams)) 5989 } 5990 } 5991 5992 if invalidParams.Len() > 0 { 5993 return invalidParams 5994 } 5995 return nil 5996} 5997 5998// SetExact sets the Exact field's value. 5999func (s *HeaderMatchMethod) SetExact(v string) *HeaderMatchMethod { 6000 s.Exact = &v 6001 return s 6002} 6003 6004// SetPrefix sets the Prefix field's value. 6005func (s *HeaderMatchMethod) SetPrefix(v string) *HeaderMatchMethod { 6006 s.Prefix = &v 6007 return s 6008} 6009 6010// SetRange sets the Range field's value. 6011func (s *HeaderMatchMethod) SetRange(v *MatchRange) *HeaderMatchMethod { 6012 s.Range = v 6013 return s 6014} 6015 6016// SetRegex sets the Regex field's value. 6017func (s *HeaderMatchMethod) SetRegex(v string) *HeaderMatchMethod { 6018 s.Regex = &v 6019 return s 6020} 6021 6022// SetSuffix sets the Suffix field's value. 6023func (s *HeaderMatchMethod) SetSuffix(v string) *HeaderMatchMethod { 6024 s.Suffix = &v 6025 return s 6026} 6027 6028// An object that represents the health check policy for a virtual node's listener. 6029type HealthCheckPolicy struct { 6030 _ struct{} `type:"structure"` 6031 6032 // HealthyThreshold is a required field 6033 HealthyThreshold *int64 `locationName:"healthyThreshold" min:"2" type:"integer" required:"true"` 6034 6035 // IntervalMillis is a required field 6036 IntervalMillis *int64 `locationName:"intervalMillis" min:"5000" type:"long" required:"true"` 6037 6038 Path *string `locationName:"path" type:"string"` 6039 6040 Port *int64 `locationName:"port" min:"1" type:"integer"` 6041 6042 // Protocol is a required field 6043 Protocol *string `locationName:"protocol" type:"string" required:"true" enum:"PortProtocol"` 6044 6045 // TimeoutMillis is a required field 6046 TimeoutMillis *int64 `locationName:"timeoutMillis" min:"2000" type:"long" required:"true"` 6047 6048 // UnhealthyThreshold is a required field 6049 UnhealthyThreshold *int64 `locationName:"unhealthyThreshold" min:"2" type:"integer" required:"true"` 6050} 6051 6052// String returns the string representation 6053func (s HealthCheckPolicy) String() string { 6054 return awsutil.Prettify(s) 6055} 6056 6057// GoString returns the string representation 6058func (s HealthCheckPolicy) GoString() string { 6059 return s.String() 6060} 6061 6062// Validate inspects the fields of the type to determine if they are valid. 6063func (s *HealthCheckPolicy) Validate() error { 6064 invalidParams := request.ErrInvalidParams{Context: "HealthCheckPolicy"} 6065 if s.HealthyThreshold == nil { 6066 invalidParams.Add(request.NewErrParamRequired("HealthyThreshold")) 6067 } 6068 if s.HealthyThreshold != nil && *s.HealthyThreshold < 2 { 6069 invalidParams.Add(request.NewErrParamMinValue("HealthyThreshold", 2)) 6070 } 6071 if s.IntervalMillis == nil { 6072 invalidParams.Add(request.NewErrParamRequired("IntervalMillis")) 6073 } 6074 if s.IntervalMillis != nil && *s.IntervalMillis < 5000 { 6075 invalidParams.Add(request.NewErrParamMinValue("IntervalMillis", 5000)) 6076 } 6077 if s.Port != nil && *s.Port < 1 { 6078 invalidParams.Add(request.NewErrParamMinValue("Port", 1)) 6079 } 6080 if s.Protocol == nil { 6081 invalidParams.Add(request.NewErrParamRequired("Protocol")) 6082 } 6083 if s.TimeoutMillis == nil { 6084 invalidParams.Add(request.NewErrParamRequired("TimeoutMillis")) 6085 } 6086 if s.TimeoutMillis != nil && *s.TimeoutMillis < 2000 { 6087 invalidParams.Add(request.NewErrParamMinValue("TimeoutMillis", 2000)) 6088 } 6089 if s.UnhealthyThreshold == nil { 6090 invalidParams.Add(request.NewErrParamRequired("UnhealthyThreshold")) 6091 } 6092 if s.UnhealthyThreshold != nil && *s.UnhealthyThreshold < 2 { 6093 invalidParams.Add(request.NewErrParamMinValue("UnhealthyThreshold", 2)) 6094 } 6095 6096 if invalidParams.Len() > 0 { 6097 return invalidParams 6098 } 6099 return nil 6100} 6101 6102// SetHealthyThreshold sets the HealthyThreshold field's value. 6103func (s *HealthCheckPolicy) SetHealthyThreshold(v int64) *HealthCheckPolicy { 6104 s.HealthyThreshold = &v 6105 return s 6106} 6107 6108// SetIntervalMillis sets the IntervalMillis field's value. 6109func (s *HealthCheckPolicy) SetIntervalMillis(v int64) *HealthCheckPolicy { 6110 s.IntervalMillis = &v 6111 return s 6112} 6113 6114// SetPath sets the Path field's value. 6115func (s *HealthCheckPolicy) SetPath(v string) *HealthCheckPolicy { 6116 s.Path = &v 6117 return s 6118} 6119 6120// SetPort sets the Port field's value. 6121func (s *HealthCheckPolicy) SetPort(v int64) *HealthCheckPolicy { 6122 s.Port = &v 6123 return s 6124} 6125 6126// SetProtocol sets the Protocol field's value. 6127func (s *HealthCheckPolicy) SetProtocol(v string) *HealthCheckPolicy { 6128 s.Protocol = &v 6129 return s 6130} 6131 6132// SetTimeoutMillis sets the TimeoutMillis field's value. 6133func (s *HealthCheckPolicy) SetTimeoutMillis(v int64) *HealthCheckPolicy { 6134 s.TimeoutMillis = &v 6135 return s 6136} 6137 6138// SetUnhealthyThreshold sets the UnhealthyThreshold field's value. 6139func (s *HealthCheckPolicy) SetUnhealthyThreshold(v int64) *HealthCheckPolicy { 6140 s.UnhealthyThreshold = &v 6141 return s 6142} 6143 6144// An object that represents a retry policy. Specify at least one value for 6145// at least one of the types of RetryEvents, a value for maxRetries, and a value 6146// for perRetryTimeout. 6147type HttpRetryPolicy struct { 6148 _ struct{} `type:"structure"` 6149 6150 HttpRetryEvents []*string `locationName:"httpRetryEvents" min:"1" type:"list"` 6151 6152 // MaxRetries is a required field 6153 MaxRetries *int64 `locationName:"maxRetries" type:"long" required:"true"` 6154 6155 // An object that represents a duration of time. 6156 // 6157 // PerRetryTimeout is a required field 6158 PerRetryTimeout *Duration `locationName:"perRetryTimeout" type:"structure" required:"true"` 6159 6160 TcpRetryEvents []*string `locationName:"tcpRetryEvents" min:"1" type:"list"` 6161} 6162 6163// String returns the string representation 6164func (s HttpRetryPolicy) String() string { 6165 return awsutil.Prettify(s) 6166} 6167 6168// GoString returns the string representation 6169func (s HttpRetryPolicy) GoString() string { 6170 return s.String() 6171} 6172 6173// Validate inspects the fields of the type to determine if they are valid. 6174func (s *HttpRetryPolicy) Validate() error { 6175 invalidParams := request.ErrInvalidParams{Context: "HttpRetryPolicy"} 6176 if s.HttpRetryEvents != nil && len(s.HttpRetryEvents) < 1 { 6177 invalidParams.Add(request.NewErrParamMinLen("HttpRetryEvents", 1)) 6178 } 6179 if s.MaxRetries == nil { 6180 invalidParams.Add(request.NewErrParamRequired("MaxRetries")) 6181 } 6182 if s.PerRetryTimeout == nil { 6183 invalidParams.Add(request.NewErrParamRequired("PerRetryTimeout")) 6184 } 6185 if s.TcpRetryEvents != nil && len(s.TcpRetryEvents) < 1 { 6186 invalidParams.Add(request.NewErrParamMinLen("TcpRetryEvents", 1)) 6187 } 6188 6189 if invalidParams.Len() > 0 { 6190 return invalidParams 6191 } 6192 return nil 6193} 6194 6195// SetHttpRetryEvents sets the HttpRetryEvents field's value. 6196func (s *HttpRetryPolicy) SetHttpRetryEvents(v []*string) *HttpRetryPolicy { 6197 s.HttpRetryEvents = v 6198 return s 6199} 6200 6201// SetMaxRetries sets the MaxRetries field's value. 6202func (s *HttpRetryPolicy) SetMaxRetries(v int64) *HttpRetryPolicy { 6203 s.MaxRetries = &v 6204 return s 6205} 6206 6207// SetPerRetryTimeout sets the PerRetryTimeout field's value. 6208func (s *HttpRetryPolicy) SetPerRetryTimeout(v *Duration) *HttpRetryPolicy { 6209 s.PerRetryTimeout = v 6210 return s 6211} 6212 6213// SetTcpRetryEvents sets the TcpRetryEvents field's value. 6214func (s *HttpRetryPolicy) SetTcpRetryEvents(v []*string) *HttpRetryPolicy { 6215 s.TcpRetryEvents = v 6216 return s 6217} 6218 6219// An object that represents an HTTP or HTTP/2 route type. 6220type HttpRoute struct { 6221 _ struct{} `type:"structure"` 6222 6223 // An object that represents the action to take if a match is determined. 6224 // 6225 // Action is a required field 6226 Action *HttpRouteAction `locationName:"action" type:"structure" required:"true"` 6227 6228 // An object that represents the requirements for a route to match HTTP requests 6229 // for a virtual router. 6230 // 6231 // Match is a required field 6232 Match *HttpRouteMatch `locationName:"match" type:"structure" required:"true"` 6233 6234 // An object that represents a retry policy. Specify at least one value for 6235 // at least one of the types of RetryEvents, a value for maxRetries, and a value 6236 // for perRetryTimeout. 6237 RetryPolicy *HttpRetryPolicy `locationName:"retryPolicy" type:"structure"` 6238 6239 Timeout *HttpTimeout `locationName:"timeout" type:"structure"` 6240} 6241 6242// String returns the string representation 6243func (s HttpRoute) String() string { 6244 return awsutil.Prettify(s) 6245} 6246 6247// GoString returns the string representation 6248func (s HttpRoute) GoString() string { 6249 return s.String() 6250} 6251 6252// Validate inspects the fields of the type to determine if they are valid. 6253func (s *HttpRoute) Validate() error { 6254 invalidParams := request.ErrInvalidParams{Context: "HttpRoute"} 6255 if s.Action == nil { 6256 invalidParams.Add(request.NewErrParamRequired("Action")) 6257 } 6258 if s.Match == nil { 6259 invalidParams.Add(request.NewErrParamRequired("Match")) 6260 } 6261 if s.Action != nil { 6262 if err := s.Action.Validate(); err != nil { 6263 invalidParams.AddNested("Action", err.(request.ErrInvalidParams)) 6264 } 6265 } 6266 if s.Match != nil { 6267 if err := s.Match.Validate(); err != nil { 6268 invalidParams.AddNested("Match", err.(request.ErrInvalidParams)) 6269 } 6270 } 6271 if s.RetryPolicy != nil { 6272 if err := s.RetryPolicy.Validate(); err != nil { 6273 invalidParams.AddNested("RetryPolicy", err.(request.ErrInvalidParams)) 6274 } 6275 } 6276 6277 if invalidParams.Len() > 0 { 6278 return invalidParams 6279 } 6280 return nil 6281} 6282 6283// SetAction sets the Action field's value. 6284func (s *HttpRoute) SetAction(v *HttpRouteAction) *HttpRoute { 6285 s.Action = v 6286 return s 6287} 6288 6289// SetMatch sets the Match field's value. 6290func (s *HttpRoute) SetMatch(v *HttpRouteMatch) *HttpRoute { 6291 s.Match = v 6292 return s 6293} 6294 6295// SetRetryPolicy sets the RetryPolicy field's value. 6296func (s *HttpRoute) SetRetryPolicy(v *HttpRetryPolicy) *HttpRoute { 6297 s.RetryPolicy = v 6298 return s 6299} 6300 6301// SetTimeout sets the Timeout field's value. 6302func (s *HttpRoute) SetTimeout(v *HttpTimeout) *HttpRoute { 6303 s.Timeout = v 6304 return s 6305} 6306 6307// An object that represents the action to take if a match is determined. 6308type HttpRouteAction struct { 6309 _ struct{} `type:"structure"` 6310 6311 // WeightedTargets is a required field 6312 WeightedTargets []*WeightedTarget `locationName:"weightedTargets" min:"1" type:"list" required:"true"` 6313} 6314 6315// String returns the string representation 6316func (s HttpRouteAction) String() string { 6317 return awsutil.Prettify(s) 6318} 6319 6320// GoString returns the string representation 6321func (s HttpRouteAction) GoString() string { 6322 return s.String() 6323} 6324 6325// Validate inspects the fields of the type to determine if they are valid. 6326func (s *HttpRouteAction) Validate() error { 6327 invalidParams := request.ErrInvalidParams{Context: "HttpRouteAction"} 6328 if s.WeightedTargets == nil { 6329 invalidParams.Add(request.NewErrParamRequired("WeightedTargets")) 6330 } 6331 if s.WeightedTargets != nil && len(s.WeightedTargets) < 1 { 6332 invalidParams.Add(request.NewErrParamMinLen("WeightedTargets", 1)) 6333 } 6334 if s.WeightedTargets != nil { 6335 for i, v := range s.WeightedTargets { 6336 if v == nil { 6337 continue 6338 } 6339 if err := v.Validate(); err != nil { 6340 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "WeightedTargets", i), err.(request.ErrInvalidParams)) 6341 } 6342 } 6343 } 6344 6345 if invalidParams.Len() > 0 { 6346 return invalidParams 6347 } 6348 return nil 6349} 6350 6351// SetWeightedTargets sets the WeightedTargets field's value. 6352func (s *HttpRouteAction) SetWeightedTargets(v []*WeightedTarget) *HttpRouteAction { 6353 s.WeightedTargets = v 6354 return s 6355} 6356 6357// An object that represents the HTTP header in the request. 6358type HttpRouteHeader struct { 6359 _ struct{} `type:"structure"` 6360 6361 Invert *bool `locationName:"invert" type:"boolean"` 6362 6363 // An object that represents the method and value to match with the header value 6364 // sent in a request. Specify one match method. 6365 Match *HeaderMatchMethod `locationName:"match" type:"structure"` 6366 6367 // Name is a required field 6368 Name *string `locationName:"name" min:"1" type:"string" required:"true"` 6369} 6370 6371// String returns the string representation 6372func (s HttpRouteHeader) String() string { 6373 return awsutil.Prettify(s) 6374} 6375 6376// GoString returns the string representation 6377func (s HttpRouteHeader) GoString() string { 6378 return s.String() 6379} 6380 6381// Validate inspects the fields of the type to determine if they are valid. 6382func (s *HttpRouteHeader) Validate() error { 6383 invalidParams := request.ErrInvalidParams{Context: "HttpRouteHeader"} 6384 if s.Name == nil { 6385 invalidParams.Add(request.NewErrParamRequired("Name")) 6386 } 6387 if s.Name != nil && len(*s.Name) < 1 { 6388 invalidParams.Add(request.NewErrParamMinLen("Name", 1)) 6389 } 6390 if s.Match != nil { 6391 if err := s.Match.Validate(); err != nil { 6392 invalidParams.AddNested("Match", err.(request.ErrInvalidParams)) 6393 } 6394 } 6395 6396 if invalidParams.Len() > 0 { 6397 return invalidParams 6398 } 6399 return nil 6400} 6401 6402// SetInvert sets the Invert field's value. 6403func (s *HttpRouteHeader) SetInvert(v bool) *HttpRouteHeader { 6404 s.Invert = &v 6405 return s 6406} 6407 6408// SetMatch sets the Match field's value. 6409func (s *HttpRouteHeader) SetMatch(v *HeaderMatchMethod) *HttpRouteHeader { 6410 s.Match = v 6411 return s 6412} 6413 6414// SetName sets the Name field's value. 6415func (s *HttpRouteHeader) SetName(v string) *HttpRouteHeader { 6416 s.Name = &v 6417 return s 6418} 6419 6420// An object that represents the requirements for a route to match HTTP requests 6421// for a virtual router. 6422type HttpRouteMatch struct { 6423 _ struct{} `type:"structure"` 6424 6425 Headers []*HttpRouteHeader `locationName:"headers" min:"1" type:"list"` 6426 6427 Method *string `locationName:"method" type:"string" enum:"HttpMethod"` 6428 6429 // Prefix is a required field 6430 Prefix *string `locationName:"prefix" type:"string" required:"true"` 6431 6432 Scheme *string `locationName:"scheme" type:"string" enum:"HttpScheme"` 6433} 6434 6435// String returns the string representation 6436func (s HttpRouteMatch) String() string { 6437 return awsutil.Prettify(s) 6438} 6439 6440// GoString returns the string representation 6441func (s HttpRouteMatch) GoString() string { 6442 return s.String() 6443} 6444 6445// Validate inspects the fields of the type to determine if they are valid. 6446func (s *HttpRouteMatch) Validate() error { 6447 invalidParams := request.ErrInvalidParams{Context: "HttpRouteMatch"} 6448 if s.Headers != nil && len(s.Headers) < 1 { 6449 invalidParams.Add(request.NewErrParamMinLen("Headers", 1)) 6450 } 6451 if s.Prefix == nil { 6452 invalidParams.Add(request.NewErrParamRequired("Prefix")) 6453 } 6454 if s.Headers != nil { 6455 for i, v := range s.Headers { 6456 if v == nil { 6457 continue 6458 } 6459 if err := v.Validate(); err != nil { 6460 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Headers", i), err.(request.ErrInvalidParams)) 6461 } 6462 } 6463 } 6464 6465 if invalidParams.Len() > 0 { 6466 return invalidParams 6467 } 6468 return nil 6469} 6470 6471// SetHeaders sets the Headers field's value. 6472func (s *HttpRouteMatch) SetHeaders(v []*HttpRouteHeader) *HttpRouteMatch { 6473 s.Headers = v 6474 return s 6475} 6476 6477// SetMethod sets the Method field's value. 6478func (s *HttpRouteMatch) SetMethod(v string) *HttpRouteMatch { 6479 s.Method = &v 6480 return s 6481} 6482 6483// SetPrefix sets the Prefix field's value. 6484func (s *HttpRouteMatch) SetPrefix(v string) *HttpRouteMatch { 6485 s.Prefix = &v 6486 return s 6487} 6488 6489// SetScheme sets the Scheme field's value. 6490func (s *HttpRouteMatch) SetScheme(v string) *HttpRouteMatch { 6491 s.Scheme = &v 6492 return s 6493} 6494 6495type HttpTimeout struct { 6496 _ struct{} `type:"structure"` 6497 6498 // An object that represents a duration of time. 6499 Idle *Duration `locationName:"idle" type:"structure"` 6500 6501 // An object that represents a duration of time. 6502 PerRequest *Duration `locationName:"perRequest" type:"structure"` 6503} 6504 6505// String returns the string representation 6506func (s HttpTimeout) String() string { 6507 return awsutil.Prettify(s) 6508} 6509 6510// GoString returns the string representation 6511func (s HttpTimeout) GoString() string { 6512 return s.String() 6513} 6514 6515// SetIdle sets the Idle field's value. 6516func (s *HttpTimeout) SetIdle(v *Duration) *HttpTimeout { 6517 s.Idle = v 6518 return s 6519} 6520 6521// SetPerRequest sets the PerRequest field's value. 6522func (s *HttpTimeout) SetPerRequest(v *Duration) *HttpTimeout { 6523 s.PerRequest = v 6524 return s 6525} 6526 6527// The request processing has failed because of an unknown error, exception, 6528// or failure. 6529type InternalServerErrorException struct { 6530 _ struct{} `type:"structure"` 6531 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 6532 6533 Message_ *string `locationName:"message" type:"string"` 6534} 6535 6536// String returns the string representation 6537func (s InternalServerErrorException) String() string { 6538 return awsutil.Prettify(s) 6539} 6540 6541// GoString returns the string representation 6542func (s InternalServerErrorException) GoString() string { 6543 return s.String() 6544} 6545 6546func newErrorInternalServerErrorException(v protocol.ResponseMetadata) error { 6547 return &InternalServerErrorException{ 6548 RespMetadata: v, 6549 } 6550} 6551 6552// Code returns the exception type name. 6553func (s *InternalServerErrorException) Code() string { 6554 return "InternalServerErrorException" 6555} 6556 6557// Message returns the exception's message. 6558func (s *InternalServerErrorException) Message() string { 6559 if s.Message_ != nil { 6560 return *s.Message_ 6561 } 6562 return "" 6563} 6564 6565// OrigErr always returns nil, satisfies awserr.Error interface. 6566func (s *InternalServerErrorException) OrigErr() error { 6567 return nil 6568} 6569 6570func (s *InternalServerErrorException) Error() string { 6571 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 6572} 6573 6574// Status code returns the HTTP status code for the request's response error. 6575func (s *InternalServerErrorException) StatusCode() int { 6576 return s.RespMetadata.StatusCode 6577} 6578 6579// RequestID returns the service's response RequestID for request. 6580func (s *InternalServerErrorException) RequestID() string { 6581 return s.RespMetadata.RequestID 6582} 6583 6584// You have exceeded a service limit for your account. For more information, 6585// see Service Limits (https://docs.aws.amazon.com/app-mesh/latest/userguide/service-quotas.html) 6586// in the AWS App Mesh User Guide. 6587type LimitExceededException struct { 6588 _ struct{} `type:"structure"` 6589 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 6590 6591 Message_ *string `locationName:"message" type:"string"` 6592} 6593 6594// String returns the string representation 6595func (s LimitExceededException) String() string { 6596 return awsutil.Prettify(s) 6597} 6598 6599// GoString returns the string representation 6600func (s LimitExceededException) GoString() string { 6601 return s.String() 6602} 6603 6604func newErrorLimitExceededException(v protocol.ResponseMetadata) error { 6605 return &LimitExceededException{ 6606 RespMetadata: v, 6607 } 6608} 6609 6610// Code returns the exception type name. 6611func (s *LimitExceededException) Code() string { 6612 return "LimitExceededException" 6613} 6614 6615// Message returns the exception's message. 6616func (s *LimitExceededException) Message() string { 6617 if s.Message_ != nil { 6618 return *s.Message_ 6619 } 6620 return "" 6621} 6622 6623// OrigErr always returns nil, satisfies awserr.Error interface. 6624func (s *LimitExceededException) OrigErr() error { 6625 return nil 6626} 6627 6628func (s *LimitExceededException) Error() string { 6629 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 6630} 6631 6632// Status code returns the HTTP status code for the request's response error. 6633func (s *LimitExceededException) StatusCode() int { 6634 return s.RespMetadata.StatusCode 6635} 6636 6637// RequestID returns the service's response RequestID for request. 6638func (s *LimitExceededException) RequestID() string { 6639 return s.RespMetadata.RequestID 6640} 6641 6642type ListMeshesInput struct { 6643 _ struct{} `type:"structure"` 6644 6645 Limit *int64 `location:"querystring" locationName:"limit" min:"1" type:"integer"` 6646 6647 NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` 6648} 6649 6650// String returns the string representation 6651func (s ListMeshesInput) String() string { 6652 return awsutil.Prettify(s) 6653} 6654 6655// GoString returns the string representation 6656func (s ListMeshesInput) GoString() string { 6657 return s.String() 6658} 6659 6660// Validate inspects the fields of the type to determine if they are valid. 6661func (s *ListMeshesInput) Validate() error { 6662 invalidParams := request.ErrInvalidParams{Context: "ListMeshesInput"} 6663 if s.Limit != nil && *s.Limit < 1 { 6664 invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) 6665 } 6666 6667 if invalidParams.Len() > 0 { 6668 return invalidParams 6669 } 6670 return nil 6671} 6672 6673// SetLimit sets the Limit field's value. 6674func (s *ListMeshesInput) SetLimit(v int64) *ListMeshesInput { 6675 s.Limit = &v 6676 return s 6677} 6678 6679// SetNextToken sets the NextToken field's value. 6680func (s *ListMeshesInput) SetNextToken(v string) *ListMeshesInput { 6681 s.NextToken = &v 6682 return s 6683} 6684 6685type ListMeshesOutput struct { 6686 _ struct{} `type:"structure"` 6687 6688 // Meshes is a required field 6689 Meshes []*MeshRef `locationName:"meshes" type:"list" required:"true"` 6690 6691 NextToken *string `locationName:"nextToken" type:"string"` 6692} 6693 6694// String returns the string representation 6695func (s ListMeshesOutput) String() string { 6696 return awsutil.Prettify(s) 6697} 6698 6699// GoString returns the string representation 6700func (s ListMeshesOutput) GoString() string { 6701 return s.String() 6702} 6703 6704// SetMeshes sets the Meshes field's value. 6705func (s *ListMeshesOutput) SetMeshes(v []*MeshRef) *ListMeshesOutput { 6706 s.Meshes = v 6707 return s 6708} 6709 6710// SetNextToken sets the NextToken field's value. 6711func (s *ListMeshesOutput) SetNextToken(v string) *ListMeshesOutput { 6712 s.NextToken = &v 6713 return s 6714} 6715 6716type ListRoutesInput struct { 6717 _ struct{} `type:"structure"` 6718 6719 Limit *int64 `location:"querystring" locationName:"limit" min:"1" type:"integer"` 6720 6721 // MeshName is a required field 6722 MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` 6723 6724 MeshOwner *string `location:"querystring" locationName:"meshOwner" min:"12" type:"string"` 6725 6726 NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` 6727 6728 // VirtualRouterName is a required field 6729 VirtualRouterName *string `location:"uri" locationName:"virtualRouterName" min:"1" type:"string" required:"true"` 6730} 6731 6732// String returns the string representation 6733func (s ListRoutesInput) String() string { 6734 return awsutil.Prettify(s) 6735} 6736 6737// GoString returns the string representation 6738func (s ListRoutesInput) GoString() string { 6739 return s.String() 6740} 6741 6742// Validate inspects the fields of the type to determine if they are valid. 6743func (s *ListRoutesInput) Validate() error { 6744 invalidParams := request.ErrInvalidParams{Context: "ListRoutesInput"} 6745 if s.Limit != nil && *s.Limit < 1 { 6746 invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) 6747 } 6748 if s.MeshName == nil { 6749 invalidParams.Add(request.NewErrParamRequired("MeshName")) 6750 } 6751 if s.MeshName != nil && len(*s.MeshName) < 1 { 6752 invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) 6753 } 6754 if s.MeshOwner != nil && len(*s.MeshOwner) < 12 { 6755 invalidParams.Add(request.NewErrParamMinLen("MeshOwner", 12)) 6756 } 6757 if s.VirtualRouterName == nil { 6758 invalidParams.Add(request.NewErrParamRequired("VirtualRouterName")) 6759 } 6760 if s.VirtualRouterName != nil && len(*s.VirtualRouterName) < 1 { 6761 invalidParams.Add(request.NewErrParamMinLen("VirtualRouterName", 1)) 6762 } 6763 6764 if invalidParams.Len() > 0 { 6765 return invalidParams 6766 } 6767 return nil 6768} 6769 6770// SetLimit sets the Limit field's value. 6771func (s *ListRoutesInput) SetLimit(v int64) *ListRoutesInput { 6772 s.Limit = &v 6773 return s 6774} 6775 6776// SetMeshName sets the MeshName field's value. 6777func (s *ListRoutesInput) SetMeshName(v string) *ListRoutesInput { 6778 s.MeshName = &v 6779 return s 6780} 6781 6782// SetMeshOwner sets the MeshOwner field's value. 6783func (s *ListRoutesInput) SetMeshOwner(v string) *ListRoutesInput { 6784 s.MeshOwner = &v 6785 return s 6786} 6787 6788// SetNextToken sets the NextToken field's value. 6789func (s *ListRoutesInput) SetNextToken(v string) *ListRoutesInput { 6790 s.NextToken = &v 6791 return s 6792} 6793 6794// SetVirtualRouterName sets the VirtualRouterName field's value. 6795func (s *ListRoutesInput) SetVirtualRouterName(v string) *ListRoutesInput { 6796 s.VirtualRouterName = &v 6797 return s 6798} 6799 6800type ListRoutesOutput struct { 6801 _ struct{} `type:"structure"` 6802 6803 NextToken *string `locationName:"nextToken" type:"string"` 6804 6805 // Routes is a required field 6806 Routes []*RouteRef `locationName:"routes" type:"list" required:"true"` 6807} 6808 6809// String returns the string representation 6810func (s ListRoutesOutput) String() string { 6811 return awsutil.Prettify(s) 6812} 6813 6814// GoString returns the string representation 6815func (s ListRoutesOutput) GoString() string { 6816 return s.String() 6817} 6818 6819// SetNextToken sets the NextToken field's value. 6820func (s *ListRoutesOutput) SetNextToken(v string) *ListRoutesOutput { 6821 s.NextToken = &v 6822 return s 6823} 6824 6825// SetRoutes sets the Routes field's value. 6826func (s *ListRoutesOutput) SetRoutes(v []*RouteRef) *ListRoutesOutput { 6827 s.Routes = v 6828 return s 6829} 6830 6831type ListTagsForResourceInput struct { 6832 _ struct{} `type:"structure"` 6833 6834 Limit *int64 `location:"querystring" locationName:"limit" min:"1" type:"integer"` 6835 6836 NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` 6837 6838 // ResourceArn is a required field 6839 ResourceArn *string `location:"querystring" locationName:"resourceArn" type:"string" required:"true"` 6840} 6841 6842// String returns the string representation 6843func (s ListTagsForResourceInput) String() string { 6844 return awsutil.Prettify(s) 6845} 6846 6847// GoString returns the string representation 6848func (s ListTagsForResourceInput) GoString() string { 6849 return s.String() 6850} 6851 6852// Validate inspects the fields of the type to determine if they are valid. 6853func (s *ListTagsForResourceInput) Validate() error { 6854 invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"} 6855 if s.Limit != nil && *s.Limit < 1 { 6856 invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) 6857 } 6858 if s.ResourceArn == nil { 6859 invalidParams.Add(request.NewErrParamRequired("ResourceArn")) 6860 } 6861 6862 if invalidParams.Len() > 0 { 6863 return invalidParams 6864 } 6865 return nil 6866} 6867 6868// SetLimit sets the Limit field's value. 6869func (s *ListTagsForResourceInput) SetLimit(v int64) *ListTagsForResourceInput { 6870 s.Limit = &v 6871 return s 6872} 6873 6874// SetNextToken sets the NextToken field's value. 6875func (s *ListTagsForResourceInput) SetNextToken(v string) *ListTagsForResourceInput { 6876 s.NextToken = &v 6877 return s 6878} 6879 6880// SetResourceArn sets the ResourceArn field's value. 6881func (s *ListTagsForResourceInput) SetResourceArn(v string) *ListTagsForResourceInput { 6882 s.ResourceArn = &v 6883 return s 6884} 6885 6886type ListTagsForResourceOutput struct { 6887 _ struct{} `type:"structure"` 6888 6889 NextToken *string `locationName:"nextToken" type:"string"` 6890 6891 // Tags is a required field 6892 Tags []*TagRef `locationName:"tags" type:"list" required:"true"` 6893} 6894 6895// String returns the string representation 6896func (s ListTagsForResourceOutput) String() string { 6897 return awsutil.Prettify(s) 6898} 6899 6900// GoString returns the string representation 6901func (s ListTagsForResourceOutput) GoString() string { 6902 return s.String() 6903} 6904 6905// SetNextToken sets the NextToken field's value. 6906func (s *ListTagsForResourceOutput) SetNextToken(v string) *ListTagsForResourceOutput { 6907 s.NextToken = &v 6908 return s 6909} 6910 6911// SetTags sets the Tags field's value. 6912func (s *ListTagsForResourceOutput) SetTags(v []*TagRef) *ListTagsForResourceOutput { 6913 s.Tags = v 6914 return s 6915} 6916 6917type ListVirtualNodesInput struct { 6918 _ struct{} `type:"structure"` 6919 6920 Limit *int64 `location:"querystring" locationName:"limit" min:"1" type:"integer"` 6921 6922 // MeshName is a required field 6923 MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` 6924 6925 MeshOwner *string `location:"querystring" locationName:"meshOwner" min:"12" type:"string"` 6926 6927 NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` 6928} 6929 6930// String returns the string representation 6931func (s ListVirtualNodesInput) String() string { 6932 return awsutil.Prettify(s) 6933} 6934 6935// GoString returns the string representation 6936func (s ListVirtualNodesInput) GoString() string { 6937 return s.String() 6938} 6939 6940// Validate inspects the fields of the type to determine if they are valid. 6941func (s *ListVirtualNodesInput) Validate() error { 6942 invalidParams := request.ErrInvalidParams{Context: "ListVirtualNodesInput"} 6943 if s.Limit != nil && *s.Limit < 1 { 6944 invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) 6945 } 6946 if s.MeshName == nil { 6947 invalidParams.Add(request.NewErrParamRequired("MeshName")) 6948 } 6949 if s.MeshName != nil && len(*s.MeshName) < 1 { 6950 invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) 6951 } 6952 if s.MeshOwner != nil && len(*s.MeshOwner) < 12 { 6953 invalidParams.Add(request.NewErrParamMinLen("MeshOwner", 12)) 6954 } 6955 6956 if invalidParams.Len() > 0 { 6957 return invalidParams 6958 } 6959 return nil 6960} 6961 6962// SetLimit sets the Limit field's value. 6963func (s *ListVirtualNodesInput) SetLimit(v int64) *ListVirtualNodesInput { 6964 s.Limit = &v 6965 return s 6966} 6967 6968// SetMeshName sets the MeshName field's value. 6969func (s *ListVirtualNodesInput) SetMeshName(v string) *ListVirtualNodesInput { 6970 s.MeshName = &v 6971 return s 6972} 6973 6974// SetMeshOwner sets the MeshOwner field's value. 6975func (s *ListVirtualNodesInput) SetMeshOwner(v string) *ListVirtualNodesInput { 6976 s.MeshOwner = &v 6977 return s 6978} 6979 6980// SetNextToken sets the NextToken field's value. 6981func (s *ListVirtualNodesInput) SetNextToken(v string) *ListVirtualNodesInput { 6982 s.NextToken = &v 6983 return s 6984} 6985 6986type ListVirtualNodesOutput struct { 6987 _ struct{} `type:"structure"` 6988 6989 NextToken *string `locationName:"nextToken" type:"string"` 6990 6991 // VirtualNodes is a required field 6992 VirtualNodes []*VirtualNodeRef `locationName:"virtualNodes" type:"list" required:"true"` 6993} 6994 6995// String returns the string representation 6996func (s ListVirtualNodesOutput) String() string { 6997 return awsutil.Prettify(s) 6998} 6999 7000// GoString returns the string representation 7001func (s ListVirtualNodesOutput) GoString() string { 7002 return s.String() 7003} 7004 7005// SetNextToken sets the NextToken field's value. 7006func (s *ListVirtualNodesOutput) SetNextToken(v string) *ListVirtualNodesOutput { 7007 s.NextToken = &v 7008 return s 7009} 7010 7011// SetVirtualNodes sets the VirtualNodes field's value. 7012func (s *ListVirtualNodesOutput) SetVirtualNodes(v []*VirtualNodeRef) *ListVirtualNodesOutput { 7013 s.VirtualNodes = v 7014 return s 7015} 7016 7017type ListVirtualRoutersInput struct { 7018 _ struct{} `type:"structure"` 7019 7020 Limit *int64 `location:"querystring" locationName:"limit" min:"1" type:"integer"` 7021 7022 // MeshName is a required field 7023 MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` 7024 7025 MeshOwner *string `location:"querystring" locationName:"meshOwner" min:"12" type:"string"` 7026 7027 NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` 7028} 7029 7030// String returns the string representation 7031func (s ListVirtualRoutersInput) String() string { 7032 return awsutil.Prettify(s) 7033} 7034 7035// GoString returns the string representation 7036func (s ListVirtualRoutersInput) GoString() string { 7037 return s.String() 7038} 7039 7040// Validate inspects the fields of the type to determine if they are valid. 7041func (s *ListVirtualRoutersInput) Validate() error { 7042 invalidParams := request.ErrInvalidParams{Context: "ListVirtualRoutersInput"} 7043 if s.Limit != nil && *s.Limit < 1 { 7044 invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) 7045 } 7046 if s.MeshName == nil { 7047 invalidParams.Add(request.NewErrParamRequired("MeshName")) 7048 } 7049 if s.MeshName != nil && len(*s.MeshName) < 1 { 7050 invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) 7051 } 7052 if s.MeshOwner != nil && len(*s.MeshOwner) < 12 { 7053 invalidParams.Add(request.NewErrParamMinLen("MeshOwner", 12)) 7054 } 7055 7056 if invalidParams.Len() > 0 { 7057 return invalidParams 7058 } 7059 return nil 7060} 7061 7062// SetLimit sets the Limit field's value. 7063func (s *ListVirtualRoutersInput) SetLimit(v int64) *ListVirtualRoutersInput { 7064 s.Limit = &v 7065 return s 7066} 7067 7068// SetMeshName sets the MeshName field's value. 7069func (s *ListVirtualRoutersInput) SetMeshName(v string) *ListVirtualRoutersInput { 7070 s.MeshName = &v 7071 return s 7072} 7073 7074// SetMeshOwner sets the MeshOwner field's value. 7075func (s *ListVirtualRoutersInput) SetMeshOwner(v string) *ListVirtualRoutersInput { 7076 s.MeshOwner = &v 7077 return s 7078} 7079 7080// SetNextToken sets the NextToken field's value. 7081func (s *ListVirtualRoutersInput) SetNextToken(v string) *ListVirtualRoutersInput { 7082 s.NextToken = &v 7083 return s 7084} 7085 7086type ListVirtualRoutersOutput struct { 7087 _ struct{} `type:"structure"` 7088 7089 NextToken *string `locationName:"nextToken" type:"string"` 7090 7091 // VirtualRouters is a required field 7092 VirtualRouters []*VirtualRouterRef `locationName:"virtualRouters" type:"list" required:"true"` 7093} 7094 7095// String returns the string representation 7096func (s ListVirtualRoutersOutput) String() string { 7097 return awsutil.Prettify(s) 7098} 7099 7100// GoString returns the string representation 7101func (s ListVirtualRoutersOutput) GoString() string { 7102 return s.String() 7103} 7104 7105// SetNextToken sets the NextToken field's value. 7106func (s *ListVirtualRoutersOutput) SetNextToken(v string) *ListVirtualRoutersOutput { 7107 s.NextToken = &v 7108 return s 7109} 7110 7111// SetVirtualRouters sets the VirtualRouters field's value. 7112func (s *ListVirtualRoutersOutput) SetVirtualRouters(v []*VirtualRouterRef) *ListVirtualRoutersOutput { 7113 s.VirtualRouters = v 7114 return s 7115} 7116 7117type ListVirtualServicesInput struct { 7118 _ struct{} `type:"structure"` 7119 7120 Limit *int64 `location:"querystring" locationName:"limit" min:"1" type:"integer"` 7121 7122 // MeshName is a required field 7123 MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` 7124 7125 MeshOwner *string `location:"querystring" locationName:"meshOwner" min:"12" type:"string"` 7126 7127 NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` 7128} 7129 7130// String returns the string representation 7131func (s ListVirtualServicesInput) String() string { 7132 return awsutil.Prettify(s) 7133} 7134 7135// GoString returns the string representation 7136func (s ListVirtualServicesInput) GoString() string { 7137 return s.String() 7138} 7139 7140// Validate inspects the fields of the type to determine if they are valid. 7141func (s *ListVirtualServicesInput) Validate() error { 7142 invalidParams := request.ErrInvalidParams{Context: "ListVirtualServicesInput"} 7143 if s.Limit != nil && *s.Limit < 1 { 7144 invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) 7145 } 7146 if s.MeshName == nil { 7147 invalidParams.Add(request.NewErrParamRequired("MeshName")) 7148 } 7149 if s.MeshName != nil && len(*s.MeshName) < 1 { 7150 invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) 7151 } 7152 if s.MeshOwner != nil && len(*s.MeshOwner) < 12 { 7153 invalidParams.Add(request.NewErrParamMinLen("MeshOwner", 12)) 7154 } 7155 7156 if invalidParams.Len() > 0 { 7157 return invalidParams 7158 } 7159 return nil 7160} 7161 7162// SetLimit sets the Limit field's value. 7163func (s *ListVirtualServicesInput) SetLimit(v int64) *ListVirtualServicesInput { 7164 s.Limit = &v 7165 return s 7166} 7167 7168// SetMeshName sets the MeshName field's value. 7169func (s *ListVirtualServicesInput) SetMeshName(v string) *ListVirtualServicesInput { 7170 s.MeshName = &v 7171 return s 7172} 7173 7174// SetMeshOwner sets the MeshOwner field's value. 7175func (s *ListVirtualServicesInput) SetMeshOwner(v string) *ListVirtualServicesInput { 7176 s.MeshOwner = &v 7177 return s 7178} 7179 7180// SetNextToken sets the NextToken field's value. 7181func (s *ListVirtualServicesInput) SetNextToken(v string) *ListVirtualServicesInput { 7182 s.NextToken = &v 7183 return s 7184} 7185 7186type ListVirtualServicesOutput struct { 7187 _ struct{} `type:"structure"` 7188 7189 NextToken *string `locationName:"nextToken" type:"string"` 7190 7191 // VirtualServices is a required field 7192 VirtualServices []*VirtualServiceRef `locationName:"virtualServices" type:"list" required:"true"` 7193} 7194 7195// String returns the string representation 7196func (s ListVirtualServicesOutput) String() string { 7197 return awsutil.Prettify(s) 7198} 7199 7200// GoString returns the string representation 7201func (s ListVirtualServicesOutput) GoString() string { 7202 return s.String() 7203} 7204 7205// SetNextToken sets the NextToken field's value. 7206func (s *ListVirtualServicesOutput) SetNextToken(v string) *ListVirtualServicesOutput { 7207 s.NextToken = &v 7208 return s 7209} 7210 7211// SetVirtualServices sets the VirtualServices field's value. 7212func (s *ListVirtualServicesOutput) SetVirtualServices(v []*VirtualServiceRef) *ListVirtualServicesOutput { 7213 s.VirtualServices = v 7214 return s 7215} 7216 7217// An object that represents a listener for a virtual node. 7218type Listener struct { 7219 _ struct{} `type:"structure"` 7220 7221 // An object that represents the health check policy for a virtual node's listener. 7222 HealthCheck *HealthCheckPolicy `locationName:"healthCheck" type:"structure"` 7223 7224 // An object that represents a port mapping. 7225 // 7226 // PortMapping is a required field 7227 PortMapping *PortMapping `locationName:"portMapping" type:"structure" required:"true"` 7228 7229 Timeout *ListenerTimeout `locationName:"timeout" type:"structure"` 7230 7231 // An object that represents the Transport Layer Security (TLS) properties for 7232 // a listener. 7233 Tls *ListenerTls `locationName:"tls" type:"structure"` 7234} 7235 7236// String returns the string representation 7237func (s Listener) String() string { 7238 return awsutil.Prettify(s) 7239} 7240 7241// GoString returns the string representation 7242func (s Listener) GoString() string { 7243 return s.String() 7244} 7245 7246// Validate inspects the fields of the type to determine if they are valid. 7247func (s *Listener) Validate() error { 7248 invalidParams := request.ErrInvalidParams{Context: "Listener"} 7249 if s.PortMapping == nil { 7250 invalidParams.Add(request.NewErrParamRequired("PortMapping")) 7251 } 7252 if s.HealthCheck != nil { 7253 if err := s.HealthCheck.Validate(); err != nil { 7254 invalidParams.AddNested("HealthCheck", err.(request.ErrInvalidParams)) 7255 } 7256 } 7257 if s.PortMapping != nil { 7258 if err := s.PortMapping.Validate(); err != nil { 7259 invalidParams.AddNested("PortMapping", err.(request.ErrInvalidParams)) 7260 } 7261 } 7262 if s.Tls != nil { 7263 if err := s.Tls.Validate(); err != nil { 7264 invalidParams.AddNested("Tls", err.(request.ErrInvalidParams)) 7265 } 7266 } 7267 7268 if invalidParams.Len() > 0 { 7269 return invalidParams 7270 } 7271 return nil 7272} 7273 7274// SetHealthCheck sets the HealthCheck field's value. 7275func (s *Listener) SetHealthCheck(v *HealthCheckPolicy) *Listener { 7276 s.HealthCheck = v 7277 return s 7278} 7279 7280// SetPortMapping sets the PortMapping field's value. 7281func (s *Listener) SetPortMapping(v *PortMapping) *Listener { 7282 s.PortMapping = v 7283 return s 7284} 7285 7286// SetTimeout sets the Timeout field's value. 7287func (s *Listener) SetTimeout(v *ListenerTimeout) *Listener { 7288 s.Timeout = v 7289 return s 7290} 7291 7292// SetTls sets the Tls field's value. 7293func (s *Listener) SetTls(v *ListenerTls) *Listener { 7294 s.Tls = v 7295 return s 7296} 7297 7298type ListenerTimeout struct { 7299 _ struct{} `type:"structure"` 7300 7301 Grpc *GrpcTimeout `locationName:"grpc" type:"structure"` 7302 7303 Http *HttpTimeout `locationName:"http" type:"structure"` 7304 7305 Http2 *HttpTimeout `locationName:"http2" type:"structure"` 7306 7307 Tcp *TcpTimeout `locationName:"tcp" type:"structure"` 7308} 7309 7310// String returns the string representation 7311func (s ListenerTimeout) String() string { 7312 return awsutil.Prettify(s) 7313} 7314 7315// GoString returns the string representation 7316func (s ListenerTimeout) GoString() string { 7317 return s.String() 7318} 7319 7320// SetGrpc sets the Grpc field's value. 7321func (s *ListenerTimeout) SetGrpc(v *GrpcTimeout) *ListenerTimeout { 7322 s.Grpc = v 7323 return s 7324} 7325 7326// SetHttp sets the Http field's value. 7327func (s *ListenerTimeout) SetHttp(v *HttpTimeout) *ListenerTimeout { 7328 s.Http = v 7329 return s 7330} 7331 7332// SetHttp2 sets the Http2 field's value. 7333func (s *ListenerTimeout) SetHttp2(v *HttpTimeout) *ListenerTimeout { 7334 s.Http2 = v 7335 return s 7336} 7337 7338// SetTcp sets the Tcp field's value. 7339func (s *ListenerTimeout) SetTcp(v *TcpTimeout) *ListenerTimeout { 7340 s.Tcp = v 7341 return s 7342} 7343 7344// An object that represents the Transport Layer Security (TLS) properties for 7345// a listener. 7346type ListenerTls struct { 7347 _ struct{} `type:"structure"` 7348 7349 // An object that represents a listener's Transport Layer Security (TLS) certificate. 7350 // 7351 // Certificate is a required field 7352 Certificate *ListenerTlsCertificate `locationName:"certificate" type:"structure" required:"true"` 7353 7354 // Mode is a required field 7355 Mode *string `locationName:"mode" type:"string" required:"true" enum:"ListenerTlsMode"` 7356} 7357 7358// String returns the string representation 7359func (s ListenerTls) String() string { 7360 return awsutil.Prettify(s) 7361} 7362 7363// GoString returns the string representation 7364func (s ListenerTls) GoString() string { 7365 return s.String() 7366} 7367 7368// Validate inspects the fields of the type to determine if they are valid. 7369func (s *ListenerTls) Validate() error { 7370 invalidParams := request.ErrInvalidParams{Context: "ListenerTls"} 7371 if s.Certificate == nil { 7372 invalidParams.Add(request.NewErrParamRequired("Certificate")) 7373 } 7374 if s.Mode == nil { 7375 invalidParams.Add(request.NewErrParamRequired("Mode")) 7376 } 7377 if s.Certificate != nil { 7378 if err := s.Certificate.Validate(); err != nil { 7379 invalidParams.AddNested("Certificate", err.(request.ErrInvalidParams)) 7380 } 7381 } 7382 7383 if invalidParams.Len() > 0 { 7384 return invalidParams 7385 } 7386 return nil 7387} 7388 7389// SetCertificate sets the Certificate field's value. 7390func (s *ListenerTls) SetCertificate(v *ListenerTlsCertificate) *ListenerTls { 7391 s.Certificate = v 7392 return s 7393} 7394 7395// SetMode sets the Mode field's value. 7396func (s *ListenerTls) SetMode(v string) *ListenerTls { 7397 s.Mode = &v 7398 return s 7399} 7400 7401// An object that represents an AWS Certicate Manager (ACM) certificate. 7402type ListenerTlsAcmCertificate struct { 7403 _ struct{} `type:"structure"` 7404 7405 // CertificateArn is a required field 7406 CertificateArn *string `locationName:"certificateArn" type:"string" required:"true"` 7407} 7408 7409// String returns the string representation 7410func (s ListenerTlsAcmCertificate) String() string { 7411 return awsutil.Prettify(s) 7412} 7413 7414// GoString returns the string representation 7415func (s ListenerTlsAcmCertificate) GoString() string { 7416 return s.String() 7417} 7418 7419// Validate inspects the fields of the type to determine if they are valid. 7420func (s *ListenerTlsAcmCertificate) Validate() error { 7421 invalidParams := request.ErrInvalidParams{Context: "ListenerTlsAcmCertificate"} 7422 if s.CertificateArn == nil { 7423 invalidParams.Add(request.NewErrParamRequired("CertificateArn")) 7424 } 7425 7426 if invalidParams.Len() > 0 { 7427 return invalidParams 7428 } 7429 return nil 7430} 7431 7432// SetCertificateArn sets the CertificateArn field's value. 7433func (s *ListenerTlsAcmCertificate) SetCertificateArn(v string) *ListenerTlsAcmCertificate { 7434 s.CertificateArn = &v 7435 return s 7436} 7437 7438// An object that represents a listener's Transport Layer Security (TLS) certificate. 7439type ListenerTlsCertificate struct { 7440 _ struct{} `type:"structure"` 7441 7442 // An object that represents an AWS Certicate Manager (ACM) certificate. 7443 Acm *ListenerTlsAcmCertificate `locationName:"acm" type:"structure"` 7444 7445 // An object that represents a local file certificate. The certificate must 7446 // meet specific requirements and you must have proxy authorization enabled. 7447 // For more information, see Transport Layer Security (TLS) (https://docs.aws.amazon.com/app-mesh/latest/userguide/tls.html#virtual-node-tls-prerequisites). 7448 File *ListenerTlsFileCertificate `locationName:"file" type:"structure"` 7449} 7450 7451// String returns the string representation 7452func (s ListenerTlsCertificate) String() string { 7453 return awsutil.Prettify(s) 7454} 7455 7456// GoString returns the string representation 7457func (s ListenerTlsCertificate) GoString() string { 7458 return s.String() 7459} 7460 7461// Validate inspects the fields of the type to determine if they are valid. 7462func (s *ListenerTlsCertificate) Validate() error { 7463 invalidParams := request.ErrInvalidParams{Context: "ListenerTlsCertificate"} 7464 if s.Acm != nil { 7465 if err := s.Acm.Validate(); err != nil { 7466 invalidParams.AddNested("Acm", err.(request.ErrInvalidParams)) 7467 } 7468 } 7469 if s.File != nil { 7470 if err := s.File.Validate(); err != nil { 7471 invalidParams.AddNested("File", err.(request.ErrInvalidParams)) 7472 } 7473 } 7474 7475 if invalidParams.Len() > 0 { 7476 return invalidParams 7477 } 7478 return nil 7479} 7480 7481// SetAcm sets the Acm field's value. 7482func (s *ListenerTlsCertificate) SetAcm(v *ListenerTlsAcmCertificate) *ListenerTlsCertificate { 7483 s.Acm = v 7484 return s 7485} 7486 7487// SetFile sets the File field's value. 7488func (s *ListenerTlsCertificate) SetFile(v *ListenerTlsFileCertificate) *ListenerTlsCertificate { 7489 s.File = v 7490 return s 7491} 7492 7493// An object that represents a local file certificate. The certificate must 7494// meet specific requirements and you must have proxy authorization enabled. 7495// For more information, see Transport Layer Security (TLS) (https://docs.aws.amazon.com/app-mesh/latest/userguide/tls.html#virtual-node-tls-prerequisites). 7496type ListenerTlsFileCertificate struct { 7497 _ struct{} `type:"structure"` 7498 7499 // CertificateChain is a required field 7500 CertificateChain *string `locationName:"certificateChain" min:"1" type:"string" required:"true"` 7501 7502 // PrivateKey is a required field 7503 PrivateKey *string `locationName:"privateKey" min:"1" type:"string" required:"true"` 7504} 7505 7506// String returns the string representation 7507func (s ListenerTlsFileCertificate) String() string { 7508 return awsutil.Prettify(s) 7509} 7510 7511// GoString returns the string representation 7512func (s ListenerTlsFileCertificate) GoString() string { 7513 return s.String() 7514} 7515 7516// Validate inspects the fields of the type to determine if they are valid. 7517func (s *ListenerTlsFileCertificate) Validate() error { 7518 invalidParams := request.ErrInvalidParams{Context: "ListenerTlsFileCertificate"} 7519 if s.CertificateChain == nil { 7520 invalidParams.Add(request.NewErrParamRequired("CertificateChain")) 7521 } 7522 if s.CertificateChain != nil && len(*s.CertificateChain) < 1 { 7523 invalidParams.Add(request.NewErrParamMinLen("CertificateChain", 1)) 7524 } 7525 if s.PrivateKey == nil { 7526 invalidParams.Add(request.NewErrParamRequired("PrivateKey")) 7527 } 7528 if s.PrivateKey != nil && len(*s.PrivateKey) < 1 { 7529 invalidParams.Add(request.NewErrParamMinLen("PrivateKey", 1)) 7530 } 7531 7532 if invalidParams.Len() > 0 { 7533 return invalidParams 7534 } 7535 return nil 7536} 7537 7538// SetCertificateChain sets the CertificateChain field's value. 7539func (s *ListenerTlsFileCertificate) SetCertificateChain(v string) *ListenerTlsFileCertificate { 7540 s.CertificateChain = &v 7541 return s 7542} 7543 7544// SetPrivateKey sets the PrivateKey field's value. 7545func (s *ListenerTlsFileCertificate) SetPrivateKey(v string) *ListenerTlsFileCertificate { 7546 s.PrivateKey = &v 7547 return s 7548} 7549 7550// An object that represents the logging information for a virtual node. 7551type Logging struct { 7552 _ struct{} `type:"structure"` 7553 7554 // An object that represents the access logging information for a virtual node. 7555 AccessLog *AccessLog `locationName:"accessLog" type:"structure"` 7556} 7557 7558// String returns the string representation 7559func (s Logging) String() string { 7560 return awsutil.Prettify(s) 7561} 7562 7563// GoString returns the string representation 7564func (s Logging) GoString() string { 7565 return s.String() 7566} 7567 7568// Validate inspects the fields of the type to determine if they are valid. 7569func (s *Logging) Validate() error { 7570 invalidParams := request.ErrInvalidParams{Context: "Logging"} 7571 if s.AccessLog != nil { 7572 if err := s.AccessLog.Validate(); err != nil { 7573 invalidParams.AddNested("AccessLog", err.(request.ErrInvalidParams)) 7574 } 7575 } 7576 7577 if invalidParams.Len() > 0 { 7578 return invalidParams 7579 } 7580 return nil 7581} 7582 7583// SetAccessLog sets the AccessLog field's value. 7584func (s *Logging) SetAccessLog(v *AccessLog) *Logging { 7585 s.AccessLog = v 7586 return s 7587} 7588 7589// An object that represents the range of values to match on. The first character 7590// of the range is included in the range, though the last character is not. 7591// For example, if the range specified were 1-100, only values 1-99 would be 7592// matched. 7593type MatchRange struct { 7594 _ struct{} `type:"structure"` 7595 7596 // End is a required field 7597 End *int64 `locationName:"end" type:"long" required:"true"` 7598 7599 // Start is a required field 7600 Start *int64 `locationName:"start" type:"long" required:"true"` 7601} 7602 7603// String returns the string representation 7604func (s MatchRange) String() string { 7605 return awsutil.Prettify(s) 7606} 7607 7608// GoString returns the string representation 7609func (s MatchRange) GoString() string { 7610 return s.String() 7611} 7612 7613// Validate inspects the fields of the type to determine if they are valid. 7614func (s *MatchRange) Validate() error { 7615 invalidParams := request.ErrInvalidParams{Context: "MatchRange"} 7616 if s.End == nil { 7617 invalidParams.Add(request.NewErrParamRequired("End")) 7618 } 7619 if s.Start == nil { 7620 invalidParams.Add(request.NewErrParamRequired("Start")) 7621 } 7622 7623 if invalidParams.Len() > 0 { 7624 return invalidParams 7625 } 7626 return nil 7627} 7628 7629// SetEnd sets the End field's value. 7630func (s *MatchRange) SetEnd(v int64) *MatchRange { 7631 s.End = &v 7632 return s 7633} 7634 7635// SetStart sets the Start field's value. 7636func (s *MatchRange) SetStart(v int64) *MatchRange { 7637 s.Start = &v 7638 return s 7639} 7640 7641// An object that represents a service mesh returned by a describe operation. 7642type MeshData struct { 7643 _ struct{} `type:"structure"` 7644 7645 // MeshName is a required field 7646 MeshName *string `locationName:"meshName" min:"1" type:"string" required:"true"` 7647 7648 // An object that represents metadata for a resource. 7649 // 7650 // Metadata is a required field 7651 Metadata *ResourceMetadata `locationName:"metadata" type:"structure" required:"true"` 7652 7653 // An object that represents the specification of a service mesh. 7654 // 7655 // Spec is a required field 7656 Spec *MeshSpec `locationName:"spec" type:"structure" required:"true"` 7657 7658 // An object that represents the status of a service mesh. 7659 // 7660 // Status is a required field 7661 Status *MeshStatus `locationName:"status" type:"structure" required:"true"` 7662} 7663 7664// String returns the string representation 7665func (s MeshData) String() string { 7666 return awsutil.Prettify(s) 7667} 7668 7669// GoString returns the string representation 7670func (s MeshData) GoString() string { 7671 return s.String() 7672} 7673 7674// SetMeshName sets the MeshName field's value. 7675func (s *MeshData) SetMeshName(v string) *MeshData { 7676 s.MeshName = &v 7677 return s 7678} 7679 7680// SetMetadata sets the Metadata field's value. 7681func (s *MeshData) SetMetadata(v *ResourceMetadata) *MeshData { 7682 s.Metadata = v 7683 return s 7684} 7685 7686// SetSpec sets the Spec field's value. 7687func (s *MeshData) SetSpec(v *MeshSpec) *MeshData { 7688 s.Spec = v 7689 return s 7690} 7691 7692// SetStatus sets the Status field's value. 7693func (s *MeshData) SetStatus(v *MeshStatus) *MeshData { 7694 s.Status = v 7695 return s 7696} 7697 7698// An object that represents a service mesh returned by a list operation. 7699type MeshRef struct { 7700 _ struct{} `type:"structure"` 7701 7702 // Arn is a required field 7703 Arn *string `locationName:"arn" type:"string" required:"true"` 7704 7705 // CreatedAt is a required field 7706 CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"` 7707 7708 // LastUpdatedAt is a required field 7709 LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp" required:"true"` 7710 7711 // MeshName is a required field 7712 MeshName *string `locationName:"meshName" min:"1" type:"string" required:"true"` 7713 7714 // MeshOwner is a required field 7715 MeshOwner *string `locationName:"meshOwner" min:"12" type:"string" required:"true"` 7716 7717 // ResourceOwner is a required field 7718 ResourceOwner *string `locationName:"resourceOwner" min:"12" type:"string" required:"true"` 7719 7720 // Version is a required field 7721 Version *int64 `locationName:"version" type:"long" required:"true"` 7722} 7723 7724// String returns the string representation 7725func (s MeshRef) String() string { 7726 return awsutil.Prettify(s) 7727} 7728 7729// GoString returns the string representation 7730func (s MeshRef) GoString() string { 7731 return s.String() 7732} 7733 7734// SetArn sets the Arn field's value. 7735func (s *MeshRef) SetArn(v string) *MeshRef { 7736 s.Arn = &v 7737 return s 7738} 7739 7740// SetCreatedAt sets the CreatedAt field's value. 7741func (s *MeshRef) SetCreatedAt(v time.Time) *MeshRef { 7742 s.CreatedAt = &v 7743 return s 7744} 7745 7746// SetLastUpdatedAt sets the LastUpdatedAt field's value. 7747func (s *MeshRef) SetLastUpdatedAt(v time.Time) *MeshRef { 7748 s.LastUpdatedAt = &v 7749 return s 7750} 7751 7752// SetMeshName sets the MeshName field's value. 7753func (s *MeshRef) SetMeshName(v string) *MeshRef { 7754 s.MeshName = &v 7755 return s 7756} 7757 7758// SetMeshOwner sets the MeshOwner field's value. 7759func (s *MeshRef) SetMeshOwner(v string) *MeshRef { 7760 s.MeshOwner = &v 7761 return s 7762} 7763 7764// SetResourceOwner sets the ResourceOwner field's value. 7765func (s *MeshRef) SetResourceOwner(v string) *MeshRef { 7766 s.ResourceOwner = &v 7767 return s 7768} 7769 7770// SetVersion sets the Version field's value. 7771func (s *MeshRef) SetVersion(v int64) *MeshRef { 7772 s.Version = &v 7773 return s 7774} 7775 7776// An object that represents the specification of a service mesh. 7777type MeshSpec struct { 7778 _ struct{} `type:"structure"` 7779 7780 // An object that represents the egress filter rules for a service mesh. 7781 EgressFilter *EgressFilter `locationName:"egressFilter" type:"structure"` 7782} 7783 7784// String returns the string representation 7785func (s MeshSpec) String() string { 7786 return awsutil.Prettify(s) 7787} 7788 7789// GoString returns the string representation 7790func (s MeshSpec) GoString() string { 7791 return s.String() 7792} 7793 7794// Validate inspects the fields of the type to determine if they are valid. 7795func (s *MeshSpec) Validate() error { 7796 invalidParams := request.ErrInvalidParams{Context: "MeshSpec"} 7797 if s.EgressFilter != nil { 7798 if err := s.EgressFilter.Validate(); err != nil { 7799 invalidParams.AddNested("EgressFilter", err.(request.ErrInvalidParams)) 7800 } 7801 } 7802 7803 if invalidParams.Len() > 0 { 7804 return invalidParams 7805 } 7806 return nil 7807} 7808 7809// SetEgressFilter sets the EgressFilter field's value. 7810func (s *MeshSpec) SetEgressFilter(v *EgressFilter) *MeshSpec { 7811 s.EgressFilter = v 7812 return s 7813} 7814 7815// An object that represents the status of a service mesh. 7816type MeshStatus struct { 7817 _ struct{} `type:"structure"` 7818 7819 Status *string `locationName:"status" type:"string" enum:"MeshStatusCode"` 7820} 7821 7822// String returns the string representation 7823func (s MeshStatus) String() string { 7824 return awsutil.Prettify(s) 7825} 7826 7827// GoString returns the string representation 7828func (s MeshStatus) GoString() string { 7829 return s.String() 7830} 7831 7832// SetStatus sets the Status field's value. 7833func (s *MeshStatus) SetStatus(v string) *MeshStatus { 7834 s.Status = &v 7835 return s 7836} 7837 7838// The specified resource doesn't exist. Check your request syntax and try again. 7839type NotFoundException struct { 7840 _ struct{} `type:"structure"` 7841 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 7842 7843 Message_ *string `locationName:"message" type:"string"` 7844} 7845 7846// String returns the string representation 7847func (s NotFoundException) String() string { 7848 return awsutil.Prettify(s) 7849} 7850 7851// GoString returns the string representation 7852func (s NotFoundException) GoString() string { 7853 return s.String() 7854} 7855 7856func newErrorNotFoundException(v protocol.ResponseMetadata) error { 7857 return &NotFoundException{ 7858 RespMetadata: v, 7859 } 7860} 7861 7862// Code returns the exception type name. 7863func (s *NotFoundException) Code() string { 7864 return "NotFoundException" 7865} 7866 7867// Message returns the exception's message. 7868func (s *NotFoundException) Message() string { 7869 if s.Message_ != nil { 7870 return *s.Message_ 7871 } 7872 return "" 7873} 7874 7875// OrigErr always returns nil, satisfies awserr.Error interface. 7876func (s *NotFoundException) OrigErr() error { 7877 return nil 7878} 7879 7880func (s *NotFoundException) Error() string { 7881 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 7882} 7883 7884// Status code returns the HTTP status code for the request's response error. 7885func (s *NotFoundException) StatusCode() int { 7886 return s.RespMetadata.StatusCode 7887} 7888 7889// RequestID returns the service's response RequestID for request. 7890func (s *NotFoundException) RequestID() string { 7891 return s.RespMetadata.RequestID 7892} 7893 7894// An object that represents a port mapping. 7895type PortMapping struct { 7896 _ struct{} `type:"structure"` 7897 7898 // Port is a required field 7899 Port *int64 `locationName:"port" min:"1" type:"integer" required:"true"` 7900 7901 // Protocol is a required field 7902 Protocol *string `locationName:"protocol" type:"string" required:"true" enum:"PortProtocol"` 7903} 7904 7905// String returns the string representation 7906func (s PortMapping) String() string { 7907 return awsutil.Prettify(s) 7908} 7909 7910// GoString returns the string representation 7911func (s PortMapping) GoString() string { 7912 return s.String() 7913} 7914 7915// Validate inspects the fields of the type to determine if they are valid. 7916func (s *PortMapping) Validate() error { 7917 invalidParams := request.ErrInvalidParams{Context: "PortMapping"} 7918 if s.Port == nil { 7919 invalidParams.Add(request.NewErrParamRequired("Port")) 7920 } 7921 if s.Port != nil && *s.Port < 1 { 7922 invalidParams.Add(request.NewErrParamMinValue("Port", 1)) 7923 } 7924 if s.Protocol == nil { 7925 invalidParams.Add(request.NewErrParamRequired("Protocol")) 7926 } 7927 7928 if invalidParams.Len() > 0 { 7929 return invalidParams 7930 } 7931 return nil 7932} 7933 7934// SetPort sets the Port field's value. 7935func (s *PortMapping) SetPort(v int64) *PortMapping { 7936 s.Port = &v 7937 return s 7938} 7939 7940// SetProtocol sets the Protocol field's value. 7941func (s *PortMapping) SetProtocol(v string) *PortMapping { 7942 s.Protocol = &v 7943 return s 7944} 7945 7946// You can't delete the specified resource because it's in use or required by 7947// another resource. 7948type ResourceInUseException struct { 7949 _ struct{} `type:"structure"` 7950 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 7951 7952 Message_ *string `locationName:"message" type:"string"` 7953} 7954 7955// String returns the string representation 7956func (s ResourceInUseException) String() string { 7957 return awsutil.Prettify(s) 7958} 7959 7960// GoString returns the string representation 7961func (s ResourceInUseException) GoString() string { 7962 return s.String() 7963} 7964 7965func newErrorResourceInUseException(v protocol.ResponseMetadata) error { 7966 return &ResourceInUseException{ 7967 RespMetadata: v, 7968 } 7969} 7970 7971// Code returns the exception type name. 7972func (s *ResourceInUseException) Code() string { 7973 return "ResourceInUseException" 7974} 7975 7976// Message returns the exception's message. 7977func (s *ResourceInUseException) Message() string { 7978 if s.Message_ != nil { 7979 return *s.Message_ 7980 } 7981 return "" 7982} 7983 7984// OrigErr always returns nil, satisfies awserr.Error interface. 7985func (s *ResourceInUseException) OrigErr() error { 7986 return nil 7987} 7988 7989func (s *ResourceInUseException) Error() string { 7990 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 7991} 7992 7993// Status code returns the HTTP status code for the request's response error. 7994func (s *ResourceInUseException) StatusCode() int { 7995 return s.RespMetadata.StatusCode 7996} 7997 7998// RequestID returns the service's response RequestID for request. 7999func (s *ResourceInUseException) RequestID() string { 8000 return s.RespMetadata.RequestID 8001} 8002 8003// An object that represents metadata for a resource. 8004type ResourceMetadata struct { 8005 _ struct{} `type:"structure"` 8006 8007 // Arn is a required field 8008 Arn *string `locationName:"arn" type:"string" required:"true"` 8009 8010 // CreatedAt is a required field 8011 CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"` 8012 8013 // LastUpdatedAt is a required field 8014 LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp" required:"true"` 8015 8016 // MeshOwner is a required field 8017 MeshOwner *string `locationName:"meshOwner" min:"12" type:"string" required:"true"` 8018 8019 // ResourceOwner is a required field 8020 ResourceOwner *string `locationName:"resourceOwner" min:"12" type:"string" required:"true"` 8021 8022 // Uid is a required field 8023 Uid *string `locationName:"uid" type:"string" required:"true"` 8024 8025 // Version is a required field 8026 Version *int64 `locationName:"version" type:"long" required:"true"` 8027} 8028 8029// String returns the string representation 8030func (s ResourceMetadata) String() string { 8031 return awsutil.Prettify(s) 8032} 8033 8034// GoString returns the string representation 8035func (s ResourceMetadata) GoString() string { 8036 return s.String() 8037} 8038 8039// SetArn sets the Arn field's value. 8040func (s *ResourceMetadata) SetArn(v string) *ResourceMetadata { 8041 s.Arn = &v 8042 return s 8043} 8044 8045// SetCreatedAt sets the CreatedAt field's value. 8046func (s *ResourceMetadata) SetCreatedAt(v time.Time) *ResourceMetadata { 8047 s.CreatedAt = &v 8048 return s 8049} 8050 8051// SetLastUpdatedAt sets the LastUpdatedAt field's value. 8052func (s *ResourceMetadata) SetLastUpdatedAt(v time.Time) *ResourceMetadata { 8053 s.LastUpdatedAt = &v 8054 return s 8055} 8056 8057// SetMeshOwner sets the MeshOwner field's value. 8058func (s *ResourceMetadata) SetMeshOwner(v string) *ResourceMetadata { 8059 s.MeshOwner = &v 8060 return s 8061} 8062 8063// SetResourceOwner sets the ResourceOwner field's value. 8064func (s *ResourceMetadata) SetResourceOwner(v string) *ResourceMetadata { 8065 s.ResourceOwner = &v 8066 return s 8067} 8068 8069// SetUid sets the Uid field's value. 8070func (s *ResourceMetadata) SetUid(v string) *ResourceMetadata { 8071 s.Uid = &v 8072 return s 8073} 8074 8075// SetVersion sets the Version field's value. 8076func (s *ResourceMetadata) SetVersion(v int64) *ResourceMetadata { 8077 s.Version = &v 8078 return s 8079} 8080 8081// An object that represents a route returned by a describe operation. 8082type RouteData struct { 8083 _ struct{} `type:"structure"` 8084 8085 // MeshName is a required field 8086 MeshName *string `locationName:"meshName" min:"1" type:"string" required:"true"` 8087 8088 // An object that represents metadata for a resource. 8089 // 8090 // Metadata is a required field 8091 Metadata *ResourceMetadata `locationName:"metadata" type:"structure" required:"true"` 8092 8093 // RouteName is a required field 8094 RouteName *string `locationName:"routeName" min:"1" type:"string" required:"true"` 8095 8096 // An object that represents a route specification. Specify one route type. 8097 // 8098 // Spec is a required field 8099 Spec *RouteSpec `locationName:"spec" type:"structure" required:"true"` 8100 8101 // An object that represents the current status of a route. 8102 // 8103 // Status is a required field 8104 Status *RouteStatus `locationName:"status" type:"structure" required:"true"` 8105 8106 // VirtualRouterName is a required field 8107 VirtualRouterName *string `locationName:"virtualRouterName" min:"1" type:"string" required:"true"` 8108} 8109 8110// String returns the string representation 8111func (s RouteData) String() string { 8112 return awsutil.Prettify(s) 8113} 8114 8115// GoString returns the string representation 8116func (s RouteData) GoString() string { 8117 return s.String() 8118} 8119 8120// SetMeshName sets the MeshName field's value. 8121func (s *RouteData) SetMeshName(v string) *RouteData { 8122 s.MeshName = &v 8123 return s 8124} 8125 8126// SetMetadata sets the Metadata field's value. 8127func (s *RouteData) SetMetadata(v *ResourceMetadata) *RouteData { 8128 s.Metadata = v 8129 return s 8130} 8131 8132// SetRouteName sets the RouteName field's value. 8133func (s *RouteData) SetRouteName(v string) *RouteData { 8134 s.RouteName = &v 8135 return s 8136} 8137 8138// SetSpec sets the Spec field's value. 8139func (s *RouteData) SetSpec(v *RouteSpec) *RouteData { 8140 s.Spec = v 8141 return s 8142} 8143 8144// SetStatus sets the Status field's value. 8145func (s *RouteData) SetStatus(v *RouteStatus) *RouteData { 8146 s.Status = v 8147 return s 8148} 8149 8150// SetVirtualRouterName sets the VirtualRouterName field's value. 8151func (s *RouteData) SetVirtualRouterName(v string) *RouteData { 8152 s.VirtualRouterName = &v 8153 return s 8154} 8155 8156// An object that represents a route returned by a list operation. 8157type RouteRef struct { 8158 _ struct{} `type:"structure"` 8159 8160 // Arn is a required field 8161 Arn *string `locationName:"arn" type:"string" required:"true"` 8162 8163 // CreatedAt is a required field 8164 CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"` 8165 8166 // LastUpdatedAt is a required field 8167 LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp" required:"true"` 8168 8169 // MeshName is a required field 8170 MeshName *string `locationName:"meshName" min:"1" type:"string" required:"true"` 8171 8172 // MeshOwner is a required field 8173 MeshOwner *string `locationName:"meshOwner" min:"12" type:"string" required:"true"` 8174 8175 // ResourceOwner is a required field 8176 ResourceOwner *string `locationName:"resourceOwner" min:"12" type:"string" required:"true"` 8177 8178 // RouteName is a required field 8179 RouteName *string `locationName:"routeName" min:"1" type:"string" required:"true"` 8180 8181 // Version is a required field 8182 Version *int64 `locationName:"version" type:"long" required:"true"` 8183 8184 // VirtualRouterName is a required field 8185 VirtualRouterName *string `locationName:"virtualRouterName" min:"1" type:"string" required:"true"` 8186} 8187 8188// String returns the string representation 8189func (s RouteRef) String() string { 8190 return awsutil.Prettify(s) 8191} 8192 8193// GoString returns the string representation 8194func (s RouteRef) GoString() string { 8195 return s.String() 8196} 8197 8198// SetArn sets the Arn field's value. 8199func (s *RouteRef) SetArn(v string) *RouteRef { 8200 s.Arn = &v 8201 return s 8202} 8203 8204// SetCreatedAt sets the CreatedAt field's value. 8205func (s *RouteRef) SetCreatedAt(v time.Time) *RouteRef { 8206 s.CreatedAt = &v 8207 return s 8208} 8209 8210// SetLastUpdatedAt sets the LastUpdatedAt field's value. 8211func (s *RouteRef) SetLastUpdatedAt(v time.Time) *RouteRef { 8212 s.LastUpdatedAt = &v 8213 return s 8214} 8215 8216// SetMeshName sets the MeshName field's value. 8217func (s *RouteRef) SetMeshName(v string) *RouteRef { 8218 s.MeshName = &v 8219 return s 8220} 8221 8222// SetMeshOwner sets the MeshOwner field's value. 8223func (s *RouteRef) SetMeshOwner(v string) *RouteRef { 8224 s.MeshOwner = &v 8225 return s 8226} 8227 8228// SetResourceOwner sets the ResourceOwner field's value. 8229func (s *RouteRef) SetResourceOwner(v string) *RouteRef { 8230 s.ResourceOwner = &v 8231 return s 8232} 8233 8234// SetRouteName sets the RouteName field's value. 8235func (s *RouteRef) SetRouteName(v string) *RouteRef { 8236 s.RouteName = &v 8237 return s 8238} 8239 8240// SetVersion sets the Version field's value. 8241func (s *RouteRef) SetVersion(v int64) *RouteRef { 8242 s.Version = &v 8243 return s 8244} 8245 8246// SetVirtualRouterName sets the VirtualRouterName field's value. 8247func (s *RouteRef) SetVirtualRouterName(v string) *RouteRef { 8248 s.VirtualRouterName = &v 8249 return s 8250} 8251 8252// An object that represents a route specification. Specify one route type. 8253type RouteSpec struct { 8254 _ struct{} `type:"structure"` 8255 8256 // An object that represents a gRPC route type. 8257 GrpcRoute *GrpcRoute `locationName:"grpcRoute" type:"structure"` 8258 8259 // An object that represents an HTTP or HTTP/2 route type. 8260 Http2Route *HttpRoute `locationName:"http2Route" type:"structure"` 8261 8262 // An object that represents an HTTP or HTTP/2 route type. 8263 HttpRoute *HttpRoute `locationName:"httpRoute" type:"structure"` 8264 8265 Priority *int64 `locationName:"priority" type:"integer"` 8266 8267 // An object that represents a TCP route type. 8268 TcpRoute *TcpRoute `locationName:"tcpRoute" type:"structure"` 8269} 8270 8271// String returns the string representation 8272func (s RouteSpec) String() string { 8273 return awsutil.Prettify(s) 8274} 8275 8276// GoString returns the string representation 8277func (s RouteSpec) GoString() string { 8278 return s.String() 8279} 8280 8281// Validate inspects the fields of the type to determine if they are valid. 8282func (s *RouteSpec) Validate() error { 8283 invalidParams := request.ErrInvalidParams{Context: "RouteSpec"} 8284 if s.GrpcRoute != nil { 8285 if err := s.GrpcRoute.Validate(); err != nil { 8286 invalidParams.AddNested("GrpcRoute", err.(request.ErrInvalidParams)) 8287 } 8288 } 8289 if s.Http2Route != nil { 8290 if err := s.Http2Route.Validate(); err != nil { 8291 invalidParams.AddNested("Http2Route", err.(request.ErrInvalidParams)) 8292 } 8293 } 8294 if s.HttpRoute != nil { 8295 if err := s.HttpRoute.Validate(); err != nil { 8296 invalidParams.AddNested("HttpRoute", err.(request.ErrInvalidParams)) 8297 } 8298 } 8299 if s.TcpRoute != nil { 8300 if err := s.TcpRoute.Validate(); err != nil { 8301 invalidParams.AddNested("TcpRoute", err.(request.ErrInvalidParams)) 8302 } 8303 } 8304 8305 if invalidParams.Len() > 0 { 8306 return invalidParams 8307 } 8308 return nil 8309} 8310 8311// SetGrpcRoute sets the GrpcRoute field's value. 8312func (s *RouteSpec) SetGrpcRoute(v *GrpcRoute) *RouteSpec { 8313 s.GrpcRoute = v 8314 return s 8315} 8316 8317// SetHttp2Route sets the Http2Route field's value. 8318func (s *RouteSpec) SetHttp2Route(v *HttpRoute) *RouteSpec { 8319 s.Http2Route = v 8320 return s 8321} 8322 8323// SetHttpRoute sets the HttpRoute field's value. 8324func (s *RouteSpec) SetHttpRoute(v *HttpRoute) *RouteSpec { 8325 s.HttpRoute = v 8326 return s 8327} 8328 8329// SetPriority sets the Priority field's value. 8330func (s *RouteSpec) SetPriority(v int64) *RouteSpec { 8331 s.Priority = &v 8332 return s 8333} 8334 8335// SetTcpRoute sets the TcpRoute field's value. 8336func (s *RouteSpec) SetTcpRoute(v *TcpRoute) *RouteSpec { 8337 s.TcpRoute = v 8338 return s 8339} 8340 8341// An object that represents the current status of a route. 8342type RouteStatus struct { 8343 _ struct{} `type:"structure"` 8344 8345 // Status is a required field 8346 Status *string `locationName:"status" type:"string" required:"true" enum:"RouteStatusCode"` 8347} 8348 8349// String returns the string representation 8350func (s RouteStatus) String() string { 8351 return awsutil.Prettify(s) 8352} 8353 8354// GoString returns the string representation 8355func (s RouteStatus) GoString() string { 8356 return s.String() 8357} 8358 8359// SetStatus sets the Status field's value. 8360func (s *RouteStatus) SetStatus(v string) *RouteStatus { 8361 s.Status = &v 8362 return s 8363} 8364 8365// An object that represents the service discovery information for a virtual 8366// node. 8367type ServiceDiscovery struct { 8368 _ struct{} `type:"structure"` 8369 8370 // An object that represents the AWS Cloud Map service discovery information 8371 // for your virtual node. 8372 AwsCloudMap *AwsCloudMapServiceDiscovery `locationName:"awsCloudMap" type:"structure"` 8373 8374 // An object that represents the DNS service discovery information for your 8375 // virtual node. 8376 Dns *DnsServiceDiscovery `locationName:"dns" type:"structure"` 8377} 8378 8379// String returns the string representation 8380func (s ServiceDiscovery) String() string { 8381 return awsutil.Prettify(s) 8382} 8383 8384// GoString returns the string representation 8385func (s ServiceDiscovery) GoString() string { 8386 return s.String() 8387} 8388 8389// Validate inspects the fields of the type to determine if they are valid. 8390func (s *ServiceDiscovery) Validate() error { 8391 invalidParams := request.ErrInvalidParams{Context: "ServiceDiscovery"} 8392 if s.AwsCloudMap != nil { 8393 if err := s.AwsCloudMap.Validate(); err != nil { 8394 invalidParams.AddNested("AwsCloudMap", err.(request.ErrInvalidParams)) 8395 } 8396 } 8397 if s.Dns != nil { 8398 if err := s.Dns.Validate(); err != nil { 8399 invalidParams.AddNested("Dns", err.(request.ErrInvalidParams)) 8400 } 8401 } 8402 8403 if invalidParams.Len() > 0 { 8404 return invalidParams 8405 } 8406 return nil 8407} 8408 8409// SetAwsCloudMap sets the AwsCloudMap field's value. 8410func (s *ServiceDiscovery) SetAwsCloudMap(v *AwsCloudMapServiceDiscovery) *ServiceDiscovery { 8411 s.AwsCloudMap = v 8412 return s 8413} 8414 8415// SetDns sets the Dns field's value. 8416func (s *ServiceDiscovery) SetDns(v *DnsServiceDiscovery) *ServiceDiscovery { 8417 s.Dns = v 8418 return s 8419} 8420 8421// The request has failed due to a temporary failure of the service. 8422type ServiceUnavailableException struct { 8423 _ struct{} `type:"structure"` 8424 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 8425 8426 Message_ *string `locationName:"message" type:"string"` 8427} 8428 8429// String returns the string representation 8430func (s ServiceUnavailableException) String() string { 8431 return awsutil.Prettify(s) 8432} 8433 8434// GoString returns the string representation 8435func (s ServiceUnavailableException) GoString() string { 8436 return s.String() 8437} 8438 8439func newErrorServiceUnavailableException(v protocol.ResponseMetadata) error { 8440 return &ServiceUnavailableException{ 8441 RespMetadata: v, 8442 } 8443} 8444 8445// Code returns the exception type name. 8446func (s *ServiceUnavailableException) Code() string { 8447 return "ServiceUnavailableException" 8448} 8449 8450// Message returns the exception's message. 8451func (s *ServiceUnavailableException) Message() string { 8452 if s.Message_ != nil { 8453 return *s.Message_ 8454 } 8455 return "" 8456} 8457 8458// OrigErr always returns nil, satisfies awserr.Error interface. 8459func (s *ServiceUnavailableException) OrigErr() error { 8460 return nil 8461} 8462 8463func (s *ServiceUnavailableException) Error() string { 8464 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 8465} 8466 8467// Status code returns the HTTP status code for the request's response error. 8468func (s *ServiceUnavailableException) StatusCode() int { 8469 return s.RespMetadata.StatusCode 8470} 8471 8472// RequestID returns the service's response RequestID for request. 8473func (s *ServiceUnavailableException) RequestID() string { 8474 return s.RespMetadata.RequestID 8475} 8476 8477// Optional metadata that you apply to a resource to assist with categorization 8478// and organization. Each tag consists of a key and an optional value, both 8479// of which you define. Tag keys can have a maximum character length of 128 8480// characters, and tag values can have a maximum length of 256 characters. 8481type TagRef struct { 8482 _ struct{} `type:"structure"` 8483 8484 // Key is a required field 8485 Key *string `locationName:"key" min:"1" type:"string" required:"true"` 8486 8487 Value *string `locationName:"value" type:"string"` 8488} 8489 8490// String returns the string representation 8491func (s TagRef) String() string { 8492 return awsutil.Prettify(s) 8493} 8494 8495// GoString returns the string representation 8496func (s TagRef) GoString() string { 8497 return s.String() 8498} 8499 8500// Validate inspects the fields of the type to determine if they are valid. 8501func (s *TagRef) Validate() error { 8502 invalidParams := request.ErrInvalidParams{Context: "TagRef"} 8503 if s.Key == nil { 8504 invalidParams.Add(request.NewErrParamRequired("Key")) 8505 } 8506 if s.Key != nil && len(*s.Key) < 1 { 8507 invalidParams.Add(request.NewErrParamMinLen("Key", 1)) 8508 } 8509 8510 if invalidParams.Len() > 0 { 8511 return invalidParams 8512 } 8513 return nil 8514} 8515 8516// SetKey sets the Key field's value. 8517func (s *TagRef) SetKey(v string) *TagRef { 8518 s.Key = &v 8519 return s 8520} 8521 8522// SetValue sets the Value field's value. 8523func (s *TagRef) SetValue(v string) *TagRef { 8524 s.Value = &v 8525 return s 8526} 8527 8528type TagResourceInput struct { 8529 _ struct{} `type:"structure"` 8530 8531 // ResourceArn is a required field 8532 ResourceArn *string `location:"querystring" locationName:"resourceArn" type:"string" required:"true"` 8533 8534 // Tags is a required field 8535 Tags []*TagRef `locationName:"tags" type:"list" required:"true"` 8536} 8537 8538// String returns the string representation 8539func (s TagResourceInput) String() string { 8540 return awsutil.Prettify(s) 8541} 8542 8543// GoString returns the string representation 8544func (s TagResourceInput) GoString() string { 8545 return s.String() 8546} 8547 8548// Validate inspects the fields of the type to determine if they are valid. 8549func (s *TagResourceInput) Validate() error { 8550 invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"} 8551 if s.ResourceArn == nil { 8552 invalidParams.Add(request.NewErrParamRequired("ResourceArn")) 8553 } 8554 if s.Tags == nil { 8555 invalidParams.Add(request.NewErrParamRequired("Tags")) 8556 } 8557 if s.Tags != nil { 8558 for i, v := range s.Tags { 8559 if v == nil { 8560 continue 8561 } 8562 if err := v.Validate(); err != nil { 8563 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) 8564 } 8565 } 8566 } 8567 8568 if invalidParams.Len() > 0 { 8569 return invalidParams 8570 } 8571 return nil 8572} 8573 8574// SetResourceArn sets the ResourceArn field's value. 8575func (s *TagResourceInput) SetResourceArn(v string) *TagResourceInput { 8576 s.ResourceArn = &v 8577 return s 8578} 8579 8580// SetTags sets the Tags field's value. 8581func (s *TagResourceInput) SetTags(v []*TagRef) *TagResourceInput { 8582 s.Tags = v 8583 return s 8584} 8585 8586type TagResourceOutput struct { 8587 _ struct{} `type:"structure"` 8588} 8589 8590// String returns the string representation 8591func (s TagResourceOutput) String() string { 8592 return awsutil.Prettify(s) 8593} 8594 8595// GoString returns the string representation 8596func (s TagResourceOutput) GoString() string { 8597 return s.String() 8598} 8599 8600// An object that represents a TCP route type. 8601type TcpRoute struct { 8602 _ struct{} `type:"structure"` 8603 8604 // An object that represents the action to take if a match is determined. 8605 // 8606 // Action is a required field 8607 Action *TcpRouteAction `locationName:"action" type:"structure" required:"true"` 8608 8609 Timeout *TcpTimeout `locationName:"timeout" type:"structure"` 8610} 8611 8612// String returns the string representation 8613func (s TcpRoute) String() string { 8614 return awsutil.Prettify(s) 8615} 8616 8617// GoString returns the string representation 8618func (s TcpRoute) GoString() string { 8619 return s.String() 8620} 8621 8622// Validate inspects the fields of the type to determine if they are valid. 8623func (s *TcpRoute) Validate() error { 8624 invalidParams := request.ErrInvalidParams{Context: "TcpRoute"} 8625 if s.Action == nil { 8626 invalidParams.Add(request.NewErrParamRequired("Action")) 8627 } 8628 if s.Action != nil { 8629 if err := s.Action.Validate(); err != nil { 8630 invalidParams.AddNested("Action", err.(request.ErrInvalidParams)) 8631 } 8632 } 8633 8634 if invalidParams.Len() > 0 { 8635 return invalidParams 8636 } 8637 return nil 8638} 8639 8640// SetAction sets the Action field's value. 8641func (s *TcpRoute) SetAction(v *TcpRouteAction) *TcpRoute { 8642 s.Action = v 8643 return s 8644} 8645 8646// SetTimeout sets the Timeout field's value. 8647func (s *TcpRoute) SetTimeout(v *TcpTimeout) *TcpRoute { 8648 s.Timeout = v 8649 return s 8650} 8651 8652// An object that represents the action to take if a match is determined. 8653type TcpRouteAction struct { 8654 _ struct{} `type:"structure"` 8655 8656 // WeightedTargets is a required field 8657 WeightedTargets []*WeightedTarget `locationName:"weightedTargets" min:"1" type:"list" required:"true"` 8658} 8659 8660// String returns the string representation 8661func (s TcpRouteAction) String() string { 8662 return awsutil.Prettify(s) 8663} 8664 8665// GoString returns the string representation 8666func (s TcpRouteAction) GoString() string { 8667 return s.String() 8668} 8669 8670// Validate inspects the fields of the type to determine if they are valid. 8671func (s *TcpRouteAction) Validate() error { 8672 invalidParams := request.ErrInvalidParams{Context: "TcpRouteAction"} 8673 if s.WeightedTargets == nil { 8674 invalidParams.Add(request.NewErrParamRequired("WeightedTargets")) 8675 } 8676 if s.WeightedTargets != nil && len(s.WeightedTargets) < 1 { 8677 invalidParams.Add(request.NewErrParamMinLen("WeightedTargets", 1)) 8678 } 8679 if s.WeightedTargets != nil { 8680 for i, v := range s.WeightedTargets { 8681 if v == nil { 8682 continue 8683 } 8684 if err := v.Validate(); err != nil { 8685 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "WeightedTargets", i), err.(request.ErrInvalidParams)) 8686 } 8687 } 8688 } 8689 8690 if invalidParams.Len() > 0 { 8691 return invalidParams 8692 } 8693 return nil 8694} 8695 8696// SetWeightedTargets sets the WeightedTargets field's value. 8697func (s *TcpRouteAction) SetWeightedTargets(v []*WeightedTarget) *TcpRouteAction { 8698 s.WeightedTargets = v 8699 return s 8700} 8701 8702type TcpTimeout struct { 8703 _ struct{} `type:"structure"` 8704 8705 // An object that represents a duration of time. 8706 Idle *Duration `locationName:"idle" type:"structure"` 8707} 8708 8709// String returns the string representation 8710func (s TcpTimeout) String() string { 8711 return awsutil.Prettify(s) 8712} 8713 8714// GoString returns the string representation 8715func (s TcpTimeout) GoString() string { 8716 return s.String() 8717} 8718 8719// SetIdle sets the Idle field's value. 8720func (s *TcpTimeout) SetIdle(v *Duration) *TcpTimeout { 8721 s.Idle = v 8722 return s 8723} 8724 8725// An object that represents a Transport Layer Security (TLS) validation context. 8726type TlsValidationContext struct { 8727 _ struct{} `type:"structure"` 8728 8729 // An object that represents a Transport Layer Security (TLS) validation context 8730 // trust. 8731 // 8732 // Trust is a required field 8733 Trust *TlsValidationContextTrust `locationName:"trust" type:"structure" required:"true"` 8734} 8735 8736// String returns the string representation 8737func (s TlsValidationContext) String() string { 8738 return awsutil.Prettify(s) 8739} 8740 8741// GoString returns the string representation 8742func (s TlsValidationContext) GoString() string { 8743 return s.String() 8744} 8745 8746// Validate inspects the fields of the type to determine if they are valid. 8747func (s *TlsValidationContext) Validate() error { 8748 invalidParams := request.ErrInvalidParams{Context: "TlsValidationContext"} 8749 if s.Trust == nil { 8750 invalidParams.Add(request.NewErrParamRequired("Trust")) 8751 } 8752 if s.Trust != nil { 8753 if err := s.Trust.Validate(); err != nil { 8754 invalidParams.AddNested("Trust", err.(request.ErrInvalidParams)) 8755 } 8756 } 8757 8758 if invalidParams.Len() > 0 { 8759 return invalidParams 8760 } 8761 return nil 8762} 8763 8764// SetTrust sets the Trust field's value. 8765func (s *TlsValidationContext) SetTrust(v *TlsValidationContextTrust) *TlsValidationContext { 8766 s.Trust = v 8767 return s 8768} 8769 8770// An object that represents a TLS validation context trust for an AWS Certicate 8771// Manager (ACM) certificate. 8772type TlsValidationContextAcmTrust struct { 8773 _ struct{} `type:"structure"` 8774 8775 // CertificateAuthorityArns is a required field 8776 CertificateAuthorityArns []*string `locationName:"certificateAuthorityArns" min:"1" type:"list" required:"true"` 8777} 8778 8779// String returns the string representation 8780func (s TlsValidationContextAcmTrust) String() string { 8781 return awsutil.Prettify(s) 8782} 8783 8784// GoString returns the string representation 8785func (s TlsValidationContextAcmTrust) GoString() string { 8786 return s.String() 8787} 8788 8789// Validate inspects the fields of the type to determine if they are valid. 8790func (s *TlsValidationContextAcmTrust) Validate() error { 8791 invalidParams := request.ErrInvalidParams{Context: "TlsValidationContextAcmTrust"} 8792 if s.CertificateAuthorityArns == nil { 8793 invalidParams.Add(request.NewErrParamRequired("CertificateAuthorityArns")) 8794 } 8795 if s.CertificateAuthorityArns != nil && len(s.CertificateAuthorityArns) < 1 { 8796 invalidParams.Add(request.NewErrParamMinLen("CertificateAuthorityArns", 1)) 8797 } 8798 8799 if invalidParams.Len() > 0 { 8800 return invalidParams 8801 } 8802 return nil 8803} 8804 8805// SetCertificateAuthorityArns sets the CertificateAuthorityArns field's value. 8806func (s *TlsValidationContextAcmTrust) SetCertificateAuthorityArns(v []*string) *TlsValidationContextAcmTrust { 8807 s.CertificateAuthorityArns = v 8808 return s 8809} 8810 8811// An object that represents a Transport Layer Security (TLS) validation context 8812// trust for a local file. 8813type TlsValidationContextFileTrust struct { 8814 _ struct{} `type:"structure"` 8815 8816 // CertificateChain is a required field 8817 CertificateChain *string `locationName:"certificateChain" min:"1" type:"string" required:"true"` 8818} 8819 8820// String returns the string representation 8821func (s TlsValidationContextFileTrust) String() string { 8822 return awsutil.Prettify(s) 8823} 8824 8825// GoString returns the string representation 8826func (s TlsValidationContextFileTrust) GoString() string { 8827 return s.String() 8828} 8829 8830// Validate inspects the fields of the type to determine if they are valid. 8831func (s *TlsValidationContextFileTrust) Validate() error { 8832 invalidParams := request.ErrInvalidParams{Context: "TlsValidationContextFileTrust"} 8833 if s.CertificateChain == nil { 8834 invalidParams.Add(request.NewErrParamRequired("CertificateChain")) 8835 } 8836 if s.CertificateChain != nil && len(*s.CertificateChain) < 1 { 8837 invalidParams.Add(request.NewErrParamMinLen("CertificateChain", 1)) 8838 } 8839 8840 if invalidParams.Len() > 0 { 8841 return invalidParams 8842 } 8843 return nil 8844} 8845 8846// SetCertificateChain sets the CertificateChain field's value. 8847func (s *TlsValidationContextFileTrust) SetCertificateChain(v string) *TlsValidationContextFileTrust { 8848 s.CertificateChain = &v 8849 return s 8850} 8851 8852// An object that represents a Transport Layer Security (TLS) validation context 8853// trust. 8854type TlsValidationContextTrust struct { 8855 _ struct{} `type:"structure"` 8856 8857 // An object that represents a TLS validation context trust for an AWS Certicate 8858 // Manager (ACM) certificate. 8859 Acm *TlsValidationContextAcmTrust `locationName:"acm" type:"structure"` 8860 8861 // An object that represents a Transport Layer Security (TLS) validation context 8862 // trust for a local file. 8863 File *TlsValidationContextFileTrust `locationName:"file" type:"structure"` 8864} 8865 8866// String returns the string representation 8867func (s TlsValidationContextTrust) String() string { 8868 return awsutil.Prettify(s) 8869} 8870 8871// GoString returns the string representation 8872func (s TlsValidationContextTrust) GoString() string { 8873 return s.String() 8874} 8875 8876// Validate inspects the fields of the type to determine if they are valid. 8877func (s *TlsValidationContextTrust) Validate() error { 8878 invalidParams := request.ErrInvalidParams{Context: "TlsValidationContextTrust"} 8879 if s.Acm != nil { 8880 if err := s.Acm.Validate(); err != nil { 8881 invalidParams.AddNested("Acm", err.(request.ErrInvalidParams)) 8882 } 8883 } 8884 if s.File != nil { 8885 if err := s.File.Validate(); err != nil { 8886 invalidParams.AddNested("File", err.(request.ErrInvalidParams)) 8887 } 8888 } 8889 8890 if invalidParams.Len() > 0 { 8891 return invalidParams 8892 } 8893 return nil 8894} 8895 8896// SetAcm sets the Acm field's value. 8897func (s *TlsValidationContextTrust) SetAcm(v *TlsValidationContextAcmTrust) *TlsValidationContextTrust { 8898 s.Acm = v 8899 return s 8900} 8901 8902// SetFile sets the File field's value. 8903func (s *TlsValidationContextTrust) SetFile(v *TlsValidationContextFileTrust) *TlsValidationContextTrust { 8904 s.File = v 8905 return s 8906} 8907 8908// The maximum request rate permitted by the App Mesh APIs has been exceeded 8909// for your account. For best results, use an increasing or variable sleep interval 8910// between requests. 8911type TooManyRequestsException struct { 8912 _ struct{} `type:"structure"` 8913 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 8914 8915 Message_ *string `locationName:"message" type:"string"` 8916} 8917 8918// String returns the string representation 8919func (s TooManyRequestsException) String() string { 8920 return awsutil.Prettify(s) 8921} 8922 8923// GoString returns the string representation 8924func (s TooManyRequestsException) GoString() string { 8925 return s.String() 8926} 8927 8928func newErrorTooManyRequestsException(v protocol.ResponseMetadata) error { 8929 return &TooManyRequestsException{ 8930 RespMetadata: v, 8931 } 8932} 8933 8934// Code returns the exception type name. 8935func (s *TooManyRequestsException) Code() string { 8936 return "TooManyRequestsException" 8937} 8938 8939// Message returns the exception's message. 8940func (s *TooManyRequestsException) Message() string { 8941 if s.Message_ != nil { 8942 return *s.Message_ 8943 } 8944 return "" 8945} 8946 8947// OrigErr always returns nil, satisfies awserr.Error interface. 8948func (s *TooManyRequestsException) OrigErr() error { 8949 return nil 8950} 8951 8952func (s *TooManyRequestsException) Error() string { 8953 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 8954} 8955 8956// Status code returns the HTTP status code for the request's response error. 8957func (s *TooManyRequestsException) StatusCode() int { 8958 return s.RespMetadata.StatusCode 8959} 8960 8961// RequestID returns the service's response RequestID for request. 8962func (s *TooManyRequestsException) RequestID() string { 8963 return s.RespMetadata.RequestID 8964} 8965 8966// The request exceeds the maximum allowed number of tags allowed per resource. 8967// The current limit is 50 user tags per resource. You must reduce the number 8968// of tags in the request. None of the tags in this request were applied. 8969type TooManyTagsException struct { 8970 _ struct{} `type:"structure"` 8971 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 8972 8973 Message_ *string `locationName:"message" type:"string"` 8974} 8975 8976// String returns the string representation 8977func (s TooManyTagsException) String() string { 8978 return awsutil.Prettify(s) 8979} 8980 8981// GoString returns the string representation 8982func (s TooManyTagsException) GoString() string { 8983 return s.String() 8984} 8985 8986func newErrorTooManyTagsException(v protocol.ResponseMetadata) error { 8987 return &TooManyTagsException{ 8988 RespMetadata: v, 8989 } 8990} 8991 8992// Code returns the exception type name. 8993func (s *TooManyTagsException) Code() string { 8994 return "TooManyTagsException" 8995} 8996 8997// Message returns the exception's message. 8998func (s *TooManyTagsException) Message() string { 8999 if s.Message_ != nil { 9000 return *s.Message_ 9001 } 9002 return "" 9003} 9004 9005// OrigErr always returns nil, satisfies awserr.Error interface. 9006func (s *TooManyTagsException) OrigErr() error { 9007 return nil 9008} 9009 9010func (s *TooManyTagsException) Error() string { 9011 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 9012} 9013 9014// Status code returns the HTTP status code for the request's response error. 9015func (s *TooManyTagsException) StatusCode() int { 9016 return s.RespMetadata.StatusCode 9017} 9018 9019// RequestID returns the service's response RequestID for request. 9020func (s *TooManyTagsException) RequestID() string { 9021 return s.RespMetadata.RequestID 9022} 9023 9024type UntagResourceInput struct { 9025 _ struct{} `type:"structure"` 9026 9027 // ResourceArn is a required field 9028 ResourceArn *string `location:"querystring" locationName:"resourceArn" type:"string" required:"true"` 9029 9030 // TagKeys is a required field 9031 TagKeys []*string `locationName:"tagKeys" type:"list" required:"true"` 9032} 9033 9034// String returns the string representation 9035func (s UntagResourceInput) String() string { 9036 return awsutil.Prettify(s) 9037} 9038 9039// GoString returns the string representation 9040func (s UntagResourceInput) GoString() string { 9041 return s.String() 9042} 9043 9044// Validate inspects the fields of the type to determine if they are valid. 9045func (s *UntagResourceInput) Validate() error { 9046 invalidParams := request.ErrInvalidParams{Context: "UntagResourceInput"} 9047 if s.ResourceArn == nil { 9048 invalidParams.Add(request.NewErrParamRequired("ResourceArn")) 9049 } 9050 if s.TagKeys == nil { 9051 invalidParams.Add(request.NewErrParamRequired("TagKeys")) 9052 } 9053 9054 if invalidParams.Len() > 0 { 9055 return invalidParams 9056 } 9057 return nil 9058} 9059 9060// SetResourceArn sets the ResourceArn field's value. 9061func (s *UntagResourceInput) SetResourceArn(v string) *UntagResourceInput { 9062 s.ResourceArn = &v 9063 return s 9064} 9065 9066// SetTagKeys sets the TagKeys field's value. 9067func (s *UntagResourceInput) SetTagKeys(v []*string) *UntagResourceInput { 9068 s.TagKeys = v 9069 return s 9070} 9071 9072type UntagResourceOutput struct { 9073 _ struct{} `type:"structure"` 9074} 9075 9076// String returns the string representation 9077func (s UntagResourceOutput) String() string { 9078 return awsutil.Prettify(s) 9079} 9080 9081// GoString returns the string representation 9082func (s UntagResourceOutput) GoString() string { 9083 return s.String() 9084} 9085 9086type UpdateMeshInput struct { 9087 _ struct{} `type:"structure"` 9088 9089 ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"` 9090 9091 // MeshName is a required field 9092 MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` 9093 9094 // An object that represents the specification of a service mesh. 9095 Spec *MeshSpec `locationName:"spec" type:"structure"` 9096} 9097 9098// String returns the string representation 9099func (s UpdateMeshInput) String() string { 9100 return awsutil.Prettify(s) 9101} 9102 9103// GoString returns the string representation 9104func (s UpdateMeshInput) GoString() string { 9105 return s.String() 9106} 9107 9108// Validate inspects the fields of the type to determine if they are valid. 9109func (s *UpdateMeshInput) Validate() error { 9110 invalidParams := request.ErrInvalidParams{Context: "UpdateMeshInput"} 9111 if s.MeshName == nil { 9112 invalidParams.Add(request.NewErrParamRequired("MeshName")) 9113 } 9114 if s.MeshName != nil && len(*s.MeshName) < 1 { 9115 invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) 9116 } 9117 if s.Spec != nil { 9118 if err := s.Spec.Validate(); err != nil { 9119 invalidParams.AddNested("Spec", err.(request.ErrInvalidParams)) 9120 } 9121 } 9122 9123 if invalidParams.Len() > 0 { 9124 return invalidParams 9125 } 9126 return nil 9127} 9128 9129// SetClientToken sets the ClientToken field's value. 9130func (s *UpdateMeshInput) SetClientToken(v string) *UpdateMeshInput { 9131 s.ClientToken = &v 9132 return s 9133} 9134 9135// SetMeshName sets the MeshName field's value. 9136func (s *UpdateMeshInput) SetMeshName(v string) *UpdateMeshInput { 9137 s.MeshName = &v 9138 return s 9139} 9140 9141// SetSpec sets the Spec field's value. 9142func (s *UpdateMeshInput) SetSpec(v *MeshSpec) *UpdateMeshInput { 9143 s.Spec = v 9144 return s 9145} 9146 9147type UpdateMeshOutput struct { 9148 _ struct{} `type:"structure" payload:"Mesh"` 9149 9150 // An object that represents a service mesh returned by a describe operation. 9151 // 9152 // Mesh is a required field 9153 Mesh *MeshData `locationName:"mesh" type:"structure" required:"true"` 9154} 9155 9156// String returns the string representation 9157func (s UpdateMeshOutput) String() string { 9158 return awsutil.Prettify(s) 9159} 9160 9161// GoString returns the string representation 9162func (s UpdateMeshOutput) GoString() string { 9163 return s.String() 9164} 9165 9166// SetMesh sets the Mesh field's value. 9167func (s *UpdateMeshOutput) SetMesh(v *MeshData) *UpdateMeshOutput { 9168 s.Mesh = v 9169 return s 9170} 9171 9172type UpdateRouteInput struct { 9173 _ struct{} `type:"structure"` 9174 9175 ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"` 9176 9177 // MeshName is a required field 9178 MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` 9179 9180 MeshOwner *string `location:"querystring" locationName:"meshOwner" min:"12" type:"string"` 9181 9182 // RouteName is a required field 9183 RouteName *string `location:"uri" locationName:"routeName" min:"1" type:"string" required:"true"` 9184 9185 // An object that represents a route specification. Specify one route type. 9186 // 9187 // Spec is a required field 9188 Spec *RouteSpec `locationName:"spec" type:"structure" required:"true"` 9189 9190 // VirtualRouterName is a required field 9191 VirtualRouterName *string `location:"uri" locationName:"virtualRouterName" min:"1" type:"string" required:"true"` 9192} 9193 9194// String returns the string representation 9195func (s UpdateRouteInput) String() string { 9196 return awsutil.Prettify(s) 9197} 9198 9199// GoString returns the string representation 9200func (s UpdateRouteInput) GoString() string { 9201 return s.String() 9202} 9203 9204// Validate inspects the fields of the type to determine if they are valid. 9205func (s *UpdateRouteInput) Validate() error { 9206 invalidParams := request.ErrInvalidParams{Context: "UpdateRouteInput"} 9207 if s.MeshName == nil { 9208 invalidParams.Add(request.NewErrParamRequired("MeshName")) 9209 } 9210 if s.MeshName != nil && len(*s.MeshName) < 1 { 9211 invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) 9212 } 9213 if s.MeshOwner != nil && len(*s.MeshOwner) < 12 { 9214 invalidParams.Add(request.NewErrParamMinLen("MeshOwner", 12)) 9215 } 9216 if s.RouteName == nil { 9217 invalidParams.Add(request.NewErrParamRequired("RouteName")) 9218 } 9219 if s.RouteName != nil && len(*s.RouteName) < 1 { 9220 invalidParams.Add(request.NewErrParamMinLen("RouteName", 1)) 9221 } 9222 if s.Spec == nil { 9223 invalidParams.Add(request.NewErrParamRequired("Spec")) 9224 } 9225 if s.VirtualRouterName == nil { 9226 invalidParams.Add(request.NewErrParamRequired("VirtualRouterName")) 9227 } 9228 if s.VirtualRouterName != nil && len(*s.VirtualRouterName) < 1 { 9229 invalidParams.Add(request.NewErrParamMinLen("VirtualRouterName", 1)) 9230 } 9231 if s.Spec != nil { 9232 if err := s.Spec.Validate(); err != nil { 9233 invalidParams.AddNested("Spec", err.(request.ErrInvalidParams)) 9234 } 9235 } 9236 9237 if invalidParams.Len() > 0 { 9238 return invalidParams 9239 } 9240 return nil 9241} 9242 9243// SetClientToken sets the ClientToken field's value. 9244func (s *UpdateRouteInput) SetClientToken(v string) *UpdateRouteInput { 9245 s.ClientToken = &v 9246 return s 9247} 9248 9249// SetMeshName sets the MeshName field's value. 9250func (s *UpdateRouteInput) SetMeshName(v string) *UpdateRouteInput { 9251 s.MeshName = &v 9252 return s 9253} 9254 9255// SetMeshOwner sets the MeshOwner field's value. 9256func (s *UpdateRouteInput) SetMeshOwner(v string) *UpdateRouteInput { 9257 s.MeshOwner = &v 9258 return s 9259} 9260 9261// SetRouteName sets the RouteName field's value. 9262func (s *UpdateRouteInput) SetRouteName(v string) *UpdateRouteInput { 9263 s.RouteName = &v 9264 return s 9265} 9266 9267// SetSpec sets the Spec field's value. 9268func (s *UpdateRouteInput) SetSpec(v *RouteSpec) *UpdateRouteInput { 9269 s.Spec = v 9270 return s 9271} 9272 9273// SetVirtualRouterName sets the VirtualRouterName field's value. 9274func (s *UpdateRouteInput) SetVirtualRouterName(v string) *UpdateRouteInput { 9275 s.VirtualRouterName = &v 9276 return s 9277} 9278 9279type UpdateRouteOutput struct { 9280 _ struct{} `type:"structure" payload:"Route"` 9281 9282 // An object that represents a route returned by a describe operation. 9283 // 9284 // Route is a required field 9285 Route *RouteData `locationName:"route" type:"structure" required:"true"` 9286} 9287 9288// String returns the string representation 9289func (s UpdateRouteOutput) String() string { 9290 return awsutil.Prettify(s) 9291} 9292 9293// GoString returns the string representation 9294func (s UpdateRouteOutput) GoString() string { 9295 return s.String() 9296} 9297 9298// SetRoute sets the Route field's value. 9299func (s *UpdateRouteOutput) SetRoute(v *RouteData) *UpdateRouteOutput { 9300 s.Route = v 9301 return s 9302} 9303 9304type UpdateVirtualNodeInput struct { 9305 _ struct{} `type:"structure"` 9306 9307 ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"` 9308 9309 // MeshName is a required field 9310 MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` 9311 9312 MeshOwner *string `location:"querystring" locationName:"meshOwner" min:"12" type:"string"` 9313 9314 // An object that represents the specification of a virtual node. 9315 // 9316 // Spec is a required field 9317 Spec *VirtualNodeSpec `locationName:"spec" type:"structure" required:"true"` 9318 9319 // VirtualNodeName is a required field 9320 VirtualNodeName *string `location:"uri" locationName:"virtualNodeName" min:"1" type:"string" required:"true"` 9321} 9322 9323// String returns the string representation 9324func (s UpdateVirtualNodeInput) String() string { 9325 return awsutil.Prettify(s) 9326} 9327 9328// GoString returns the string representation 9329func (s UpdateVirtualNodeInput) GoString() string { 9330 return s.String() 9331} 9332 9333// Validate inspects the fields of the type to determine if they are valid. 9334func (s *UpdateVirtualNodeInput) Validate() error { 9335 invalidParams := request.ErrInvalidParams{Context: "UpdateVirtualNodeInput"} 9336 if s.MeshName == nil { 9337 invalidParams.Add(request.NewErrParamRequired("MeshName")) 9338 } 9339 if s.MeshName != nil && len(*s.MeshName) < 1 { 9340 invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) 9341 } 9342 if s.MeshOwner != nil && len(*s.MeshOwner) < 12 { 9343 invalidParams.Add(request.NewErrParamMinLen("MeshOwner", 12)) 9344 } 9345 if s.Spec == nil { 9346 invalidParams.Add(request.NewErrParamRequired("Spec")) 9347 } 9348 if s.VirtualNodeName == nil { 9349 invalidParams.Add(request.NewErrParamRequired("VirtualNodeName")) 9350 } 9351 if s.VirtualNodeName != nil && len(*s.VirtualNodeName) < 1 { 9352 invalidParams.Add(request.NewErrParamMinLen("VirtualNodeName", 1)) 9353 } 9354 if s.Spec != nil { 9355 if err := s.Spec.Validate(); err != nil { 9356 invalidParams.AddNested("Spec", err.(request.ErrInvalidParams)) 9357 } 9358 } 9359 9360 if invalidParams.Len() > 0 { 9361 return invalidParams 9362 } 9363 return nil 9364} 9365 9366// SetClientToken sets the ClientToken field's value. 9367func (s *UpdateVirtualNodeInput) SetClientToken(v string) *UpdateVirtualNodeInput { 9368 s.ClientToken = &v 9369 return s 9370} 9371 9372// SetMeshName sets the MeshName field's value. 9373func (s *UpdateVirtualNodeInput) SetMeshName(v string) *UpdateVirtualNodeInput { 9374 s.MeshName = &v 9375 return s 9376} 9377 9378// SetMeshOwner sets the MeshOwner field's value. 9379func (s *UpdateVirtualNodeInput) SetMeshOwner(v string) *UpdateVirtualNodeInput { 9380 s.MeshOwner = &v 9381 return s 9382} 9383 9384// SetSpec sets the Spec field's value. 9385func (s *UpdateVirtualNodeInput) SetSpec(v *VirtualNodeSpec) *UpdateVirtualNodeInput { 9386 s.Spec = v 9387 return s 9388} 9389 9390// SetVirtualNodeName sets the VirtualNodeName field's value. 9391func (s *UpdateVirtualNodeInput) SetVirtualNodeName(v string) *UpdateVirtualNodeInput { 9392 s.VirtualNodeName = &v 9393 return s 9394} 9395 9396type UpdateVirtualNodeOutput struct { 9397 _ struct{} `type:"structure" payload:"VirtualNode"` 9398 9399 // An object that represents a virtual node returned by a describe operation. 9400 // 9401 // VirtualNode is a required field 9402 VirtualNode *VirtualNodeData `locationName:"virtualNode" type:"structure" required:"true"` 9403} 9404 9405// String returns the string representation 9406func (s UpdateVirtualNodeOutput) String() string { 9407 return awsutil.Prettify(s) 9408} 9409 9410// GoString returns the string representation 9411func (s UpdateVirtualNodeOutput) GoString() string { 9412 return s.String() 9413} 9414 9415// SetVirtualNode sets the VirtualNode field's value. 9416func (s *UpdateVirtualNodeOutput) SetVirtualNode(v *VirtualNodeData) *UpdateVirtualNodeOutput { 9417 s.VirtualNode = v 9418 return s 9419} 9420 9421type UpdateVirtualRouterInput struct { 9422 _ struct{} `type:"structure"` 9423 9424 ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"` 9425 9426 // MeshName is a required field 9427 MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` 9428 9429 MeshOwner *string `location:"querystring" locationName:"meshOwner" min:"12" type:"string"` 9430 9431 // An object that represents the specification of a virtual router. 9432 // 9433 // Spec is a required field 9434 Spec *VirtualRouterSpec `locationName:"spec" type:"structure" required:"true"` 9435 9436 // VirtualRouterName is a required field 9437 VirtualRouterName *string `location:"uri" locationName:"virtualRouterName" min:"1" type:"string" required:"true"` 9438} 9439 9440// String returns the string representation 9441func (s UpdateVirtualRouterInput) String() string { 9442 return awsutil.Prettify(s) 9443} 9444 9445// GoString returns the string representation 9446func (s UpdateVirtualRouterInput) GoString() string { 9447 return s.String() 9448} 9449 9450// Validate inspects the fields of the type to determine if they are valid. 9451func (s *UpdateVirtualRouterInput) Validate() error { 9452 invalidParams := request.ErrInvalidParams{Context: "UpdateVirtualRouterInput"} 9453 if s.MeshName == nil { 9454 invalidParams.Add(request.NewErrParamRequired("MeshName")) 9455 } 9456 if s.MeshName != nil && len(*s.MeshName) < 1 { 9457 invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) 9458 } 9459 if s.MeshOwner != nil && len(*s.MeshOwner) < 12 { 9460 invalidParams.Add(request.NewErrParamMinLen("MeshOwner", 12)) 9461 } 9462 if s.Spec == nil { 9463 invalidParams.Add(request.NewErrParamRequired("Spec")) 9464 } 9465 if s.VirtualRouterName == nil { 9466 invalidParams.Add(request.NewErrParamRequired("VirtualRouterName")) 9467 } 9468 if s.VirtualRouterName != nil && len(*s.VirtualRouterName) < 1 { 9469 invalidParams.Add(request.NewErrParamMinLen("VirtualRouterName", 1)) 9470 } 9471 if s.Spec != nil { 9472 if err := s.Spec.Validate(); err != nil { 9473 invalidParams.AddNested("Spec", err.(request.ErrInvalidParams)) 9474 } 9475 } 9476 9477 if invalidParams.Len() > 0 { 9478 return invalidParams 9479 } 9480 return nil 9481} 9482 9483// SetClientToken sets the ClientToken field's value. 9484func (s *UpdateVirtualRouterInput) SetClientToken(v string) *UpdateVirtualRouterInput { 9485 s.ClientToken = &v 9486 return s 9487} 9488 9489// SetMeshName sets the MeshName field's value. 9490func (s *UpdateVirtualRouterInput) SetMeshName(v string) *UpdateVirtualRouterInput { 9491 s.MeshName = &v 9492 return s 9493} 9494 9495// SetMeshOwner sets the MeshOwner field's value. 9496func (s *UpdateVirtualRouterInput) SetMeshOwner(v string) *UpdateVirtualRouterInput { 9497 s.MeshOwner = &v 9498 return s 9499} 9500 9501// SetSpec sets the Spec field's value. 9502func (s *UpdateVirtualRouterInput) SetSpec(v *VirtualRouterSpec) *UpdateVirtualRouterInput { 9503 s.Spec = v 9504 return s 9505} 9506 9507// SetVirtualRouterName sets the VirtualRouterName field's value. 9508func (s *UpdateVirtualRouterInput) SetVirtualRouterName(v string) *UpdateVirtualRouterInput { 9509 s.VirtualRouterName = &v 9510 return s 9511} 9512 9513type UpdateVirtualRouterOutput struct { 9514 _ struct{} `type:"structure" payload:"VirtualRouter"` 9515 9516 // An object that represents a virtual router returned by a describe operation. 9517 // 9518 // VirtualRouter is a required field 9519 VirtualRouter *VirtualRouterData `locationName:"virtualRouter" type:"structure" required:"true"` 9520} 9521 9522// String returns the string representation 9523func (s UpdateVirtualRouterOutput) String() string { 9524 return awsutil.Prettify(s) 9525} 9526 9527// GoString returns the string representation 9528func (s UpdateVirtualRouterOutput) GoString() string { 9529 return s.String() 9530} 9531 9532// SetVirtualRouter sets the VirtualRouter field's value. 9533func (s *UpdateVirtualRouterOutput) SetVirtualRouter(v *VirtualRouterData) *UpdateVirtualRouterOutput { 9534 s.VirtualRouter = v 9535 return s 9536} 9537 9538type UpdateVirtualServiceInput struct { 9539 _ struct{} `type:"structure"` 9540 9541 ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"` 9542 9543 // MeshName is a required field 9544 MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` 9545 9546 MeshOwner *string `location:"querystring" locationName:"meshOwner" min:"12" type:"string"` 9547 9548 // An object that represents the specification of a virtual service. 9549 // 9550 // Spec is a required field 9551 Spec *VirtualServiceSpec `locationName:"spec" type:"structure" required:"true"` 9552 9553 // VirtualServiceName is a required field 9554 VirtualServiceName *string `location:"uri" locationName:"virtualServiceName" type:"string" required:"true"` 9555} 9556 9557// String returns the string representation 9558func (s UpdateVirtualServiceInput) String() string { 9559 return awsutil.Prettify(s) 9560} 9561 9562// GoString returns the string representation 9563func (s UpdateVirtualServiceInput) GoString() string { 9564 return s.String() 9565} 9566 9567// Validate inspects the fields of the type to determine if they are valid. 9568func (s *UpdateVirtualServiceInput) Validate() error { 9569 invalidParams := request.ErrInvalidParams{Context: "UpdateVirtualServiceInput"} 9570 if s.MeshName == nil { 9571 invalidParams.Add(request.NewErrParamRequired("MeshName")) 9572 } 9573 if s.MeshName != nil && len(*s.MeshName) < 1 { 9574 invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) 9575 } 9576 if s.MeshOwner != nil && len(*s.MeshOwner) < 12 { 9577 invalidParams.Add(request.NewErrParamMinLen("MeshOwner", 12)) 9578 } 9579 if s.Spec == nil { 9580 invalidParams.Add(request.NewErrParamRequired("Spec")) 9581 } 9582 if s.VirtualServiceName == nil { 9583 invalidParams.Add(request.NewErrParamRequired("VirtualServiceName")) 9584 } 9585 if s.VirtualServiceName != nil && len(*s.VirtualServiceName) < 1 { 9586 invalidParams.Add(request.NewErrParamMinLen("VirtualServiceName", 1)) 9587 } 9588 if s.Spec != nil { 9589 if err := s.Spec.Validate(); err != nil { 9590 invalidParams.AddNested("Spec", err.(request.ErrInvalidParams)) 9591 } 9592 } 9593 9594 if invalidParams.Len() > 0 { 9595 return invalidParams 9596 } 9597 return nil 9598} 9599 9600// SetClientToken sets the ClientToken field's value. 9601func (s *UpdateVirtualServiceInput) SetClientToken(v string) *UpdateVirtualServiceInput { 9602 s.ClientToken = &v 9603 return s 9604} 9605 9606// SetMeshName sets the MeshName field's value. 9607func (s *UpdateVirtualServiceInput) SetMeshName(v string) *UpdateVirtualServiceInput { 9608 s.MeshName = &v 9609 return s 9610} 9611 9612// SetMeshOwner sets the MeshOwner field's value. 9613func (s *UpdateVirtualServiceInput) SetMeshOwner(v string) *UpdateVirtualServiceInput { 9614 s.MeshOwner = &v 9615 return s 9616} 9617 9618// SetSpec sets the Spec field's value. 9619func (s *UpdateVirtualServiceInput) SetSpec(v *VirtualServiceSpec) *UpdateVirtualServiceInput { 9620 s.Spec = v 9621 return s 9622} 9623 9624// SetVirtualServiceName sets the VirtualServiceName field's value. 9625func (s *UpdateVirtualServiceInput) SetVirtualServiceName(v string) *UpdateVirtualServiceInput { 9626 s.VirtualServiceName = &v 9627 return s 9628} 9629 9630type UpdateVirtualServiceOutput struct { 9631 _ struct{} `type:"structure" payload:"VirtualService"` 9632 9633 // An object that represents a virtual service returned by a describe operation. 9634 // 9635 // VirtualService is a required field 9636 VirtualService *VirtualServiceData `locationName:"virtualService" type:"structure" required:"true"` 9637} 9638 9639// String returns the string representation 9640func (s UpdateVirtualServiceOutput) String() string { 9641 return awsutil.Prettify(s) 9642} 9643 9644// GoString returns the string representation 9645func (s UpdateVirtualServiceOutput) GoString() string { 9646 return s.String() 9647} 9648 9649// SetVirtualService sets the VirtualService field's value. 9650func (s *UpdateVirtualServiceOutput) SetVirtualService(v *VirtualServiceData) *UpdateVirtualServiceOutput { 9651 s.VirtualService = v 9652 return s 9653} 9654 9655// An object that represents a virtual node returned by a describe operation. 9656type VirtualNodeData struct { 9657 _ struct{} `type:"structure"` 9658 9659 // MeshName is a required field 9660 MeshName *string `locationName:"meshName" min:"1" type:"string" required:"true"` 9661 9662 // An object that represents metadata for a resource. 9663 // 9664 // Metadata is a required field 9665 Metadata *ResourceMetadata `locationName:"metadata" type:"structure" required:"true"` 9666 9667 // An object that represents the specification of a virtual node. 9668 // 9669 // Spec is a required field 9670 Spec *VirtualNodeSpec `locationName:"spec" type:"structure" required:"true"` 9671 9672 // An object that represents the current status of the virtual node. 9673 // 9674 // Status is a required field 9675 Status *VirtualNodeStatus `locationName:"status" type:"structure" required:"true"` 9676 9677 // VirtualNodeName is a required field 9678 VirtualNodeName *string `locationName:"virtualNodeName" min:"1" type:"string" required:"true"` 9679} 9680 9681// String returns the string representation 9682func (s VirtualNodeData) String() string { 9683 return awsutil.Prettify(s) 9684} 9685 9686// GoString returns the string representation 9687func (s VirtualNodeData) GoString() string { 9688 return s.String() 9689} 9690 9691// SetMeshName sets the MeshName field's value. 9692func (s *VirtualNodeData) SetMeshName(v string) *VirtualNodeData { 9693 s.MeshName = &v 9694 return s 9695} 9696 9697// SetMetadata sets the Metadata field's value. 9698func (s *VirtualNodeData) SetMetadata(v *ResourceMetadata) *VirtualNodeData { 9699 s.Metadata = v 9700 return s 9701} 9702 9703// SetSpec sets the Spec field's value. 9704func (s *VirtualNodeData) SetSpec(v *VirtualNodeSpec) *VirtualNodeData { 9705 s.Spec = v 9706 return s 9707} 9708 9709// SetStatus sets the Status field's value. 9710func (s *VirtualNodeData) SetStatus(v *VirtualNodeStatus) *VirtualNodeData { 9711 s.Status = v 9712 return s 9713} 9714 9715// SetVirtualNodeName sets the VirtualNodeName field's value. 9716func (s *VirtualNodeData) SetVirtualNodeName(v string) *VirtualNodeData { 9717 s.VirtualNodeName = &v 9718 return s 9719} 9720 9721// An object that represents a virtual node returned by a list operation. 9722type VirtualNodeRef struct { 9723 _ struct{} `type:"structure"` 9724 9725 // Arn is a required field 9726 Arn *string `locationName:"arn" type:"string" required:"true"` 9727 9728 // CreatedAt is a required field 9729 CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"` 9730 9731 // LastUpdatedAt is a required field 9732 LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp" required:"true"` 9733 9734 // MeshName is a required field 9735 MeshName *string `locationName:"meshName" min:"1" type:"string" required:"true"` 9736 9737 // MeshOwner is a required field 9738 MeshOwner *string `locationName:"meshOwner" min:"12" type:"string" required:"true"` 9739 9740 // ResourceOwner is a required field 9741 ResourceOwner *string `locationName:"resourceOwner" min:"12" type:"string" required:"true"` 9742 9743 // Version is a required field 9744 Version *int64 `locationName:"version" type:"long" required:"true"` 9745 9746 // VirtualNodeName is a required field 9747 VirtualNodeName *string `locationName:"virtualNodeName" min:"1" type:"string" required:"true"` 9748} 9749 9750// String returns the string representation 9751func (s VirtualNodeRef) String() string { 9752 return awsutil.Prettify(s) 9753} 9754 9755// GoString returns the string representation 9756func (s VirtualNodeRef) GoString() string { 9757 return s.String() 9758} 9759 9760// SetArn sets the Arn field's value. 9761func (s *VirtualNodeRef) SetArn(v string) *VirtualNodeRef { 9762 s.Arn = &v 9763 return s 9764} 9765 9766// SetCreatedAt sets the CreatedAt field's value. 9767func (s *VirtualNodeRef) SetCreatedAt(v time.Time) *VirtualNodeRef { 9768 s.CreatedAt = &v 9769 return s 9770} 9771 9772// SetLastUpdatedAt sets the LastUpdatedAt field's value. 9773func (s *VirtualNodeRef) SetLastUpdatedAt(v time.Time) *VirtualNodeRef { 9774 s.LastUpdatedAt = &v 9775 return s 9776} 9777 9778// SetMeshName sets the MeshName field's value. 9779func (s *VirtualNodeRef) SetMeshName(v string) *VirtualNodeRef { 9780 s.MeshName = &v 9781 return s 9782} 9783 9784// SetMeshOwner sets the MeshOwner field's value. 9785func (s *VirtualNodeRef) SetMeshOwner(v string) *VirtualNodeRef { 9786 s.MeshOwner = &v 9787 return s 9788} 9789 9790// SetResourceOwner sets the ResourceOwner field's value. 9791func (s *VirtualNodeRef) SetResourceOwner(v string) *VirtualNodeRef { 9792 s.ResourceOwner = &v 9793 return s 9794} 9795 9796// SetVersion sets the Version field's value. 9797func (s *VirtualNodeRef) SetVersion(v int64) *VirtualNodeRef { 9798 s.Version = &v 9799 return s 9800} 9801 9802// SetVirtualNodeName sets the VirtualNodeName field's value. 9803func (s *VirtualNodeRef) SetVirtualNodeName(v string) *VirtualNodeRef { 9804 s.VirtualNodeName = &v 9805 return s 9806} 9807 9808// An object that represents a virtual node service provider. 9809type VirtualNodeServiceProvider struct { 9810 _ struct{} `type:"structure"` 9811 9812 // VirtualNodeName is a required field 9813 VirtualNodeName *string `locationName:"virtualNodeName" min:"1" type:"string" required:"true"` 9814} 9815 9816// String returns the string representation 9817func (s VirtualNodeServiceProvider) String() string { 9818 return awsutil.Prettify(s) 9819} 9820 9821// GoString returns the string representation 9822func (s VirtualNodeServiceProvider) GoString() string { 9823 return s.String() 9824} 9825 9826// Validate inspects the fields of the type to determine if they are valid. 9827func (s *VirtualNodeServiceProvider) Validate() error { 9828 invalidParams := request.ErrInvalidParams{Context: "VirtualNodeServiceProvider"} 9829 if s.VirtualNodeName == nil { 9830 invalidParams.Add(request.NewErrParamRequired("VirtualNodeName")) 9831 } 9832 if s.VirtualNodeName != nil && len(*s.VirtualNodeName) < 1 { 9833 invalidParams.Add(request.NewErrParamMinLen("VirtualNodeName", 1)) 9834 } 9835 9836 if invalidParams.Len() > 0 { 9837 return invalidParams 9838 } 9839 return nil 9840} 9841 9842// SetVirtualNodeName sets the VirtualNodeName field's value. 9843func (s *VirtualNodeServiceProvider) SetVirtualNodeName(v string) *VirtualNodeServiceProvider { 9844 s.VirtualNodeName = &v 9845 return s 9846} 9847 9848// An object that represents the specification of a virtual node. 9849type VirtualNodeSpec struct { 9850 _ struct{} `type:"structure"` 9851 9852 // An object that represents the default properties for a backend. 9853 BackendDefaults *BackendDefaults `locationName:"backendDefaults" type:"structure"` 9854 9855 Backends []*Backend `locationName:"backends" type:"list"` 9856 9857 Listeners []*Listener `locationName:"listeners" type:"list"` 9858 9859 // An object that represents the logging information for a virtual node. 9860 Logging *Logging `locationName:"logging" type:"structure"` 9861 9862 // An object that represents the service discovery information for a virtual 9863 // node. 9864 ServiceDiscovery *ServiceDiscovery `locationName:"serviceDiscovery" type:"structure"` 9865} 9866 9867// String returns the string representation 9868func (s VirtualNodeSpec) String() string { 9869 return awsutil.Prettify(s) 9870} 9871 9872// GoString returns the string representation 9873func (s VirtualNodeSpec) GoString() string { 9874 return s.String() 9875} 9876 9877// Validate inspects the fields of the type to determine if they are valid. 9878func (s *VirtualNodeSpec) Validate() error { 9879 invalidParams := request.ErrInvalidParams{Context: "VirtualNodeSpec"} 9880 if s.BackendDefaults != nil { 9881 if err := s.BackendDefaults.Validate(); err != nil { 9882 invalidParams.AddNested("BackendDefaults", err.(request.ErrInvalidParams)) 9883 } 9884 } 9885 if s.Backends != nil { 9886 for i, v := range s.Backends { 9887 if v == nil { 9888 continue 9889 } 9890 if err := v.Validate(); err != nil { 9891 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Backends", i), err.(request.ErrInvalidParams)) 9892 } 9893 } 9894 } 9895 if s.Listeners != nil { 9896 for i, v := range s.Listeners { 9897 if v == nil { 9898 continue 9899 } 9900 if err := v.Validate(); err != nil { 9901 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Listeners", i), err.(request.ErrInvalidParams)) 9902 } 9903 } 9904 } 9905 if s.Logging != nil { 9906 if err := s.Logging.Validate(); err != nil { 9907 invalidParams.AddNested("Logging", err.(request.ErrInvalidParams)) 9908 } 9909 } 9910 if s.ServiceDiscovery != nil { 9911 if err := s.ServiceDiscovery.Validate(); err != nil { 9912 invalidParams.AddNested("ServiceDiscovery", err.(request.ErrInvalidParams)) 9913 } 9914 } 9915 9916 if invalidParams.Len() > 0 { 9917 return invalidParams 9918 } 9919 return nil 9920} 9921 9922// SetBackendDefaults sets the BackendDefaults field's value. 9923func (s *VirtualNodeSpec) SetBackendDefaults(v *BackendDefaults) *VirtualNodeSpec { 9924 s.BackendDefaults = v 9925 return s 9926} 9927 9928// SetBackends sets the Backends field's value. 9929func (s *VirtualNodeSpec) SetBackends(v []*Backend) *VirtualNodeSpec { 9930 s.Backends = v 9931 return s 9932} 9933 9934// SetListeners sets the Listeners field's value. 9935func (s *VirtualNodeSpec) SetListeners(v []*Listener) *VirtualNodeSpec { 9936 s.Listeners = v 9937 return s 9938} 9939 9940// SetLogging sets the Logging field's value. 9941func (s *VirtualNodeSpec) SetLogging(v *Logging) *VirtualNodeSpec { 9942 s.Logging = v 9943 return s 9944} 9945 9946// SetServiceDiscovery sets the ServiceDiscovery field's value. 9947func (s *VirtualNodeSpec) SetServiceDiscovery(v *ServiceDiscovery) *VirtualNodeSpec { 9948 s.ServiceDiscovery = v 9949 return s 9950} 9951 9952// An object that represents the current status of the virtual node. 9953type VirtualNodeStatus struct { 9954 _ struct{} `type:"structure"` 9955 9956 // Status is a required field 9957 Status *string `locationName:"status" type:"string" required:"true" enum:"VirtualNodeStatusCode"` 9958} 9959 9960// String returns the string representation 9961func (s VirtualNodeStatus) String() string { 9962 return awsutil.Prettify(s) 9963} 9964 9965// GoString returns the string representation 9966func (s VirtualNodeStatus) GoString() string { 9967 return s.String() 9968} 9969 9970// SetStatus sets the Status field's value. 9971func (s *VirtualNodeStatus) SetStatus(v string) *VirtualNodeStatus { 9972 s.Status = &v 9973 return s 9974} 9975 9976// An object that represents a virtual router returned by a describe operation. 9977type VirtualRouterData struct { 9978 _ struct{} `type:"structure"` 9979 9980 // MeshName is a required field 9981 MeshName *string `locationName:"meshName" min:"1" type:"string" required:"true"` 9982 9983 // An object that represents metadata for a resource. 9984 // 9985 // Metadata is a required field 9986 Metadata *ResourceMetadata `locationName:"metadata" type:"structure" required:"true"` 9987 9988 // An object that represents the specification of a virtual router. 9989 // 9990 // Spec is a required field 9991 Spec *VirtualRouterSpec `locationName:"spec" type:"structure" required:"true"` 9992 9993 // An object that represents the status of a virtual router. 9994 // 9995 // Status is a required field 9996 Status *VirtualRouterStatus `locationName:"status" type:"structure" required:"true"` 9997 9998 // VirtualRouterName is a required field 9999 VirtualRouterName *string `locationName:"virtualRouterName" min:"1" type:"string" required:"true"` 10000} 10001 10002// String returns the string representation 10003func (s VirtualRouterData) String() string { 10004 return awsutil.Prettify(s) 10005} 10006 10007// GoString returns the string representation 10008func (s VirtualRouterData) GoString() string { 10009 return s.String() 10010} 10011 10012// SetMeshName sets the MeshName field's value. 10013func (s *VirtualRouterData) SetMeshName(v string) *VirtualRouterData { 10014 s.MeshName = &v 10015 return s 10016} 10017 10018// SetMetadata sets the Metadata field's value. 10019func (s *VirtualRouterData) SetMetadata(v *ResourceMetadata) *VirtualRouterData { 10020 s.Metadata = v 10021 return s 10022} 10023 10024// SetSpec sets the Spec field's value. 10025func (s *VirtualRouterData) SetSpec(v *VirtualRouterSpec) *VirtualRouterData { 10026 s.Spec = v 10027 return s 10028} 10029 10030// SetStatus sets the Status field's value. 10031func (s *VirtualRouterData) SetStatus(v *VirtualRouterStatus) *VirtualRouterData { 10032 s.Status = v 10033 return s 10034} 10035 10036// SetVirtualRouterName sets the VirtualRouterName field's value. 10037func (s *VirtualRouterData) SetVirtualRouterName(v string) *VirtualRouterData { 10038 s.VirtualRouterName = &v 10039 return s 10040} 10041 10042// An object that represents a virtual router listener. 10043type VirtualRouterListener struct { 10044 _ struct{} `type:"structure"` 10045 10046 // An object that represents a port mapping. 10047 // 10048 // PortMapping is a required field 10049 PortMapping *PortMapping `locationName:"portMapping" type:"structure" required:"true"` 10050} 10051 10052// String returns the string representation 10053func (s VirtualRouterListener) String() string { 10054 return awsutil.Prettify(s) 10055} 10056 10057// GoString returns the string representation 10058func (s VirtualRouterListener) GoString() string { 10059 return s.String() 10060} 10061 10062// Validate inspects the fields of the type to determine if they are valid. 10063func (s *VirtualRouterListener) Validate() error { 10064 invalidParams := request.ErrInvalidParams{Context: "VirtualRouterListener"} 10065 if s.PortMapping == nil { 10066 invalidParams.Add(request.NewErrParamRequired("PortMapping")) 10067 } 10068 if s.PortMapping != nil { 10069 if err := s.PortMapping.Validate(); err != nil { 10070 invalidParams.AddNested("PortMapping", err.(request.ErrInvalidParams)) 10071 } 10072 } 10073 10074 if invalidParams.Len() > 0 { 10075 return invalidParams 10076 } 10077 return nil 10078} 10079 10080// SetPortMapping sets the PortMapping field's value. 10081func (s *VirtualRouterListener) SetPortMapping(v *PortMapping) *VirtualRouterListener { 10082 s.PortMapping = v 10083 return s 10084} 10085 10086// An object that represents a virtual router returned by a list operation. 10087type VirtualRouterRef struct { 10088 _ struct{} `type:"structure"` 10089 10090 // Arn is a required field 10091 Arn *string `locationName:"arn" type:"string" required:"true"` 10092 10093 // CreatedAt is a required field 10094 CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"` 10095 10096 // LastUpdatedAt is a required field 10097 LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp" required:"true"` 10098 10099 // MeshName is a required field 10100 MeshName *string `locationName:"meshName" min:"1" type:"string" required:"true"` 10101 10102 // MeshOwner is a required field 10103 MeshOwner *string `locationName:"meshOwner" min:"12" type:"string" required:"true"` 10104 10105 // ResourceOwner is a required field 10106 ResourceOwner *string `locationName:"resourceOwner" min:"12" type:"string" required:"true"` 10107 10108 // Version is a required field 10109 Version *int64 `locationName:"version" type:"long" required:"true"` 10110 10111 // VirtualRouterName is a required field 10112 VirtualRouterName *string `locationName:"virtualRouterName" min:"1" type:"string" required:"true"` 10113} 10114 10115// String returns the string representation 10116func (s VirtualRouterRef) String() string { 10117 return awsutil.Prettify(s) 10118} 10119 10120// GoString returns the string representation 10121func (s VirtualRouterRef) GoString() string { 10122 return s.String() 10123} 10124 10125// SetArn sets the Arn field's value. 10126func (s *VirtualRouterRef) SetArn(v string) *VirtualRouterRef { 10127 s.Arn = &v 10128 return s 10129} 10130 10131// SetCreatedAt sets the CreatedAt field's value. 10132func (s *VirtualRouterRef) SetCreatedAt(v time.Time) *VirtualRouterRef { 10133 s.CreatedAt = &v 10134 return s 10135} 10136 10137// SetLastUpdatedAt sets the LastUpdatedAt field's value. 10138func (s *VirtualRouterRef) SetLastUpdatedAt(v time.Time) *VirtualRouterRef { 10139 s.LastUpdatedAt = &v 10140 return s 10141} 10142 10143// SetMeshName sets the MeshName field's value. 10144func (s *VirtualRouterRef) SetMeshName(v string) *VirtualRouterRef { 10145 s.MeshName = &v 10146 return s 10147} 10148 10149// SetMeshOwner sets the MeshOwner field's value. 10150func (s *VirtualRouterRef) SetMeshOwner(v string) *VirtualRouterRef { 10151 s.MeshOwner = &v 10152 return s 10153} 10154 10155// SetResourceOwner sets the ResourceOwner field's value. 10156func (s *VirtualRouterRef) SetResourceOwner(v string) *VirtualRouterRef { 10157 s.ResourceOwner = &v 10158 return s 10159} 10160 10161// SetVersion sets the Version field's value. 10162func (s *VirtualRouterRef) SetVersion(v int64) *VirtualRouterRef { 10163 s.Version = &v 10164 return s 10165} 10166 10167// SetVirtualRouterName sets the VirtualRouterName field's value. 10168func (s *VirtualRouterRef) SetVirtualRouterName(v string) *VirtualRouterRef { 10169 s.VirtualRouterName = &v 10170 return s 10171} 10172 10173// An object that represents a virtual node service provider. 10174type VirtualRouterServiceProvider struct { 10175 _ struct{} `type:"structure"` 10176 10177 // VirtualRouterName is a required field 10178 VirtualRouterName *string `locationName:"virtualRouterName" min:"1" type:"string" required:"true"` 10179} 10180 10181// String returns the string representation 10182func (s VirtualRouterServiceProvider) String() string { 10183 return awsutil.Prettify(s) 10184} 10185 10186// GoString returns the string representation 10187func (s VirtualRouterServiceProvider) GoString() string { 10188 return s.String() 10189} 10190 10191// Validate inspects the fields of the type to determine if they are valid. 10192func (s *VirtualRouterServiceProvider) Validate() error { 10193 invalidParams := request.ErrInvalidParams{Context: "VirtualRouterServiceProvider"} 10194 if s.VirtualRouterName == nil { 10195 invalidParams.Add(request.NewErrParamRequired("VirtualRouterName")) 10196 } 10197 if s.VirtualRouterName != nil && len(*s.VirtualRouterName) < 1 { 10198 invalidParams.Add(request.NewErrParamMinLen("VirtualRouterName", 1)) 10199 } 10200 10201 if invalidParams.Len() > 0 { 10202 return invalidParams 10203 } 10204 return nil 10205} 10206 10207// SetVirtualRouterName sets the VirtualRouterName field's value. 10208func (s *VirtualRouterServiceProvider) SetVirtualRouterName(v string) *VirtualRouterServiceProvider { 10209 s.VirtualRouterName = &v 10210 return s 10211} 10212 10213// An object that represents the specification of a virtual router. 10214type VirtualRouterSpec struct { 10215 _ struct{} `type:"structure"` 10216 10217 Listeners []*VirtualRouterListener `locationName:"listeners" min:"1" type:"list"` 10218} 10219 10220// String returns the string representation 10221func (s VirtualRouterSpec) String() string { 10222 return awsutil.Prettify(s) 10223} 10224 10225// GoString returns the string representation 10226func (s VirtualRouterSpec) GoString() string { 10227 return s.String() 10228} 10229 10230// Validate inspects the fields of the type to determine if they are valid. 10231func (s *VirtualRouterSpec) Validate() error { 10232 invalidParams := request.ErrInvalidParams{Context: "VirtualRouterSpec"} 10233 if s.Listeners != nil && len(s.Listeners) < 1 { 10234 invalidParams.Add(request.NewErrParamMinLen("Listeners", 1)) 10235 } 10236 if s.Listeners != nil { 10237 for i, v := range s.Listeners { 10238 if v == nil { 10239 continue 10240 } 10241 if err := v.Validate(); err != nil { 10242 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Listeners", i), err.(request.ErrInvalidParams)) 10243 } 10244 } 10245 } 10246 10247 if invalidParams.Len() > 0 { 10248 return invalidParams 10249 } 10250 return nil 10251} 10252 10253// SetListeners sets the Listeners field's value. 10254func (s *VirtualRouterSpec) SetListeners(v []*VirtualRouterListener) *VirtualRouterSpec { 10255 s.Listeners = v 10256 return s 10257} 10258 10259// An object that represents the status of a virtual router. 10260type VirtualRouterStatus struct { 10261 _ struct{} `type:"structure"` 10262 10263 // Status is a required field 10264 Status *string `locationName:"status" type:"string" required:"true" enum:"VirtualRouterStatusCode"` 10265} 10266 10267// String returns the string representation 10268func (s VirtualRouterStatus) String() string { 10269 return awsutil.Prettify(s) 10270} 10271 10272// GoString returns the string representation 10273func (s VirtualRouterStatus) GoString() string { 10274 return s.String() 10275} 10276 10277// SetStatus sets the Status field's value. 10278func (s *VirtualRouterStatus) SetStatus(v string) *VirtualRouterStatus { 10279 s.Status = &v 10280 return s 10281} 10282 10283// An object that represents a virtual service backend for a virtual node. 10284type VirtualServiceBackend struct { 10285 _ struct{} `type:"structure"` 10286 10287 // An object that represents a client policy. 10288 ClientPolicy *ClientPolicy `locationName:"clientPolicy" type:"structure"` 10289 10290 // VirtualServiceName is a required field 10291 VirtualServiceName *string `locationName:"virtualServiceName" type:"string" required:"true"` 10292} 10293 10294// String returns the string representation 10295func (s VirtualServiceBackend) String() string { 10296 return awsutil.Prettify(s) 10297} 10298 10299// GoString returns the string representation 10300func (s VirtualServiceBackend) GoString() string { 10301 return s.String() 10302} 10303 10304// Validate inspects the fields of the type to determine if they are valid. 10305func (s *VirtualServiceBackend) Validate() error { 10306 invalidParams := request.ErrInvalidParams{Context: "VirtualServiceBackend"} 10307 if s.VirtualServiceName == nil { 10308 invalidParams.Add(request.NewErrParamRequired("VirtualServiceName")) 10309 } 10310 if s.ClientPolicy != nil { 10311 if err := s.ClientPolicy.Validate(); err != nil { 10312 invalidParams.AddNested("ClientPolicy", err.(request.ErrInvalidParams)) 10313 } 10314 } 10315 10316 if invalidParams.Len() > 0 { 10317 return invalidParams 10318 } 10319 return nil 10320} 10321 10322// SetClientPolicy sets the ClientPolicy field's value. 10323func (s *VirtualServiceBackend) SetClientPolicy(v *ClientPolicy) *VirtualServiceBackend { 10324 s.ClientPolicy = v 10325 return s 10326} 10327 10328// SetVirtualServiceName sets the VirtualServiceName field's value. 10329func (s *VirtualServiceBackend) SetVirtualServiceName(v string) *VirtualServiceBackend { 10330 s.VirtualServiceName = &v 10331 return s 10332} 10333 10334// An object that represents a virtual service returned by a describe operation. 10335type VirtualServiceData struct { 10336 _ struct{} `type:"structure"` 10337 10338 // MeshName is a required field 10339 MeshName *string `locationName:"meshName" min:"1" type:"string" required:"true"` 10340 10341 // An object that represents metadata for a resource. 10342 // 10343 // Metadata is a required field 10344 Metadata *ResourceMetadata `locationName:"metadata" type:"structure" required:"true"` 10345 10346 // An object that represents the specification of a virtual service. 10347 // 10348 // Spec is a required field 10349 Spec *VirtualServiceSpec `locationName:"spec" type:"structure" required:"true"` 10350 10351 // An object that represents the status of a virtual service. 10352 // 10353 // Status is a required field 10354 Status *VirtualServiceStatus `locationName:"status" type:"structure" required:"true"` 10355 10356 // VirtualServiceName is a required field 10357 VirtualServiceName *string `locationName:"virtualServiceName" type:"string" required:"true"` 10358} 10359 10360// String returns the string representation 10361func (s VirtualServiceData) String() string { 10362 return awsutil.Prettify(s) 10363} 10364 10365// GoString returns the string representation 10366func (s VirtualServiceData) GoString() string { 10367 return s.String() 10368} 10369 10370// SetMeshName sets the MeshName field's value. 10371func (s *VirtualServiceData) SetMeshName(v string) *VirtualServiceData { 10372 s.MeshName = &v 10373 return s 10374} 10375 10376// SetMetadata sets the Metadata field's value. 10377func (s *VirtualServiceData) SetMetadata(v *ResourceMetadata) *VirtualServiceData { 10378 s.Metadata = v 10379 return s 10380} 10381 10382// SetSpec sets the Spec field's value. 10383func (s *VirtualServiceData) SetSpec(v *VirtualServiceSpec) *VirtualServiceData { 10384 s.Spec = v 10385 return s 10386} 10387 10388// SetStatus sets the Status field's value. 10389func (s *VirtualServiceData) SetStatus(v *VirtualServiceStatus) *VirtualServiceData { 10390 s.Status = v 10391 return s 10392} 10393 10394// SetVirtualServiceName sets the VirtualServiceName field's value. 10395func (s *VirtualServiceData) SetVirtualServiceName(v string) *VirtualServiceData { 10396 s.VirtualServiceName = &v 10397 return s 10398} 10399 10400// An object that represents the provider for a virtual service. 10401type VirtualServiceProvider struct { 10402 _ struct{} `type:"structure"` 10403 10404 // An object that represents a virtual node service provider. 10405 VirtualNode *VirtualNodeServiceProvider `locationName:"virtualNode" type:"structure"` 10406 10407 // An object that represents a virtual node service provider. 10408 VirtualRouter *VirtualRouterServiceProvider `locationName:"virtualRouter" type:"structure"` 10409} 10410 10411// String returns the string representation 10412func (s VirtualServiceProvider) String() string { 10413 return awsutil.Prettify(s) 10414} 10415 10416// GoString returns the string representation 10417func (s VirtualServiceProvider) GoString() string { 10418 return s.String() 10419} 10420 10421// Validate inspects the fields of the type to determine if they are valid. 10422func (s *VirtualServiceProvider) Validate() error { 10423 invalidParams := request.ErrInvalidParams{Context: "VirtualServiceProvider"} 10424 if s.VirtualNode != nil { 10425 if err := s.VirtualNode.Validate(); err != nil { 10426 invalidParams.AddNested("VirtualNode", err.(request.ErrInvalidParams)) 10427 } 10428 } 10429 if s.VirtualRouter != nil { 10430 if err := s.VirtualRouter.Validate(); err != nil { 10431 invalidParams.AddNested("VirtualRouter", err.(request.ErrInvalidParams)) 10432 } 10433 } 10434 10435 if invalidParams.Len() > 0 { 10436 return invalidParams 10437 } 10438 return nil 10439} 10440 10441// SetVirtualNode sets the VirtualNode field's value. 10442func (s *VirtualServiceProvider) SetVirtualNode(v *VirtualNodeServiceProvider) *VirtualServiceProvider { 10443 s.VirtualNode = v 10444 return s 10445} 10446 10447// SetVirtualRouter sets the VirtualRouter field's value. 10448func (s *VirtualServiceProvider) SetVirtualRouter(v *VirtualRouterServiceProvider) *VirtualServiceProvider { 10449 s.VirtualRouter = v 10450 return s 10451} 10452 10453// An object that represents a virtual service returned by a list operation. 10454type VirtualServiceRef struct { 10455 _ struct{} `type:"structure"` 10456 10457 // Arn is a required field 10458 Arn *string `locationName:"arn" type:"string" required:"true"` 10459 10460 // CreatedAt is a required field 10461 CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"` 10462 10463 // LastUpdatedAt is a required field 10464 LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp" required:"true"` 10465 10466 // MeshName is a required field 10467 MeshName *string `locationName:"meshName" min:"1" type:"string" required:"true"` 10468 10469 // MeshOwner is a required field 10470 MeshOwner *string `locationName:"meshOwner" min:"12" type:"string" required:"true"` 10471 10472 // ResourceOwner is a required field 10473 ResourceOwner *string `locationName:"resourceOwner" min:"12" type:"string" required:"true"` 10474 10475 // Version is a required field 10476 Version *int64 `locationName:"version" type:"long" required:"true"` 10477 10478 // VirtualServiceName is a required field 10479 VirtualServiceName *string `locationName:"virtualServiceName" type:"string" required:"true"` 10480} 10481 10482// String returns the string representation 10483func (s VirtualServiceRef) String() string { 10484 return awsutil.Prettify(s) 10485} 10486 10487// GoString returns the string representation 10488func (s VirtualServiceRef) GoString() string { 10489 return s.String() 10490} 10491 10492// SetArn sets the Arn field's value. 10493func (s *VirtualServiceRef) SetArn(v string) *VirtualServiceRef { 10494 s.Arn = &v 10495 return s 10496} 10497 10498// SetCreatedAt sets the CreatedAt field's value. 10499func (s *VirtualServiceRef) SetCreatedAt(v time.Time) *VirtualServiceRef { 10500 s.CreatedAt = &v 10501 return s 10502} 10503 10504// SetLastUpdatedAt sets the LastUpdatedAt field's value. 10505func (s *VirtualServiceRef) SetLastUpdatedAt(v time.Time) *VirtualServiceRef { 10506 s.LastUpdatedAt = &v 10507 return s 10508} 10509 10510// SetMeshName sets the MeshName field's value. 10511func (s *VirtualServiceRef) SetMeshName(v string) *VirtualServiceRef { 10512 s.MeshName = &v 10513 return s 10514} 10515 10516// SetMeshOwner sets the MeshOwner field's value. 10517func (s *VirtualServiceRef) SetMeshOwner(v string) *VirtualServiceRef { 10518 s.MeshOwner = &v 10519 return s 10520} 10521 10522// SetResourceOwner sets the ResourceOwner field's value. 10523func (s *VirtualServiceRef) SetResourceOwner(v string) *VirtualServiceRef { 10524 s.ResourceOwner = &v 10525 return s 10526} 10527 10528// SetVersion sets the Version field's value. 10529func (s *VirtualServiceRef) SetVersion(v int64) *VirtualServiceRef { 10530 s.Version = &v 10531 return s 10532} 10533 10534// SetVirtualServiceName sets the VirtualServiceName field's value. 10535func (s *VirtualServiceRef) SetVirtualServiceName(v string) *VirtualServiceRef { 10536 s.VirtualServiceName = &v 10537 return s 10538} 10539 10540// An object that represents the specification of a virtual service. 10541type VirtualServiceSpec struct { 10542 _ struct{} `type:"structure"` 10543 10544 // An object that represents the provider for a virtual service. 10545 Provider *VirtualServiceProvider `locationName:"provider" type:"structure"` 10546} 10547 10548// String returns the string representation 10549func (s VirtualServiceSpec) String() string { 10550 return awsutil.Prettify(s) 10551} 10552 10553// GoString returns the string representation 10554func (s VirtualServiceSpec) GoString() string { 10555 return s.String() 10556} 10557 10558// Validate inspects the fields of the type to determine if they are valid. 10559func (s *VirtualServiceSpec) Validate() error { 10560 invalidParams := request.ErrInvalidParams{Context: "VirtualServiceSpec"} 10561 if s.Provider != nil { 10562 if err := s.Provider.Validate(); err != nil { 10563 invalidParams.AddNested("Provider", err.(request.ErrInvalidParams)) 10564 } 10565 } 10566 10567 if invalidParams.Len() > 0 { 10568 return invalidParams 10569 } 10570 return nil 10571} 10572 10573// SetProvider sets the Provider field's value. 10574func (s *VirtualServiceSpec) SetProvider(v *VirtualServiceProvider) *VirtualServiceSpec { 10575 s.Provider = v 10576 return s 10577} 10578 10579// An object that represents the status of a virtual service. 10580type VirtualServiceStatus struct { 10581 _ struct{} `type:"structure"` 10582 10583 // Status is a required field 10584 Status *string `locationName:"status" type:"string" required:"true" enum:"VirtualServiceStatusCode"` 10585} 10586 10587// String returns the string representation 10588func (s VirtualServiceStatus) String() string { 10589 return awsutil.Prettify(s) 10590} 10591 10592// GoString returns the string representation 10593func (s VirtualServiceStatus) GoString() string { 10594 return s.String() 10595} 10596 10597// SetStatus sets the Status field's value. 10598func (s *VirtualServiceStatus) SetStatus(v string) *VirtualServiceStatus { 10599 s.Status = &v 10600 return s 10601} 10602 10603// An object that represents a target and its relative weight. Traffic is distributed 10604// across targets according to their relative weight. For example, a weighted 10605// target with a relative weight of 50 receives five times as much traffic as 10606// one with a relative weight of 10. The total weight for all targets combined 10607// must be less than or equal to 100. 10608type WeightedTarget struct { 10609 _ struct{} `type:"structure"` 10610 10611 // VirtualNode is a required field 10612 VirtualNode *string `locationName:"virtualNode" min:"1" type:"string" required:"true"` 10613 10614 // Weight is a required field 10615 Weight *int64 `locationName:"weight" type:"integer" required:"true"` 10616} 10617 10618// String returns the string representation 10619func (s WeightedTarget) String() string { 10620 return awsutil.Prettify(s) 10621} 10622 10623// GoString returns the string representation 10624func (s WeightedTarget) GoString() string { 10625 return s.String() 10626} 10627 10628// Validate inspects the fields of the type to determine if they are valid. 10629func (s *WeightedTarget) Validate() error { 10630 invalidParams := request.ErrInvalidParams{Context: "WeightedTarget"} 10631 if s.VirtualNode == nil { 10632 invalidParams.Add(request.NewErrParamRequired("VirtualNode")) 10633 } 10634 if s.VirtualNode != nil && len(*s.VirtualNode) < 1 { 10635 invalidParams.Add(request.NewErrParamMinLen("VirtualNode", 1)) 10636 } 10637 if s.Weight == nil { 10638 invalidParams.Add(request.NewErrParamRequired("Weight")) 10639 } 10640 10641 if invalidParams.Len() > 0 { 10642 return invalidParams 10643 } 10644 return nil 10645} 10646 10647// SetVirtualNode sets the VirtualNode field's value. 10648func (s *WeightedTarget) SetVirtualNode(v string) *WeightedTarget { 10649 s.VirtualNode = &v 10650 return s 10651} 10652 10653// SetWeight sets the Weight field's value. 10654func (s *WeightedTarget) SetWeight(v int64) *WeightedTarget { 10655 s.Weight = &v 10656 return s 10657} 10658 10659const ( 10660 // DurationUnitMs is a DurationUnit enum value 10661 DurationUnitMs = "ms" 10662 10663 // DurationUnitS is a DurationUnit enum value 10664 DurationUnitS = "s" 10665) 10666 10667const ( 10668 // EgressFilterTypeAllowAll is a EgressFilterType enum value 10669 EgressFilterTypeAllowAll = "ALLOW_ALL" 10670 10671 // EgressFilterTypeDropAll is a EgressFilterType enum value 10672 EgressFilterTypeDropAll = "DROP_ALL" 10673) 10674 10675const ( 10676 // GrpcRetryPolicyEventCancelled is a GrpcRetryPolicyEvent enum value 10677 GrpcRetryPolicyEventCancelled = "cancelled" 10678 10679 // GrpcRetryPolicyEventDeadlineExceeded is a GrpcRetryPolicyEvent enum value 10680 GrpcRetryPolicyEventDeadlineExceeded = "deadline-exceeded" 10681 10682 // GrpcRetryPolicyEventInternal is a GrpcRetryPolicyEvent enum value 10683 GrpcRetryPolicyEventInternal = "internal" 10684 10685 // GrpcRetryPolicyEventResourceExhausted is a GrpcRetryPolicyEvent enum value 10686 GrpcRetryPolicyEventResourceExhausted = "resource-exhausted" 10687 10688 // GrpcRetryPolicyEventUnavailable is a GrpcRetryPolicyEvent enum value 10689 GrpcRetryPolicyEventUnavailable = "unavailable" 10690) 10691 10692const ( 10693 // HttpMethodConnect is a HttpMethod enum value 10694 HttpMethodConnect = "CONNECT" 10695 10696 // HttpMethodDelete is a HttpMethod enum value 10697 HttpMethodDelete = "DELETE" 10698 10699 // HttpMethodGet is a HttpMethod enum value 10700 HttpMethodGet = "GET" 10701 10702 // HttpMethodHead is a HttpMethod enum value 10703 HttpMethodHead = "HEAD" 10704 10705 // HttpMethodOptions is a HttpMethod enum value 10706 HttpMethodOptions = "OPTIONS" 10707 10708 // HttpMethodPatch is a HttpMethod enum value 10709 HttpMethodPatch = "PATCH" 10710 10711 // HttpMethodPost is a HttpMethod enum value 10712 HttpMethodPost = "POST" 10713 10714 // HttpMethodPut is a HttpMethod enum value 10715 HttpMethodPut = "PUT" 10716 10717 // HttpMethodTrace is a HttpMethod enum value 10718 HttpMethodTrace = "TRACE" 10719) 10720 10721const ( 10722 // HttpSchemeHttp is a HttpScheme enum value 10723 HttpSchemeHttp = "http" 10724 10725 // HttpSchemeHttps is a HttpScheme enum value 10726 HttpSchemeHttps = "https" 10727) 10728 10729const ( 10730 // ListenerTlsModeDisabled is a ListenerTlsMode enum value 10731 ListenerTlsModeDisabled = "DISABLED" 10732 10733 // ListenerTlsModePermissive is a ListenerTlsMode enum value 10734 ListenerTlsModePermissive = "PERMISSIVE" 10735 10736 // ListenerTlsModeStrict is a ListenerTlsMode enum value 10737 ListenerTlsModeStrict = "STRICT" 10738) 10739 10740const ( 10741 // MeshStatusCodeActive is a MeshStatusCode enum value 10742 MeshStatusCodeActive = "ACTIVE" 10743 10744 // MeshStatusCodeDeleted is a MeshStatusCode enum value 10745 MeshStatusCodeDeleted = "DELETED" 10746 10747 // MeshStatusCodeInactive is a MeshStatusCode enum value 10748 MeshStatusCodeInactive = "INACTIVE" 10749) 10750 10751const ( 10752 // PortProtocolGrpc is a PortProtocol enum value 10753 PortProtocolGrpc = "grpc" 10754 10755 // PortProtocolHttp is a PortProtocol enum value 10756 PortProtocolHttp = "http" 10757 10758 // PortProtocolHttp2 is a PortProtocol enum value 10759 PortProtocolHttp2 = "http2" 10760 10761 // PortProtocolTcp is a PortProtocol enum value 10762 PortProtocolTcp = "tcp" 10763) 10764 10765const ( 10766 // RouteStatusCodeActive is a RouteStatusCode enum value 10767 RouteStatusCodeActive = "ACTIVE" 10768 10769 // RouteStatusCodeDeleted is a RouteStatusCode enum value 10770 RouteStatusCodeDeleted = "DELETED" 10771 10772 // RouteStatusCodeInactive is a RouteStatusCode enum value 10773 RouteStatusCodeInactive = "INACTIVE" 10774) 10775 10776const ( 10777 // TcpRetryPolicyEventConnectionError is a TcpRetryPolicyEvent enum value 10778 TcpRetryPolicyEventConnectionError = "connection-error" 10779) 10780 10781const ( 10782 // VirtualNodeStatusCodeActive is a VirtualNodeStatusCode enum value 10783 VirtualNodeStatusCodeActive = "ACTIVE" 10784 10785 // VirtualNodeStatusCodeDeleted is a VirtualNodeStatusCode enum value 10786 VirtualNodeStatusCodeDeleted = "DELETED" 10787 10788 // VirtualNodeStatusCodeInactive is a VirtualNodeStatusCode enum value 10789 VirtualNodeStatusCodeInactive = "INACTIVE" 10790) 10791 10792const ( 10793 // VirtualRouterStatusCodeActive is a VirtualRouterStatusCode enum value 10794 VirtualRouterStatusCodeActive = "ACTIVE" 10795 10796 // VirtualRouterStatusCodeDeleted is a VirtualRouterStatusCode enum value 10797 VirtualRouterStatusCodeDeleted = "DELETED" 10798 10799 // VirtualRouterStatusCodeInactive is a VirtualRouterStatusCode enum value 10800 VirtualRouterStatusCodeInactive = "INACTIVE" 10801) 10802 10803const ( 10804 // VirtualServiceStatusCodeActive is a VirtualServiceStatusCode enum value 10805 VirtualServiceStatusCodeActive = "ACTIVE" 10806 10807 // VirtualServiceStatusCodeDeleted is a VirtualServiceStatusCode enum value 10808 VirtualServiceStatusCodeDeleted = "DELETED" 10809 10810 // VirtualServiceStatusCodeInactive is a VirtualServiceStatusCode enum value 10811 VirtualServiceStatusCodeInactive = "INACTIVE" 10812) 10813